概述
VibeFox Kushki Payment 为 OpenCart 3 和 OpenCart 4 添加通过 Kushki 的银行卡付款功能,适用于厄瓜多尔和哥伦比亚的店铺。在 Confirm Order 步骤,顾客在 Kushki 托管的银行卡表单中输入卡信息,该表单显示在您的结账页面内,但由 Kushki 提供。表单返回一次性令牌,您的店铺通过 Kushki API 在服务器端扣款。银行卡号绝不会到达您的网站。OpenCart 在付款前创建订单,但订单只有在 Kushki 批准扣款后才会获得状态,因此被拒绝或放弃的付款会以缺失订单(missing orders)的形式保留。
本扩展适合以 USD 或 COP 收款、希望在自有结账页面提供银行卡表单而不处理卡数据的店铺。本扩展仅支持一步式付款。不支持部分退款、保存的银行卡、订阅、现金或银行转账(PSE)付款、借记卡重定向付款,也不支持分开的授权与捕获。
主要功能
Kushki 托管银行卡表单:OpenCart 结账的 Confirm Order 步骤中显示 Kushki 的银行卡表单。顾客点击表单内的付款按钮后即发送付款。表单中选择的分期付款(diferido)会传递给扣款。
仅在 Kushki 确认后标记为已付款:只有当 Kushki 凭票号批准扣款后,才会设置订单状态。如果 Kushki 报告的金额或币种不同,订单会进入带备注的审核状态。之后 OpenCart 照常发送订单邮件。
税款作为 IVA:金额和币种取自订单。订单税额以 IVA 报告给 Kushki,不含税的商品行则单独报告。
签名的 Webhook:可选的 Webhook 可确认 API 响应丢失的付款,并为在 Kushki Console 中进行的作废和退款添加备注。没有有效签名的通知会被拒绝。
避免重复扣款:按购物车加锁,防止重复点击或在第二个标签页中重复扣款;已付款的购物车绝不会再次扣款。重复的 Webhook 也绝不会重复应用同一笔付款。
测试与正式模式:每种模式使用独立的 Merchant ID 和 Webhook 签名。退款始终进入付款时所用的模式。
在订单页面全额退款:订单中的 VibeFox Kushki Payment 选项卡可退还 Kushki 扣款的全部金额,并显示票号、参考号、退款记录和 Kushki 备注。
您自己的订单状态与 OpenCart 条件:为已付款订单、审核中的付款、失败的付款、已取消订单和已退款订单选择 OpenCart 状态。地理区域、最低订单总额和排序。日志中不包含 Merchant ID、银行卡令牌或顾客邮箱。
系统要求
OpenCart 3.0.x(已在 3.0.5.0 上测试)或 OpenCart 4.0.2 及更高版本(已在 4.1.0.3 上测试),PHP 8.0 或更高版本。同一个下载文件包含两个版本的安装包。订单币种为 USD 或 COP。Kushki 账户需具备测试和正式环境的公开(Public)与私密(Private)Merchant ID;正式付款需要 HTTPS。需要一个来自 vibefox.net 的 VibeFox 许可证密钥(每个域名一个密钥)。
