跳到内容
All articles
Setup

电商(Shopify)

使用你自己的店铺(自带账号模式),将 Shopify 店铺的客户和订单同步到 CRM。

电商集成使用你自己的 Shopify 店铺(BYO 模式:自带店铺)。它会监听你店铺的 webhook 并同步到 CRM:每个客户都会成为一个联系人,每个订单都会成为一个销售订单。我们这边没有任何费用、加价或中间环节:数据直接来自你的店铺。

该集成初始状态为未激活:在你填写字段并激活之前不会发生任何事。Webhook 密钥和管理令牌会加密存储在 CRM 中,且永远不会再次显示。

前置条件

  • 拥有管理员权限(Shopify 后台)的 Shopify 店铺,以便创建 webhook 并查看签名密钥。
  • 店铺的 .myshopify.com 域名。
  • 在 Sellio 中,需要管理员权限才能保存凭据并在“设置 → 集成”中激活该集成。

需要填写的内容

  • 店铺域名:你店铺的 .myshopify.com 地址(例如 mystore.myshopify.com)。
  • Webhook 密钥(API 密钥):Shopify 用于对 webhook 签名的密钥。在 Shopify 后台 → 设置 → 通知 中会显示 webhook 的“签名密钥”(或者,如果你使用自己的应用,则是其 API 密钥)。CRM 使用该值来验证每次调用的签名(HMAC)。
  • Admin API 访问令牌(可选):仅当你未来希望 CRM 通过 API 读取店铺数据时才需要。如果只是接收 webhook,留空即可。

如何配置

  1. 打开“设置 → 集成”,找到“电商(Shopify)”卡片。
  2. 填写店铺域名和 webhook 密钥,然后点击“保存凭据”。
  3. 复制出现的“Webhook URL(Shopify)”。
  4. 在 Shopify 后台 → 设置 → 通知 → Webhook 中,为以下每个主题创建一个指向该 URL 的 webhook(JSON 格式):customers/create、customers/update、orders/create、orders/paid。
  5. 返回 CRM 并点击“激活”。

每个事件会发生什么

  • customers/create 和 customers/update:客户会被创建或更新为一个联系人,以邮箱进行匹配。CRM 会存储 Shopify 的客户 id,以避免在重复投递时产生重复记录。
  • orders/create 和 orders/paid:订单会被创建或更新为一个销售订单(编号、金额、货币和状态),并在存在对应联系人时与其关联。当订单已付款时状态变为“已开票”,已取消时变为“已取消”,其余情况为“已确认”。
💡 该同步是幂等的:如果 Shopify 重新发送了同一个 webhook,CRM 会更新已有记录,而不是创建新记录(通过 Shopify id 识别记录)。只有来自店铺的字段会被更新,你在 CRM 中手动编辑的内容会被保留。

请将 webhook URL 和 webhook 密钥视为机密信息。CRM 会用你的 webhook 密钥验证每次调用的 X-Shopify-Hmac-Sha256 签名;签名无效的调用会被拒绝。如果你未填写密钥就尝试激活,该集成会保持未激活状态,在一切配置就绪之前不会同步任何内容。

如何测试

  1. 在集成已激活且 webhook 已创建的情况下,在 Shopify 后台 → 设置 → 通知 → Webhook 中,对某个 webhook 使用“发送测试通知”(或在店铺中创建一个测试订单/客户)。
  2. 在 CRM 中,检查联系人对象(针对客户)和销售订单(针对订单):对应的记录应当会出现。
  3. 重新发送同一个测试,确认不会出现重复。CRM 通过 Shopify id 识别记录。

故障排查

  • 签名无效(调用被拒绝):CRM 中保存的 webhook 密钥与 Shopify 的签名密钥不一致。重新复制该密钥(设置 → 通知,或你应用的 API 密钥)并粘贴到 CRM 中。
  • 什么都没有同步:确认你为每个主题都创建了一个(JSON 格式的)webhook:customers/create、customers/update、orders/create、orders/paid,且都指向“Webhook URL(Shopify)”。
  • URL 返回 404:该集成已停用,或 URL 中的令牌已更改。重新激活并将 URL 重新复制到 Shopify 中。
  • 订单没有关联的联系人:关联是通过客户邮箱进行匹配的;如果该客户尚不是联系人,订单会在未关联的状态下被创建,你可以之后再关联。
  • 我编辑过的字段被覆盖了:只有来自店铺的字段会被更新,其余内容会被保留。如果某个店铺字段发生了变化,按设计会反映店铺的最新值。

Open this article inside the system

Read it and want to see it working?

The account is free and the whole manual is available inside the system, with an assistant that answers from this very content.

免费创建账户
电商(Shopify) · Sellio