没有商业:我该如何映射这个网关';s返回的字段符合Nop的预期

本文关键字:返回 网关 字段 Nop 映射 何映射 | 更新日期: 2023-09-27 18:09:30

背景

我正在为NopCommerce 2.80编写一个支付网关插件。这是我第一次为支付网关编写代码。我快到了,但有一些问题。

问题

  • 首先,在ProcessPayment方法中,我需要返回一个ProcessPaymentResult,它具有以下属性(有人能解释一下它们之间的区别吗?(:

AuthorizationTransactionCode

AuthorizationTransactionId

AuthorizationTransactionResult

CaptureTransactionId

CaptureTransactionResult

我需要实现的网关(Tranzila(返回了以下字段:

ConfirmationCode

AuthNumber

RefNumber

TempRef

以及其他一些可能不适用于这种情况的方法。我不知道如何将这些映射到Nop所期望的。。。

  • 其次,Capture方法的作用是什么?我看了PayPalDirect插件,但不是很清楚。这个方法什么时候调用

没有商业:我该如何映射这个网关';s返回的字段符合Nop的预期

在验证processPaymentResult.Success是否为true后,将这些字段保存到订单中。所有这些都是可选的,但如果你想在nocommerce中的订单和Tranzila中的支付交易之间有某种参考,你需要包括它们。

  • 如果您想记录交易,AuthorizationTransactionId(可选(是您生成的唯一id

  • AuthorizationTransactionCode是支付网关生成的唯一交易Id。在您的情况下,可能是RefNumber。但我会仔细检查。

  • CCD_ 18是支付网关返回的全部响应。您可以只保存文本或整个XML响应。这也是,仅供将来参考。

其他2个字段用于延期付款。它们是在"管理员"从管理面板中获取资金时设置的。

  • 支付网关生成的CaptureTransactionId交易代码
  • CaptureTransactionResult该事务的整个消息