概述
Dodo Payments API 提供详细的交易失败原因,帮助您理解为什么支付尝试未成功。这些失败原因在不同的支付方式和提供商之间是标准化的,使您能够在应用程序中实现一致的错误处理。 每个交易失败响应包括:- 一个特定的失败原因代码
- 一个可读的错误信息
- 可用时关于失败的额外上下文
- 错误是否可以由用户纠正或需要系统干预
- 向客户提供清晰的反馈
- 实施适当的重试逻辑
- 优雅地处理不同的失败场景
- 维护可靠的支付处理系统
交易失败原因
下表列出了所有可能的交易失败原因、它们的含义以及它们是否是用户可纠正的错误。| 失败代码 | 用户错误 | 描述 |
|---|---|---|
AUTHENTICATION_FAILURE | 是 | 交易过程中身份验证失败 |
AUTHENTICATION_REQUIRED | 是 | 需要额外的身份验证以完成交易 |
AUTHENTICATION_TIMEOUT | 是 | 身份验证过程超时 |
CARD_DECLINED | 否 | 卡被发卡银行拒绝 |
CARD_NOT_ACTIVATED | 是 | 持卡人尚未激活卡 |
CARD_VELOCITY_EXCEEDED | 是 | 在短时间内尝试了太多交易 |
CUSTOMER_CANCELLED | 是 | 客户取消了交易 |
DO_NOT_HONOR | 否 | 发卡银行拒绝了交易 |
EXPIRED_CARD | 是 | 卡已过期 |
FRAUDULENT | 是 | 交易被标记为潜在欺诈 |
GENERIC_DECLINE | 否 | 交易因未指定原因被拒绝 |
INCORRECT_CVC | 是 | 提供的 CVC 代码不正确 |
INCORRECT_NUMBER | 是 | 卡号输入不正确 |
INSUFFICIENT_FUNDS | 是 | 账户资金不足以完成交易 |
INVALID_ACCOUNT | 是 | 提供的账户信息无效 |
INVALID_AMOUNT | 是 | 交易金额无效 |
INVALID_CARD_NUMBER | 是 | 卡号格式无效 |
INVALID_CARD_OWNER | 是 | 持卡人信息无效 |
INVALID_CVC | 是 | CVC 格式无效 |
INVALID_EXPIRY_YEAR | 是 | 卡的到期年份无效 |
INVALID_PIN | 是 | 提供的 PIN 不正确 |
INVALID_REQUEST | 是 | 交易请求包含无效数据 |
INVALID_UPI_ID | 是 | 提供的 UPI ID 无效 |
LIMIT_EXCEEDED | 是 | 交易超过了卡或账户的限制 |
LIVE_MODE_TEST_CARD | 是 | 在实时模式下使用了测试卡 |
LOST_CARD | 是 | 卡已被报告为丢失 |
MANDATE_INVALID | 是 | 支付授权无效 |
MANDATE_REQUIRED | 是 | 此交易需要授权 |
MANDATE_REQUIRED_SYSTEM | 否 | 系统要求此交易类型需要授权 |
NETWORK_ERROR | 否 | 交易过程中发生网络错误 |
NETWORK_TIMEOUT | 否 | 网络请求超时 |
ORDER_CREATION_FAILED | 否 | 创建交易订单失败 |
PAYMENT_METHOD_PROVIDER_DECLINED | 是 | 支付方式提供商拒绝了交易 |
PAYMENT_METHOD_UNSUPPORTED | 是 | 此交易不支持该支付方式 |
PICKUP_CARD | 是 | 卡已被报告为被盗,应被收回 |
PROCESSING_ERROR | 否 | 处理交易时发生错误 |
PROVIDER_UNSUPPORTED | 否 | 支付提供商不支持此交易类型 |
REENTER_TRANSACTION | 是 | 需要重新输入交易 |
REVOCATION_OF_AUTHORIZATION | 是 | 交易的授权被撤销 |
STOLEN_CARD | 是 | 卡已被报告为被盗 |
TRANSACTION_NOT_ALLOWED | 是 | 此卡或账户不允许进行交易 |
TRANSACTION_NOT_APPROVED | 是 | 交易未被批准 |
TRY_AGAIN_LATER | 否 | 交易应稍后重试 |
UNKNOWN_ERROR | 否 | 发生未知错误 |
用户错误 表示支付拒绝是否可以由客户解决。当
true 时,客户可以采取措施解决问题(例如,输入正确的卡信息)。当 false 时,拒绝是由于系统级问题或银行限制,客户无法解决。