Sự kiện gửi đến tích hợp bên thứ ba

Apple và Google báo cáo các sự kiện gói đăng ký trực tiếp đến máy chủ Adapty — thông qua App Store Server Notifications và Real-time Developer Notifications. Đây là cách bạn biết được người dùng đã chuyển đổi, gia hạn, hay hủy đăng ký.

Để chuyển tiếp các sự kiện này, hãy thiết lập destination trong Adapty. Các nền tảng bên thứ ba — MMP, analytics, messaging — mỗi loại đều có trang tích hợp riêng. Backend của bạn nhận sự kiện thông qua webhook.

Mỗi sự kiện đều có cùng cấu trúc, tuy nhiên các trường dữ liệu phụ thuộc vào loại sự kiện, cửa hàng và cài đặt của bạn. Loại sự kiện và các trường webhook mô tả chi tiết payload webhook, còn mỗi bài viết tích hợp mô tả định dạng mà destination đó nhận được. Trạng thái sự kiện giải thích cách đọc trạng thái gửi.

Ví dụ

Hầu hết các sự kiện đều theo dõi các giao dịch mua của người dùng từ lần tính phí đầu tiên đến khi hết hạn.

Người dùng hủy trong thời gian dùng thử

Người dùng đã kích hoạt gói đăng ký hàng tháng vào ngày 1 tháng 4 với 7 ngày dùng thử. Vào ngày thứ 4, họ hủy đăng ký.

Trong trường hợp đó, các sự kiện sau sẽ được gửi:

  1. trial_started vào ngày 1 tháng 4
  2. trial_renewal_cancelled vào ngày 4 tháng 4
  3. trial_expired vào ngày 7 tháng 4

Người dùng hủy sau khi chuyển đổi

Người dùng đã kích hoạt gói đăng ký hàng tháng vào ngày 1 tháng 4 với thời gian dùng thử 7 ngày. Vào ngày thứ 10, họ hủy đăng ký.

Trong trường hợp đó, các sự kiện sau sẽ được gửi:

  1. trial_started vào ngày 1 tháng 4
  2. trial_converted vào ngày 7 tháng 4
  3. subscription_renewal_cancelled vào ngày 10 tháng 4
  4. subscription_expired vào ngày 1 tháng 5

Để xem chi tiết về những sự kiện nào được kích hoạt trong từng tình huống, hãy xem Luồng sự kiện.

Danh sách sự kiện

Bạn có thể kiểm soát những sự kiện nào mà mỗi tích hợp nhận được. Hầu hết đều có sẵn cho mọi tích hợp, ngoại trừ ba sự kiện:

  • Access level updated chỉ kích hoạt nếu cả tích hợp webhook được cấu hình lẫn sự kiện được bật. Sự kiện này xuất hiện trong Event Feed và được gửi đến webhook, nhưng không có tích hợp nào khác nhận được nó. Nếu tích hợp webhook chưa được cấu hình hoặc loại sự kiện chưa được bật, Adapty sẽ không tạo sự kiện này, và nó sẽ không bao giờ xuất hiện trong Event Feed.
  • Trial still active và Subscription still active là sự kiện tổng hợp, và chỉ một số tích hợp nhất định mới nhận được chúng.

Bảng dưới đây liệt kê tất cả các sự kiện mà Adapty có thể gửi đến các tích hợp bên thứ ba:

Tên sự kiệnMô tả
subscription_startedĐược kích hoạt khi người dùng kích hoạt gói đăng ký trả phí không có thời gian dùng thử, tức là họ bị tính phí ngay lập tức.
subscription_activeXác nhận gói đăng ký vẫn còn hiệu lực sau sự kiện subscription_started. Bạn cần đặt số ngày giữa thời điểm bắt đầu gói đăng ký và lần kiểm tra này. Sự kiện được gửi nếu gói đăng ký vẫn còn hoạt động, kể cả khi người dùng đang trong thời gian ân hạn. Nếu gói đăng ký đã kết thúc trước đó, hoặc người dùng đã tắt tự động gia hạn, sẽ không có gì được gửi và Adapty sẽ không kiểm tra lại. Sự kiện này chỉ theo dõi các gói đăng ký mua không có thời gian dùng thử. Dùng thử chuyển đổi thành gói đăng ký sẽ gửi trial_converted, sự kiện đó không bắt đầu quá trình kiểm tra.
subscription_renewedXảy ra khi gói đăng ký được gia hạn và người dùng bị tính phí. Sự kiện này bắt đầu từ lần thanh toán thứ hai, dù là gói đăng ký có hay không có thời gian dùng thử.
subscription_renewal_cancelledNgười dùng đã tắt tự động gia hạn gói đăng ký. Người dùng vẫn giữ quyền truy cập vào các tính năng premium cho đến khi kết thúc thời gian đăng ký đã trả phí.
subscription_renewal_reactivatedĐược kích hoạt khi người dùng bật lại tự động gia hạn gói đăng ký.
subscription_expiredĐược kích hoạt khi gói đăng ký kết thúc hoàn toàn sau khi bị hủy. Ví dụ: nếu người dùng hủy gói đăng ký vào ngày 12 tháng 12 nhưng vẫn còn hiệu lực đến ngày 31 tháng 12, sự kiện sẽ được ghi nhận vào ngày 31 tháng 12 khi gói đăng ký hết hạn.
subscription_pausedXảy ra khi người dùng kích hoạt tạm dừng gói đăng ký (chỉ Android).
subscription_deferredĐược kích hoạt khi một lần mua gói đăng ký được hoãn lại, cho phép người dùng trì hoãn thanh toán trong khi vẫn duy trì quyền truy cập vào các tính năng premium. Tính năng này khả dụng qua Google Play Developer API và có thể được sử dụng cho thời gian dùng thử hoặc để hỗ trợ người dùng đang gặp khó khăn về tài chính.
non_subscription_purchaseBất kỳ sản phẩm mua một lần nào, chẳng hạn như quyền truy cập trọn đời hoặc các sản phẩm consumable như tiền trong game.
trial_startedĐược kích hoạt khi người dùng kích hoạt gói đăng ký dùng thử.
trial_activeXác nhận gói dùng thử vẫn còn hiệu lực sau sự kiện trial_started. Bạn cần đặt số ngày giữa thời điểm bắt đầu dùng thử và lần kiểm tra này. Sự kiện được gửi nếu gói dùng thử vẫn đang chạy. Nếu gói dùng thử đã kết thúc hoặc đã chuyển đổi trước đó, hoặc người dùng đã tắt tự động gia hạn, sẽ không có gì được gửi và Adapty sẽ không kiểm tra lại.
trial_convertedXảy ra khi gói dùng thử kết thúc và người dùng bị tính phí (lần mua đầu tiên). Ví dụ: nếu người dùng có gói dùng thử đến ngày 14 tháng 1 nhưng bị tính phí vào ngày 7 tháng 1, sự kiện này sẽ được ghi nhận vào ngày 7 tháng 1.
trial_renewal_cancelledNgười dùng đã tắt tự động gia hạn gói đăng ký trong thời gian dùng thử. Người dùng vẫn giữ quyền truy cập vào các tính năng premium cho đến khi gói dùng thử kết thúc nhưng sẽ không bị tính phí hay bắt đầu gói đăng ký.
trial_renewal_reactivatedXảy ra khi người dùng bật lại tự động gia hạn gói đăng ký trong thời gian dùng thử.
trial_expiredĐược kích hoạt khi gói dùng thử kết thúc mà không chuyển đổi thành gói đăng ký.
entered_grace_periodXảy ra khi lần thử thanh toán thất bại và người dùng bước vào thời gian ân hạn (nếu được bật). Người dùng vẫn giữ quyền truy cập premium trong thời gian này.
billing_issue_detectedĐược kích hoạt khi xảy ra sự cố thanh toán trong quá trình thử tính phí (ví dụ: số dư thẻ không đủ).
subscription_refundedĐược kích hoạt khi gói đăng ký được hoàn tiền (ví dụ: do Apple Support xử lý).
non_subscription_purchase_refundedĐược kích hoạt khi sản phẩm mua một lần được hoàn tiền.
access_level_updatedXảy ra khi mức độ truy cập của người dùng được cập nhật.

Sự kiện tổng hợp

Hầu hết các sự kiện được kích hoạt bởi một thay đổi — một lần mua, gia hạn, hoặc hủy. Sự kiện Trial still active và Subscription still active thì ngược lại. Bạn đặt một bộ đếm thời gian. Khi bộ đếm hết hạn, Adapty kiểm tra trạng thái của trial hoặc gói đăng ký. Nếu trial hoặc gói đăng ký chưa kết thúc, Adapty sẽ kích hoạt sự kiện tương ứng.

Các sự kiện tổng hợp này có sẵn cho Adjust, Amplitude, AppMetrica, AppsFlyer, Branch, Facebook Analytics, Firebase, Mixpanel, OneSignal, PostHog, Singular, SplitMetrics và webhook. Bạn cần bật chúng theo cách thủ công.

Nếu người dùng tắt tự động gia hạn trước khi hết thời gian đếm ngược, Adapty sẽ bỏ qua việc gửi sự kiện. Hệ thống coi người dùng đó đã rời đi, dù quyền truy cập của họ vẫn còn hiệu lực đến hết chu kỳ đã thanh toán.

Tắt sự kiện này sẽ ngăn Adapty khởi tạo các bộ đếm thời gian mới. Những bộ đếm đang chạy vẫn sẽ gửi sự kiện khi hết hạn, vì vậy một đích nhận có thể tiếp tục nhận sự kiện trong khoảng thời gian trễ mà bạn đã cấu hình.

Note

Adapty Attribution cung cấp tính năng tương tự cho các chiến dịch Meta và TikTok: Qualified trials giữ lại sự kiện dùng thử trong 1 đến 24 giờ. trial_active chờ từ 1 giờ đến 90 ngày. Cả hai đều bỏ qua việc gửi nếu người dùng đã tắt tự động gia hạn. Bạn cấu hình chúng ở các nơi khác nhau và chúng không ảnh hưởng lẫn nhau.

Bản dùng thử vẫn đang chạy

  • Tích hợp: AppsFlyer
  • Sự kiện: Bản dùng thử vẫn đang hoạt động
  • Độ trễ: 3 ngày
  • Bắt đầu dùng thử: 1 tháng 4
  • Kết thúc dùng thử: 7 tháng 4

AppsFlyer nhận được:

  1. trial_started vào ngày 1 tháng 4
  2. trial_active vào ngày 4 tháng 4
  3. trial_converted vào ngày 7 tháng 4

Lưu ý những điều sau:

  • Vì đây là bản dùng thử đã chuyển đổi, bạn sẽ không bao giờ nhận được sự kiện subscription_active.
  • Nếu độ trễ được đặt là 7 ngày, trial_active sẽ không bao giờ được gửi. Vào thời điểm đó, người dùng đã chuyển đổi rồi.

Gói đăng ký vẫn đang hoạt động

  • Tích hợp: Webhook
  • Sự kiện: Gói đăng ký vẫn còn hoạt động
  • Độ trễ: 7 ngày
  • Bắt đầu gói đăng ký: Ngày 1 tháng 4, không có dùng thử
  • Gia hạn: Ngày 1 tháng 5

Webhook nhận được:

  1. subscription_started vào ngày 1 tháng 4
  2. subscription_active vào ngày 8 tháng 4
  3. subscription_renewed vào ngày 1 tháng 5
Note
  • Gói đăng ký phải bắt đầu mà không có dùng thử. Một lần dùng thử được chuyển đổi sẽ gửi trial_converted, sự kiện này không khởi động bộ đếm thời gian.
  • Nếu người dùng tắt tự động gia hạn vào ngày 3 tháng 4, subscription_active sẽ không bao giờ được gửi, mặc dù quyền truy cập của họ vẫn còn hiệu lực đến ngày 1 tháng 5.
  • Lần gia hạn vào tháng 5 không khởi động bộ đếm thời gian thứ hai. Bạn chỉ nhận được subscription_active một lần cho mỗi gói đăng ký.