商户问答系统

支付结果通知相关问答

Q1.支付回调通知失败后,会重发吗?

会重发,总计会重发10次,所以请商户收到后请返回确认,并且能处理重复接收的情况。重发机制如下:0s 第1次通知;10s 第2次通知;30s 第3次通知;1min 第4次通知;3min 第5次通知;10min 第6次通知;30min 第7次通知;1hour 第8次通知;6hour 第9次通知;20hour 第10次通知。

Q2.商户如何接收签约、支付完成后招行发送的异步回调通知?

逻辑:招行是以POST方式提交数据的,通知内容在jsonRequestData参数中传递,请从jsonRequestData参数中读取通知即可。

方法:用request.getParameter("jsonRequestData")读取即可

Q3.通知是同步的,还是异步的?

异步的。

Q4.生产环境的银行通知公钥与测试环境的是否相同?

不相同。

Q5.银行通知公钥会变吗?是否每次验签前需要查询新的通知公钥?

银行通知公钥会定期更换,更换频率较低。银行通知公钥可以每天取一次,存在本地,每次验签时使用即可,每天凌晨2:15发起查询招行公钥请求更新公钥

Q6.回调地址有哪些要求?

1、端口地址要求:测试环境端口号需要为:80、8080、443、8443,生产环境需要为:80、8080、443、8443
2、接收回调的地址需要外网可以正常访问
3、招行以POST方式发送回调通知到商户接收回调地址上

Q7.我用.NET做开发,可以直接用查询到的通知公钥来初始化X509Certificate2对象,然后从中获取RSACryptoServiceProvider对象吗?

不能,在.NET不能直接这样处理,需要先对通知公钥做转换处理,可以参考文档提供的C#验签示例

Q8.招行服务器在不停的发送异步回调通知,商户需要如何处理?

商户在接收到招行服务器发送的回调通知,需要进行回复,收到回复即认为商户已经收到回调通知,回复内容可返回HTTP Status Code 200