Tích hợp dịch vụ nhắn tin
Việc thu hút người dùng trong thị trường di động ngày càng cạnh tranh không hề dễ dàng hay rẻ. Vì vậy, việc chăm sóc người dùng một cách khôn ngoan sẽ giúp cải thiện kinh tế đơn vị của bạn, đặc biệt trong các lĩnh vực cạnh tranh gay gắt.
Adapty cung cấp thông tin theo thời gian thực về các hành động thanh toán của người dùng. Chúng tôi biết khi nào khách hàng của bạn dùng thử, gặp vấn đề với thanh toán, hay đã mua gói đăng ký rồi quyết định hủy. Tất cả những sự kiện này và nhiều sự kiện khác phản ánh sự thay đổi trong trạng thái của khách hàng. Và đây chính là thời điểm tốt nhất để phản ứng — gửi một ưu đãi, món quà cá nhân, hay bất kỳ điều gì giúp giữ chân họ.
Các nền tảng thông báo đẩy cho phép mô tả người dùng bằng các tag tiêu chuẩn và tùy chỉnh để xây dựng hệ thống giữ chân người dùng tự động hiệu quả. Để hệ thống này hoạt động, bạn chỉ cần các sự kiện kích hoạt để thông báo cho hệ thống biết khi nào cần gửi tin nhắn. Các sự kiện này sẽ được gửi đến nền tảng thông báo đẩy từ Adapty thông qua tích hợp đã thiết lập.
Vui lòng chọn dịch vụ bạn muốn tích hợp bên dưới và làm theo hướng dẫn:
Không thấy nhà cung cấp attribution của bạn?
Let chúng tôi biết! Tạo yêu cầu tính năng và chúng tôi sẽ xem xét thêm vào.
Thuộc tính sự kiện
Các sự kiện webhook được gửi dưới định dạng JSON. Tất cả sự kiện đều có cùng cấu trúc, nhưng các trường của chúng sẽ khác nhau tùy thuộc vào loại sự kiện, cửa hàng và cấu hình cụ thể của bạn.
Adapty chuyển đổi các loại tiền tệ khác sang USD theo tỷ giá của currencylayer.com (cập nhật mỗi 8 giờ). Tỷ giá được cố định tại thời điểm giao dịch — các thay đổi sau đó không ảnh hưởng đến kết quả chuyển đổi.
| Thuộc tính | Kiểu | Mô tả |
|---|---|---|
| profile_id | uuid | ID người dùng Adapty. |
| currency | str | Tiền tệ địa phương (mặc định là USD). |
| price_usd | float | Giá sản phẩm trước khi Apple/Google trừ phí. Doanh thu. |
| proceeds_usd | float | Giá sản phẩm sau khi Apple/Google trừ phí. Doanh thu thuần. |
| net_revenue_usd | float | Doanh thu thuần (thu nhập sau khi Apple/Google trừ phí và thuế) tính bằng USD. Có thể để trống. |
| price_local | float | Giá sản phẩm trước khi Apple/Google trừ phí theo tiền tệ địa phương. Doanh thu. |
| proceeds_local | float | Giá sản phẩm sau khi Apple/Google trừ phí theo tiền tệ địa phương. Doanh thu thuần. |
| transaction_id | str | Mã định danh duy nhất của một giao dịch như mua hàng hoặc gia hạn. |
| original_transaction_id | str | Mã định danh giao dịch của lần mua hàng gốc. |
| purchase_date | ISO 8601 date | Ngày và giờ mua sản phẩm. |
| original_purchase_date | ISO 8601 date | Ngày và giờ mua hàng gốc. |
| environment | str | Có thể là Sandbox hoặc Production. |
| vendor_product_id | str | ID sản phẩm trên Apple App Store, Google Play Store hoặc Stripe. Đối với gói cam kết 12 tháng, giá trị là <product_id>:monthly. |
| base_plan_id | str | ID gói cơ bản trên Google Play Store hoặc ID giá trên Stripe. |
| event_datetime | ISO 8601 date | Ngày và giờ xảy ra sự kiện. |
| store | str | Có thể là app_store hoặc play_store. |
| trial_duration | str | Thời hạn dùng thử tính bằng ngày. Được gửi theo định dạng ” days”, ví dụ “7 days”. |
| cancellation_reason | str | Lý do người dùng hủy gói đăng ký. Có thể là iOS & Android voluntarily_cancelled, billing_error, refund iOS price_increase, product_was_not_available, unknown Android new_subscription_replace, cancelled_by_developer |
| subscription_expires_at | ISO 8601 date | Ngày hết hạn của gói đăng ký. Thường là trong tương lai. |
| consecutive_payments | int | Số kỳ mà người dùng đã đăng ký liên tục không gián đoạn. Bao gồm kỳ hiện tại. |
| rate_after_first_year | bool | Boolean cho biết gói đăng ký đủ điều kiện nhận mức hoa hồng giảm (thường là 15%) sau một năm gia hạn liên tục. Mức hoa hồng thay đổi tùy theo điều kiện tham gia chương trình và quốc gia. Xem Hoa hồng cửa hàng và thuế để biết thêm chi tiết. |
| promotional_offer_id | str | ID của ưu đãi như được chỉ định trong phần Product trên Adapty Dashboard |
| store_offer_category | str | Có thể là introductory hoặc promotional. |
| store_offer_discount_type | str | Có thể là free_trial, pay_as_you_go hoặc pay_up_front. |
| paywall_name | str | Tên của paywall nơi giao dịch bắt nguồn. Đối với flow, đây là ID của màn hình paywall (scr_...). |
| paywall_revision | int | Phiên bản của paywall nơi giao dịch bắt nguồn. Giá trị được đặt là 1. |
| developer_id | str | ID developer (SDK) của placement nơi giao dịch bắt nguồn. |
| ab_test_name | str | Tên của A/B test nơi giao dịch bắt nguồn. Đối với A/B test đa placement, đây là tên của test trên một placement (<test name> child-N). Để gộp nhóm A/B test đa placement theo các placement, hãy dùng ab_test_id. |
| ab_test_revision | int | Phiên bản của A/B test nơi giao dịch bắt nguồn. Giá trị được đặt là 1. |
| ab_test_id | uuid | ID của A/B test nơi giao dịch bắt nguồn. Đối với A/B test đa placement, giá trị này giống nhau trên mọi placement. |
| ab_test_parent_name | str | Tên của A/B test đa placement. Chỉ có trong A/B test đa placement. |
| ab_test_variant_id | uuid | ID của biến thể A/B test nơi giao dịch bắt nguồn. Dùng để phân tách giao dịch theo biến thể test. |
| ab_test_variant_name | str | Tên của biến thể A/B test. |
| flow_id | uuid | ID của flow nơi giao dịch bắt nguồn. |
| flow_name | str | Tên của flow nơi giao dịch bắt nguồn. |
| flow_variation_id | uuid | ID của biến thể flow trên placement này, giống với flow.variationId trong SDK. |
| cohort_name | str | Tên của đối tượng mà hồ sơ người dùng thuộc về. |
| profile_event_id | uuid | ID sự kiện duy nhất có thể dùng để loại trừ trùng lặp. |
| store_country | str | Quốc gia được cửa hàng gửi cho chúng tôi. |
| profile_ip_address | str | IP của hồ sơ người dùng (có thể là IPv4 hoặc IPv6, ưu tiên IPv4 khi có). Được cập nhật mỗi khi IP của thiết bị thay đổi. |
| profile_country | str | Được Adapty xác định dựa trên IP của hồ sơ người dùng. |
| profile_total_revenue_usd | float | Tổng doanh thu của hồ sơ người dùng, bao gồm cả hoàn tiền. |
| variation_id | uuid | ID duy nhất của paywall nơi thực hiện giao dịch mua. Đối với flow, đây là ID của màn hình paywall bên trong flow, không phải ID biến thể A/B test. |
| access_level_id | str | ID mức độ truy cập có trả phí |
| is_active | bool | Boolean cho biết mức độ truy cập có trả phí có đang hoạt động cho hồ sơ người dùng hay không. |
| will_renew | bool | Boolean cho biết mức độ truy cập có trả phí có được gia hạn hay không. |
| is_refund | bool | Boolean cho biết giao dịch có được hoàn tiền hay không. |
| is_lifetime | bool | Boolean cho biết mức độ truy cập có trả phí có phải là quyền truy cập trọn đời hay không. |
| is_in_grace_period | bool | Boolean cho biết hồ sơ người dùng có đang trong thời gian ân hạn hay không. |
| starts_at | ISO 8601 date | Ngày và giờ mức độ truy cập có trả phí bắt đầu cho người dùng. |
| renewed_at | ISO 8601 date | Ngày và giờ kỳ hiện tại của quyền truy cập có trả phí gần nhất bắt đầu. Cho đến lần gia hạn đầu tiên, giá trị này trùng với activated_at. |
| expires_at | ISO 8601 date | Ngày và giờ quyền truy cập có trả phí hết hạn. |
| activated_at | ISO 8601 date | Ngày và giờ quyền truy cập có trả phí được kích hoạt. |
| billing_issue_detected_at | ISO 8601 date | Ngày và giờ phát sinh sự cố thanh toán. |
| profile_has_access_level | Bool | Boolean cho biết hồ sơ người dùng có mức độ truy cập đang hoạt động hay không (chỉ dành cho Webhook). |
Mỗi sự kiện có các thuộc tính sau:
transaction_id, original_transaction_id, purchase_date, original_purchase_date, environment, vendor_product_id, event_datetime, store.
Ngoài ra, một số sự kiện có thêm các thuộc tính bổ sung. Đối với các sự kiện subscription_refunded và non_subscription_purchase_refunded, bắt buộc phải cung cấp giá trị của price_usd và proceeds_usd làm thuộc tính bổ sung.
| Tên sự kiện | Thuộc tính |
|---|---|
| subscription_initial_purchase | price_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration |
| subscription_renewed | price_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration |
| subscription_cancelled | cancellation_reason, trial_duration |
| trial_started | subscription_expires_at, trial_duration |
| trial_converted | price_usd, proceeds_usd, subscription_expires_at, consecutive_payments, rate_after_first_year, trial_duration |
| trial_cancelled | cancellation_reason, trial_duration |
| non_subscription_purchase | price_usd, proceeds_usd |
| billing_issue_detected | subscription_expires_at, trial_duration |
| entered_grace_period | subscription_expires_at, trial_duration |
Ví dụ sự kiện
{
"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 gửi sự kiện đến máy chủ của bạn và các hệ thống phân tích bên thứ ba.
Thuộc tính profile_ip_address được đồng bộ với IP thiết bị hiện tại. Mỗi khi máy chủ Adapty nhận thông tin từ SDK, IP sẽ được cập nhật nếu khác với IP chúng tôi đang lưu.