跳到正文
← 使用教程

PancakeSwap 兑换失败:按输出不足、过期和转账失败逐项排查

链小知 · 入门 · 核验 · 依官方文档整理

以已有 Router 报错定位输入、滑点和授权问题,避免用极端滑点或无限授权解决所有失败。

开始前准备

  • 准备失败交易的完整错误、链、Router/池版本与兑换预览。
  • 适用于已有 Router 错误和兑换预览;Router 旧错误与 Infinity/v3 错误不能自动等同。

1. 保留原始错误与路线

抄下失败交易哈希和错误全文,再记链、代币地址、池或 Router 版本。查看预览里的路线详情,确认是 v2、v3 或其他池。不同版本费用不同,不能将 v2 的固定费用移植到所有路线。

检查结果:错误未被概括为一个“交易失败”,路线版本已注明。

2. 输出不足先复核报价与流动性

若错误为 INSUFFICIENT_OUTPUT_AMOUNT,检查输入金额、最少收到、预览时间与价格变化。用较小数量重新做预览有助于判断价格冲击;先确认代币转账特性和路线,不能直接把滑点提到极高值来绕过保护。

检查结果:写清是旧报价、规模/流动性还是代币行为待核实。

3. 过期检查 deadline

EXPIRED 对应交易截止时间已过去。核对请求创建和链上处理时间,旧交易数据不可原样反复使用;重新取得预览与新期限属于下一次操作准备,并不意味着应重新发送交易。

检查结果:记录能解释期限与提交时间是否不匹配。

4. 转出失败分别查余额和 allowance

TRANSFER_FROM_FAILED 时,在同一链、同一钱包、同一授权对象下核对代币余额与授权额度。余额足不代表已授权,授权过其他 Router 也不代表当前路线可使用。含转账税的代币还可能出现 K 等其他错误,需要按该代币与 Router 的兼容性继续核实。

检查结果:余额不足、授权不足、代币机制三个分支分别有结果。

5. 把费用和后续状态分清

保留网络 gas 及路线显示的交易费;v3 不同费率档位、v2 和稳定池不是同一套费用。失败交易回执、扣除的 gas 与未完成的兑换应分开记录。若没有回执,状态只能写成钱包/接口错误,不能判断已上链。

检查结果:故障单包含路线、输入、原始错误与回执状态。

怎样确认完成

  • 给出可以继续核查的具体错误分支。
  • 完成检查而未重签、未提交新兑换。

常见错误与边界

  • 照搬旧文档中极端滑点或近零最少输出的示例。
  • 把所有代币错误归咎于网络拥堵。
  • 忽略交易失败仍可能消耗网络 gas。

本教程根据官方资料整理,尚未完成逐步操作验收。界面、支持范围及费用变化时,先核对官方说明。 纯文本版 · 提交纠错依据