transactions - 订单号、交易编号和发票编号之间的差异

标签 transactions payment-gateway payment credit-card payment-processing

我正在实现我的第一个支付网关,虽然我的情况可能很简单,因为我可以使所有三个相同,但我想知道一些应该不同的情况。

再说一次,订单号、交易编号和发票编号有什么区别?以及任何其他形式的交易相关信息?

它们都必须是唯一的吗?

最后,交易完成后我要向客户展示什么?

注意:我是商家,但与任何其他域(例如银行、信用卡、支付网关或任何其他域)有关的情况也是可以接受的。

最佳答案

我们与来自不同银行的许多不同的卡授权 API 集成,在高层次上,没有标准的 API 接口(interface)可以在您获得商户帐户时提供给您。

在我的经验中:

订单号 (或等效的)
是商家提供的一个值,它在交易请求中传递给银行,然后银行将其在他们的记录中与交易相关联。

这允许使用商家定义的值识别银行系统上的交易(用于报告/对账等)。

一般来说,这应该是独一无二的。

交易 ID (或等价物)是银行返回的用于识别其系统上的交易的值。这将是独一无二的。

发票编号 这与授权过程无关,因此与银行提供的附加功能有关,并且是特定于实现的(例如将多个产品组合在一起的方式)。

最后,交易完成后我要向客户展示什么?

您将与交易相关的所有信息存储在数据库中,并从该记录集中生成您自己的交易 ID;这就是您要向用户展示的内容。

关于transactions - 订单号、交易编号和发票编号之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27716389/

相关文章:

web - Paypal 网站服务付款

javascript - Stripe 用户 token 问题

sql - 使用 PGX 在 Golang 中进行交易

Paypal 沙盒错误 : Cookies are blocked

api - 如何通过 SEPA 以编程方式从银行账户转账

php - 带有 "purchase credits/tokens"的支付网关集成到 php+mysql 网站中?

ruby-on-rails - 如何在不使用表单的情况下从 Rails 应用程序发布到外部 url

postgresql - 当启用事务池并发出单个语句时,pgbouncer 如何表现?

java - Spring @Transactional + jdbcTemplate 调用Web服务

java - 如何断言数据库连接在事务中?