For the complete documentation index, see llms.txt. This page is also available as Markdown.

获取交易状态变更通知

当用户完成支付流程时,接收交易状态变更通知。

在支付流程中,交易状态将为以下几种之一:

  • 待办的

  • 成功的

  • 失败的

当交易被标记为“成功”或“失败”时,您将通过发布商门户中配置的交易完成通知 URL 收到通知。

先决条件

  • 交易“完成通知 URL”已在发布商门户中配置。有关详细说明,请参阅“设置付款”。更改将立即生效。

通知参数

通知将发送到配置的交易完成通知 URL,并附加以下查询参数。

TxnId

始终 支付请求发起期间生成的交易 ID

OrderId

始终 是您的订单 ID,该 ID 在发起付款请求时传递。

*OriginAmount

*始终(仅限 v2.0)

初始请求中提供的以原币种计价的原始金额

*OriginCurrency

*始终(仅限 v2.0) ISO 4217 字母代码(USD、IDR 等)。用于在发起请求中指定商品价格的原始货币。OriginCurrency 可以与 PayCurrency 不同。

*PayAmount

*始终(仅限 v2.0)

以支付货币形式向用户收取的最终价格。注意:总价始终等于支付金额。

*PayCurrency

*始终(仅限 v2.0) ISO 4217 字母代码(USD、IDR 等)。用于向用户收取实际款项的货币。

*SubTotalPrice

*始终(仅限 v2.0)

税前交易净额。

计算方法如下:totalPrice / (1 + payTaxRate)。这代表商品的基本价格,不包括当地服务费或数字税。

*PayTaxRate

*始终(仅限 v2.0)

适用于交易的税率(例如,0.08为8%)。该值根据商家配置、地区税法或用户的具体位置(邮政编码)动态确定。

resultDesc

始终

resultDesc参数旨在帮助商家准确分析和解决交易失败的原因。

  • 如果resultCode相等0,则resultDesc返回成功

  • 如果指示resultCode出现错误,resultDesc则会提供错误的详细描述。

ResultCode

始终 ResultCode 有助于指示交易状态。

ResultCode = 0表示交易成功。

ResultCode = 431、481 或 216 表示交易正在处理中。

所有其他 ResultCode 值均表示交易失败。您可以在此处找到完整的错误代码列表及其说明。

TotalPrice

始终 显示用户为此次交易支付的总金额。此金额始终以当地货币显示

PaymentType

始终 是用户尝试使用的付款类型。

PaymentType 等于支付通道 ID,如果支付通道是运营商计费,则为 1。

Checksum

始终 校验和 用于验证消息是否由 Codapay 发送且未被篡改。有关如何使用此值的更多信息,请参阅“安全”部分。

MnoId

可选: 如果在支付通道初始化期间使用了 need_mno_id 参数,则此参数将包含支付通道 ID。

USDPrice

可选: 如果在美元不是当地货币的国家/地区发起交易,Coda 回调参数(TotalPrice)默认显示用户的当地货币金额。

如果您需要在回调函数中添加初始美元价格,请在发布商门户中进行配置。更多详情请参阅美元定价部分。

预期回应

Codapay 发送通知后,希望收到确认收到的回复。

如果您的应用程序成功处理了通知,则返回“ResultCode=0”。否则,返回错误代码。

如果未收到回复,通知将以 5 分钟的间隔重新发送 3 次。如果所有尝试均失败,系统将发送电子邮件提醒。

要订阅交易通知,请前往发布商门户

团队 > 管理访问权限 > 勾选“交易通知” > 保存更改

样本

检查交易状态

我们强烈建议您在收到购买通知 webhook 后调用InquiryPaymentResult API。这有助于在释放购买的商品之前,核对您的系统和 Coda 系统中的交易状态。

最后更新于

这有帮助吗?