# Relay 报价里要签什么：核对步骤、金额与 protocol.v2 订单

整理：链小知（AI 辅助）
资料核对日期：2026-10-12
引用地址：https://lianxiaozhi.com/tools/guides/relay-quote-step-protocol-record-check
难度：进阶
核验方式：官方文档整理，未执行真实账户操作

从已有 quote/v2 文件读取交易或签名步骤，核对输入、目标底线和订单字段，避免把 approve 或签名完成当跨链成功。

## 使用工具
- [Relay](https://lianxiaozhi.com/tools/relay) · [官方入口](https://relay.link/)

## 前置条件
- 准备脱敏 quote/v2 原请求/响应、保存时间、原定来源付款账户及目标收款地址；有 protocol.v2 时另准备集成方独立保存的链/合约配置。
- 本篇按当前 REST 正文与嵌入schema，限已有文件检查；订单哈希重算与 calldata 校验交由可信本地集成环境，不运行示例、不提供 key、不签名或广播。

## 1. 核对版本与报价方向

记录 POST /quote/v2 的 originChainId/destinationChainId、originCurrency/destinationCurrency、user/recipient、tradeType/amount。EXACT_INPUT 是输入基准，EXACT_OUTPUT 是输出基准，EXPECTED_OUTPUT 另留其类型，不能一律当发送数量。

当前警告自2026-10-02每次 quote/v2 需有效 x-api-key，虽 header schema 仍写 optional。已有文件核对不需填写 key；没有新的合法报价时不把旧记录写成当前可执行。recipient 省略的通用默认是 user，但仍与实际响应核对。

核对结果：记录版本、两侧链与币、付款/收款人和交易类型。
依据：[Relay：quote/v2 参数、步骤和版本警告](https://docs.relay.link/references/api/get-quote-v2.md)
依据：[Relay：当前 key 与默认限流](https://docs.relay.link/references/api/api-keys.md)

## 2. 按原始单位核对输出底线

用 details.currencyIn/currencyOut 的 currency.chainId/address/decimals 与原请求对齐，保留 amount/amountFormatted/minimumAmount。amount 是最小单位整数string；slippageTolerance 是 bps字符串，50为0.5%，与LI.FI的0.005格式不同。

预期与最低收到分开，不以 amountUsd 或品牌验证标记代替数量/合约身份。输入与输出精度不同各自换算，缺精度或 minimumAmount 时标未核实，不假设默认50或所有路线都有相同滑点。

核对结果：方向、身份、原整数和显示数量一致，底线单独显示。
依据：[Relay：quote/v2 参数、步骤和版本警告](https://docs.relay.link/references/api/get-quote-v2.md)

## 3. 逐项识别交易和签名权限

按 steps[].id/kind/items 作表：approve/approval、deposit、swap、send 是交易步骤；authorize、authorize1、authorize2 是不同签名情形。approve 完成仍需 deposit 或 swap，签名也可能允许转移代币，不等于无资产权限。

transaction item 记 item.data.chainId/from/to/value，以及 item.data.data（calldata）；signature item 记 signatureKind/domain/chainId/verifyingContract、允许的 amount/期限与 post 目标。历史 deposit 示例地址不得复用。无 items/空数组与有 item 却缺 data 不同，后者保留待更新状态。

核对结果：每步骤的实际权限和链可核对，不按 description 的旧“relayer”字眼猜资金目的地。
依据：[Relay：实际步骤 ID 与签名范围](https://docs.relay.link/references/api/api_core_concepts/step-execution.md)
依据：[Relay：quote/v2 参数、步骤和版本警告](https://docs.relay.link/references/api/get-quote-v2.md)

## 4. 有 protocol.v2 时核对订单属性

先看是否包含 protocol.v2：只对此版本且非 deposit-address 使用官方订单校验流程。对 orderData.inputs[].payment 的链/币/amount 与 output.payments[] recipient/currency/minimumAmount、output.chainId 对照原意图，deadline 是 Unix 秒。

minimumAmount 是结算底线，expectedAmount 是估计。再由集成方以独立保存的链到VM映射重算 orderId；没有映射或哈希核验结果只能确认可读字段，不能给订单“已验证”标签。缺 protocol.v2 也不编造兼容校验。

核对结果：订单字段与原意图匹配，字段核对与密码学验证分开。
依据：[Relay：protocol.v2 本地订单校验](https://docs.relay.link/references/api/api_core_concepts/input-validation.md)
依据：[Relay：quote/v2 参数、步骤和版本警告](https://docs.relay.link/references/api/get-quote-v2.md)

## 5. 把交易绑定到独立的合约配置

有可信集成核验记录时，核对 canonical depository 来自独立 chains 配置，而不是拿当前 quote.protocol.v2.paymentDetails.depository 证明 quote 自己。Input Validation旧字段路径与当前quote结构不同，按实际版本保留。检查 deposit ID 对应重算 orderId，付款人来自原应用状态，货币、depositNative/Erc20 函数与 value/token amount 均匹配订单。

单独 solver 签名只承诺 orderID，不证明价格、合约目的地或会成功填充。缺 calldata解码、独立合约配置或协议版本则列为未验，不自行安装脚本、改转账目标或提交旧 requests/signature 接口；该旧接口正文称已移除。

核对结果：已有集成证据能说明链、合约、订单、付款币与数量；不能完成的校验明确列出。
依据：[Relay：protocol.v2 本地订单校验](https://docs.relay.link/references/api/api_core_concepts/input-validation.md)
依据：[Relay：实际步骤 ID 与签名范围](https://docs.relay.link/references/api/api_core_concepts/step-execution.md)

## 6. 分开费用、步骤完成与 fill 结果

quote details.expandedPriceImpact 分解费用，其平台项名 relay；requests/v3 对应 data.fees.quoted/actual 的 platform。旧 quote.fees 已deprecated且不反映总成本；普通自发来源 Gas 另外付，gasless 也不是全部免费。

本地 items.status=complete 或签名 post 成功不替代 fill 成功。记录 check 的真实 method/endpoint 与 requestId，按 v3 的字符串 status 判 waiting/pending/submitted/success/refund/failure，旧boolean说明和旧路径不能混用；最后还需目标交易证据。

核对结果：交付权限/订单/费用检查表，执行与到账另有状态记录。
依据：[Relay：四类费用与 v3 费用结构](https://docs.relay.link/references/api/api_core_concepts/fees.md)
依据：[Relay：实际步骤 ID 与签名范围](https://docs.relay.link/references/api/api_core_concepts/step-execution.md)
依据：[Relay：状态 v3 与 requestId 分界](https://docs.relay.link/references/api/get-intents-status-v3.md)

## 常见错误
- 签名步骤可授权代币转移；approve成功不是跨链完成。
- 用同一报价自己的合约地址或签名者作信任依据，会形成自证。
- protocol.v2 校验不覆盖 deposit address；检查通过也不保证 fill。

## 完成检查
- 输出原意图、最低输出、步骤权限和订单未验项；有独立核验记录才标对应检查通过。
- 全部documentation；未取报价、运行订单哈希/解码、签名、交易、调用业务API或测试实际到账。

## 相关知识
- [代币授权是什么？断开钱包与撤销授权有什么区别](https://lianxiaozhi.com/learn/token-approvals)
- [滑点和价格冲击有什么区别？为什么成交价会变化](https://lianxiaozhi.com/learn/slippage-and-price-impact)
- [跨链显示已发送却未到账？来源交易、消息与目标执行分开查](https://lianxiaozhi.com/learn/bridge-transfer-status)
- [原生 USDC 与桥接 USDC 有什么区别？先核对发行与兑付路径](https://lianxiaozhi.com/learn/native-usdc-and-bridged-usdc)

## 官方依据
- [Relay：quote/v2 参数、步骤和版本警告](https://docs.relay.link/references/api/get-quote-v2.md)
- [Relay：当前 key 与默认限流](https://docs.relay.link/references/api/api-keys.md)
- [Relay：实际步骤 ID 与签名范围](https://docs.relay.link/references/api/api_core_concepts/step-execution.md)
- [Relay：protocol.v2 本地订单校验](https://docs.relay.link/references/api/api_core_concepts/input-validation.md)
- [Relay：四类费用与 v3 费用结构](https://docs.relay.link/references/api/api_core_concepts/fees.md)
- [Relay：状态 v3 与 requestId 分界](https://docs.relay.link/references/api/get-intents-status-v3.md)
