# 故障排除错误

有时您可能会遇到一个没有明确解决方案的问题。以下故障排除提示可能会帮助您解决遇到的问题。

## **交易所上的问题**

### **输出金额不足**

> 由于错误而无法成功完成交易：PancakeRouter: 输出金额不足。这可能是您要交换的代币之一存在问题。
>
> 由于错误而无法成功执行交易：pancakerouter: 输出金额不足。

您正在尝试交换代币，但您的滑点容忍度太低或流动性太低。

{% tabs %}
{% tab title="解决方案" %}

1. 刷新页面，稍后再试。
2. 尝试一次交易较小的金额。
3. 增加您的滑点容忍度：
   1. 点击流动性页面上的设置图标。
   2. 将您的滑点容忍度稍微提高，然后再试。![](/files/m46vZGLlTqz7NBH7t3C1)
4. 最后，尝试输入较少小数位的金额。
   {% endtab %}

{% tab title="原因" %}
**当交易流动性低的代币时通常会发生这种情况。**

这意味着您要交换的代币之一的流动性不足：这可能是很少有人交易的小市值代币。

但是，也有可能您正在尝试交易一个无法出售的欺诈代币。在这种情况下，PaySwap 无法阻止代币或返还资金。
{% endtab %}
{% endtabs %}

### **A 金额不足或 B 金额不足**

> 失败，错误为 'PancakeRouter: A 金额不足'\
> 或\
> 失败，错误为 'PancakeRouter: B 金额不足'

您正在尝试从流动性池（LP）添加/移除流动性，但是一对中的一个代币的量不足。

{% tabs %}
{% tab title="解决方案" %}
**刷新页面，稍后再试，或稍后再试。**

仍然无法解决？

1. 点击流动性页面上的设置图标。
2. 将您的滑点容忍度稍微提高，然后再试。

![](/files/SJMsFLF8nMfvbC4u7rEK)
{% endtab %}

{% tab title="原因" %}
该错误是由于尝试添加或移除流动性池（LP）的流动性时，A 或 B 代币（一对中的一个代币）的量不足。

可能情况是当价格更新速度过快时，您的滑点容忍度太低。

![](https://lh5.googleusercontent.com/T1KMtz2ILDVHljGw1iLbIv0W1KVl7qXL8zU2nLFHkUvDb5oMw9mpUzzBwWmIBz15XDsxZ5w7wsaqAwCs_pxdobz_kY_7BhcZhYtpqWuQGFs23DZq98-SVInlfsS07WzxFPLIYXHt)

![](https://lh5.googleusercontent.com/7aspaCCvDjzxbJxngqwgeq737LB3OUNcAs592QqlEkyrAOTfKsrt_FAWpEylaIJhff5ZcYlzB_r0v1JZwfj3j8Ah6jlUbRoMrAqVfTb3cwDI7B1i5HJtZSQOsTPrv7l7SaclC3BV)
{% endtab %}

{% tab title="Nerds 的解决方案" %}
好的，所以您真的决心要解决这个问题。我们强烈建议您只有在知道自己在做什么时才这样做。

目前，从 PaySwap 网站解决此问题的简单方法不存在：您需要直接与合约交互。您可以通过路由器合约直接添加流动性，同时将 amountAMin 设置为较小的金额，然后提取所有流动性。

**批准 LP 合约**

前往您要批准的 LP 代币的合约。\
例如，这是 ETH/WBNB 对：<https://bscscan.com/address/0x70d8929d04b60af4fb9b58713ebcf18765ade422>

1. 选择 **Write Contract**，然后 **Connect to Web3** 并连接您的钱包。![](https://lh6.googleusercontent.com/-_sNkO1gcOOJXkduDEUzbExKE2mNxBOR0f86Lpp3BBuPbIcmAHsfuvpF-hKqRn4oID5QzdGkk_1dTHkPuCmE50vpNNZxEqoM5nPmE_12k3-8Q8YYoRYqJ_VGjxJ03YPRuVQ1O5ME)
2. 在 **1. approve** 部分，通过输入
   1. spender（地址）：输入您要与之交互的 LP 代币的合约地址
   2. value（uint256）：-1

**查询 "balanceOf"**

1. 切换到 **Read Contract**。
2. 在 **5. balanceOf** 中，输入您的钱包地址，并点击 **Query**。
3. 记录导出的数字。它以 uint256 格式显示您在 LP

中的余额，您将在下一步中需要使用它。

![](/files/BEdpII2VbunhuY7HPT3a)

**添加或移除流动性**

前往路由器合约：<https://bscscan.com/address/0x05ff2b0db69458a0750badebc4f9e13add608c7f#writeContract>

1. 选择 **Write Contract** 并像上面一样 **Connect to Web3**。
2. 找到 **addLiquidity** 或 **removeLiquidity**（您要执行的操作）
3. 输入 LP 中两个代币的代币地址。
4. 在 **liquidity（uint256）** 中，输入您从上面的 "balanceOf" 中获得的 uint256 数字。
5. 设置较低的 **amountAMin** 或 **amountBMin**：尝试两者都设置为 1。
6. 在 **to（地址）** 中添加您的钱包地址。
7. 截止日期必须是大于交易执行时间的时间戳。

![](/files/c0TJIBUKK0GpftBe7MTl)

{% hint style="warning" %}
这可能会导致非常高的滑点，并且可能会导致用户损失一些资金，如果您尝试执行此操作，请注意。
{% endhint %}
{% endtab %}
{% endtabs %}

### PancakeRouter: 已过期

> 由于错误而无法成功完成交易：PancakeRouter: 已过期。这可能是您要交换的代币之一存在问题。

再试一次，但在生成交易后尽快确认（签署和广播）交易。

这是因为您开始了一个交易，但在截止日期过去之前没有签署和广播它。这意味着您没有足够快地点击“确认”。

### Pancake: K

> 由于错误而无法成功完成交易：Pancake: K。这可能是您要交换的代币之一存在问题。

尝试在 “To” 字段上修改金额。然后在 “From” 上放置 “（估计）” 符号，然后立即开始交换。

![](/files/PH4Tk48GVmqrfNLbmnmk)

这通常发生在您试图用其自身费用交换代币时。

### Pancake: 转账失败

> 由于错误而无法成功执行交易：execution reverted: Pancake: 转账失败。

确保您的钱包中的代币数量比您打算交易的数量多 30% 或尝试交易较小的金额。如果您想要出售最大可能的数量，请尝试 70% 或 69% 而不是 100%。\
由 Restorative Rebase 代币的设计引起，如 tDoge 或 tBTC。\
[了解复原重新打基代币的工作原理](https://btcst.medium.com/stp-8-restorative-rebase-b4fbbdfd96c)。

此问题的另一个可能原因是恶意代币发行者刚刚暂停了其代币的交易。或者他们只允许特定的钱包地址进行出售操作。请始终进行自己的研究以避免任何潜在的欺诈行为。如果您尝试但未能使用此错误代码交换的代币来自空投，那么很可能是一种骗局。请不要执行任何代币批准或点击任何链接，如果您尝试这样做，您的资金可能面临风险。

### 交易无法成功

尝试交易较小的金额，或通过设置图标增加滑点容忍度，然后再试。这是由于流动性不足引起的。

### **价格影响过高**

尝试交易较小的金额，或通过设置图标增加滑点容忍度，然后再试。这是由于流动性不足引起的。

### 估算燃气失败

> 此交易将失败。请联系支持

{% tabs %}
{% tab title="解决方案" %}
**如果您在从 BNB 对中移除流动性时遇到此错误：**

请选择 “Receive WBNB” 然后重试。

**如果您在尝试交换时遇到此错误：**

请联系您要交换的代币的项目团队。**这个问题必须由项目团队解决。**
{% endtab %}

{% tab title="原因" %}
**在交换过程中发生此问题（当交换）是由于某些代币在其合约中硬编码了 V1 PancakeSwap 路由器引起的。**

虽然这种做法最多是不明智的，但这些项目这样做的原因似乎是因为他们的代币经济学，其中每次购买都会向 LP 发送代币的一部分。

受影响的项目可能不会与 V2 路由器一起工作：他们很可能需要创建指向我们新路由器地址的新版本的他们的代币，并将任何现有的代币持有者迁移到他们的新代币。

我们建议任何创建这种代币的项目也应努力防止其用户将其添加到 V2 LP。

最新的路由器地址是 <https://bscscan.com/address/0x10ED43C718714eb63d5aA57B78B54704E256024E>
{% endtab %}
{% endtabs %}

### 无法读取未定义的属性 'toHexString'

> "未知错误："无法读取未定义的属性 'toHexString'"

尝试交换代币时，交易失败并显示此错误消息。这个错误已经在使用 Trust Wallet 的移动设备上报告过。

{% tabs %}
{% tab title="解决方案" %}

1. 尝试增加滑点容忍度再次执行交易。
2. 如果第一步没有解决问题，考虑使用另一个钱包，例如 SafePal 进行交易。
   {% endtab %}

{% tab title="原因" %}
**在 Trust Wallet 上交易代币时，通常发生这种情况是因为滑点容忍度不足。**

问题的确切细节仍在调查中。
{% endtab %}
{% endtabs %}

### **执行失败：TransferHelper: TRANSFER\_FROM\_FAILED.**

> 由于错误而无法成功执行交易：执行失败：TransferHelper: TRANSFER\_FROM\_FAILED.

尝试交换代币时，交易失败并显示此错误消息。此错误已在各个平台上报告过。

{% tabs %}
{% tab title="解决方案" %}

1. 检查确保您拥有足够的资金可用。
2. 确保您已经授权合约使用您尝试交易的资金数量。
   {% endtab %}

{% tab title="原因" %}
当交易代币时，如果授权不足或钱包资金不足，就会发生此错误。\
如果您正在交易像 tDoge 或 tBTC 这样的 Restorative Rebase 代币，请确保先了解它们的工作原理，可以参考这个[Rebase 代币指南](https://btcst.medium.com/stp-8-restorative-rebase-b4fbbdfd96c)。
{% endtab %}
{% endtabs %}

### 燃气耗尽错误

> 警告！在合约执行过程中遇到错误 \[燃气耗尽]

在尝试进行交易时，您设置了较低的燃气限制。

{% tabs %}
{% tab title="解决方案" %}
在签署交易之前，尝试手动增加您钱包中的**燃气限制**（而不是燃气价格）。

通常，设置为 200000 就足够了。

![](/files/htHxBKJaBUdKSKX0egsR)

上面的示例来自 Metamask；如果不确定如何调整燃气限制，请查看您钱包的文档。
{% endtab %}

{% tab title="原因" %}
基本上，您的钱包（Metamask、Trust Wallet 等）无法完成其尝试的操作。

您的钱包估计燃气限制过低，因此在完成函数调用之前，函数调用就耗尽了燃气。
{% endtab %}
{% endtabs %}

### BEP20：转账金额超过授权额度

> 失败，错误为 'BEP20: 转账金额超过授权额度'

{% tabs %}
{% tab title="解决方案" %}

1. 使用 Unrekt.net 撤销您试图与之交互的智能合约的授权。
2. 再次授权合约，但不要设置支出授权额度的限制。
3. 再次尝试与合约交互。
   {% endtab %}

{% tab title="原因" %}
当您首次授权合约时设置了支出授权额度的限制，然后尝试交换超过限制的数量时，就会发生这种情况。
{% endtab %}
{% endtabs %}

## **其他问题**

### 提供商错误

> 提供商错误\
> 未找到提供商

当您尝试通过 MetaMask 或 Binance Chain Wallet 等浏览器扩展连接时，但您尚未安装该扩展时，会发生此情况。

{% tabs %}
{% tab title="解决方案" %}
安装官方浏览器扩展以进行连接，或阅读我们的指南，了解[如何连接钱包到 PaySwap](/zhong-guo-ren/readme/get-started/connection-guide.md)。
{% endtab %}
{% endtabs %}

### 不支持的链 ID

将您的链切换到支持的链。如果需要帮助，请查阅您钱包的文档。

### 已在处理 eth\_requestAccounts，请等待。

确保您已登录到您的钱包应用，并且已连接到正确的链。

### 内部 JSON-RPC 错误

> "MetaMask - RPC 错误：内部 JSON-RPC 错误。estimateGas failed removeLiquidityETHWithPermitSupportingFeeOnTransferTokens estimateGas failed removeLiquidityETHWithPermit "

尝试通过 Metamask 在一些代币上移除流动性时会发生。根本原因尚不清楚。尝试使用其他钱包。

> 内部 JSON-RPC 错误。{ "code": -32000, "message": "insufficient funds for transfer" } - 请重试。

您没有足够的 BNB（原生币）来支付交易费用。您的钱包中需要更多的 BEP-20 网络 BNB。

### 错误：\[ethjs-query]

> 错误：\[ethjs-query] 在 RPC 的输出格式化过程中发生错误 '{"value":{"code":-32603,"data":{"code":-32000,"message":"transaction underpriced"}}}"

在您的钱包中为交易增加燃气限制。查阅您钱包的文档，了解如何增加您的燃气限制。

> 交易失败：错误：\[ethjs-query] 在 RPC 的输出格式化过程中发生错误 '{"value":{"code":-32603,"data":{"code":-32603,"message":"handle request error"}}}'

原因不明确。在再次尝试之前，请尝试以下步骤：

1. 增加燃气限制
2. 增加滑点容忍度
3. 清除缓存


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.payswap.org/zhong-guo-ren/readme/help/troubleshooting.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
