概述
VibeFox Authorize.Net Gateway 在 PrestaShop 支付步骤中添加站内银行卡表单,并通过 Authorize.Net 扣款。Authorize.Net 的 Accept.js 库会在顾客的浏览器中,将银行卡号、有效期和安全码换成一次性令牌。只有该令牌会到达您的服务器,因此银行卡数据绝不会发送到您的店铺,也不会保存在店铺中。只有在 Authorize.Net 批准交易后才会创建订单,因此被拒绝的银行卡不会留下未付款的订单。
本模块适用于位于美国、加拿大、英国、欧洲、澳大利亚和新西兰、拥有 Authorize.Net 商户账户、并希望顾客无需离开结账页面即可用银行卡付款的店铺。本模块不保存银行卡或顾客资料,不支持订阅、eCheck/ACH、Apple Pay、Google Pay、PayPal 或 3-D Secure,不支持部分扣款,也不支持货币转换。
主要功能
Accept.js 银行卡表单:在支付方式选项的正下方显示银行卡号、有效期和安全码输入框。
授权并扣款,或仅授权:立即扣款,或冻结资金,稍后通过订单中 Authorize.Net 区块里的 Capture payment 进行扣款。
金额和币种准确无误:购物车总额以购物车币种扣款。如果付款过程中购物车发生变化,订单将进入 Authorize.Net payment on hold,并且只能退还实际扣除的金额。
避免重复扣款:重复点击、第二个标签页或重复提交,绝不会对同一购物车扣款两次。
支持欺诈审核:被 Fraud Detection Suite 暂留的交易会使订单进入保留状态,并附带备注。
Webhook(可选,推荐):欺诈审核的决定,以及在 Authorize.Net 后台完成的扣款或撤销,都会更新订单。每条通知都经过签名,并通过 API 重新校验。
从订单页面退款和扣款:全额退款会撤销尚未结算的交易;已结算的交易可以全额或部分退款。员工只需要编辑订单的权限。
沙盒与正式环境:凭据各自独立,通过一个开关切换。扣款、退款和 webhook 校验始终使用付款时所用的模式。错误日志中,密钥、令牌和个人数据均已隐去。
要求
PrestaShop 8.0 至 9.x,PHP 8.0 或更高版本,结账页面使用 HTTPS。一个 Authorize.Net 账户,包含 API Login ID、Transaction Key 和 Public Client Key(使用 webhook 还需要 Signature Key)。店铺币种为 USD、CAD、CHF、DKK、EUR、GBP、NOK、PLN、SEK、AUD 或 NZD。一个来自 vibefox.net 的 VibeFox 许可证密钥(每个域名一个密钥)。
