Payum 自定义网关

Posted

技术标签:

【中文标题】Payum 自定义网关【英文标题】:Payum custom gateway 【发布时间】:2016-10-20 20:23:39 【问题描述】:

我想在 payum 中使用新网关,但我很困惑。

我有一个交易流程图,通常我知道如何实现它,但我不知道如何以 payum 方式实现它。

我想要的是,有人告诉我:

我需要多少 Payum 操作? 我需要多少控制器操作? 我需要一个新的 gatewayFoctory 还是一个新的网关,或者两者都需要? afterUrl 和 taregtUrl 有什么区别? 在文档中,我们有一个名为“模型”的对象!,它的目的是什么?

【问题讨论】:

开始使用自定义网关的最简单方法是复制此存储库 github.com/Payum/Skeleton 并开始在那里更改内容。 @MaksimKotlyar ,我已经尝试过了,但我仍然无法弄清楚。即使在 payum 沙箱中,也没有自定义网关的示例实现。 开始使用自定义网关的最简单方法是输入composer create-project payum/skeleton 你解决了吗?请接受一个答案,或者花时间写下你自己的答案并接受它。 @Hafenkranich 是的,我正在努力,但解决方案尚未完成。 【参考方案1】:

在Payum getting started,看起来您真正需要的只是 3 个步骤/操作:

准备

设置值 从payum请求并获取目标token 重定向(重定向到的 URL 在令牌中返回。) 重定向网址是支付网址 Payum 将预处理付款内容 Payum 将重定向到您的捕获方法

捕获

实际上告诉 payum 处理请求(使用令牌自己进行身份验证) 烧掉令牌 重定向到 done 方法(实际上重定向到 Payum 并且 Payum 正在重定向到您的 done 方法)

完成

检查是否成功 做事

其他东西

getTargetUrl 是 payum 返回的 URL,你重定向到的地方 在prepare之后 getAfterUrl() 是 payum 返回的 URL,其中 你重定向到capture之后 Examples of other gateways can be found here 如果您想集成它们,您可以定义一个新网关(例如,请参阅 KlarnaCheckout 的配置文件) 如果你想add another payment provider you start here 使用 composer 你建立一个新的 gatewayFactory(然后像上面那样定义网关)

【讨论】:

以上是关于Payum 自定义网关的主要内容,如果未能解决你的问题,请参考以下文章

Shopify 自定义支付网关实施

Magento 自定义支付网关

网关篇-自定义缓存Redis

使用重定向的 Woocommerce 自定义支付网关工作流程

获取自定义支付网关数据作为 Woocommerce 3 中的设置

Magento 自定义支付网关未触发“授权”或“捕获”方法