我需要制作一种自定义付款方式,从客户的订单中获取一些变量并将它们作为 POST 变量发送到外部 url。
我需要从 Magento 获得的变量是总金额、订单号和产品描述。这些变量被发送到第三方网关的 url,在那里以安全的方式询问信用卡信息,当交易完成时,它们将用户返回到我的 magento 站点。
我已经搜索了信息和教程,但我仍然感到有些困惑,我实际上是 magento 编程的新手,所以如果有人可以提供逐步解释,或者至少提供一个链接,我将不胜感激教程
谢谢
我需要制作一种自定义付款方式,从客户的订单中获取一些变量并将它们作为 POST 变量发送到外部 url。
我需要从 Magento 获得的变量是总金额、订单号和产品描述。这些变量被发送到第三方网关的 url,在那里以安全的方式询问信用卡信息,当交易完成时,它们将用户返回到我的 magento 站点。
我已经搜索了信息和教程,但我仍然感到有些困惑,我实际上是 magento 编程的新手,所以如果有人可以提供逐步解释,或者至少提供一个链接,我将不胜感激教程
谢谢
这就是 Paypal 的工作方式,因此包含的模块将是一个很好的起点,但基本上:
您的 Payment 类上有一个方法,它告诉 Magento 该方法适用于订单(这使您可以对不同的订单总额或货币等使用不同的方法,但您可以只返回“true”)
如果您需要捕获 Magento 否则不会捕获的任何信息,则为您的表单设置一个模板/块,当客户选择您的方法时会显示(Paypal 没有这样的表单)
您实现了对订单详细信息进行任何处理的“授权”方法
您实现了一个 getRedirectUrl 方法,该方法返回一个 URL 以便 magento 也重定向用户。如果您确实需要发布到您的网关,那么您的重定向将是一个本地 URL(例如 /redirect.php),在这里您将有一个带有隐藏字段的表单和一些将自动提交它的 javascript(您可以粘贴一个如果您愿意,也可以加载-gif),这会将用户带到网关。*
如果您向网关提供 URL 以将客户送回(您通常会这样做......),那么您也需要一个页面,在将客户重定向到结账之前,该页面会执行任何订单清理/验证确认页面
(*如果你愿意,你可以在magento中作为控制器和模板来做这个(它有点整洁),但是解释如何做到这一点需要比我更多的时间)
这是为外部网关创建自定义 Magento 支付扩展的一个很好的起点。