Shopify
连接一个 Shopify 商店,将其客户同步到 MailInApp 联系人列表,以真实商店事件触发旅程,并将收入归因到某个营销活动或变体上。
连接你的商店
Shopify 商店从 Shopify 一侧连接,而不是从 MailInApp 连接:在你的 Shopify 后台,从 Shopify App Store 安装 MailInApp(如果已经安装,则从应用中打开它),并在 Shopify 自己的 OAuth 页面上批准访问。MailInApp 请求 read_customers、read_orders 和 read_products(均为只读权限),以及 write_discounts 权限,以便铸造下文所述的一次性折扣码——它绝不会请求对你商店的商品、订单或客户本身的写入权限。授权通过后,MailInApp 会为该商店创建一个专属的联系人列表,并在后台启动初始客户回填,单次连接最多回填 5,000 名客户。客户数超过该上限的商店会继续通过 Shopify 自身的 Webhook 增长其列表,只是不会对超出上限的部分进行一次性回填。
随后 Shopify 会把你带到 MailInApp,登录你现有的账户或免费创建一个——商店会连接到你登录的那个账户,然后你会回到 Shopify 后台中的 MailInApp 应用。MailInApp 自己的控制台里没有输入 myshopify.com 域名的表单:设置 → 集成会显示已连接的商店、同步状态以及断开连接。
连接 Shopify 在所有套餐(包括免费版)上都是免费的。你的 MailInApp 套餐本身完全通过 Shopify 管理和计费,在 Shopify 后台的 MailInApp 应用中操作——无需经过 MailInApp 自己的银行卡或 PayPal 结账。
它能做什么
- 客户同步——Shopify 客户会进入一个专属于该集成的联系人列表,此后由 Shopify 自身的 Webhook(
customers/create,以及用于下方触发器的checkouts/create和orders/paid)保持更新,而不是通过周期性重新拉取。 - 旅程触发器——已连接的商店可以触发一个旅程的购物车已放弃触发器(结账已开始但未完成)以及购买触发器(订单已付款),这样欢迎系列或购物车放弃类自动化就可以基于真实的 Shopify 活动运行,而不仅仅依赖 MailInApp 自身的商品模块结账。参见旅程。
- 收入归因——当某笔订单能够识别出所属的营销活动/变体时,该信息会汇入与原生结账订单相同的响应与 A/B 测试收入统计中。
- 购买历史分群与折扣优惠——订单明细项会与客户一同同步,因此受众筛选条件可以匹配"在 A 与 B 日期之间购买了商品 X"(参见购买历史),项目也可以为每位匹配的收件人铸造一个一次性 Shopify 折扣码,在你自己的商店结账时兑换(参见折扣优惠)。后续订单会通过
orders/paidWebhook 自动同步;在此功能上线之前就已连接的商店,或历史订单较久的商店,需要在设置 → 集成中执行一次性的回填订单历史操作——除非 Shopify 已单独批准该应用获取你商店的完整订单历史,否则回填范围大致限制在最近 60 天左右。从你的商品目录中导入的商品模块还可以独立铸造自己的单品折扣——仅限定该商品本身,不需要任何受众筛选条件——参见商店原生折扣和Shopify 商品折扣码。 - 面向工作室的商品目录——你商店自己的在售商品同样会同步到 MailInApp,与客户同步保持相同的自动刷新节奏(无需单独按钮)。商品模块的从商店导入选择器会在这个已同步的目录中搜索,并用一件真实商品的名称、描述、图片和价格来填充模块——这是一次性拷贝,不是实时链接,因此已发送邮件的内容绝不会与你审阅过的版本产生偏差。它还会同步每件商品自己的页面(基于其 Shopify handle),并在该页面可用时,把模块设置为链接到外部商店结账并直接指向该页面——这样导入的商品就已经可以在你的 Shopify 商店中销售,无需再做任何配置;如果你更想通过已连接的 Stripe 账户收款,可以手动切换回MailInApp 结账。在此功能上线之前就已连接的商店,需要在设置 → 集成中快速执行一次断开连接,再从 Shopify 后台重新打开 MailInApp,以授予 Shopify 要求的新的
read_products权限——在此之前,该选择器只会显示为空。
连接状态与重新连接
Shopify 会为 MailInApp 签发一个短期访问令牌(有效期约一小时),并附带一个会轮换的刷新令牌(refresh token),MailInApp 会在后台自动更新这对令牌——在正常使用下,客户同步、旅程触发器和折扣码铸造都会持续正常工作,无需你做任何操作。
如果 Shopify 撤销或使该刷新令牌失效——例如应用在 MailInApp 之外被卸载并重新安装、你在 Shopify 后台手动撤销了访问权限,或令牌因长期未使用而过期——MailInApp 会刻意停止,而不是使用过期凭据静默重试,并在设置 → 集成中将该商店的状态显示为需要重新连接。这是一项安全保护措施,而不是故障:MailInApp 绝不会代表你重新进行身份验证,除非你通过 Shopify 自己的页面批准一次新的 OAuth 授权。
如果你看到这个状态,请在设置 → 集成中点击断开连接,然后从 Shopify 后台再次打开 MailInApp,并在 Shopify 的页面上批准,以获取一对全新的令牌。这只需几秒钟,不产生任何费用,也不会影响已同步的联系人或订单——一旦新连接获得批准,同步就会自动恢复。
断开连接
在设置中点击断开连接会立即停止同步以及任何后续的 Webhook 处理。已同步的客户会继续保留在其联系人列表中——断开一个集成绝不会删除联系人,因为它们可能已经是其他项目的发送受众。从 Shopify 端卸载应用一开始也是同样的效果。大约 48 小时后,一旦 Shopify 自己的数据删除 Webhook 被触发,已同步的联系人和购物车记录也会被彻底清除——这是每个 Shopify 应用都必须遵守的标准宽限期。