消息服务集成

在竞争日益激烈的移动市场中,获客既不容易也成本不低。因此,善加维护已有用户能有效改善你的单位经济效益,在竞争高度激烈的细分领域尤为如此。 Adapty 提供用户核心支付行为的实时信息。无论是用户开始试用、遇到支付问题,还是购买订阅后决定取消,我们都能第一时间掌握。这些事件都反映了用户状态的变化——这正是最佳的触达时机:发送专属优惠、个性化礼品,或任何其他留存手段。 推送通知平台支持使用标准标签和自定义标签来描述用户,从而构建高效的自动化用户留存体系。要让这套系统正常运作,只需要触发事件来通知平台何时该发送消息。这些事件将通过已配置的集成从 Adapty 发送到推送平台。

请选择您需要集成的服务并按照相应说明操作:

没有找到您的归因服务商? 请告诉我们!提交功能请求,我们会认真考虑。

事件属性

Webhook 事件以 JSON 格式发送。所有事件遵循相同的结构,但字段内容会根据事件类型、商店以及你的具体配置有所不同。

属性类型描述
profile_iduuidAdapty 用户 ID。
currencystr本地货币(默认为 USD)。
price_usdfloat扣除 Apple/Google 佣金前的产品价格,即收入。
proceeds_usdfloat扣除 Apple/Google 佣金后的产品价格,即净收入。
net_revenue_usdfloat净收入(扣除 Apple/Google 佣金及税费后的收入),以 USD 计。可能为空。
price_localfloat扣除 Apple/Google 佣金前的产品本地货币价格,即收入。
proceeds_localfloat扣除 Apple/Google 佣金后的产品本地货币价格,即净收入。
transaction_idstr交易(如购买或续订)的唯一标识符。
original_transaction_idstr原始购买的交易标识符。
purchase_dateISO 8601 date产品购买的日期和时间。
original_purchase_dateISO 8601 date原始购买的日期和时间。
environmentstr可为 SandboxProduction
vendor_product_idstrApple App Store、Google Play Store 或 Stripe 中的产品 ID。
base_plan_idstrGoogle Play Store 中的基础方案 ID 或 Stripe 中的价格 ID
event_datetimeISO 8601 date事件发生的日期和时间。
storestr可为 app_storeplay_store
trial_durationstr试用期时长(天数),格式为” days”,例如”7 days”。
cancellation_reasonstr

用户取消订阅的原因。

可为

iOS & Android

voluntarily_cancelledbilling_errorrefund

iOS

price_increaseproduct_was_not_availableunknown

Android

new_subscription_replacecancelled_by_developer

subscription_expires_atISO 8601 date订阅的到期日期,通常为未来时间。
consecutive_paymentsint用户连续订阅的周期数(不含中断),包含当前周期。
rate_after_first_yearbool布尔值,表示该订阅在连续续订满一年后是否符合享受较低佣金率(通常为 15%)的条件。佣金率因项目资格和国家/地区而异。详见商店佣金与税费
promotional_offer_idstr促销活动 ID,如 Adapty 看板产品部分所示。
store_offer_categorystr可为 introductorypromotional
store_offer_discount_typestr可为 free_trialpay_as_you_gopay_up_front
paywall_namestr交易来源付费墙的名称。
paywall_revisionint交易来源付费墙的版本号,值为 1。
developer_idstr交易来源版位的开发者(SDK)ID。
ab_test_namestr交易来源 A/B 测试的名称。
ab_test_revisionint交易来源 A/B 测试的版本号,值为 1。
cohort_namestr该用户画像所属目标受众的名称。
profile_event_iduuid可用于去重的唯一事件 ID。
store_countrystr商店向我们提供的国家/地区信息。
profile_ip_addressstr用户画像的 IP 地址(可为 IPv4 或 IPv6,优先使用 IPv4)。每次设备 IP 变更时更新。
profile_countrystr由 Adapty 根据用户画像 IP 地址确定。
profile_total_revenue_usdfloat该用户画像的总收入,包含退款。
variation_iduuid完成购买的付费墙唯一 ID。
access_level_idstr付费访问等级 ID。
is_activebool布尔值,表示该用户画像的付费访问等级当前是否有效。
will_renewbool布尔值,表示付费访问等级是否将续订。
is_refundbool布尔值,表示该交易是否已退款。
is_lifetimebool布尔值,表示付费访问等级是否为永久授权。
is_in_grace_periodbool布尔值,表示该用户画像是否处于宽限期。
starts_atISO 8601 date用户付费访问等级的开始日期和时间。
renewed_atISO 8601 date付费访问将续订的日期和时间。
expires_atISO 8601 date付费访问将到期的日期和时间。
activated_atISO 8601 date付费访问激活的日期和时间。
billing_issue_detected_atISO 8601 date检测到计费问题的日期和时间。
profile_has_access_levelBool布尔值,表示该用户画像是否拥有有效的访问等级(仅限 Webhook)。
每个事件都包含以下属性:

transaction_id, original_transaction_id, purchase_date, original_purchase_date, environment, vendor_product_id, event_datetime, store

此外,部分事件还有额外属性。对于 subscription_refundednon_subscription_purchase_refunded 事件,必须提供 price_usdproceeds_usd 作为额外属性。

事件名称属性
subscription_initial_purchaseprice_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration
subscription_renewedprice_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration
subscription_cancelledcancellation_reason, trial_duration
trial_startedsubscription_expires_at, trial_duration
trial_convertedprice_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration
trial_cancelledcancellation_reason, trial_duration
non_subscription_purchaseprice_usd, proceeds_usd
billing_issue_detectedsubscription_expires_at, trial_duration
entered_grace_periodsubscription_expires_at, trial_duration
事件示例
{
    "price_usd": 9.99,
    "proceeds_usd": 6.99,
    "transaction_id": "1000000628581600",
    "original_transaction_id": "1000000628581600",
    "purchase_date": "2020-02-18T18:40:22.000000+0000",
    "original_purchase_date": "2020-02-18T18:40:22.000000+0000",
    "environment": "Sandbox",
    "vendor_product_id": "premium",
    "event_datetime": "2020-02-18T18:40:22.000000+0000",
    "store": "app_store"
}

Adapty 会将事件发送到您的服务器和第三方分析系统。 profile_ip_address 属性与当前设备 IP 同步。每次 Adapty 服务器从 SDK 接收到信息时,如果 IP 与记录中的不同,则会自动更新。