Shopify 市场与本地化

订单金额店币和客户付款币种对不上怎么查

现象#

ERP 按 totalPriceSet.shopMoney.amount 记应收 $120.00,客户实际付了 €110.40,财务月结时汇兑差异越滚越大。

原因#

  • 订单同时保存店币与呈现币两套金额,shopMoney 永远是店币
  • currencyCode 返回店币,presentmentCurrencyCode 才是买家实际付款币种
  • Liquid 里 cart.currency 是呈现币,shop.currency 是店币,混用就会算错
  • 退款按原呈现币退回,换算费不退,按店币记账会二次产生差额

处理步骤#

  1. GraphQL 同时取 totalPriceSet.shopMoney 与 presentmentMoney 两组金额
  2. 入账与对账字段改用 presentmentCurrencyCode,报表汇总继续用 shopMoney
  3. 退款金额读 totalRefundedSet.presentmentMoney,不要用店币金额反算
  4. 前台调试时对比 {{ cart.currency.iso_code }} 与 {{ shop.currency }}
  5. 把两组金额都写进对账表,汇率差单独列一列,别混进商品收入

验收标准#

同一订单两组金额币种不同且换算关系可复现;ERP 应收与支付流水的币种、金额一致。

本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。