支付结果查询
入参
paymentRequestId String
商户为识别支付请求分配的专属 ID。paymentRequestId 和 paymentId 不能都为null。如果同时指定了 paymentRequestId 和 paymentId,则 paymentId 优先。
更多信息:
- 最大长度:64 字符
paymentId String
Antom 为识别支付而分配的支付 ID。paymentRequestId 和 paymentId 不能同时为null。paymentId 与 paymentRequestId 之间存在一对一的对应关系。如果同时指定了 paymentRequestId 和 paymentId,则 paymentId 优先。
更多信息:
- 最大长度:64 字符
出参
result Result REQUIRED
请求结果包含状态和错误代码等信息。
注意:此字段不表示支付结果。此字段仅指示支付结果查询接口是否调用成功。
paymentStatus String
指示了 Antom 支付的最终状态。有效值包括:
SUCCESS: 交易成功。FAIL: 交易失败。PROCESSING: 交易正在处理中。CANCELLED: 交易已取消。
paymentResultCode String REQUIRED
支付结果代码。
更多信息:
- 最大长度:64 字符
paymentResultMessage String REQUIRED
支付结果消息。
更多信息:
- 最大长度:256 字符
paymentRequestId String REQUIRED
商户为识别支付请求而分配的专属 ID。
更多信息:
- 最大长度:64 字符
paymentId String REQUIRED
Antom 为识别支付而分配的支付 ID。
更多信息:
- 最大长度:64 字符
paymentAmount Amount REQUIRED
商户请求在订单货币中接收的支付金额。
pspCustomerInfo PspCustomerInfo
电子钱包客户信息。
注意:当电子钱包能够提供相关信息时,此字段将返回。
redirectActionForm RedirectActionForm
提供有关重定向操作的信息。
transactions Array<Transaction>
交易的详细信息。
更多信息:
- 最多可包含元素个数:无限
grossSettlementAmount Amount
结算总额,等于交易金额乘以 settlementQuote 的值。
注意:当结算币种与交易币种相同时,此字段为空。
settlementQuote Quote
交易时结算币种与交易币种之间的汇率,仅在锁定汇率的情况下提供。
注意:当结算币种与交易币种相同时,此字段为空。
receiptInfo ReceiptInfo
收据信息。
注意:此参数在线下卡支付场景下必传。
acquirerInfo AcquirerInfo
收单机构侧信息。
注意:此参数在线下卡支付场景下必传。
acquirerReferenceNo String
收单机构侧交易流水号。
注意:当交易由非 Antom 收单机构结算时,请指定此参数。
更多信息:
- 最大长度:64 字符
actualPaymentAmount Amount REQUIRED
实际支付金额。
paymentResultInfo PaymentResultInfo
支付结果信息。
注意:针对指定地区的特定商户,当在 支付会话创建 接口中的 paymentMethodType 值为
CARD 时,返回此参数。
请求
响应
更多信息
本节提供了关于关键参数的更多详细信息。请参阅以下列表以了解详情:
Antom 成功执行此次支付的时间,即支付状态确定的日期和时间。此值用作后续可撤销和可退款时间的起始时间。例如,如果可退款时间为 6 个月,接受退款的最终时间是 paymentTime 加上 6 个月。
支付 ID。对于轮询同一笔支付,此字段必须唯一;对于轮询不同的支付,此字段必须不同。此值可用于后续的查询、取消或退款操作。
决定何时使用 paymentRequestId 或 paymentId,请遵循以下规则:
结果处理逻辑
对于不同的请求结果,需要执行不同的操作。详细信息如下:
- 如果 result.resultStatus 的值为
S,则支付结果查询成功。 - 如果 result.resultStatus 的值为
F,则支付查询失败。 - 如果 result.resultStatus 的值为
U,则请求结果未知。使用相同的请求参数重试查询请求。
结果/错误码
| 结果码 | 值 | 结果码信息 | 行动建议 |
|---|---|---|---|
| SUCCESS | S | 成功 | 接口调用成功。通过 paymentStatus 获取订单状态。 |
| ACCESS_DENIED | F | 访问被拒绝。 | 详细原因请咨询 Antom 技术支持。 |
| CURRENCY_NOT_SUPPORT | F | 币种不受支持。 | 详细原因请咨询 Antom 技术支持。 |
| INVALID_API | F | 调用的接口无效或未激活。 | 请联系 Antom 技术支持解决此问题。 |
| NO_PAY_OPTIONS | F | 没有可用的支付选项。 | 请联系 Antom 技术支持以获取详细原因。 |
| PARAM_ILLEGAL | F | 缺少必需的参数,或者存在非法参数。例如,非数字输入、无效的日期,或者参数的长度和类型错误。 | 检查并验证当前接口所需的请求字段(包括头部字段和正文字段)是否正确传递并有效。 |
| PROCESS_FAIL | F | 发生了常见的业务失败。 | 获取 Antom 技术支持前请勿重试。 |
| USER_KYC_NOT_QUALIFIED | F | 支付失败,原因在于用户的 KYC 状态。用户要么未完成 KYC 认证,要么其 KYC 状态不满足此交易要求(例如,支付金额或产品信息的限制)。 | 提示用户完成 KYC 流程。 |
| PAYMENT_IN_PROCESS | U | 支付正在处理中。 | 对于线下支付,您发起的请求中的 paymentRequestId 与已存在的交易(可能是成功或进行中的交易)相同。请检查响应中是否返回了 redirectActionForm.redirectUrl。如果返回了,将用户重定向到 |
| UNKNOWN_EXCEPTION | U | 由于未知原因,接口调用失败。 | 对于线下支付,可以再次调用 支付结果查询 接口来查询最终支付状态。如果问题仍未解决,请联系 Antom 技术支持。 |
| DO_NOT_HONOR | F | 支付被发卡行拒绝。 | 请尝试使用其他银行卡支付,或联系发卡行。 |
| ORDER_NOT_EXIST | F | 订单不存在。 | 请检查 paymentId 是否正确。 |
| CLIENT_INVALID | F | 客户端无效。 | 请检查 clientId 是否正确。 |
| METHOD_NOT_SUPPORTED | F | 服务器不支持请求的 HTTP 方法。 | 请检查 HTTP 方法是否正确。 |
| MEDIA_TYPE_NOT_ACCEPTABLE | F | 服务器不支持客户端可接受的媒体类型。 |
请检查媒体类型是否正确。 |