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:
trial_startedvào ngày 1 tháng 4trial_renewal_cancelledvào ngày 4 tháng 4trial_expiredvà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:
trial_startedvào ngày 1 tháng 4trial_convertedvào ngày 7 tháng 4subscription_renewal_cancelledvào ngày 10 tháng 4subscription_expiredvà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ện | Mô 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_active | Xá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_renewed | Xả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_cancelled | Ngườ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_paused | Xả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_purchase | Bấ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_active | Xá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_converted | Xả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_cancelled | Ngườ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_reactivated | Xả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_period | Xả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_updated | Xả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.
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:
trial_startedvào ngày 1 tháng 4trial_activevào ngày 4 tháng 4trial_convertedvà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_activesẽ 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:
subscription_startedvào ngày 1 tháng 4subscription_activevào ngày 8 tháng 4subscription_renewedvào ngày 1 tháng 5
- 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_activesẽ 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_activemột lần cho mỗi gói đăng ký.