通过 Webhook 将订单发送到 Zapier、Make 等应用

添加 Webhook 后,Payly 会将每个新订单、发货、退款和订阅发送到 Zapier、Make 或任何支持 Webhook 的应用。

Webhook 会在店铺事件发生时,立即将其发送到另一个应用。添加之后,每一笔已付款订单都能传到 Zapier 或 Make,再由它们传到 Google Sheets、Slack、您的邮件列表、您的会计软件以及数千个其他应用。无需编写代码。

添加 Webhook

  1. 在站点后台,点击集成。
  2. 在自动化下,开启 Webhook。随即弹出一个窗口。
    集成页面上的自动化卡片,Webhook 开关已开启。卡片显示它发送的事件“订单已付款”,以及一个设置链接
  3. 选择一个事件,粘贴应用提供给您的 Webhook 地址,然后点击添加 Webhook。
  4. 点击发送测试发送一笔示例订单,然后点击完成。
    Webhook 弹窗,其中有一个“订单已付款”的 Webhook 及其 Zapier 地址。最近的投递显示一次已送达的测试。下方是添加 Webhook 的表单,以及店铺的签名密钥和“复制”按钮

Webhook 添加后立即生效,无需发布。

连接到 Zapier

  1. 在 Zapier 中创建一个 Zap。触发器选择 Webhooks by Zapier,然后选择 Catch Hook。
  2. 复制 Zapier 显示的 Webhook URL。
  3. 在 Payly 中,为订单已付款添加一个 Webhook,并粘贴该 URL。
  4. 点击发送测试。回到 Zapier,点击 Test trigger。您会看到示例订单:John Smith 的 #9999。
  5. 添加您想要的操作,例如在 Google Sheets 中新增一行,并映射字段:Order Number、Order Total、Order Customer Email 等。
  6. 发布这个 Zap。此后每一笔已付款订单都会触发它。

Webhooks by Zapier 是 Zapier 的高级应用之一,因此需要付费的 Zapier 套餐。

连接到 Make

  1. 在 Make 中创建一个场景。依次添加 Webhooks 和 Custom webhook,然后点击 Add 创建新的 Webhook。
  2. 复制 Make 显示的地址。
  3. 在 Payly 中,用该地址添加一个 Webhook,然后点击发送测试。Make 会读取示例并识别其中的字段。
  4. 添加您需要的模块,映射字段,然后开启场景。

事件

  • 订单已付款:订单完成付款时。包括订阅的首次付款、每次续订,以及您手动添加并标记为已付款的订单。
  • 订单已发货:您将订单标记为已发货时。分批发货时,每一批都会发送。
  • 订单已退款:款项退回时,无论您是在 Payly 中退款,还是在 Stripe 或 PayPal 中退款。每一次部分退款也会发送。
  • 订阅已开始:订阅的第一笔订单。
  • 订阅已续订:首次付款之后的每一笔付款。
  • 订阅已结束:订阅被取消或到期时,在订阅结束当天发送。

Payly 会发送什么

每个事件都以 JSON 格式发送。每个订单事件都包含:

  • 订单号(如 #1000)、订单状态和付款时间
  • 小计、折扣和折扣码、运费、税费、合计和已退款金额,以及币种
  • 每件商品的名称、SKU、数量、价格和行合计
  • 顾客的姓名、邮箱和电话,以及收货地址
  • 付款方式,如 Stripe 或 PayPal
  • test_mode,在测试模式中提交的订单为 true

发货事件会附加承运商和物流单号。退款事件会附加截至目前的退款总额。订阅事件会附加套餐、价格、计费频率和下一次续订日期。通过发送测试发送的示例带有 "test": true。银行卡号只保存在 Stripe 和 PayPal,因此绝不会出现在 Webhook 中。

Webhook 发送失败时

应用有 5 秒钟的时间响应。如果超时未响应,或返回错误,Payly 会在大约四个半小时内最多再重试 7 次。弹窗中会列出每个 Webhook 最近的投递记录,方便您查看发生了什么。

如果连续三个事件的每次重试都失败,该 Webhook 就会被暂停,集成页面也会显示这一状态。请检查地址,然后点击重新启用。

确认 Webhook 来自您的店铺

Zapier 和 Make 不需要这一步。如果您自行开发应用,每个请求都带有 X-Payly-Hmac-Sha256 标头:这是使用您店铺的签名密钥,以 HMAC-SHA256 对请求正文进行签名,并以 base64 表示的结果。该密钥在 Webhook 弹窗中。请根据原始正文计算出相同的签名,并将两者进行比较。

重试发送时,X-Payly-Webhook-Id 标头保持不变,因此您的应用可以跳过已经处理过的请求。

Last updated 2026-10-22