Shopify Webhooks

customers/data_request 收到后要做什么才算合规

现象#

应用商店审核被拒,理由是没有正确处理 customers/data_request;后台隐私页显示有一笔待处理请求,30 天后仍未回复商家。

原因#

  • 只回了 200 就当处理完,没有把 orders_requested 里的订单数据整理给商家
  • 端点用 JSON 解析后的对象验签,HMAC 恒失败并返回 401,被判未实现
  • 三个合规 topic 混在一个分支里,redact 逻辑误删了 data_request 要用的记录
  • 没有在 30 天内完成,Shopify 视为不合规并拒绝上架

处理步骤#

  1. 在 TOML 里用 compliance_topics 单独注册三个合规 topic
  2. 验 X-Shopify-Hmac-Sha256,失败回 401;通过后先回 200 再异步整理
  3. 按 customer.id 与 orders_requested 导出本应用存的数据
  4. 结果交给商家而不是直接发客户,并记录 data_request.id 与完成时间
  5. 用 --topic=customers/data_request 触发一次,走完整个流程

验收标准#

触发后请求在 30 天内标记为已处理,商家拿到订单与客户字段清单,401 与 200 两条分支都验证过。

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