2026西湖龙井茶官网DTC发售:茶农直供,政府溯源防伪到农户家
当您通过 Afriex 商业应用程序接口创建交易时,您收到的响应仅仅是开始。交易返回的状态为PENDING(待处理)。此后发生的情况——无论是转为PROCESSING(处理中)、COMPLETED(已完成)、IN_REVIEW(审核中)还是FAILED(失败)——都会通过网络钩子送达。
支付系统中的大多数集成错误都源于网络钩子处理不当,而非应用程序接口调用本身。签名验证遗漏、处理程序超时、状态更新被重复应用、从解析后的 JavaScript 对象表示法中读取字段而非原始正文,这些都是导致付款在尚未结算时看似已结算,或向用户触发重复通知的错误原因。
本文介绍了 Afriex 网络钩子的工作原理、系统触发的所有事件、如何正确验证签名、如何构建能在生产环境中稳定运行的处理程序,以及如何在正式上线前进行本地测试。
Afriex 发送的内容及发送时机
每当资源发生变更时,Afriex 都会向您配置的网络钩子统一资源定位符发送一个带签名的超文本传输协议帖子请求。有三种资源类型会生成事件。
交易事件是您最常交互的事件。每次创建交易或其状态发生变化时,Afriex 都会触发TRANSACTION.CREATED(交易.已创建)或TRANSACTION.UPDATED(交易.已更新)。交易经历的全部状态词汇如下:
| 状态 | 含义 |
|---|---|
PENDING |
交易已接收,等待处理 |
PROCESSING |
正在积极处理中 |
COMPLETED |
已成功结算 |
SUCCESS |
已结算交易的别名 |
FAILED |
失败。请查看meta以获取详情 |
CANCELLED |
在处理开始前已取消 |
REFUNDED |
资金已退回给发送方 |
IN_REVIEW |
正在人工审核中 |
REJECTED |
审核后已被拒绝 |
RETRY |
正由网络自动重试 |
UNKNOWN |
状态无法确定。请联系支持团队 |
客户事件在创建客户(CUSTOMER.CREATED)、更新客户详细信息(CUSTOMER.UPDATED)或删除客户(CUSTOMER.DELETED)时触发。这些事件有助于使您的本地客户记录与 Afriex 保持同步。
支付方式事件在创建(PAYMENT_METHOD.CREATED)、更新(PAYMENT_METHOD.UPDATED)和删除(PAYMENT_METHOD.DELETED)时触发。如果支付方式在 Afriex 端被删除,您的应用程序需要知晓此事,以便提示用户在下一次付款前绑定新的支付方式。
此外,还有用于结账流程的CHECKOUT_SESSION.CREATED(结账会话.已创建)事件。
正式上线前:将互联网协议地址加入白名单
这一步骤常让开发人员措手不及。在 Afriex 能够向您的服务器交付网络钩子之前,您的防火墙必须允许来自 Afriex 互联网协议地址的入站流量。无论签名是否有效,都应阻止来自任何其他互联网协议地址的网络钩子请求。
| 环境 | 互联网协议地址 |
|---|---|
| 沙盒 | 34.234.189.210 |
| 生产环境 | 34.197.33.100 |
免责声明:本文内容来自互联网,该文观点不代表本站观点。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请到页面底部单击反馈,一经查实,本站将立刻删除。