支付网关实施

Posted

技术标签:

【中文标题】支付网关实施【英文标题】:Payment Gateway Implementation 【发布时间】:2012-05-27 15:38:11 【问题描述】:

我正在用 php 将其中一个支付网关集成到我的网站,在继续之前,由于我是新手,我有一些疑问(用例/场景),所以我需要一个解决方案来处理这些场景。我在这里列出了它们

1) 如何将唯一ID传递给支付网关,虽然它认为它是一个订单号,但在实际场景中,订单号/ID只有在交易成功时才会生成。我想向支付网关发送一个随机数。交易成功后,我可以存储在 Order 表中。

表格:顺序

1) aID:(唯一,主要,AI)

2) RandomNo(唯一)

3) 订购日期

这是个好主意

2) 要向用户显示哪个 ID 作为 ORDER ID aID 或 RandomNO

3) 我是否需要将来自支付网关的响应存储在数据库中,例如支付 ID(唯一)、响应代码、订单号和金额。它会有什么用处。

4) 支付网关集成后可能出现哪些情况,如何处理

【问题讨论】:

通常支付网关会有回答所有这些问题的文档,甚至可能有 PHP 库来为您完成大部分繁重的工作。你读过他们的手册吗? 【参考方案1】:

1) 如何将唯一ID传递给支付网关,虽然它认为它是一个订单号,但在实际场景中,订单号/ID只有在交易成功时才会生成。我想向支付网关发送一个随机数。交易成功后,我可以存储在 Order 表中。

ANS :首先将订单插入数据库,然后再重定向到支付网关,并使用该插入的唯一 ID 作为订单 ID。

2) 向用户显示哪个 ID 作为 ORDER ID 是 aID 或 RandomNO

ANS : 上面提到的订单id可以显示给用户。

3) 我是否需要将来自支付网关的响应存储在数据库中,例如支付 ID(唯一)、响应代码、订单号和金额。它会有什么用处。

回答:是的!您必须存储来自支付网关的响应,以备将来发生任何争议时使用。

4) 支付网关集成后可能出现的场景有哪些,如何处理

ANS:我没有回答你这个问题。

【讨论】:

在重定向到支付网关之前存储数据可能会在数据库中创建垃圾行,如果用户返回或在不成功的交易中插入的行将是垃圾,这是对数据库的不必要条目 @Vinay 如果您在重定向之前没有将数据存储在数据库中,如果支付网关无法处理您的订单,您可能会丢失订单数据。 我会将数据存储在会话中,即使事务失败,数据也会在会话中,除非用户清除会话,实际上我是要求用户在事务失败时再次执行事务,但是交易成功,我将会话数据存储到数据库。那么为什么要在重定向之前将数据存储到数据库中。

以上是关于支付网关实施的主要内容,如果未能解决你的问题,请参考以下文章

国际化支付网关实施的最佳方法

如何实施 CCAvenue 支付网关选项 [关闭]

使用 Sylius 0.16 和 Payum 实施异地支付网关时如何完成订单

c# Visa 3d 安全实施 [关闭]

Magento 购物车支付方法步骤,将 CC 详细信息发布到支付网关端点?

实施 Paypal Sandbox 退款时得到 Http 响应代码 400