发送至第三方集成的事件

Apple 和 Google 通过 App Store 服务器通知和实时开发者通知直接向 Adapty 服务器报告订阅事件。这样你就能了解到用户是否完成了转化、续订或流失。

要将这些事件转发出去,需要在 Adapty 中配置目标平台。第三方平台(MMP、分析工具、消息推送等)各有其专属的集成页面。如需将事件发送到自有后端,请通过 webhook 接收。

所有事件共用同一结构,但具体字段因事件类型、商店及配置不同而有所差异。Webhook 事件类型与字段介绍了 webhook 负载的内容,各集成文章则说明了对应目标平台所接收的格式。事件状态介绍了如何查看投递状态。

示例

大多数事件会跟踪用户的购买行为,从首次扣费到订阅到期。

用户在试用期内取消订阅

用户于 4 月 1 日激活了一个包含 7 天试用期的月度订阅,并在第 4 天取消了订阅。

在这种情况下,将发送以下事件:

  1. trial_started:4 月 1 日
  2. trial_renewal_cancelled:4 月 4 日
  3. trial_expired:4 月 7 日

用户在转化后取消订阅

用户于 4 月 1 日激活了一个附带 7 天试用期的月度订阅,并在第 10 天取消了订阅。

在这种情况下,将发送以下事件:

  1. 4 月 1 日发送 trial_started
  2. 4 月 7 日发送 trial_converted
  3. 4 月 10 日发送 subscription_renewal_cancelled
  4. 5 月 1 日发送 subscription_expired

若想了解各场景下会触发哪些事件的详细说明,请查阅事件流程。

事件列表

你可以控制每个集成接收哪些事件。大多数事件适用于所有集成,但以下三个事件除外:

  • Access level updated 仅在已配置 webhook 集成 且启用该事件的情况下才会触发。它会显示在 Event Feed 中并发送到 webhook,但其他集成不会收到该事件。如果未配置 webhook 集成或未启用该事件类型,Adapty 将不会创建该事件,它也不会出现在 Event Feed 中。
  • Trial still active 和 Subscription still active 属于合成事件,只有部分集成能收到这些事件。

以下表格列出了 Adapty 可以发送到第三方集成的所有事件:

事件名称描述
subscription_started当用户激活不含试用期的付费订阅时触发,即立即扣款。
subscription_active在 subscription_started 事件触发后,确认订阅仍处于有效状态。你需要设置从订阅开始到本次检查之间的天数。若订阅仍有效(包括用户已进入宽限期的情况),则会收到该事件。若订阅在检查时已结束,或用户已关闭自动续订,则不会收到任何通知,Adapty 也不会再次检查。此事件仅跟随未含试用期的订阅触发。试用转化会发送 trial_converted,不会启动本次检查。
subscription_renewed当订阅续期并向用户扣款时触发。无论是试用订阅还是非试用订阅,均从第二次计费起触发。
subscription_renewal_cancelled用户已关闭订阅自动续订。用户在已付费订阅期结束前仍可享受高级功能。
subscription_renewal_reactivated当用户重新激活订阅自动续订时触发。
subscription_expired当订阅在取消后完全结束时触发。例如,用户于 12 月 12 日取消订阅,但订阅至 12 月 31 日仍有效,则该事件在 12 月 31 日订阅到期时记录。
subscription_paused当用户激活订阅暂停时触发(仅限 Android)。
subscription_deferred当订阅购买被延期时触发,允许用户在保留高级功能访问权限的同时延迟付款。此功能通过 Google Play Developer API 提供,可用于免费试用或为面临财务困难的用户提供便利。
non_subscription_purchase任何非订阅购买,例如永久授权或消耗型商品(如游戏内货币)。
trial_started当用户激活试用订阅时触发。
trial_active在 trial_started 事件触发后,确认试用仍处于有效状态。你需要设置从试用开始到本次检查之间的天数。若试用仍在进行中,则会收到该事件。若试用在检查时已结束或已转化,或用户已关闭自动续订,则不会收到任何通知,Adapty 也不会再次检查。
trial_converted当试用结束并向用户扣款(首次购买)时触发。例如,用户的试用期至 1 月 14 日,但在 1 月 7 日被扣款,则该事件在 1 月 7 日记录。
trial_renewal_cancelled用户在试用期内关闭了订阅自动续订。用户在试用结束前仍可享受高级功能,但不会被扣款或开始订阅。
trial_renewal_reactivated当用户在试用期内重新激活订阅自动续订时触发。
trial_expired当试用结束且未转化为订阅时触发。
entered_grace_period当付款尝试失败且用户进入宽限期(如已启用)时触发。用户在此期间仍可享受高级功能。
billing_issue_detected当扣款尝试出现账单问题时触发(例如,银行卡余额不足)。
subscription_refunded当订阅被退款时触发(例如,由 Apple 客服处理)。
non_subscription_purchase_refunded当非订阅购买被退款时触发。
access_level_updated当用户的访问等级更新时触发。

合成事件

大多数事件由某个变化触发——购买、续订或取消。而 Trial still active 和 Subscription still active 事件则恰恰相反。你需要设置一个计时器,计时器到期后,Adapty 会检查试用或订阅的状态。如果试用或订阅尚未结束,Adapty 就会触发对应的事件。

这些合成事件适用于 Adjust、Amplitude、AppMetrica、AppsFlyer、Branch、Facebook Analytics、Firebase、Mixpanel、OneSignal、PostHog、Singular、SplitMetrics 以及 webhook,需要手动开启。

如果用户在计时器到期前关闭了自动续订,Adapty 将跳过发送。系统会将该用户视为已流失,即使其访问权限仍持续到付费周期结束。

关闭该事件后,Adapty 将不再启动新的计时器。但已在运行的计时器仍会在到期时发送,因此目标端在您配置的延迟时间内可能持续收到该事件。

Note

Adapty Attribution 为 Meta 和 TikTok 广告活动提供了类似功能:合格试用 会将试用事件延迟 1 到 24 小时发送;trial_active 则等待 1 小时到 90 天。如果用户已关闭自动续订,两者都会跳过发送。它们在不同的地方配置,互不影响。

试用期仍在进行中

  • 集成:AppsFlyer
  • 事件:试用期仍处于活跃状态
  • 延迟:3 天
  • 试用开始:4 月 1 日
  • 试用结束:4 月 7 日

AppsFlyer 接收到:

  1. trial_started:4 月 1 日
  2. trial_active:4 月 4 日
  3. trial_converted:4 月 7 日

请注意以下几点:

  • 由于这是一次已转化的试用,您将永远不会收到 subscription_active 事件。
  • 如果延迟设置为 7 天,trial_active 将永远不会到达。到那时,用户已经完成了转化。

订阅仍在运行

  • 集成方式:Webhook
  • 事件:订阅仍处于活跃状态
  • 延迟:7 天
  • 订阅开始:4 月 1 日,无试用期
  • 续订:5 月 1 日

Webhook 收到以下事件:

  1. subscription_started:4 月 1 日
  2. subscription_active:4 月 8 日
  3. subscription_renewed:5 月 1 日
Note
  • 订阅必须在没有试用期的情况下开始。已转换的试用期会发送 trial_converted,这不会启动计时器。
  • 如果用户在 4 月 3 日关闭了自动续订,即使其访问权限运行到 5 月 1 日,subscription_active 也不会到达。
  • 5 月的续订不会启动第二个计时器。每次订阅只会收到一次 subscription_active。