Đồng bộ hóa giao dịch mua giữa web và di động
Nếu người dùng có thể mua sản phẩm trên website của bạn, bạn có thể tự động đồng bộ mức độ truy cập của họ với ứng dụng di động.
Hướng dẫn này sẽ giúp bạn thực hiện điều đó bằng Adapty API và SDK.
Ví dụ thực tế
Giả sử trong ứng dụng của bạn, người dùng có thể đăng ký gói freemium trên cả di động lẫn web. Bạn cho phép họ nâng cấp lên gói Premium trên website thông qua Stripe hoặc Chargebee. Khi người dùng đăng ký trên web, bạn muốn họ ngay lập tức có quyền truy cập Premium trong ứng dụng di động — không cần chờ đợi hay đăng nhập lại.
Đó chính là điều Adapty giúp bạn tự động hóa.
Bước 1. Xác định người dùng
Adapty sử dụng customer_user_id để nhận dạng người dùng trên các nền tảng.
Bạn chỉ cần tạo ID này một lần và truyền nó cho cả SDK di động lẫn backend web.
Đăng ký từ web
Khi người dùng đăng ký trên website của bạn, hãy tạo hồ sơ người dùng cho họ trong Adapty thông qua server-side API.
Xem tài liệu tham khảo về phương thức tại đây.
curl --request POST \
--url https://api.adapty.io/api/v2/server-side-api/profile/ \
--header 'Accept: application/json' \
--header 'Authorization: Api-Key YOUR_SECRET_API_KEY' \
--header 'Content-Type: application/json' \
--header 'adapty-customer-user-id: YOUR_CUSTOMER_USER_ID'
Đăng ký từ ứng dụng
Khi người dùng đăng ký lần đầu từ ứng dụng, bạn có thể truyền customer user ID của họ trong lúc kích hoạt SDK. Hoặc nếu bạn đã kích hoạt Adapty SDK trước giai đoạn đăng ký, hãy dùng phương thức identify để tạo hồ sơ người dùng mới và gán cho nó một customer user ID.
Nếu bạn xác định người dùng mới sau khi kích hoạt SDK, đầu tiên SDK sẽ tạo một hồ sơ người dùng ẩn danh vì nó không thể hoạt động mà không có hồ sơ nào. Tiếp theo, khi bạn xác định người dùng và gán cho họ một customer user ID mới, một hồ sơ người dùng mới sẽ được tạo ra.
Đây là hành vi hoàn toàn bình thường và sẽ không ảnh hưởng đến độ chính xác của analytics. Đọc thêm tại đây.
Bước 2. Kiểm tra trạng thái gói đăng ký qua API
Khi người dùng đăng nhập trên website của bạn, hãy lấy hồ sơ người dùng Adapty của họ thông qua API.
Nếu người dùng chưa có gói đăng ký đang hoạt động, bạn có thể hiển thị paywall.
Xem tài liệu tham khảo về phương thức tại đây.
curl --request GET \
--url https://api.adapty.io/api/v2/server-side-api/profile/ \
--header 'Accept: application/json' \
--header 'Authorization: Api-Key YOUR_SECRET_API_KEY' \
--header 'adapty-customer-user-id: YOUR_USER_ID' \
Bước 3. Hiển thị paywall trên website
Trên website của bạn, hiển thị paywall cho người dùng freemium. Bạn có thể sử dụng bất kỳ nhà cung cấp thanh toán nào (Stripe, Chargebee, LemonSqueezy, v.v.).
Bước 4. Cập nhật trạng thái gói đăng ký trong Adapty
Sau khi thanh toán hoàn tất trên website, gọi Adapty API để cập nhật mức độ truy cập của người dùng theo sản phẩm họ đã mua.
Xem tài liệu tham khảo về phương thức tại đây.
curl --request POST \
--url https://api.adapty.io/api/v2/server-side-api/purchase/profile/grant/access-level/ \
--header 'Accept: application/json' \
--header 'Authorization: Api-Key YOUR_SECRET_API_KEY' \
--header 'Content-Type: application/json' \
--header 'adapty-customer-user-id: YOUR_USER_ID' \
--data '{
"access_level_id": "YOUR_ACCESS_LEVEL"
}'
Bước 5. Đồng bộ trạng thái trong ứng dụng
Khi người dùng mở ứng dụng di động của bạn, hãy lấy hồ sơ người dùng đã được cập nhật và mở khóa các tính năng trả phí.
Bạn cần lấy hồ sơ người dùng của họ hoặc để nó tự động đồng bộ, sau đó lấy mức độ truy cập từ đó.
Dưới đây là cách lấy hồ sơ người dùng và kiểm tra trạng thái. Để biết thêm chi tiết, hãy xem tại đây.