接收通知
了解 Antom 所支持的通知接口及如何集成 Antom 的通知接口。
功能
各通知接口的功能及所支持的产品如下表所示:
通知接口 | 收银台 | 代扣 | 快捷支付 | 扫码签约 | 反扫支付 | 订单码支付 | 聚合码支付 | 说明 |
❌ | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ | 在授权成功或授权取消时,Antom 使用该接口向您发送授权结果信息。authorizationNotifyType 字段表明授权通知的类型:
| |
✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | 在支付或卡授权支付处理达到成功或失败终态时,Antom 使用该接口向您发送支付结果信息。result.resultStatus 字段表明支付或卡授权支付的结果:
| |
✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | 在请款处理达到成功或失败终态时,Antom 使用该接口向您发送请款结果信息。result.resultStatus 字段表明请款的结果:
| |
✔️ | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ | Antom 使用该接口向您发送拒付信息。disputeNotificationType字段表明拒付通知的类型:
| |
✔️ | ✔️ | ✔️ | ✔️ | ❌ | ❌ | ❌ | 在退款处理达到成功或失败终态时,Antom 使用该接口向您发送退款结果信息。refundStatus 字段表明退款的结果:
|
表 1. 通知接口功能及支持的产品
配置通知地址
您可以通过接口或 Antom Dashboard 来配置通知地址。如果您同时使用了这两种方式进行配置,通知地址以接口配置的为准。
表 2. 通知地址配置方法
处理通知
1. 验签
Antom 发送的通知结果由 Antom 加签,故建议您验证签名以确认通知由 Antom 发送。您可以自行验签或使用 Antom SDK 验签。
如您选择自行验签,请参考签名与验签。如您使用 Antom SDK,请在 SDKs 提供的 SignatureTool.verify
方法中为对应参数赋值:
boolean isSuccess = SignatureTool.verify(httpMethod, path, clientId, rspTimeStr, rspBody, signature, alipayPublicKey);
signature 的值来自通知头,如下例所示:
"Content-Type": "application/json", "Request-Time": "2019-07-12T12:08:56+05:30", "client-id": "T_111222333", "Signature": "algorithm=RSA256,keyVersion=1,signature=jTOHqknjk%2fnDjEn8lfg%2beNODdoh2eHGJV%2blvrKaDwP782WxJ7ro49giqUu23MUM8sFVVNvhg32qHS3sd4O6uf5kAVLqztqNOPJFZcjw141EVi1vrs%2bIB4vU0%2fK%2f8z2GyWUByh2lHOWFsp%2b5QKCclXp%2bjacYqWYUur5IVbuebR1LoD5IiJ7u7J9qYriFxodkxmIAJYJyJs7mks2FWHh2YePLj3K%2f4B65idy7RBKqY1NN1XcvqnbQmlfCH8CIv75bg%2fr9sGmPE5a%2bYgL8N9Q41buGwMSq1IcNsbceMbyPhw5Z5HnJ7tPz12fvdSi0cEicPikDthQ2EQFmtpntXcAc%2fHA%3d%3d"
2. 返回收到确认信息
在您验签确认通知由 Antom 发送后,您需要向 Antom 返回一条收到确认信息以告知 Antom 您收到了通知。收到确认信息无需数字签名。
您发送给 Antom 的消息头如下例所示:
"Content-Type": "application/json", "response-time": "2019-07-12T12:08:56+05:30", "client-id": "T_111222333",
您发送给 Antom 的消息体如下例所示:
{
"result": {
"resultCode": "SUCCESS",
"resultStatus": "S",
"resultMessage": "Success"
}
}
如您未向 Antom 发送收到确认信息或因网络原因 Antom 未收到此信息,Antom 会在 24 小时内自动重发通知,最多重发 8 次或直至收到正确响应。发送间隔时间为:0 秒、2 分钟、10 分钟、10 分钟、1 小时、2 小时、6 小时和 15 小时。
注意:对于重复收到的 Antom 通知,记录下已处理的通知并做好幂等,防止同一请求多次处理。
常见问题
问:为什么有时无法收到异步通知呢?
答:买家完成支付后,您可能无法收到支付结果。可能的原因包括:
- 支付完成后,Antom 服务器会发送异步通知,告知商户相应的支付结果。但对于某些支付方式,支付失败时不会发送异步通知。
- 异步通知不保证 100% 送达。
当出现这种情况时,您可以调用 支付结果查询 接口来获取准确的支付结果。