我正在使用银行 API 开发在线支付解决方案。
当用户在银行网站上输入他的信用卡号(所以我不必处理 PCI 合规性)时,API 会回调我的一个页面以发送交易响应(批准、时间、金额等) .) 然后调用我的“返回 URL”将客户带回我的网站,但除了确认号之外没有任何信息。
我有一些信息要显示在 API 传输到回调的“返回 URL”上。因此,我决定将回调的数据存储在我的数据库中,以便稍后在“返回 URL”上检索它
如何确定我的“返回 URL”回调完成了它的操作并且我可以开始从数据库中检索数据?
不知道 API 就很难说,但您肯定必须能够使用银行 API 检查确认号码,以检查它是否是“真实的”确认号码。
对您的“返回 URL”进行此检查,然后将收到的信息与初始回调时存储在数据库中的信息进行匹配。如果信息不匹配或不在您的数据库中,则抛出“等待/处理”.gif 文件并每 10 秒重试一次,直到您收到结果,否则处理超时。
通常,您总是在 reutrn url 上向客户显示成功,但不提供任何下载。关于产品下载或确认邮件的信息将从回调 url 触发。
因为仍然不可能等待 api 回调,所以您只能等待回调并处理订单。