支付结果查询(线下商店)

POST /v1/payments/inquiryPayment

使用此接口查询先前提交的支付请求信息,或接收支付的异步处理结果。

结构

报文由报文头和报文体组成。本文主要介绍报文体结构信息,有关报文头的结构信息,请参阅:

注意:将每个字段(除数组外)的数据类型设置为字符串。这意味字段值必须使用双引号(" ")括起来。例如:

  • 如果字段的数据类型为整数属性,且其值为 20,设置为 "20"。
  • 如果字段的数据类型为布尔属性,且其值为 true,设置为 "true"。

入参

paymentRequestId String  

商户为识别支付请求分配的专属 ID。paymentRequestId paymentId 不能都为null。如果同时指定了 paymentRequestId paymentId,则 paymentId 优先。

更多信息:

  • 最大长度:64 字符

paymentId String  

Antom 为识别支付而分配的支付 ID。paymentRequestId paymentId 不能同时为nullpaymentId paymentRequestId 之间存在一对一的对应关系。如果同时指定了 paymentRequestId paymentId,则 paymentId 优先。

更多信息:

  • 最大长度:64 字符

出参

result Result  

请求结果包含状态和错误代码等信息。

注意:此字段不表示支付结果。此字段仅指示查询支付接口是否调用成功。

Show child parameters

paymentStatus String  

指示了 Antom 支付的最终状态。有效值包括:

  • SUCCESS: 交易成功。
  • FAIL: 交易失败。
  • PROCESSING: 交易正在处理中。
  • CANCELLED: 交易已取消。

paymentResultCode String  

支付结果代码

更多信息:

  • 最大长度:64 字符

paymentResultMessage String  

支付结果消息

更多信息:

  • 最大长度:256 字符

paymentRequestId String  

商户为识别支付请求而分配的专属 ID。

更多信息:

  • 最大长度:64 字符

paymentId String  

Antom 为识别支付而分配的支付 ID。

更多信息:

  • 最大长度:64 字符

paymentAmount Amount  REQUIRED

商户请求在订单货币中接收的支付金额。

Show child parameters

actualPaymentAmount Amount  

实际支付金额,等于支付金额乘以支付汇率。

注意:当支付货币与支付服务提供商的实际支付货币匹配时,该字段的值等于支付金额。

Show child parameters

paymentQuote Quote  

交易时支付货币与实际支付货币之间的汇率。

注意:当支付货币与支付服务提供商的实际支付货币相同时,该字段为空。

Show child parameters

authExpiryTime Datetime  

授权过期时间。

更多信息:

  • 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。

paymentCreateTime Datetime  

支付创建的时间和日期。

更多信息:

  • 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。

paymentTime Datetime  

支付成功或失败的最终状态发生的时间和日期。

更多信息:

  • 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。

pspCustomerInfo PspCustomerInfo  

客户信息,用于Alipay+ payment methods

注意: Alipay+ 移动支付提供商,是参与Alipay+ 核心服务的移动支付合作伙伴,也是与蚂蚁集团成员合作、面向用户或发卡机构提供支付服务的其他支付服务提供商。

Show child parameters

redirectActionForm RedirectActionForm  

提供有关重定向操作的信息。

Show child parameters

transactions Array<Transaction>  

交易的详细信息。

更多信息:

  • 最多可包含元素个数:无限
Show child parameters

grossSettlementAmount Amount  

结算总额,等于交易金额乘以 settlementQuote 的值。

注意:当结算货币与交易货币相同时,此字段为空。

Show child parameters

settlementQuote Quote  

交易时结算货币与交易货币之间的汇率,仅在锁定汇率的情况下提供。

注意:当结算货币与交易货币相同时,此字段为空。

Show child parameters
API Explorer

请求

URL
请求体

响应

Case
Payment successul
响应体

更多信息 

本节提供了关于关键参数的更多详细信息。请参阅以下列表以了解详情:

  • paymentTime:
    Antom 成功执行此次支付的时间,即支付状态确定的日期和时间。此值用作后续可撤销和可退款时间的起始时间。例如,如果可退款时间为 6 个月,接受退款的最终时间是 paymentTime 加上 6 个月。
  • paymentId:
    支付 ID。对于轮询同一笔支付,此字段必须唯一;对于轮询不同的支付,此字段必须不同。此值可用于后续的查询、取消或退款操作。
  • paymentRequestId paymentId:
    决定何时使用 paymentRequestId paymentId,请遵循以下规则:
    • 如果调用 支付 接口成功,商家可以使用 paymentId paymentRequestId 查询原始支付。
    • 如果调用 支付 接口返回未知异常或超时,商家只能使用 paymentRequestId 查询支付结果。
    • 如果调用 取消支付 接口返回未知异常或超时,商家可以使用原始支付的 paymentId paymentRequestId 查询取消结果。
    • 如果 退款(线下商店)接口返回未知异常或超时,商家可以使用原始支付的 paymentId paymentRequestId 查询退款结果。但不支持使用 refundRequestId

结果处理逻辑

对于不同的请求结果,需要执行不同的操作。详细信息如下:

  • 如果 result.resultStatus 的值为S,则支付结果查询成功。
  • 如果 result.resultStatus 的值为F,则支付查询失败。
  • 如果 result.resultStatus 的值为U,则请求结果未知。使用相同的请求参数重试查询请求。 

结果码

结果码结果码信息行动建议
SUCCESSS成功

接口调用成功。通过 paymentStatus 获取订单状态。

ORDER_NOT_EXISTF订单不存在。

请检查 paymentId 是否正确。

CLIENT_INVALIDF客户端无效。

请检查 clientId 是否正确。

METHOD_NOT_SUPPORTEDF服务器不支持请求的 HTTP 方法。

请检查 HTTP 方法是否正确。

MEDIA_TYPE_NOT_ACCEPTABLEF服务器不支持客户端可接受的媒体类型。

请检查媒体类型是否正确。

USER_KYC_NOT_QUALIFIEDF支付失败,原因在于用户的 KYC 状态。用户要么未完成 KYC 认证,要么其 KYC 状态不满足此交易要求(例如,支付金额或产品信息的限制)。

提示用户完成 KYC 流程。