PHP电子商务API - 付款流程

时间:2016-06-29 13:14:30

标签: php api e-commerce payment-gateway

我正在开发一个电子商务API,其中包含产品,目录,订单等所有功能......我陷入了如何处理支付网关,如ccavenue,payumoney等等,这些支付网关正在重定向到银行网站进行身份验证所以我无法用API处理这个问题。有人请帮我在电子商务API系统中制作支付流程吗?

先谢谢。

2 个答案:

答案 0 :(得分:2)

通常当网关将浏览器重定向到他们的网站时,您必须执行以下操作:

用户点击结帐后

  • 以待处理状态创建订单
  • 生成交易ID或仅使用订单ID
  • 将请求的交易ID /订单ID发送到网关
网关完成后

并将浏览器重定向到您的网站

  • 获取状态 [成功/失败]
  • 获取交易ID /订单ID

[网关必须返回事务ID    你提供它]

  • 使用 ID 状态
  • 更新订单/交易

重要

有些客户只关闭网关页面而不继续进程, 所以你会在几天后获得大量的挂单,也会减少库存。

要解决此问题,您应该每个1 hour for example运行一次cron作业..它将取消任何超过10分钟创建的待处理订单,并且它将补充产品

另一种解决方案:

某些网关要求您给他们确认网址..并且在交易完成后......他们会将结果发送到您的确认网址,因此您必须在您的网站中开发API来处理此确认回复,在此如果用户在完成交易后在浏览器中出现问题并且无法重定向回您的网站,他将获得成功订单

修改

好的,那么你在交易生命周期中有三个方面

1-客户网站:我们将其称为来电

2-您的API提供商:将其称为 API

3-最后网关

所以请记住,如果不在API方面保存一些信息,这个过程就无法成功完成

该过程将如下所示

  • 来电者将在待处理状态下创建订单

  • 来电者会向您的API发送交易信息,此信息必须包含返回网址+交易ID

  • API会将收到的信息保存在其数据库中,并向网关生成另一个请求,此请求必须包含返回网址+交易ID

  • 网关完成后,它会重定向到您的API,您的API会提取结果并将其返回给来电者返回网址

  • 来电者将收到回复,提取结果,更新订单

重要:

如果您希望在调用者和网关之间保持进程

案例A:

通常网关通过返回html表单+ JS脚本重定向用户,该脚本将在呈现此html时提交表单。

所以在这种情况下..不打印html休息并将其返回给调用者,让他打印出来..所以在这种情况下,调用者和网关之间会发生重定向

案例B:

  • 让您的API准备请求,然后端点将此数据返回给调用者
  • 让调用者将此请求发送到网关
  • gateway会将响应返回给调用者
  • 调用者会将响应发送给API以提取结果
  • API会向调用者返回最终结果
  • 来电者将更新订单

答案 1 :(得分:0)

所有付款网关都有一个字段来传递您的自定义值/订单ID。他们会让你回到那个价值。查看他们的文档。还要查找通知字段。