diff --git a/snippets/error-codes-cn.mdx b/snippets/error-codes-cn.mdx
index dbe15e49..ca8edc8f 100644
--- a/snippets/error-codes-cn.mdx
+++ b/snippets/error-codes-cn.mdx
@@ -4,49 +4,220 @@
### 错误码
-| 错误码 | 描述 | 解决方案 |
-|---------------------|---------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
-| 1000 | 内部服务器错误。此错误可能由多个问题引起,包括[Org Access Tokens](/v2/apps/org-access-tokens)过期。 | 检查您的服务器配置设置,包括 Org Access Tokens 是否已过期,然后稍后重试。 |
-| 1003, 2003 | 请求中缺少一个或多个必填参数。 | 提供所有必填参数。 |
-| 1006, 2006 | 一个或多个参数格式无效或包含不支持的值。 | 以预期格式提供有效参数。 |
-| 12002 | Cobo 不支持指定的代币。 | 选择支持的代币。调用 [List supported tokens](/v2/api-references/wallets/list-supported-tokens) 接口获取完整的支持代币列表。 |
-| 12007, 30012 | 余额不足,无法执行请求的操作。 | 确保源地址有足够的余额支付转账金额。 |
-| 12009, 30001 | 重复的请求 ID。 | 使用唯一的请求 ID。 |
-| 12025 | 在 `included_utxos` 或 `excluded_utxos` 中指定的 UTXO 无效。 | 验证 `included_utxos` 或 `excluded_utxos` 中指定的 UTXO。 |
-| 2000 | 处理过程中发生内部错误。 | 请稍后重试。 |
-| 2021 | 请求处理程序缺失或未实现。 | 为请求提供有效的处理程序。 |
-| 2024 | API Key 认证失败。 |
- 若 `error_message` 为 `Your API key is not registered in this environment...`:您使用的 API Key 注册在错误的环境中,请切换到正确的 API Host 并使用对应环境的 API Key。参见[环境](/v2_cn/guides/overview/environments)。
- 若 `error_message` 为 `Your API key is not yet activated...` 或 `Api key is not activated`:请在 Cobo Guard 中完成 Admin 审批以激活该 API Key。
- 若 `error_message` 提示 IP 白名单问题:请将服务器的出口 IP 加入 Cobo Portal 中该 API Key 的 IP 白名单。
- 签名失败时,请确认签名串格式为 `METHOD\|PATH\|NONCE\|PARAMS\|BODY`,其中 NONCE 必须与 `Biz-Api-Nonce` 请求头一致。参见[身份验证](/v2_cn/guides/overview/cobo-auth)。
详情请参见[注册 API 密钥](https://manuals.cobo.com/cn/portal/developer-console/create-api-key)。 |
-| 2025, 4001 | 禁止访问请求的资源。 | - 检查与您的 API Key 关联的权限(API 权限、钱包范围、可操作资源范围)。您可以参考[权限和钱包范围](/v2/guides/overview/permissions-and-scopes)获取详细信息。
- 如果报错与“角色”相关(例如创建提币、发起交易等),请确认操作用户具备对应角色(例如提币通常需要 Spender 或 Admin)。
- 如果错误信息包含 “Resource out of organization (4001)”,通常表示您请求的资源(例如 `wallet_id`)属于另一个组织,不属于当前 API Key 所在组织。
- 如果权限已授予仍报错,请检查是否混用不同环境(Dev/Prod)的 API Key 或调用了错误环境的 API 域名。
- 对于全托管钱包相关接口,请确认已在“全托管钱包设置”的上一级范围正确授予权限(部分接口需要在上级范围勾选权限)。
- 如果是新开通/特定能力接口(例如地址簿等),请确认对应能力已启用或已完成必要的白名单/开关配置。
- 如果涉及链/资产权限(例如添加某条公链后仍提示权限不足),请确认已在套餐/配置中启用对应公链或能力。
|
-| 2026 | 请求过多。 | 请稍后重试。 |
-| 2028 | 未找到请求的资源。 | 检查请求 URL。 |
-| 2029 | 提供的状态属性无效。 | 为状态属性提供有效值。 |
-| 2050, 2052 | 无可用的套餐,或已超出使用限制。 | 购买套餐或升级现有套餐。更多信息,请参见[账单和付款介绍](https://manuals.cobo.com/cn/portal/bills-and-payments/introduction)。 |
-| 2051 | 当前套餐已过期。 | 续订您的套餐以继续使用服务。更多信息,请参见[账单和付款介绍](https://manuals.cobo.com/cn/portal/bills-and-payments/introduction)。 |
-| 30007 | 金额无效。该值不是有效数字或不符合所需格式或范围。 | 提供符合预期格式和范围的有效金额。 |
-| 30008 | 绝对金额无效。金额的绝对值太小、太大,或在需要非零值时为零。 | 确保金额的绝对值满足所需条件。 |
-| 30010 | 提供的金额低于尘埃阈值。金额太小,无法处理或转账。 | 增加金额以超过尘埃阈值。 |
-| 30011 | 提供的金额低于最低充币阈值。 | 增加充币金额以满足最低阈值。 |
-| 30013 | 余额不足以支付所需的交易费用。 | 确保源地址有足够的余额支付交易费用。 |
-| 30014 | 目标地址无效。 | 提供有效的目标地址。 |
-| 30023 | (此错误仅适用于交易所钱包)交易账户类型无效。 | 提供有效的交易账户类型。 |
-| 30032 | (此错误仅适用于 MPC 钱包)无效的私钥分片持有者组。 | 检查是否已配置有效的主控组或签名组。 |
-| 60010 | 指定的代币尚未为此团队启用。 | 为您的团队启用该代币。 |
+#### 通用错误
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 1000 | 内部服务器错误。此错误可能由多个问题引起,包括 [Org Access Tokens](/v2/apps/org-access-tokens) 过期。 | 检查您的服务器配置设置,包括 Org Access Tokens 是否已过期,然后稍后重试。 |
+| 1003, 2003 | 请求中缺少一个或多个必填参数。 | 提供所有必填参数。 |
+| 1006, 2006 | 一个或多个参数格式无效或包含不支持的值。 | 以预期格式提供有效参数。 |
+| 2000 | 处理过程中发生内部错误。 | 稍后重试。 |
+| 2021 | 请求的 API 接口未实现或当前不可用。 | 请确认请求路径和 HTTP 方法是否正确,然后稍后重试。 |
+| 2024 | API Key 认证失败。 | - 若 `error_message` 为 `Your API key is not registered in this environment...`:您使用的 API Key 注册在错误的环境中,请切换到正确的 API Host 并使用对应环境的 API Key。参见[环境](/v2_cn/guides/overview/environments)。
- 若 `error_message` 为 `Your API key is not yet activated...` 或 `Api key is not activated`:请在 Cobo Guard 中完成 Admin 审批以激活该 API Key。
- 若 `error_message` 提示 IP 白名单问题:请将服务器的出口 IP 加入 Cobo Portal 中该 API Key 的 IP 白名单。
- 签名失败时,请确认签名串格式为 `METHOD\|PATH\|NONCE\|PARAMS\|BODY`,其中 NONCE 必须与 `Biz-Api-Nonce` 请求头一致。参见[身份验证](/v2_cn/guides/overview/cobo-auth)。
详情请参见[注册 API 密钥](https://manuals.cobo.com/cn/portal/developer-console/create-api-key)。 |
+| 2025, 4001 | 禁止访问请求的资源。 | - 检查与您的 API Key 关联的权限(API 权限、钱包范围、可操作资源范围)。您可以参考[权限和钱包范围](/v2/guides/overview/permissions-and-scopes)获取详细信息。
- 如果报错与"角色"相关(例如创建提币、发起交易等),请确认操作用户具备对应角色(例如提币通常需要 Spender 或 Admin)。
- 如果错误信息包含 "Resource out of organization (4001)",通常表示您请求的资源(例如 `wallet_id`)属于另一个团队,不属于当前 API Key 所在团队。
- 如果权限已授予仍报错,请检查是否混用不同环境(Dev/Prod)的 API Key 或调用了错误环境的 API 域名。
- 对于全托管钱包相关接口,请确认已在"全托管钱包设置"的上一级范围正确授予权限(部分接口需要在上级范围勾选权限)。
- 如果是新开通/特定能力接口,请确认对应能力已启用或已完成必要的白名单/开关配置。
- 如果涉及链/资产权限,请确认已在套餐/配置中启用对应公链或能力。
|
+| 2026 | 请求过多。 | 降低请求频率并在短暂延迟后重试。如果您正在使用轮询模式,请实现指数退避策略。 |
+| 2028 | 未找到请求的资源。 | 请验证请求参数中的资源 ID 是否正确,并确认该资源存在于您的团队中。 |
+| 2029 | 请求中 `status` 参数的值不在允许范围内。 | 请查阅您正在调用的接口文档,了解 `status` 参数支持的枚举值,并提供其中一个有效值。 |
+| 10000 | 该团队在 Cobo Portal 中仅有只读权限。 | 请在 Cobo Portal 中查看您的团队权限设置。只有团队管理员才能更新权限级别。 |
+
+#### 套餐与计费错误
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 2050 | 该团队没有可用的套餐。 | 请在 Cobo Portal 中购买套餐。更多信息,请参见[账单和付款介绍](https://manuals.cobo.com/cn/portal/bills-and-payments/introduction)。 |
+| 2051 | 当前套餐已过期。 | 请续订套餐以继续使用服务。更多信息,请参见[账单和付款介绍](https://manuals.cobo.com/cn/portal/bills-and-payments/introduction)。 |
+| 2052 | 当前套餐的使用量已超出限制。 | 请升级套餐或等待下一个计费周期。更多信息,请参见[账单和付款介绍](https://manuals.cobo.com/cn/portal/bills-and-payments/introduction)。 |
+| 2053 | 当前套餐不支持此功能。 | 请升级至包含此功能的套餐。更多信息,请参见[账单和付款介绍](https://manuals.cobo.com/cn/portal/bills-and-payments/introduction)。 |
+| 2054 | 当前套餐的付款已逾期。 | 请完成套餐的逾期付款。更多信息,请参见[账单和付款介绍](https://manuals.cobo.com/cn/portal/bills-and-payments/introduction)。 |
+
+#### 钱包配置错误
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 2101 | 钱包名称超过了允许的最大字符长度。 | 请将钱包名称缩短至允许的字符长度以内,然后重试。 |
+| 2102 | 钱包名称包含无效字符。 | 钱包名称只能使用中文、英文字母、数字和下划线。 |
+| 2103 | 该团队中已存在同名钱包。 | 请使用唯一的钱包名称。钱包名称在同一团队内必须唯一。 |
+| 2104 | 指定链未在此团队的套餐中启用。 | 请在套餐中启用该链,或选择已启用的链。调用 [List enabled chains](/v2/api-references/wallets/list-enabled-chains) 接口查看团队已启用的所有链。 |
+| 2105 | 对于基于 UTXO 的代币(例如 BTC),当前所有可用的 UTXO 已被一笔待处理交易或待 KYT 筛查的交易锁定,新的转账无法进行,直至这些 UTXO 被释放。 | 调用 [List transactions](/v2/api-references/transactions/list-transactions) 接口查询该钱包的待处理交易,等待其完成后再重试。 |
+
+#### 转账错误
+
+以下错误码由转账和提币操作返回。
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 30000 | 未经授权。您没有执行此转账的权限。 | 请检查您的 API Key 关联的权限和钱包范围。详情参见[权限和钱包范围](/v2/guides/overview/permissions-and-scopes)。 |
+| 30001, 12009 | 该 `request_id` 已被使用。 | 每笔新交易请使用唯一的 `request_id`。重复的 `request_id` 将被拒绝,以防止重复交易。 |
+| 30002 | 指定的代币不支持此操作或不适用于该团队。 | 请验证 `token_id` 是否正确。调用 [List supported tokens](/v2/api-references/wallets/list-supported-tokens) 接口获取支持的代币完整列表。 |
+| 30003 | 该钱包类型不支持此转账操作。 | 请使用与所请求转账类型兼容的钱包类型。 |
+| 30004 | 来源钱包 ID 无效或钱包不存在。 | 请验证 `from_wallet_id` 值是否正确,以及该钱包是否属于您的团队。 |
+| 30005 | 来源地址格式无效或与该代币不兼容。 | 请提供与该代币类型兼容的有效来源地址。 |
+| 30006 | 来源地址的编码格式不受支持。 | 请为该代币使用受支持的地址编码格式。 |
+| 30007 | 金额无效。该值不是有效数字或不符合所需格式或范围。 | 请提供一个正数金额。调用 [Get token information](/v2/api-references/wallets/get-token-information) 接口查询该代币的 `decimal` 精度,并确保金额的小数位数不超过该精度。 |
+| 30008 | `abs_amount` 的值必须大于 0。 | 请为 `abs_amount` 提供一个大于 0 的正数值。 |
+| 30009 | 金额不能小于零。 | 请提供非负金额。 |
+| 30010 | 提币金额低于该代币的最低提币阈值,无法处理。 | 请增加提币金额。调用 [Get token information](/v2/api-references/wallets/get-token-information) 接口获取该代币的 `dust_threshold` 值。 |
+| 30011 | 充币金额低于该代币的最低充币阈值。 | 请增加充币金额。调用 [Get token information](/v2/api-references/wallets/get-token-information) 接口获取该代币的 `minimum_deposit_threshold` 值。 |
+| 30012, 12007 | 转账金额超过钱包的可用余额。 | 请检查钱包的可用余额(总余额减去待处理和锁定金额)。调用 [Get wallet balance](/v2/api-references/wallets/get-wallet-balance) 接口查询当前余额。 |
+| 30013 | 手续费代币余额不足,无法支付交易费用。 | 请确保钱包或 Fee Station 中有足够的手续费代币余额(例如 EVM 链上的 ETH)来支付交易费用。 |
+| 30014 | 目标地址无效或与该代币不兼容。 | 请提供与该代币类型兼容的有效目标地址。 |
+| 30015 | 目标钱包 ID 无效或钱包不存在。 | 请验证 `to_wallet_id` 值是否正确,以及该钱包是否属于您的团队。 |
+| 30016 | 交易类别数量超过最大值 5 个。 | 请将 `category_names` 字段中的类别数量减少至 5 个或以下。 |
+| 30017 | 类别名称超过 30 个字符的最大限制。 | 请将类别名称缩短至 30 个字符或以下。 |
+| 30018 | 描述超过 100 个字符的最大限制。 | 请将 `description` 字段缩短至 100 个字符或以下。 |
+| 30019 | 转账被智能合约钱包的链上交易风控规则拒绝。 | 请在 Cobo Portal 中查看您的智能合约钱包的链上交易风控规则配置。目标地址或代币可能受到规则限制。 |
+| 30020 | 该代币不在您的智能合约钱包的链上白名单中。 | 请在 Cobo Portal 的智能合约钱包配置中,将该代币添加到链上白名单。 |
+| 30021 | 目标地址不在您的智能合约钱包的链上转账白名单中。 | 请在 Cobo Portal 的智能合约钱包配置中,将目标地址添加到链上转账白名单。 |
+| 30022 | 交易所钱包的转账来源中指定了无效的交易账户类型。 | 请提供有效的交易账户类型作为转账来源。 |
+| 30023 | 交易所钱包的转账目标中指定了无效的交易账户类型。 | 请提供有效的交易账户类型作为转账目标。 |
+| 30024 | `to_wallet_id` 和 `to_address` 均未提供。 | 请提供 `to_wallet_id` 或 `to_address` 中的一个作为转账目标。 |
+| 30025 | 该钱包或代币的提币功能当前不可用。 | 请在 Cobo Portal 中确认该钱包的提币功能已启用,且该代币支持提币。 |
+| 30026 | 该钱包的转账功能当前不可用。 | 请在 Cobo Portal 中确认该钱包的转账功能已启用。 |
+| 30027 | 目标钱包当前不支持充币。 | 请在 Cobo Portal 中检查目标钱包的设置,确认该钱包和代币的充币功能已启用。 |
+| 30028 | `request_id` 参数缺失或无效。 | 请在请求中提供有效的非空 `request_id`。 |
+| 30029 | 交易账户子钱包不能在交易所钱包中发起提币交易。 | 请使用交易所钱包的主账户发起提币,而非交易账户子钱包。 |
+| 30030 | 该代币的提币和充币服务暂时暂停。 | 此暂停为临时性措施,请稍后重试。 |
+| 30031 | 指定代币尚未在该团队中启用。 | 请先在 Cobo Portal 中为您的团队启用该代币,然后再发起转账。调用 [List enabled tokens](/v2/api-references/wallets/list-enabled-tokens) 接口查看当前已启用的所有代币。 |
+| 30032 | 该 MPC 钱包没有可用于签名的私钥分片持有者组。 | 请在 Cobo Portal 中确认该 MPC 钱包已配置有效的主控组或签名组,然后再发起交易。 |
+| 30033 | 收款地址不属于 Cobo,或这些钱包已禁用 Cobo Loop。 | 请确认收款地址是 Cobo 地址,且两个钱包均已启用 Cobo Loop。如需向非 Cobo 地址转账,请使用普通提币方式。 |
+| 30034 | 交易被智能合约钱包的链上交易风控规则拒绝。 | 请查看您的智能合约钱包的链上交易风控规则配置,调整规则或交易参数以允许该笔交易。 |
+| 30035 | 该交易所钱包处于 Observation 模式,仅支持查看余额,不支持提币。 | 请切换到处于 Normal 模式的交易所钱包,或使用其他具备提币权限的钱包。 |
+| 30036 | Fee Station 余额不足,需要充值后才能继续进行交易。 | 请前往 Cobo Portal 向 Fee Station 充入相应的手续费代币(例如 EVM 链充 ETH)。 |
+| 30037 | 来源钱包和目标钱包不符合 Cobo Loop 交易条件。 | 请确认两个钱包均支持 Cobo Loop。不符合条件的钱包请使用普通转账。 |
+| 30038 | Fee Station 的代币余额不足以支付交易费用。 | 请在重试交易前向 Fee Station 充入所需的手续费代币。 |
+| 30039 | Cobo 的 Fee Station 余额不足以代付 Gas 费用。 | 此错误由 Cobo 侧临时状况引起,请稍后重试。 |
+
+#### 代币与余额错误
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 12002 | Cobo 不支持指定的代币。 | 请选择支持的代币。调用 [List supported tokens](/v2/api-references/wallets/list-supported-tokens) 接口获取完整的支持代币列表。 |
+| 12025 | 在 `included_utxos` 或 `excluded_utxos` 中指定的 UTXO 无效。 | 请验证 `included_utxos` 或 `excluded_utxos` 中指定的 UTXO。 |
+| 60010 | 指定的代币尚未在该团队中启用。 | 请在 Cobo Portal 中为您的团队启用该代币。调用 [List enabled tokens](/v2/api-references/wallets/list-enabled-tokens) 接口查看当前已启用的所有代币。 |
+| 60020 | 指定地址在对应代币和钱包组合下未启用。 | 请确认该地址与您的团队中正确的钱包和代币关联。 |
+
+#### 交易管理错误
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 60001 | 未找到指定的团队。 | 请确认您的 API Key 属于正确的团队,并检查调用的环境是否正确。 |
+| 60002 | 交易类型无效。 | 请提供以下支持的交易类型之一:`Transfer`、`ContractCall` 或 `MessageSign`。 |
+| 60003 | 无法估算交易费用。 | 请稍后重试费用估算。如果错误持续出现,请确认该代币和链当前已在您的团队中启用。 |
+| 60004 | 未找到待操作的交易记录。 | 请验证 `transaction_id` 值是否正确,并确认该交易存在于您的团队中。 |
+| 60005 | 交易当前状态不允许取消。 | 请检查当前交易状态。只有处于特定状态(例如 `Pending`)的交易才可以取消。 |
+| 60006 | 该交易无法被丢弃。 | 该交易处于不允许丢弃的状态,请在重试前检查交易状态。 |
+| 60007 | 该交易无法加速。 | 该交易处于不允许加速的状态。当交易已确认或处于终态时可能出现此错误。 |
+
+#### MPC 钱包错误
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 50000 | MPC Vault 的主控组私钥分片尚未备份。 | 请在执行此操作前完成私钥分片备份。前往 Cobo Portal,完成该 Vault 的私钥备份流程。 |
+
+#### 智能合约与 EVM 错误
+
+以下错误码由智能合约钱包和 EVM 合约调用操作返回。
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 5001 | 合约 ABI 无效或无法解析。 | 请确认 ABI JSON 格式正确且完整。 |
+| 5002 | 传递给 EVM 操作的一个或多个参数无效。 | 请根据合约 ABI 定义检查参数类型和值。 |
+| 5003 | 交易 calldata 无效或编码不正确。 | 请确认 calldata 已针对目标函数正确进行 ABI 编码。 |
+| 5004 | 未找到请求的 EVM 资源。 | 请检查请求中的合约地址和链 ID。 |
+| 40001 | 外部数据源(例如区块浏览器)的速率限制已达到。 | 请稍后重试。此为上游速率限制导致的临时状况。 |
+| 40002 | 合约源代码未在区块浏览器上验证。 | 在进行 ABI 相关操作前,请先在相关区块浏览器(例如 Etherscan)上验证合约源代码。 |
+| 40003 | 指定链不支持该 EVM 操作。 | 请使用受支持的链。在您的团队设置中查看可用链列表。 |
+
+#### MFA 错误
+
+以下错误码在 Cobo Guard 多重身份验证(MFA)需要验证或验证失败时返回。
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 40201 | 提供的 Cobo Guard 密钥无效或已过期。 | 请确认您使用的是正确的有效 Cobo Guard 密钥。如有必要,在 Cobo Portal 中重新注册该密钥。 |
+| 40202 | Cobo Guard 请求仍在等待处理,尚未完成。 | 请等待 Guard 请求被审批或拒绝后再继续操作。 |
+| 40203 | Cobo Guard 请求尚无审批或拒绝结果。 | 请检查待处理的 Guard 请求状态,并在重试前完成审批。 |
+| 40204 | 执行此操作的用户必须与发起 Guard 请求的用户相同。 | 请确保同一用户账号用于发起和完成 Cobo Guard MFA 请求。 |
+
+#### 交易类别错误
+
+以下错误码由交易类别管理操作返回。
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 40000 | 类别名称超过 30 个字符。 | 请将类别名称缩短至 30 个字符或以下。 |
+| 40001 | 未找到指定的团队。 | 请确认您的团队 ID 和 API Key 环境正确无误。 |
+| 40002 | 交易类别数量已达到最大限制。 | 请在创建新类别前删除不需要的类别。 |
+| 40003 | 团队中已存在同名类别。 | 请使用唯一的类别名称。 |
+| 40004 | 类别名称包含无效字符。 | 请仅使用允许的字符命名类别。 |
+
+#### 合规与 KYT 错误
+
+以下错误码由合规和交易了解(KYT)操作返回。
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 40101 | 未找到指定 `transaction_id` 的合规请求。 | 请确认 `transaction_id` 正确,且已针对该交易发起合规检查。 |
+| 40102 | 合规请求不处于失败状态,无法重试。 | 重试前请检查合规请求的当前状态。只有处于 `Failed` 状态的请求才能重试。 |
+| 40103 | 合规请求类型不受支持。 | 请确认您提交的请求类型受合规 API 支持。 |
+| 40104 | 提供的 KYT 处置类型无效。 | 请为 KYT 操作提供有效的处置类型。 |
+| 40105 | 未找到指定的 KYT 请求。 | 请确认 KYT 请求 ID 是否正确。 |
+| 40106 | 该 KYT 筛查已存在处置请求。 | 创建新处置请求前,请先检查是否存在已有的处置请求。 |
+| 40107 | 该 KYT 处置已存在提币请求。 | 创建新提币请求前,请先检查是否存在已有的提币请求。 |
+| 40108 | 合规系统返回了无法识别的状态。 | 请确认请求参数正确,然后重试。如果错误持续出现,请在 Cobo Portal 中查看合规请求状态。 |
+| 40109 | 未找到指定 `transaction_id` 的 KYT 筛查请求。 | 请验证 `transaction_id`,并确认已针对该交易发起 KYT 筛查。 |
+| 40110 | 未找到指定 `screening_request_id` 的 KYT 筛查请求。 | 请确认 `screening_request_id` 值是否正确。 |
+| 40111 | 该交易的当前状态不允许执行处置操作。 | 发起处置前,请检查该交易的筛查状态。 |
+| 40112 | 为该交易提供的处置参数无效。 | 请核对处置参数,确保与该交易的筛查结果一致。 |
+| 40113 | 合规系统返回了无法识别的处置状态。 | 请确认请求参数正确,然后重试。如果错误持续出现,请在 Cobo Portal 中查看处置状态。 |
+| 40114 | 该交易的当前状态不允许执行解冻操作。 | 尝试解冻前,请检查该交易的当前筛查状态。 |
+| 40115 | KYT 请求的处置费用无效。 | 请验证 KYT 处置请求中的费用参数。 |
+| 40116 | 筛查请求的处置费用无效。 | 请验证筛查处置请求中的费用参数。 |
+| 40117 | KYT 处置的费用支付方式无效。 | 请提供有效的费用支付方式。 |
+| 40118 | KYT 处置的目标地址无效。 | 请为处置提供有效的目标地址。 |
+| 40119 | KYT 处置过程中发生错误。 | 请确认请求参数正确,然后重试。如果错误持续出现,请在 Cobo Portal 中查看处置请求状态。 |
+| 40120 | 筛查请求的处置金额无效。 | 请验证筛查处置请求中的处置金额。 |
+| 40121 | KYT 请求的处置金额无效。 | 请验证 KYT 处置请求中的处置金额。 |
+| 40122 | 钱包余额不足以支付处置操作的预估交易费用。 | 发起处置前,请确保钱包有足够余额支付交易费用。 |
+| 40123 | 无法发起处置操作,因为该交易当前未被冻结。 | KYT 处置只能应用于已冻结的交易,请在继续操作前确认交易的当前状态。 |
+| 40124 | 未找到指定交易哈希对应的合规请求。 | 请确认交易哈希是否正确。 |
+| 40125 | 未找到指定 `transaction_id` 的应用检查请求。 | 请确认 `transaction_id`,并确认已针对该交易发起合规应用检查。 |
+| 40126 | KYT 筛查完成结果无效或格式错误。 | 请检查 KYT 提供商返回的结果格式。 |
+
+#### Travel Rule 错误
+
+以下错误码由 Travel Rule 合规操作返回。
+
+| 错误码 | 描述 | 解决方案 |
+|---|---|---|
+| 70001 | 发生了通用 Travel Rule 错误。 | 请查看错误信息了解详情,并检查您的 Travel Rule 请求参数。 |
+| 70002 | 汇款方的 KYC 信息无效或不完整。 | 请提供完整有效的汇款方 KYC 信息。 |
+| 70003 | Travel Rule 供应商代码无效。 | 请提供有效的供应商代码。 |
+| 70004 | 汇款方的自然人实体信息缺失或不完整。 | 请补充完整汇款方的所有必填自然人实体信息。 |
+| 70005 | 汇款方的法人实体信息缺失或不完整。 | 请补充完整汇款方的所有必填法人实体信息。 |
+| 70006 | 汇款方信息缺失或不完整。 | 请提供所有必填的汇款方信息。 |
+| 70007 | 填写汇款人信息时发生错误。 | 请查看错误信息了解详情,并核实汇款人信息各字段。 |
+| 70008 | 该 Travel Rule 操作不支持自托管钱包。 | 此 Travel Rule 操作请使用 Cobo 托管钱包。 |
+| 70009 | 该记录的汇款方信息已提交。 | 每条记录的汇款方信息只能提交一次,如需更新请查看现有记录。 |
+| 70010 | 自托管钱包签名验证失败。 | 请确认已针对自托管钱包地址正确生成签名。 |
+| 70011 | 法人实体信息不完整,存在缺失的必填字段。 | 请提供法人实体的所有必填字段。 |
+| 70012 | 自然人实体信息不完整,存在缺失的必填字段。 | 请提供自然人实体的所有必填字段。 |
+| 70013 | 该地址已完成验证。 | 无需进一步操作。地址验证为一次性操作。 |
### HTTP 状态码
-| 状态码 | 描述 | 解决方案 |
+| 状态码 | 描述 | 解决方案 |
| --------------- | ---------------------- | ----------------------------------------------- |
-| 200 | 成功。 | 不适用 |
-| 400 | 错误请求。 | 检查请求参数。 |
-| 401 | 未经授权。 | 检查 API Key 是否属于当前环境(Dev/Prod)、API 签名是否正确、`timestamp` 是否有效且与签名参与字段一致。 |
-| 403 | 禁止访问。 | - 优先查看响应体中的业务错误码(例如 `2025`/`4001`)并按对应错误码的解决方案排查权限、角色、资源范围与组织归属。
- 如通过反向代理/网关访问 API,请检查代理侧策略、出口公网 IP、WAF/防火墙规则以及是否对请求头/路径做了拦截或重写(例如 Cloudflare/Nginx)。
- 如某些接口需要能力开通/白名单,请确认对应能力在目标环境已启用。
- 如与交易风控相关(例如自动审核/策略导致操作被拒绝),请检查风控规则与策略配置是否允许该类 API 操作。
|
-| 404 | 未找到。 | 检查请求 URL。 |
-| 405 | 方法不允许。 | 使用支持的 HTTP 方法。 |
-| 406 | 不可接受。 | 确保请求内容格式为 JSON。 |
-| 429 | 请求过多。 | 降低请求频率并稍后重试。 |
-| 500 | 内部服务器错误。此错误可能由多个问题引起,包括 [Org Access Tokens](/v2/apps/org-access-tokens) 过期。 | 检查您的服务器配置设置,包括 Org Access Tokens 是否已过期,然后稍后重试。 |
-| 502 | 错误网关。 | 检查连接并稍后重试。 |
-| 503 | 服务不可用。 | 稍后重试。 |
-
+| 200 | 成功。 | 不适用 |
+| 400 | 错误请求。 | 检查请求参数。 |
+| 401 | 未经授权。 | 检查 API Key 是否属于当前环境(Dev/Prod)、API 签名是否正确、`timestamp` 是否有效且与签名参与字段一致。 |
+| 403 | 禁止访问。 | - 优先查看响应体中的业务错误码(例如 `2025`/`4001`)并按对应错误码的解决方案排查权限、角色、资源范围与团队归属。
- 如通过反向代理/网关访问 API,请检查代理侧策略、出口公网 IP、WAF/防火墙规则以及是否对请求头/路径做了拦截或重写(例如 Cloudflare/Nginx)。
- 如某些接口需要能力开通/白名单,请确认对应能力在目标环境已启用。
- 如与交易风控相关(例如自动审核/策略导致操作被拒绝),请检查风控规则与策略配置是否允许该类 API 操作。
|
+| 404 | 未找到。 | 检查请求 URL。 |
+| 405 | 方法不允许。 | 使用支持的 HTTP 方法。 |
+| 406 | 不可接受。 | 确保请求内容格式为 JSON。 |
+| 429 | 请求过多。 | 降低请求频率并稍后重试。 |
+| 500 | 内部服务器错误。此错误可能由多个问题引起,包括 [Org Access Tokens](/v2/apps/org-access-tokens) 过期。 | 检查您的服务器配置设置,包括 Org Access Tokens 是否已过期,然后稍后重试。 |
+| 502 | 错误网关。 | 检查连接并稍后重试。 |
+| 503 | 服务不可用。 | 稍后重试。 |
diff --git a/snippets/error-codes.mdx b/snippets/error-codes.mdx
index f69d8555..afc61918 100644
--- a/snippets/error-codes.mdx
+++ b/snippets/error-codes.mdx
@@ -2,33 +2,205 @@ This article explains the common error codes and HTTP status codes you may encou
### Error codes
-| Error code | Description | Solution |
-|---------------------|---------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|
-| 1000 | Internal Server Error. This error can be caused by several issues including expired [Org Access Tokens](/v2/apps/org-access-tokens). | Check your server configuration settings, including whether your Org Access Token has expired, and try again later. |
-| 1003, 2003 | One or more required parameters are missing in the request. | Provide all required parameters. |
-| 1006, 2006 | One or more parameters are in an invalid format or contain unsupported values. | Provide valid parameters in the expected format. |
-| 12002 | The specified token is not supported by Cobo. | Choose a supported token. Call the [List supported tokens](/v2/api-references/wallets/list-supported-tokens) operation to get the full list of supported tokens. |
-| 12007, 30012 | Insufficient balance to perform the requested operation. | Ensure the source address has sufficient balance to cover the transferred amount. |
-| 12009, 30001 | Duplicate request ID. | Use a unique request ID. |
-| 12025 | The UTXOs specified in `included_utxos` or `excluded_utxos` are invalid. | Verify the UTXOs specified in `included_utxos` or `excluded_utxos`. |
-| 2000 | Internal error occurred during processing. | Please try again later. |
-| 2021 | The request handler is missing or not implemented. | Provide a valid handler for the request. |
-| 2024 | API key authentication failed. | - If `error_message` is `Your API key is not registered in this environment...`: you are using a key registered in the wrong environment. Switch to the correct API host and use the matching API key. See [Environments](/v2/guides/overview/environments).
- If `error_message` is `Your API key is not yet activated...` or `Api key is not activated`: complete Admin approval in Cobo Guard for the key to become Active.
- If `error_message` mentions the IP whitelist: add your server's egress IP to the key's allowlist in Cobo Portal.
- For signature failures, ensure the canonical string follows the format `METHOD\|PATH\|NONCE\|PARAMS\|BODY` with the nonce identical to the `Biz-Api-Nonce` header. See [Authentication](/v2/guides/overview/cobo-auth).
For details, see Register an API Key. |
-| 2025, 4001 | Forbidden access to the requested resource. | - Check the permissions, wallet scopes, and resource scopes associated with your API key. You can refer to [Permissions and wallet scopes](/v2/guides/overview/permissions-and-scopes) for details.
- If the error is related to user roles (for example, creating withdrawals or initiating transactions), make sure the operator has the required role (for example, withdrawals typically require Spender or Admin).
- If the error message contains "Resource out of organization (4001)", it usually means the resource you are accessing (for example, `wallet_id`) belongs to a different organization than the API key.
- If you have granted permissions but still get forbidden, check whether you are mixing Dev/Prod API keys or calling the wrong environment domain.
- For Custodial Wallet operations, verify that the permission is granted at the correct (upper) scope level (some permissions must be enabled in the parent Custodial Wallet settings).
- If this operation requires an enabled capability (feature flag / allowlist), ensure it is enabled in the target environment.
- If this is chain/asset related (for example, adding a chain but still seeing forbidden), confirm the chain/capability is enabled in your pricing plan/configuration.
|
-| 2026 | Too many requests. | Please try again later. |
-| 2028 | The requested resource was not found. | Check the request URL. |
-| 2029 | The provided status property is invalid. | Provide a valid value for the status property. |
-| 2050, 2052 | No available pricing plan, or usage limit has been exceeded. | Purchase a pricing plan or upgrade your existing one. For more information, see [Introduction to Bills & Payments](https://manuals.cobo.com/en/portal/bills-and-payments/introduction). |
-| 2051 | The current pricing plan has expired. | Renew your pricing plan to continue using the service. For more information, see [Introduction to Bills & Payments](https://manuals.cobo.com/en/portal/bills-and-payments/introduction). |
-| 30007 | Invalid amount. The value is not a valid number or does not meet the required format or range. | Provide a valid amount that meets the expected format and range. |
-| 30008 | Invalid absolute amount. The absolute value of the amount is either too small, too large, or zero when a non-zero value is required. | Ensure the absolute value of the amount meets the required conditions. |
-| 30010 | The provided amount is below the dust threshold. It is too small to be processed or transferred. | Increase the amount to exceed the dust threshold. |
-| 30011 | The provided amount is below the minimum deposit threshold. | Increase the deposit amount to meet the minimum threshold. |
-| 30013 | Insufficient balance to cover the required transaction fee. | Ensure the source address has enough balance to cover transaction fees. |
-| 30014 | The destination address is invalid. | Provide a valid destination address. |
-| 30023 | (This error only applies to Exchange Wallets) Invalid trading account type. | Provide a valid trading account type. |
-| 30032 | (This error only applies to MPC Wallets) Invalid key share holder group. | Check if a valid Main Group or Signing Group has been configured. |
-| 60010 | The specified token has not been enabled for this organization. | Enable the token for your organization. |
+#### General errors
+
+| Error code | Description | Solution |
+|---|---|---|
+| 1000 | Internal Server Error. This error can be caused by several issues including expired [Org Access Tokens](/v2/apps/org-access-tokens). | Check your server configuration settings, including whether your Org Access Token has expired, and try again later. |
+| 1003, 2003 | One or more required parameters are missing in the request. | Provide all required parameters. |
+| 1006, 2006 | One or more parameters are in an invalid format or contain unsupported values. | Provide valid parameters in the expected format. |
+| 2000 | Internal error occurred during processing. | Try again later. |
+| 2021 | The requested API endpoint is not implemented or is currently unavailable. | Verify the request path and HTTP method are correct. If the endpoint is valid, retry after a short delay. |
+| 2024 | API key authentication failed. | - If `error_message` is `Your API key is not registered in this environment...`: you are using a key registered in the wrong environment. Switch to the correct API host and use the matching API key. See [Environments](/v2/guides/overview/environments).
- If `error_message` is `Your API key is not yet activated...` or `Api key is not activated`: complete Admin approval in Cobo Guard for the key to become Active.
- If `error_message` mentions the IP whitelist: add your server's egress IP to the key's allowlist in Cobo Portal.
- For signature failures, ensure the canonical string follows the format `METHOD\|PATH\|NONCE\|PARAMS\|BODY` with the nonce identical to the `Biz-Api-Nonce` header. See [Authentication](/v2/guides/overview/cobo-auth).
For details, see Register an API Key. |
+| 2025, 4001 | Forbidden access to the requested resource. | - Check the permissions, wallet scopes, and resource scopes associated with your API key. You can refer to [Permissions and wallet scopes](/v2/guides/overview/permissions-and-scopes) for details.
- If the error is related to user roles (for example, creating withdrawals or initiating transactions), make sure the operator has the required role (for example, withdrawals typically require Spender or Admin).
- If the error message contains "Resource out of organization (4001)", it usually means the resource you are accessing (for example, `wallet_id`) belongs to a different organization than the API key.
- If you have granted permissions but still get forbidden, check whether you are mixing Dev/Prod API keys or calling the wrong environment domain.
- For Custodial Wallet operations, verify that the permission is granted at the correct (upper) scope level (some permissions must be enabled in the parent Custodial Wallet settings).
- If this operation requires an enabled capability (feature flag / allowlist), ensure it is enabled in the target environment.
- If this is chain/asset related (for example, adding a chain but still seeing forbidden), confirm the chain/capability is enabled in your pricing plan/configuration.
|
+| 2026 | Too many requests. | Reduce your request frequency and retry after a short delay. If you are using a polling pattern, implement exponential backoff. |
+| 2028 | The requested resource was not found. | Verify the resource ID in the request parameters and confirm the resource exists in your organization. |
+| 2029 | The value provided for the `status` parameter is not one of the allowed values. | Check the API reference for the operation you are calling to find the allowed `status` values, and provide one of them. |
+| 10000 | This organization has read-only permissions in Cobo Portal. | Review your organization's permission settings in Cobo Portal. Only your organization administrator can update permission levels. |
+
+#### Pricing plan errors
+
+| Error code | Description | Solution |
+|---|---|---|
+| 2050 | No available pricing plan for this organization. | Purchase a pricing plan in Cobo Portal. For more information, see [Introduction to Bills & Payments](https://manuals.cobo.com/en/portal/bills-and-payments/introduction). |
+| 2051 | The current pricing plan has expired. | Renew your pricing plan to continue using the service. For more information, see [Introduction to Bills & Payments](https://manuals.cobo.com/en/portal/bills-and-payments/introduction). |
+| 2052 | The usage limit for the current pricing plan has been exceeded. | Upgrade your pricing plan or wait for the next billing cycle. For more information, see [Introduction to Bills & Payments](https://manuals.cobo.com/en/portal/bills-and-payments/introduction). |
+| 2053 | The current pricing plan does not support this feature. | Upgrade to a plan that includes this feature. For more information, see [Introduction to Bills & Payments](https://manuals.cobo.com/en/portal/bills-and-payments/introduction). |
+| 2054 | The current pricing plan payment is overdue. | Complete the outstanding payment for your pricing plan. For more information, see [Introduction to Bills & Payments](https://manuals.cobo.com/en/portal/bills-and-payments/introduction). |
+
+#### Wallet configuration errors
+
+| Error code | Description | Solution |
+|---|---|---|
+| 2101 | The wallet name exceeds the maximum allowed character length. | Shorten the wallet name to within the allowed character limit and try again. |
+| 2102 | The wallet name contains invalid characters. | Use only Chinese characters, English letters, numbers, and underscores in the wallet name. |
+| 2103 | A wallet with this name already exists in the organization. | Use a unique wallet name. Wallet names must be unique within an organization. |
+| 2104 | The specified chain is not enabled for this organization's pricing plan. | Enable the chain in your pricing plan, or choose an enabled chain. Call the [List enabled chains](/v2/api-references/wallets/list-enabled-chains) operation to see all chains enabled for your organization. |
+| 2105 | For UTXO-based tokens (such as BTC), all available UTXOs are currently locked by a pending transaction or a transaction pending KYT screening. A new transfer cannot proceed until those UTXOs are released. | Call the [List transactions](/v2/api-references/transactions/list-transactions) operation to find the pending transactions for this wallet, and wait for them to complete before retrying. |
+
+#### Transfer errors
+
+The following error codes are returned by transfer and withdrawal operations.
+
+| Error code | Description | Solution |
+|---|---|---|
+| 30000 | Unauthorized. You do not have permission to perform this transfer. | Check the permissions and wallet scopes associated with your API key. See [Permissions and wallet scopes](/v2/guides/overview/permissions-and-scopes) for details. |
+| 30001, 12009 | The `request_id` has already been used. | Use a unique `request_id` for each new transaction. Duplicate `request_id` values are rejected to prevent duplicate transactions. |
+| 30002 | The specified token is not supported for this operation or organization. | Verify the `token_id` is correct. Call the [List supported tokens](/v2/api-references/wallets/list-supported-tokens) operation to get the full list of supported tokens. |
+| 30003 | The wallet type does not support this transfer operation. | Verify that the wallet type is compatible with the requested transfer. |
+| 30004 | The source wallet ID is invalid or the wallet does not exist. | Verify the `from_wallet_id` value is correct and the wallet belongs to your organization. |
+| 30005 | The source address format is invalid or not compatible with the token. | Provide a valid source address that is compatible with the token type. |
+| 30006 | The source address encoding format is not supported. | Use an address encoding format that is supported for this token. |
+| 30007 | Invalid amount. The value is not a valid number or does not meet the required format or range. | Provide a positive numeric amount. Call the [Get token information](/v2/api-references/wallets/get-token-information) operation to retrieve the token's `decimal` precision and ensure the amount does not exceed it. |
+| 30008 | The `abs_amount` value must be greater than 0. | Provide a positive, non-zero value for `abs_amount`. |
+| 30009 | The amount cannot be less than zero. | Provide a non-negative amount. |
+| 30010 | The withdrawal amount is below the minimum threshold for this token and cannot be processed. | Increase the withdrawal amount. Call the [Get token information](/v2/api-references/wallets/get-token-information) operation to retrieve the `dust_threshold` value for this token. |
+| 30011 | The deposit amount is below the minimum deposit threshold for this token. | Increase the deposit amount. Call the [Get token information](/v2/api-references/wallets/get-token-information) operation to retrieve the `minimum_deposit_threshold` value for this token. |
+| 30012, 12007 | The transfer amount exceeds the wallet's available balance. | Check the wallet's available balance, which equals the total balance minus any pending and reserved amounts. Call the [Get wallet balance](/v2/api-references/wallets/get-wallet-balance) operation to verify. |
+| 30013 | The fee token balance is insufficient to cover the transaction fee. | Ensure the wallet or Fee Station has sufficient balance in the fee token (for example, ETH on EVM chains) to cover the transaction fee. |
+| 30014 | The destination address is invalid or not compatible with the token. | Provide a valid destination address that is compatible with the token type. |
+| 30015 | The destination wallet ID is invalid or the wallet does not exist. | Verify the `to_wallet_id` value is correct and the wallet belongs to your organization. |
+| 30016 | The number of transaction categories exceeds the maximum of 5. | Reduce the number of categories in the `category_names` field to 5 or fewer. |
+| 30017 | The category name exceeds the maximum of 30 characters. | Shorten the category name to 30 characters or fewer. |
+| 30018 | The description exceeds the maximum of 100 characters. | Shorten the `description` field to 100 characters or fewer. |
+| 30019 | The transfer was rejected by the on-chain transaction policy of a Smart Contract Wallet. | Review the on-chain transaction policies configured for your Smart Contract Wallet in Cobo Portal. The destination address or token may be restricted by the policy rules. |
+| 30020 | The token is not in the on-chain whitelist of your Smart Contract Wallet. | Add the token to the on-chain whitelist in your Smart Contract Wallet configuration in Cobo Portal. |
+| 30021 | The destination address is not in the on-chain transfer whitelist of your Smart Contract Wallet. | Add the destination address to the on-chain transfer whitelist in your Smart Contract Wallet configuration in Cobo Portal. |
+| 30022 | An invalid trading account type was specified as the transfer source for an Exchange Wallet. | Provide a valid trading account type as the transfer source. |
+| 30023 | An invalid trading account type was specified as the transfer destination for an Exchange Wallet. | Provide a valid trading account type as the transfer destination. |
+| 30024 | Neither `to_wallet_id` nor `to_address` was provided. | Provide either `to_wallet_id` or `to_address` as the transfer destination. |
+| 30025 | Withdrawals are currently unavailable for this wallet or token. | Verify that withdrawals are enabled for this wallet in Cobo Portal and that the token supports withdrawals. |
+| 30026 | Transfers are currently unavailable for this wallet. | Verify that transfers are enabled for this wallet in Cobo Portal. |
+| 30027 | Deposits into the destination wallet are currently unavailable. | Check the destination wallet settings in Cobo Portal to confirm that deposits are enabled for this wallet and token. |
+| 30028 | The `request_id` parameter is missing or invalid. | Provide a valid, non-empty `request_id` with the request. |
+| 30029 | Trading account sub-wallets cannot initiate withdrawal transactions in an Exchange Wallet. | Use the Exchange Wallet's main account to initiate the withdrawal, not a trading account sub-wallet. |
+| 30030 | Withdrawal and deposit services for this token are temporarily suspended. | This suspension is temporary. Retry after a delay. |
+| 30031 | The specified token has not been enabled for this organization. | Enable the token for your organization in Cobo Portal before initiating the transfer. Call the [List enabled tokens](/v2/api-references/wallets/list-enabled-tokens) operation to see all tokens currently enabled for your organization. |
+| 30032 | No key share holder group is available for signing in this MPC Wallet. | Ensure that a valid Main Group or Signing Group is configured for your MPC Wallet in Cobo Portal before initiating transactions. |
+| 30033 | The recipient address does not belong to Cobo, or Cobo Loop has been disabled for these wallets. | Verify that the recipient address is a Cobo address and that Cobo Loop is enabled for both wallets. To send to a non-Cobo address, use a standard withdrawal instead. |
+| 30034 | The transaction was rejected by the on-chain transaction policy of a Smart Contract Wallet. | Review the on-chain transaction policies configured for your Smart Contract Wallet. Adjust the policy rules or transaction parameters to allow this transaction. |
+| 30035 | The Exchange Wallet is connected in Observation mode, which is read-only and does not support withdrawals. | Switch to an Exchange Wallet connected in Normal mode, or use a different wallet that has withdrawal permissions. |
+| 30036 | The Fee Station balance is insufficient. Transactions cannot proceed until it is recharged. | Top up your Fee Station in Cobo Portal with the appropriate fee token (for example, ETH for EVM chains). |
+| 30037 | The source and destination wallets are not eligible for Cobo Loop transactions. | Verify that both wallets support Cobo Loop. Use a standard transfer for wallets that are not Cobo Loop eligible. |
+| 30038 | The Fee Station token balance is insufficient to cover the transaction fee. | Top up the Fee Station with the required fee token before retrying the transaction. |
+| 30039 | Cobo's Fee Station balance is insufficient to pay for gas. | This error is caused by a temporary condition on Cobo's side. Retry after a short delay. |
+
+#### Token and balance errors
+
+| Error code | Description | Solution |
+|---|---|---|
+| 12002 | The specified token is not supported by Cobo. | Choose a supported token. Call the [List supported tokens](/v2/api-references/wallets/list-supported-tokens) operation to get the full list of supported tokens. |
+| 12025 | The UTXOs specified in `included_utxos` or `excluded_utxos` are invalid. | Verify the UTXOs specified in `included_utxos` or `excluded_utxos`. |
+| 60010 | The specified token has not been enabled for this organization. | Enable the token for your organization in Cobo Portal. Call the [List enabled tokens](/v2/api-references/wallets/list-enabled-tokens) operation to see all tokens currently enabled for your organization. |
+| 60020 | The specified address is not enabled for the given token and wallet combination. | Verify that the address is associated with the correct wallet and token in your organization settings. |
+
+#### Transaction management errors
+
+| Error code | Description | Solution |
+|---|---|---|
+| 60001 | The specified organization was not found. | Verify that your API key belongs to the correct organization and that you are calling the correct environment. |
+| 60002 | The transaction type is invalid. | Provide one of the supported transaction types: `Transfer`, `ContractCall`, or `MessageSign`. |
+| 60003 | The transaction fee could not be estimated. | Retry the fee estimation after a short delay. If the error persists, verify that the token and chain are currently supported and active for your organization. |
+| 60004 | The transaction could not be found for the requested action. | Verify the `transaction_id` value and confirm that the transaction exists in your organization. |
+| 60005 | The transaction cannot be canceled because it is in a state that does not allow cancellation. | Check the current transaction status. Only transactions in certain states (such as `Pending`) can be canceled. |
+| 60006 | The transaction cannot be dropped. | The transaction is in a state that does not allow it to be dropped. Check the transaction status before retrying. |
+| 60007 | The transaction cannot be sped up. | The transaction is in a state that does not allow a speed-up. This may occur when the transaction is already confirmed or in a terminal state. |
+
+#### MPC wallet errors
+
+| Error code | Description | Solution |
+|---|---|---|
+| 50000 | The MPC Vault does not have backed-up key shares for the Main Group. | Back up the Main Group key shares before performing this operation. Go to Cobo Portal and complete the key backup process for the Vault. |
+
+#### Smart contract and EVM errors
+
+The following error codes are returned by smart contract wallet and EVM contract call operations.
+
+| Error code | Description | Solution |
+|---|---|---|
+| 5001 | The contract ABI is invalid or cannot be parsed. | Verify that the ABI JSON is correctly formatted and complete. |
+| 5002 | One or more parameters passed to the EVM operation are invalid. | Check the parameter types and values against the contract ABI definition. |
+| 5003 | The transaction calldata is invalid or improperly encoded. | Verify that the calldata is correctly ABI-encoded for the target function. |
+| 5004 | The requested EVM resource was not found. | Check the contract address and chain ID in the request. |
+| 40001 | The external data source (such as a block explorer) rate limit has been reached. | Retry after a short delay. This is a temporary condition caused by upstream rate limits. |
+| 40002 | The contract source code is not verified on the block explorer. | Verify the contract source code on the relevant block explorer (such as Etherscan) before attempting ABI-related operations. |
+| 40003 | The specified chain is not supported for this EVM operation. | Use a supported chain. Check the chain list in your organization's settings. |
+
+#### MFA errors
+
+The following error codes are returned when Cobo Guard multi-factor authentication (MFA) is required or fails.
+
+| Error code | Description | Solution |
+|---|---|---|
+| 40201 | The Cobo Guard key provided is invalid or has expired. | Ensure you are using the correct active Cobo Guard key. Re-register the key in Cobo Portal if necessary. |
+| 40202 | The Cobo Guard request is still pending and has not been completed. | Wait for the Guard request to be approved or rejected before proceeding. |
+| 40203 | The Cobo Guard request has no approval or rejection result yet. | Check the status of the pending Guard request and complete it before retrying. |
+| 40204 | The user performing this operation must be the same user who initiated the Guard request. | Ensure the same user account is used for both initiating and completing the Cobo Guard MFA request. |
+
+#### Transaction category errors
+
+The following error codes are returned by transaction category management operations.
+
+| Error code | Description | Solution |
+|---|---|---|
+| 40000 | The category name exceeds 30 characters. | Shorten the category name to 30 characters or fewer. |
+| 40001 | The specified organization was not found. | Verify your organization ID and API key environment. |
+| 40002 | The number of transaction categories has reached the maximum limit. | Delete unused categories before creating new ones. |
+| 40003 | A category with this name already exists in the organization. | Use a unique category name. |
+| 40004 | The category name contains invalid characters. | Use only allowed characters in the category name. |
+
+#### Compliance and KYT errors
+
+The following error codes are returned by compliance and Know Your Transaction (KYT) operations.
+
+| Error code | Description | Solution |
+|---|---|---|
+| 40101 | The compliance request for the specified `transaction_id` was not found. | Verify the `transaction_id` is correct and that a compliance check has been initiated for it. |
+| 40102 | The compliance request cannot be retried because it is not in a failed state. | Check the current status of the compliance request before retrying. Only requests in a `Failed` state can be retried. |
+| 40103 | The compliance request type is not supported. | Verify the request type you are submitting is supported by the compliance API. |
+| 40104 | The KYT disposal type provided is invalid. | Provide a valid disposal type for the KYT operation. |
+| 40105 | The specified KYT request was not found. | Verify the KYT request ID. |
+| 40106 | A disposal request for this KYT screening already exists. | Check for an existing disposal request before creating a new one. |
+| 40107 | A withdrawal request for this KYT disposal already exists. | Check for an existing withdrawal request before creating a new one. |
+| 40108 | The compliance system returned an unrecognized status. | Verify your request parameters are correct, then retry. If the error persists, review the compliance request status in Cobo Portal. |
+| 40109 | No KYT screening request was found for the specified `transaction_id`. | Verify the `transaction_id` and ensure that a KYT screening was initiated for it. |
+| 40110 | No KYT screening request was found for the specified `screening_request_id`. | Verify the `screening_request_id` value. |
+| 40111 | The transaction status does not allow a disposal action at this stage. | Check the screening status of the transaction before initiating a disposal. |
+| 40112 | The disposal parameters provided are invalid for this transaction. | Review the disposal parameters and ensure they are consistent with the transaction's screening result. |
+| 40113 | The compliance system returned an unrecognized disposal status. | Verify your request parameters are correct, then retry. If the error persists, review the disposal status in Cobo Portal. |
+| 40114 | The transaction status does not allow an unfreeze action. | Check the transaction's current screening status before attempting to unfreeze it. |
+| 40115 | The disposal fee for the KYT request is invalid. | Verify the fee parameters in the KYT disposal request. |
+| 40116 | The disposal fee for the screening request is invalid. | Verify the fee parameters in the screening disposal request. |
+| 40117 | The fee payment method for the KYT disposal is invalid. | Provide a valid fee payment method. |
+| 40118 | The destination address for the KYT disposal is invalid. | Provide a valid destination address for the disposal. |
+| 40119 | An error occurred during the KYT disposal process. | Verify your request parameters are correct, then retry. If the error persists, review the disposal request in Cobo Portal. |
+| 40120 | The disposal amount for the screening request is invalid. | Verify the disposal amount in the screening disposal request. |
+| 40121 | The disposal amount for the KYT request is invalid. | Verify the disposal amount in the KYT disposal request. |
+| 40122 | The wallet balance is insufficient to cover the estimated transaction fee for the disposal. | Ensure the wallet has sufficient balance to cover the transaction fee before initiating the disposal. |
+| 40123 | A disposal action cannot be initiated because the transaction is not currently frozen. | A KYT disposal can only be applied to frozen transactions. Verify the transaction's current status before proceeding. |
+| 40124 | No compliance request was found for the specified transaction hash. | Verify the transaction hash. |
+| 40125 | The app check request for the specified `transaction_id` was not found. | Verify the `transaction_id` and ensure that a compliance app check was initiated for it. |
+| 40126 | The KYT screening completion result is invalid or malformed. | Review the result format returned by the KYT provider. |
+
+#### Travel Rule errors
+
+The following error codes are returned by Travel Rule compliance operations.
+
+| Error code | Description | Solution |
+|---|---|---|
+| 70001 | A general Travel Rule error occurred. | Check the error message for details and review your Travel Rule request parameters. |
+| 70002 | The originator KYC information is invalid or incomplete. | Provide complete and valid KYC information for the originator. |
+| 70003 | The Travel Rule vendor code is invalid. | Provide a valid vendor code. |
+| 70004 | The originator's nature entity information is missing or incomplete. | Complete all required nature entity fields for the originator. |
+| 70005 | The originator's legal entity information is missing or incomplete. | Complete all required legal entity fields for the originator. |
+| 70006 | The originator information is missing or incomplete. | Provide all required originator information. |
+| 70007 | An error occurred while entering the sender information. | Check the error message for details and verify the sender information fields. |
+| 70008 | This Travel Rule operation is not supported for self-custody wallets. | Use a Cobo-managed wallet for this Travel Rule operation. |
+| 70009 | Originator information has already been submitted for this record. | Originator information can only be submitted once per record. Review the existing record if updates are needed. |
+| 70010 | The self-custody wallet signature verification failed. | Ensure the signature is generated correctly for the self-custody wallet address. |
+| 70011 | The legal entity information is incomplete — required fields are missing. | Provide all required fields for the legal entity. |
+| 70012 | The nature entity information is incomplete — required fields are missing. | Provide all required fields for the nature entity. |
+| 70013 | This address has already been verified. | No further action is needed. Address verification is a one-time operation. |
@@ -47,4 +219,3 @@ This article explains the common error codes and HTTP status codes you may encou
| 500 | Internal Server Error. This error can be caused by several issues including expired [Org Access Tokens](/v2/apps/org-access-tokens). | Check your server configuration settings, including whether your Org Access Token has expired, and try again later. |
| 502 | Bad Gateway. | Check the connectivity and try again later. |
| 503 | Service Unavailable. | Try again later. |
-