Shopify 集成
集成概述
Anchor link toPushwoosh 与 Shopify 无缝集成,Shopify 是一个领先的电子商务平台,使企业能够创建、管理和扩展在线商店。本指南将引导您在 Shopify 商店中安装和配置 Pushwoosh 应用,设置用户识别,并使用通知和自动化工具通过推送、电子邮件、短信和 WhatsApp 等渠道与客户互动。
集成类型
Anchor link to- 目标:Shopify 将客户数据发送到 Pushwoosh,用于目标定位和消息发送。
先决条件
Anchor link to- 一个 Pushwoosh 账户
- 访问您的 Shopify 管理面板
- Pushwoosh 设备 API 访问令牌 和 应用程序代码
- 一个拥有客户和订单数据的 Shopify 商店
- 批准
read_orders访问范围以用于订单/购物车事件,以及write_pixels和read_customer_events用于结账步骤跟踪
同步的实体
Anchor link to- 客户:用于通过 Shopify metafields 分配和识别 Pushwoosh 用户 ID
- 客户细分:用于基于群组的目标定位和消息发送
- 事件和触发器(例如,已下订单、已应用标签):用于在 Shopify Flow 中跨渠道自动化消息发送
- 店面:用于通过嵌入式脚本捕获网页推送选择加入
- 产品源:当您连接应用时,您商店的店面源 (
products.json) 会自动连接到 Pushwoosh 产品目录,如果您卸载应用,它会自动断开连接。 - 订单和购物车:来自 Shopify 的
orders/paid、checkouts/create和checkouts/updatewebhooks 的服务器到服务器事件。请参阅第 5 部分:跟踪订单、购物车和结账步骤。 - 店面浏览行为:产品浏览和添加到购物车的操作,由用于网页推送选择加入的相同主题嵌入收集。
- 结账步骤:输入的联系信息和提交的支付信息,通过 Shopify Web Pixel 收集。
术语表(如果实体名称不同,则进行映射)
Anchor link to| Shopify | Pushwoosh |
|---|---|
| Customer | User ID |
orders/paid webhook | 事件 PW_OrderCreated — 与其他电子商务集成共享(例如 Magento) |
checkouts/create webhook | 事件 PW_AbandonedCart — 相同的共享事件,也由产品块的购物车源使用 |
checkouts/update webhook | 事件 PW_AbandonedCartUpdate — 当购物者继续编辑同一结账时触发,覆盖从 PW_AbandonedCart 存储的购物车 |
| Product page view | 事件 PW_ProductViewed |
| Add to cart (no page reload) | 事件 PW_AddToCart |
Web Pixel checkout_contact_info_submitted | 事件 PW_CheckoutContactInfo |
Web Pixel payment_info_submitted | 事件 PW_PaymentInfoSubmitted |
集成如何工作
Anchor link toPushwoosh 充当 Shopify 的消息发送目标。集成后,Shopify 会将客户和行为数据发送到 Pushwoosh,用于实时通知、客户细分和跨渠道的个性化消息发送。
集成的关键组件
Anchor link to-
通过 metafields 进行客户识别 每个 Shopify 客户都被分配一个唯一的 User ID,存储在 metafield (
custom.pushwoosh_userid) 中。此 ID 允许 Pushwoosh 在不同平台上一致地识别和向用户发送消息。 -
通过 Shopify Flow 实现事件驱动的自动化 Pushwoosh 提供了 Flow 操作,允许您根据 Shopify 事件(例如以下事件)自动化消息发送(推送、电子邮件、短信、WhatsApp):
- 新订单已下
- 标签已应用于客户
- 购物车被放弃
-
基于细分的目标定位 来自 Shopify 的客户细分可用于跨渠道发送特定群组的通知,例如针对首次购买者的促销活动或针对不活跃用户的重新激活活动。
-
手动和实时消息发送 从 Shopify 客户或细分视图中,您可以使用 Pushwoosh 扩展手动触发通知:
- 按客户发送通知:用于个人跟进或测试
- 按细分发送通知:用于基于活动的营销消息
通过店面嵌入实现网页推送通知
Anchor link to通过在您的 Shopify 主题中启用 Pushwoosh 嵌入,您可以提示网站访问者选择加入基于浏览器的推送通知——无需移动应用。
数据流概览
Anchor link toShopify 客户和事件数据 ↓Pushwoosh API(通过应用) ↓用户 ID → 细分 → 触发或手动通知此集成使您能够自动或按需发送及时、相关的消息,从而提高用户留存率、增加转化率并增强客户体验。
第 1 部分:安装
Anchor link to登录 Shopify
Anchor link to- 前往 Shopify 管理后台
- 从仪表板中选择您的商店
安装 Pushwoosh 应用
Anchor link to- 访问 Pushwoosh 应用商店页面
- 点击 Install

- 在 Shopify 对话框中确认安装

连接您的 Pushwoosh 应用
Anchor link to安装后,您将被重定向到 Shopify 内的 Pushwoosh 应用。
- 点击 Connect。

- 输入 Application Code 和 API Key,您可以在 Pushwoosh 控制面板 → 设置 → API 访问 中找到它们。此处的 API Key 是您的设备 API 访问令牌。

连接后,将出现一条成功消息:“Pushwoosh app connected.”

当 Shopify 请求权限(订单、像素、客户事件)时,请批准它们。这些范围是第 5 部分跟踪所必需的。如果您之前已连接该应用,请参阅已经连接?系统会要求您重新批准访问权限。
订阅计划
Anchor link to- 点击 Upgrade Subscription
- 将显示一个基于使用量的单一计划。
- 确认账单。

第 2 部分:设置:通过 metafields 设置客户 User ID
Anchor link to为了向跨渠道(推送、电子邮件、短信、WhatsApp)的已识别用户发送通知,Pushwoosh 为每个客户使用一个唯一的 User ID。Shopify 将此值存储在 Shopify 的 Customer metafields 中。
- 前往 Settings → Metafields and metaobjects → Customers

- 点击 Add definition 并使用以下值:
| 字段 | 值 |
|---|---|
| Namespace and key | custom.pushwoosh_userid |
| Namespace | custom |
| Type | Single line text |
| Validation | None |
| Customer Account Access | Read and Write |
| Storefront API Access | Enabled |

按照上表设置 Customer accounts access 和 Storefront API access。

第 3 部分:使用 Pushwoosh 扩展
Anchor link toPushwoosh 包括用于细分目标定位、自动化 (Flow) 和特定客户通知的 Shopify 扩展。
扩展 1:按客户发送通知
Anchor link to使用场景
Anchor link to手动向特定用户发送个性化消息或测试通知。
- 打开 Customers → Select a customer
- 点击 More actions → Notification by customer

- 选择消息平台(例如,电子邮件)和内容预设。

- 点击 Send
扩展 2:按细分发送通知
Anchor link to使用场景
Anchor link to针对客户群体——放弃购物车、首次购买者、高消费者。
-
前往 Customers → Segments
-
选择一个细分 → 点击 Use Segment

- 选择 Notification by Segment

- 选择所需的通信渠道和消息预设。点击 Send。

扩展 3:Shopify Flow 中的 Pushwoosh
Anchor link to使用场景
Anchor link to使用订单、标签或行为等触发器在客户旅程中自动化消息发送。
- 在 Shopify Flow 中创建一个新的 Flow
- 添加操作 → 选择 Pushwoosh send notification

- 配置消息和动态字段

例如:
-
下单后发送消息
-
当购物车被放弃时提醒用户
-
在 30 天不活动后发送重新激活推送
第 4 部分:启用网页推送(和店面浏览事件)
Anchor link to仅对于网页推送是可选的。如果您需要第 5 部分中的产品浏览和添加到购物车事件,则为必需。
在您的店面上为浏览器网页推送打开主题嵌入:
- 前往 Online Store → Themes → Customize

- 从左侧菜单打开 App Embeds
- 将 Push Init Embed 切换为 ON

第 5 部分:跟踪订单、购物车和结账步骤
Anchor link to在您连接应用并批准 Shopify 请求的订单、购物车和结账跟踪权限(read_orders、write_pixels、read_customer_events)后,订单、结账和结账步骤事件将开始到达,无需单独的 Pushwoosh 跟踪屏幕。有关批准步骤,请参阅先决条件和第 1 部分。店面浏览(产品浏览和添加到购物车)还需要将 Push Init Embed 设为 ON。
跟踪涵盖三个独立的事件组。每个组都需要不同的访问权限,因此关闭一个不会暂停其他组:
- 订单支付和结账:即使主题嵌入关闭,也会从 Shopify 到达
- 店面浏览(产品浏览和添加到购物车):需要主题嵌入 ON
- 结账步骤:需要第 1 部分中 Shopify 的结账跟踪权限(
write_pixels和read_customer_events),与上述订单跟踪权限(read_orders)分开批准
在连接应用之前,请检查 Pushwoosh 如何处理 PW_OrderCreated 和 PW_AbandonedCart 的金额和日期属性类型。在您发现之前发送的错误类型无法追溯修复。
订单支付和结账事件
Anchor link to使用这些事件进行购买后消息发送(PW_OrderCreated)、放弃结账旅程或细分(PW_AbandonedCart / PW_AbandonedCartUpdate)以及购买转化映射。即使购物者阻止了浏览器跟踪,这些事件也会从 Shopify 到达:
| Pushwoosh 中的事件名称 | 触发时机 |
|---|---|
PW_OrderCreated | 订单已支付 |
PW_AbandonedCart | 购物者开始结账 |
PW_AbandonedCartUpdate | 购物者在现有结账期间添加、删除或更改商品 |
这些对应于 Shopify 自动发送给 Pushwoosh 的订单和结账通知(orders/paid、checkouts/create 和 checkouts/update webhooks,列在同步的实体下)。
Shopify 自己的 Flow 条件、checkouts/create webhook 和产品块的购物车源是三种不同的东西,它们都被称为购物车放弃。根据您要构建的内容,使用下表选择匹配的一项。
| 您想构建什么 | 使用什么 |
|---|---|
| 来自 Shopify Flow 的提醒(Shopify 自己的购物车放弃条件) | Shopify Flow + Pushwoosh 发送通知操作。不是 PW_AbandonedCart 事件名称。 |
| 来自 Pushwoosh 的提醒或细分,基于结账开始或购物车更改 | 基于 PW_AbandonedCart / PW_AbandonedCartUpdate 的客户旅程或细分 |
| 在电子邮件中显示购物者的购物车商品 | 产品块购物车源(在发送时使用 PW_AbandonedCartID 标签)。与启动旅程的触发器无关。 |
这些事件的行为方式。 checkouts/create 仅表示结账已开始。Shopify 尚未决定它被放弃,也未确认任何订单。
当购物者编辑结账时,PW_AbandonedCartUpdate 会为同一结账再次触发,并覆盖从 PW_AbandonedCart 存储的购物车。使用购物车源的提醒电子邮件会在发送时获取最新的商品。您不需要第二个旅程触发器仅用于刷新购物车。
PW_AbandonedCart 和 PW_AbandonedCartUpdate 会在购物者身上设置 PW_AbandonedCartID 标签,这是购物车源在发送时读取的内容。PW_OrderCreated 会立即清除它,因此已经结账的购物者会跳过该块,而不是收到他们已不再拥有的购物车的提醒。有关确切的清除行为,请参阅发送 PW_OrderCreated 时会发生什么。
订单和结账事件的属性
Anchor link toPW_OrderCreated 和 PW_AbandonedCart 包括:
| 属性 | 描述 |
|---|---|
orderId | 订单或结账标识符 |
email | 购物者的电子邮件 |
totalPrice | 订单或购物车总价 |
shippingAmount | 运费 |
taxAmount | 税额 |
discountAmount | 折扣金额 |
currency | 货币代码 |
items | 购物车的商品行 |
customerId | 仅适用于注册客户,访客结账时不存在 |
orderUrl | PW_OrderCreated 的订单状态页面,或 PW_AbandonedCart 和 PW_AbandonedCartUpdate 的放弃结账恢复 URL。用它来构建“完成您的购买”链接或按钮。 |
createdDate | 订单或结账创建时间 |
abandonedDate | 仅 PW_AbandonedCart 和 PW_AbandonedCartUpdate。购物车最后一次被触及的时间,而不是首次创建的时间 |
访客结账仍然可以发送订单和购物车事件,但事件上没有注册的客户 ID。
PW_AbandonedCartUpdate 携带相同的属性。如果您的账户还连接了 Magento 集成,其订单和放弃的购物车会发布到这些相同的事件名称,因此基于 PW_OrderCreated / PW_AbandonedCart 构建的细分或旅程会捕获两个商店,并且上述属性类型也适用于两者。Magento 没有与 PW_AbandonedCartUpdate 等效的功能,因为它不跟踪进行中的结账编辑。
特别是 items 从 Shopify 到达时只有少数几个字段被填写。
店面浏览事件
Anchor link to使用这些事件进行浏览放弃细分或旅程,以及需要产品浏览的电子邮件推荐策略(例如基于他们浏览过的内容)。请参阅如何在电子邮件中设置产品推荐。
两个事件都由相同的主题嵌入收集。一旦 Push Init Embed 设为 ON,无需向主题添加其他内容:
PW_ProductViewed:购物者打开一个产品页面。PW_AddToCart:购物者在不重新加载页面的情况下将商品添加到购物车,这是大多数 Shopify 主题的做法。
店面浏览事件的属性
Anchor link to两个事件都包括:
| 属性 | 描述 |
|---|---|
items | 浏览或添加的产品,每个产品都有 productId、name、sku、quantity、price |
totalPrice | items 的总价 |
productUrl | 购物者所在的页面 |
currency | 仅当商店公开时 |
显示 totalPrice 的消息需要一个备用方案,以防 currency 缺失,因为仅有数字无法说明是哪种货币。
这两个事件都不携带 email 或 customerId 作为属性。购物者的识别方式与主题嵌入的其余部分相同,通过与 metafield User ID 绑定的 SDK 会话(请参阅第 2 部分),而不是通过事件有效负载。
PW_ProductViewed 和 PW_AddToCart 的 items 携带 Shopify 在丰富之前发送的相同字段:productId、name、sku、quantity、price。Pushwoosh 不会像处理 PW_AbandonedCart 的 items 那样为这两个事件填充其余的目录字段(请参阅上面的购物车商品会从您的产品目录中丰富)。
需要完整产品详细信息的推荐策略,例如基于他们浏览过的内容,会在消息呈现时通过 productId 从您的产品目录中查找它们。请参阅如何在电子邮件中设置产品推荐以了解每个策略需要什么。
结账步骤事件
Anchor link to使用这些事件来查看人们在购买前在何处流失,并向那些开始结账但未达到已支付订单的人发送消息。
PW_CheckoutContactInfo:购物者输入了他们的联系信息。PW_PaymentInfoSubmitted:购物者提交了他们的支付详情。
已完成的销售是上面部分的 PW_OrderCreated,而不是这两个事件。
PW_AbandonedCart 只告诉您结账已开始。这两个事件标记了同一次结账中按顺序发生的两个后续点:首先是联系信息,其次是支付详情。一个达到 PW_PaymentInfoSubmitted 且从未收到后续 PW_OrderCreated 的购物者比只触发了 PW_AbandonedCart 的购物者走得更远,因此基于该阶段构建的消息可以专门针对停滞的支付,而不是通用的购物车提醒。
结账步骤事件的属性
Anchor link to两个事件都包括:
| 属性 | 描述 |
|---|---|
items | 结账的商品行,每个都有 productId、name、sku、quantity、price |
orderId | 结账令牌,或者一旦结账有了 Shopify 订单 ID,就是该 ID |
totalPrice | 结账总额 |
email | 仅当结账有电子邮件时。基于电话的结账(未输入电子邮件)会发送不带电子邮件的事件。 |
currency | 仅当结账有货币时 |
检查它是否工作
Anchor link to在商店中执行匹配的操作,然后确认事件名称出现在 Pushwoosh 中。事件本身是实时处理的,但您检查它的两个地方对 Pushwoosh 以前未见过的名称的反应不同:
- 在您按事件创建细分时,事件下拉菜单中会立即出现一个新名称。
- 在您添加客户旅程触发器时,事件下拉菜单中的新名称可能需要长达 10 分钟才能显示出来(该下拉菜单是缓存的)。如果您还没有看到它,请等待,而不是假设集成已损坏。
| 测试操作 | 事件 |
|---|---|
| 支付一个测试订单 | PW_OrderCreated |
| 开始一个结账 | PW_AbandonedCart |
| 在该结账中更改商品 | PW_AbandonedCartUpdate |
| 打开一个产品页面(Push Init Embed ON) | PW_ProductViewed |
| 将商品添加到购物车 | PW_AddToCart |
| 在结账时输入联系信息 | PW_CheckoutContactInfo |
| 在结账时提交支付信息 | PW_PaymentInfoSubmitted |
使用事件
Anchor link to在您知道需要哪个事件后,在两个地方使用它:
- 作为触发器或细分条件:在您按事件创建细分或添加客户旅程触发器时,在事件下拉菜单中选择它。
- 在消息文本中:在消息步骤中,打开使用事件属性个性化消息并选择属性(例如,来自
PW_OrderCreated的订单总额)。您还可以使用 Liquid 占位符插入属性。请参阅旅程中的动态内容和 Liquid 模板。
对于已支付的订单,您还可以将 PW_OrderCreated 映射为转化事件,以便 Shopify 购买数据可用于 RFM 细分、旅程归因和产品块统计。
示例活动
Anchor link to每个活动都在购物者路径的不同点触发,因此它们触及不同的受众:某人在放弃前走了多远,或者他们是否到达了结账,决定了哪个活动适用。
- 放弃购物车提醒。 捕捉每个开始结账的购物者,无论他们走了多远:这里是受众最广的。将其构建为客户旅程:在
PW_AbandonedCart上触发,等待PW_OrderCreated,然后向尚未付款的人发送一封带有购物车源块的电子邮件。有关完整设置,请参阅如何设置放弃购物车活动。 - 停滞结账的跟进。 仅捕捉那些已经输入联系信息但从未付款的购物者,这是上述受众中更窄的一部分。在
PW_CheckoutContactInfo上进行细分,然后排除任何同时拥有PW_PaymentInfoSubmitted或PW_OrderCreated的人。 - 停滞支付的恢复。 捕捉那些到达支付但从未完成订单的购物者,比上面的跟进更进一步,并且与它互斥。在
PW_PaymentInfoSubmitted上进行细分,然后排除任何同时拥有PW_OrderCreated的人。 - 浏览推荐电子邮件。 捕捉那些浏览了产品但从未开始结账的购物者,这是与上述提醒不同的受众。将
PW_ProductViewed与产品块的基于他们浏览过的内容策略一起使用。请参阅如何在电子邮件中设置产品推荐。
第 6 部分:数据合规性
Anchor link toShopify 要求每个公共应用都响应其强制性的 GDPR/CCPA webhooks。Pushwoosh 按如下方式处理它们:
customers/redact:当购物者要求商店删除他们的数据时,Pushwoosh 会根据 Shopify 发送的任何标识符——电子邮件、电话和 Shopify 客户 ID——删除匹配的 Pushwoosh 记录。customers/data_request:当购物者请求其数据副本时,Pushwoosh 会向支持的内部渠道发布通知,并由专人手动处理请求。Shopify 要求应用在 30 天内响应这些请求。shop/redact:Shopify 在商店卸载应用 48 小时后发送此请求,要求删除商店的数据。Pushwoosh 会重新运行卸载本身触发的相同删除操作,清除任何剩余的会话并删除商店的集成记录(包括设备 API 密钥、应用程序代码和账单 ID)。这是为了防止卸载第一次没有完全清理干净的安全网。
使用场景总结
Anchor link to接下来,在旅程、细分或转化映射中使用上述事件名称。例如:
| 场景 | 使用的工具 |
|---|---|
| 个性化跟进 | 按客户发送通知 |
| 放弃购物车提醒 | Shopify Flow + Pushwoosh 操作,或基于 PW_AbandonedCart / PW_AbandonedCartUpdate 的旅程/细分(请参阅第 5 部分) |
| 基于细分的促销 | 按细分发送通知 |
| 注册后发送欢迎消息 | Flow + Metafield 跟踪 |
| 推送选择加入 | 主题嵌入 + 推送初始化切换 |
| 收入归因和 RFM 细分 | 映射到转化事件的订单/结账事件 |
| 结账流失分析 | PW_CheckoutContactInfo / PW_PaymentInfoSubmitted 事件 |
| 浏览或购物车放弃细分 | 店面产品浏览/添加到购物车事件 |