php - 将支付宝实现到 OpenCart

标签 php mysql e-commerce opencart

我必须在这个问题前说,是的,我知道这是一个开放式问题。如果您希望将其删除,请随时告诉我。

我目前正在开发一个模块,可以将支付宝实现到OpenCart。 OpenCart 配备了各种支付网关,例如 Amazon 或 PayPal,但由于我们针对的是中国人群,所以我们必须使用支付宝。

我已经使用虚拟数据和产品成功将支付宝框架实现到我的开发/登台站点,因此我知道我能够提出有效请求并向我们客户的帐户支付真实资金。

这是我需要的一点帮助 - 我不太确定如何将现有的支付宝 API 实现到 OpenCart 中。

这是我目前的支付宝文件结构:

  1. alipay_index.html。这是我的支付宝索引文件,其中包含隐藏的虚拟数据,例如商品名称、价格、交易编号、描述等。这些数据将来将来自 MySQL 数据库。

  2. alipayapi.php。这是生成请求的页面(使用来自 alipay_index.html 的各种输入的 POST),并将请求发送到 /libs/ 下的支付宝 API 文件。

  3. /libs/ 中有一个名为 alipay.config.php 的 PHP 文件,其中包含所有敏感信息,例如我们的支付宝合作伙伴 ID、MD5 哈希 key /libs/下还有notify_url.phpreturn_url.php等各种支付宝API文件alipay_submit.class.php(构建并发送请求 URL)。

据我了解,OpenCart 允许在 admin 中编辑模块信息,从而允许修改属性,例如“在哪些布局上显示模块、是否启用或禁用以及任何模块”具体选项”,取自OpenCart docs 。我可以想象alipay.config.php的信息就在这个编辑页面中,因此管理员可以更改合作伙伴ID、 key 和证书位置等。

我的问题是 - 我完全不知道从哪里开始。我已经完成了可以在网上找到的 Hello World 教程,但由于我正在处理支付宝 API 和如此多不同的输入,所以我很迷失。有 OpenCart 经验的人可以给我一些建议,告诉我可以采取哪些步骤吗?

最佳答案

OpenCart是以某种MVC模式实现的。为了实现新的支付模块,您可以查看任何现有的(捆绑的)支付模块。选择其中任何一个或多个最适合您的内容,然后从复制和编辑开始。

支付模块文件位于以下文件夹:

  • 管理员
    • admin/controller/payment/ - Controller 类
    • admin/model/language/<LANG>/payment/ - 翻译文件
    • admin/view/template/payment/ - 模板
  • 目录
    • catalog/controller/payment/ - Controller 类
    • catalog/model/payment/ - 模型类
    • catalog/model/language/<LANG>/payment/ - 翻译文件
    • admin/view/theme/<THEME>/template/payment/ - 模板

选择例如PayPal,复制它,重命名为 AliPay,将文件中每个出现的 paypal 重命名为 alipay,添加/删除设置选项,然后就可以了;-)

关于php - 将支付宝实现到 OpenCart,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26009946/

相关文章:

php - 美国邮政 : API Authorization failure

php - 在 Symfony2 中使用 JOIN 条件查找

php - Laravel 5 中公共(public) Assets 的本地路径是什么? (使用 server.php)

mysql - 如何将三元(三元)ER 图转换为二进制?

php - MYSQL 查询,因此如果其他表中没有值,它也会返回值

mysql - 从具有 FK 约束的多表中获取记录

php - 将挂单分成两组

php - 通过 PHP 发送 SMTP 电子邮件 - 通过发送网格

paypal - 在订单确认之前或之后重定向到 PayPal 结账

c# - NEST C# - elasticsearch - 电子商务过滤器组合