Cách Adapty đồng bộ dữ liệu với các cửa hàng
Adapty trao đổi dữ liệu sản phẩm với App Store và Google Play, nhưng việc trao đổi này không liên tục và không đầy đủ. Hầu hết các giá trị chỉ được cập nhật khi bạn thực hiện thao tác — khi bạn đẩy sản phẩm lên cửa hàng, hoặc tải lên giá mới. Một số giá trị không bao giờ được đồng bộ, vì vậy Adapty và cửa hàng có thể hiển thị giá khác nhau cho cùng một sản phẩm.
Những gì Adapty đọc từ các cửa hàng
Adapty đọc danh sách sản phẩm, base plan, giá cả và giao dịch từ cửa hàng. Để thay đổi sản phẩm hoặc giá, hãy thay đổi trong bảng điều khiển của cửa hàng. Để xem giá theo từng quốc gia mà Adapty đang lưu, hãy tải file CSV giá từ Edit product.
| Adapty đọc gì | Cách nhận (App Store) | Cách nhận (Google Play) |
|---|---|---|
| Danh sách sản phẩm và trạng thái review | Qua App Store Connect API key | Qua service account |
| Base plans | Không áp dụng | Là một phần của sản phẩm gói đăng ký |
| Giá theo từng quốc gia | Khi bạn liên kết hoặc chỉnh sửa sản phẩm trong cửa hàng | Khi bạn liên kết hoặc chỉnh sửa sản phẩm trong cửa hàng |
| Giao dịch, gia hạn và hoàn tiền | Qua App Store server notifications | Qua real-time developer notifications |
| Giá khách hàng đã trả | Kèm theo mỗi giao dịch | Kèm theo mỗi giao dịch |
Những gì Adapty ghi vào các cửa hàng
Sản phẩm, giá cả và thời gian dùng thử giới thiệu được bắt đầu trong Adapty và đến cửa hàng khi bạn thực hiện một hành động, không theo lịch trình.
| Adapty ghi | Khi đến App Store | Khi đến Google Play |
|---|---|---|
| Sản phẩm mới | Khi bạn đẩy sản phẩm lên cửa hàng | Khi bạn đẩy sản phẩm lên cửa hàng |
| Giá theo quốc gia | Khi bạn tải lên file CSV giá | Khi bạn tải lên file CSV giá |
| Ưu đãi giới thiệu dùng thử miễn phí | Khi bạn đẩy sản phẩm mới | Không bao giờ — hãy tạo trong Google Play Console |
Adapty so sánh CSV của bạn với giá hiện tại trên cửa hàng và chỉ cập nhật những giá có sự thay đổi, vì vậy bạn có thể tải lên toàn bộ file một cách an toàn. Các gói đăng ký hiện tại vẫn giữ nguyên mức giá ban đầu khi đăng ký, trừ khi bạn chọn Apply to existing subscribers.
Những gì bạn chỉ thiết lập trong Adapty
Cửa hàng không bao giờ thay đổi bất kỳ cài đặt nào trong số này.
| Mục | Lý do nó vẫn ở trong Adapty |
|---|---|
| Giá của sản phẩm cửa hàng mà bạn đã kết nối | Một placeholder cố định khi tạo. Nó giúp bạn phân biệt các sản phẩm với nhau, nhưng không bao giờ được gửi đến cửa hàng. Analytics, các tích hợp và SDK đều sử dụng giá thực từ cửa hàng. |
| Mức độ truy cập | Adapty cấp quyền truy cập vào nội dung trả phí của bạn. Các cửa hàng không có tính năng tương đương. |
| ID ưu đãi và ưu đãi thu hút khách hàng cũ | Adapty cần ID để ký xác nhận giao dịch. Bạn tạo bản thân ưu đãi đó trong bảng điều khiển của cửa hàng. |
Điều gì xảy ra trên thiết bị
Giá mà khách hàng nhìn thấy trên paywall được lấy từ StoreKit hoặc Google Play Billing khi paywall mở ra, không phải từ Adapty. Giá bạn thay đổi trong bảng điều khiển của cửa hàng sẽ đến tay khách hàng ngay khi cửa hàng xuất bản thay đổi đó. Bạn không cần phát hành lại ứng dụng, và không cần thay đổi bất cứ điều gì trong Adapty.
Ở chiều ngược lại, Adapty SDK gửi mỗi giao dịch mua lên Adapty kèm theo giá, đơn vị tiền tệ và quốc gia. Adapty sử dụng các giá trị đó để ghi nhận doanh thu theo đơn vị tiền tệ của khách hàng.
Stripe, Paddle và các cửa hàng tùy chỉnh
Các tích hợp Stripe và Paddle chỉ chuyển giao dịch, không chuyển danh mục sản phẩm của bạn. Giao dịch mua hàng đến Adapty qua webhook của nhà cung cấp, hoặc với cửa hàng tùy chỉnh, từ backend của bạn. Bạn phải thêm từng sản phẩm và price ID theo cách thủ công. Một ID không có trong Adapty sẽ không khớp với bất kỳ thứ gì, khiến các giao dịch đó và doanh thu của chúng không bao giờ xuất hiện. Với Stripe và Paddle, điều tương tự xảy ra khi sản phẩm tồn tại nhưng không có Subscription duration. Không có gì báo hiệu cả hai trường hợp này, vì vậy hãy thêm một ID và một thời hạn cho mỗi sản phẩm bạn bán.
Sự khác biệt về sản phẩm và giá
Một số sự khác biệt giữa Adapty và cửa hàng là do thiết kế và không ảnh hưởng đến những gì khách hàng của bạn phải trả. Những sự khác biệt khác có nghĩa là doanh thu không được ghi lại.
| Điều bạn thấy | Nguyên nhân có thể | Phải làm gì |
|---|---|---|
| Giá trong Adapty khác với cửa hàng | Màn hình Products hiển thị giá bạn đã nhập khi tạo sản phẩm. Nếu bạn đã đẩy sản phẩm lên các cửa hàng, Adapty đã dùng giá đó để đặt giá khởi đầu ở đó. Bạn không thể thay đổi sau này, vì vậy một khi các cửa hàng đã sở hữu giá thì hai bên sẽ chênh lệch nhau. Giá khách hàng trả hiện tại là giá theo từng quốc gia. | Không cần làm gì. Khách hàng của bạn bị tính giá của cửa hàng, và các báo cáo doanh thu sử dụng số tiền thực tế đã thanh toán. Để thay đổi mức giá họ phải trả, hãy chỉnh sửa giá trong bảng điều khiển của từng cửa hàng, hoặc tải lên file CSV giá để thay đổi cả hai cửa hàng cùng lúc. |
| Sản phẩm của bạn không có trong danh sách thả xuống | Có ba nguyên nhân có thể xảy ra: Thông tin xác thực cửa hàng không còn hoạt động sẽ trả về danh sách trống. Một sản phẩm được tạo trong vòng 10 phút qua có thể chưa đến được bản sao bộ nhớ đệm danh sách App Store của Adapty. Subscription duration đã chọn sẽ lọc danh sách: Lifetime, Non-Subscriptions và Consumables hiển thị sản phẩm mua một lần, còn mọi giá trị khác hiển thị các gói đăng ký. | Đặt Subscription duration khớp với loại sản phẩm trong cửa hàng. Nếu bạn vừa tạo sản phẩm trong vài phút qua, hãy thử lại sau. Nếu không, hãy xác minh thông tin xác thực cửa hàng của bạn. |
| Ưu đãi giới thiệu không xuất hiện trong Adapty | Adapty chỉ tạo ưu đãi giới thiệu khi bạn đẩy sản phẩm mới lên cửa hàng, và chỉ liệt kê những ưu đãi do chính nó tạo ra. Ưu đãi bạn tự thiết lập trong bảng điều khiển cửa hàng sẽ không bao giờ xuất hiện trong cửa sổ Edit product. | Không cần làm gì. Ưu đãi giới thiệu được áp dụng tự động khi khách hàng đủ điều kiện, vì vậy không cần thêm vào Adapty. |
| Giảm giá không được áp dụng khi mua | Khách hàng có thể không đủ điều kiện — quyết định này do cửa hàng đưa ra, không phải Adapty. Ngoài ra, ưu đãi của App Store có thể không được áp dụng vì Adapty không thể ký bằng In-App Purchase Key của bạn. | Xác nhận rằng key đã được tải lên và hợp lệ, sau đó xem lại điều kiện của ưu đãi trong cửa hàng. |
| Giao dịch Stripe ngừng xuất hiện sau khi thay đổi giá | Thay đổi giá trong Stripe sẽ tạo ra một price_id mới, và Adapty so khớp các sự kiện theo cặp product_id + price_id chính xác. Các sự kiện với giá mới không khớp với bất cứ thứ gì, trong khi Stripe vẫn báo cáo webhook đã được gửi thành công. | Thêm price_id mới vào sản phẩm trong Adapty — doanh thu sẽ không được ghi lại cho đến khi bạn thực hiện điều này. Xem Stripe. |
| Khách hàng đã mua sản phẩm nhưng không nhận được mức độ truy cập | ID sản phẩm trong cửa hàng mà họ đã mua không được liên kết với sản phẩm nào trong Adapty. Adapty ghi lại giao dịch mua vào một hàng sản phẩm được tự động tạo ra, và hàng đó không có mức độ truy cập nào. | Tạo sản phẩm trong Adapty với đúng ID sản phẩm của cửa hàng và gán cho nó một mức độ truy cập. |
| Các cập nhật không còn đến nữa | Một trong các thông tin xác thực cửa hàng của bạn đã ngừng hoạt động. Mỗi thông tin xác thực hỗ trợ một phần khác nhau của quá trình trao đổi. | Tìm phần đã dừng và chỉ thay thế thông tin xác thực của phần đó — xem Nếu các cập nhật ngừng đến. |
Nếu cập nhật ngừng đến
Adapty không gắn cờ các thông tin xác thực khi chúng ngừng hoạt động. Mỗi thông tin xác thực chịu trách nhiệm cho một phần của quá trình trao đổi, vì vậy triệu chứng xảy ra sẽ cho bạn biết cần thay thế cái nào.
| Điều gì bị dừng | Thông tin xác thực cần thay thế |
|---|---|
| Danh sách sản phẩm, trạng thái xét duyệt, hoặc đẩy sản phẩm và giá lên cửa hàng | App Store: khóa App Store Connect API. Google Play: tệp khóa tài khoản dịch vụ. |
| Các giao dịch mới, gia hạn và hoàn tiền | App Store: thông báo máy chủ. Google Play: thông báo nhà phát triển theo thời gian thực. |
| Ưu đãi khi mua hàng | App Store: khóa In-App Purchase. |
| Xác thực mua hàng cho mọi khách hàng | App Store: shared secret. Google Play: tệp khóa tài khoản dịch vụ. |
Việc thay thế thông tin xác thực trong store console không tự động cập nhật trong Adapty. Hãy tải lên thông tin mới trong App settings.