PolyPay logoPolyPay.ai
高级8 分钟阅读

Shopify 加密支付桥接

通过 Shopify 自定义手动支付方式连接 PolyPay Hosted Checkout。该方案不是 Shopify 审批的 Payments App。

方案边界

Shopify 原生 Payments App 需要 Payments Partner 邀请、受限权限、mTLS 和 Shopify 审核。本桥接服务适合单个商户自建 Custom App,并明确启用手动支付方式的场景。

部署步骤

  1. 部署 PHP 桥接服务,并把 config.example.php 复制为私有 config.php
  2. 创建 Shopify Custom App,授予 read_orders 和 write_orders
  3. 创建名称完全一致的 PolyPay - Crypto Payment 手动支付方式
  4. 把静态支付指引设置为 https://你的支付域名/pay
  5. 配置订单创建和订单取消两个 Shopify JSON Webhook
  6. 执行 php bin/activate.php,并先用 PolyPay Sandbox 验证完整流程

支付与安全规则

  • 客户必须使用 Shopify 订单号和下单邮箱验证订单
  • 支付方式选择由 PolyPay Hosted Checkout 负责
  • 浏览器成功返回页不能把 Shopify 订单标记为已支付
  • PolyPay 回调必须通过时间戳、nonce 和 Ed25519 v2 签名验证
  • 回调按 environment 和 event_id 去重,重复投递不会重复入账
  • Shopify 取消订单时同步取消仍处于等待状态的 PolyPay trade_id
  • 当前订单币种必须为 USD;退款需要按商户退款政策人工处理

多实例部署

默认 nonce 和事件去重存储使用共享文件系统。横向扩容前必须替换为 Redis 等共享原子存储,否则不同实例无法可靠防重放和去重。

查看 Shopify 桥接插件源码与安装说明