概述
VibeFox Midtrans Payment Gateway 为 PrestaShop 添加以印尼盾(IDR)结算的 Midtrans Snap 付款功能。在付款步骤,顾客选择 Midtrans,随后被引导至 Midtrans Snap 付款页面,并使用您 Midtrans 账户中启用的任意付款方式付款:GoPay、QRIS、ShopeePay、银行卡、银行虚拟账户、便利店等。只有在 Midtrans 确认付款后才会创建订单,因此中途放弃的付款不会留下未付款订单。
本模块适合以 IDR 销售、希望将 Midtrans 全部付款方式集中在一个付款方式下的印尼店铺。模块仅支持 IDR,不进行币种转换。没有 Snap 弹窗、您网站上的银行卡表单、保存的银行卡、分期或促销设置、订阅,也没有单独的授权与扣款。
主要功能
Snap Redirect:一个 Midtrans 付款页面,显示您 Midtrans 账户中的全部付款方式,按整数印尼盾计算购物车总额,包括商品明细、运费、折扣和税费。
仅在 Midtrans 确认后才标记为已付款:每条付款通知的签名都会被核验,状态会从 Midtrans 状态 API 重新读取,并将付款金额和币种与购物车进行比对。若不一致,订单将转为 Midtrans payment on hold 并附带备注。
延迟付款:虚拟账户和便利店付款会创建 Awaiting Midtrans payment 状态的订单。Midtrans 报告付款后,订单变为已付款;付款过期则取消订单。
安全重试:相同金额且未使用或待处理的 Snap 会被重复使用。重复通知、顾客返回和重试绝不会创建第二个订单,也不会重复记录付款。对已付款订单的第二次付款会以备注形式记录。
Sandbox 与 Production:各自独立的 Server Key。每笔付款都会记住其所在环境,因此正式上线后,沙盒付款的退款和通知仍可正常工作。
双向退款:可在订单的 Midtrans payment 区块中以整数印尼盾进行全额或部分退款。在 Midtrans 后台完成的退款会自动记录到订单中。
自选订单状态:付款确认后,可设为 Payment accepted、Delivered 或 Midtrans payment on hold。订单号前缀允许多家店铺共用同一个 Midtrans 账户。
订单页面中的 Midtrans 区块:交易信息(含 Midtrans 后台链接)、付款方式、退款记录和备注。可选日志不包含密钥或顾客数据。
系统要求
PrestaShop 8.0 至 9.x,PHP 8.0 或更高版本。您的店铺中需有 IDR 币种。需要一个 Midtrans 账户,持有 Sandbox 和正式环境的 Server Key,并已在 Midtrans 后台设置付款通知 URL。还需要一个来自 vibefox.net 的 VibeFox 许可证密钥(每个域名一个密钥)。
