NopCommerce:如何将此网关的返回字段映射到 Nop 的预期?
Posted
技术标签:
【中文标题】NopCommerce:如何将此网关的返回字段映射到 Nop 的预期?【英文标题】:NopCommerce: How do I map this gateway's returned fields to what Nop is expecting? 【发布时间】:2013-04-09 19:26:45 【问题描述】:背景
我正在为NopCommerce 2.80 编写一个支付网关插件。这是我第一次为支付网关编写代码。我快到了,但遇到了一些问题。
问题
首先,在ProcessPayment
方法中,我需要返回一个ProcessPaymentResult
,它具有以下属性(谁能解释一下它们之间的区别?):
AuthorizationTransactionCode
AuthorizationTransactionId
AuthorizationTransactionResult
CaptureTransactionId
CaptureTransactionResult
我需要实现的网关(Tranzila)返回了以下字段:
ConfirmationCode
AuthNumber
RefNumber
TempRef
以及其他一些可能不适用于此场景的内容。我不知道如何将这些映射到 Nop 的预期......
其次,Capture
方法是干什么用的?我看过PayPalDirect
插件,但不是很清楚。什么时候调用这个方法?
【问题讨论】:
【参考方案1】:在验证processPaymentResult.Success
是否为真后,此字段将保存到订单中。所有这些都是可选的,但如果您想在 nopcommerce 中的订单和 Tranzila 中的支付交易之间有某种参考,则需要包含它们。
AuthorizationTransactionId
(可选)是您要记录交易时生成的唯一ID
AuthorizationTransactionCode
是支付网关生成的唯一交易 ID。在您的情况下,它可能是RefNumber
。但我会仔细检查。
AuthorizationTransactionResult
是支付网关返回的整个响应。您可以只保存文本或整个 XML 响应。这又是一次,仅供将来参考。
其他 2 个字段用于延期付款。当“管理员”从管理面板获取资金时设置它们。
CaptureTransactionId
支付网关生成的交易代码
CaptureTransactionResult
该交易的全部信息
【讨论】:
以上是关于NopCommerce:如何将此网关的返回字段映射到 Nop 的预期?的主要内容,如果未能解决你的问题,请参考以下文章
在快速自定义的NopCommerce中使用实体框架(EF)代码优先迁移