Отчёт о транзакциях в Observer Mode в React Native SDK
В Observer Mode SDK Adapty не может самостоятельно отслеживать покупки, сделанные через вашу существующую систему. Вам нужно передавать транзакции из вашего стора. Это важно настроить до релиза приложения, чтобы избежать ошибок в аналитике.
Используйте reportTransaction, чтобы явно сообщить Adapty о каждой транзакции.
Не пропускайте передачу транзакций!
Если вы не вызовете reportTransaction, Adapty не распознает транзакцию — она не появится в аналитике и не будет передана в интеграции.
Если вы используете пейволы Adapty, передавайте variationId при отчёте о транзакции. Это свяжет покупку с пейволом, который её инициировал, и обеспечит точную аналитику пейволов.
const variationId = paywall.variationId;
try {
await adapty.reportTransaction(transactionId, variationId);
} catch (error) {
// handle the `AdaptyError`
}Параметры:
| Параметр | Обязательность | Описание |
|---|---|---|
| transactionId | обязательный |
|
| variationId | необязательный | Строковый идентификатор варианта. Его можно получить через свойство variationId объекта AdaptyPaywall. |
В Observer Mode SDK Adapty не может самостоятельно отслеживать покупки, сделанные через вашу существующую систему. Вам нужно передавать транзакции из вашего стора или восстанавливать их. Это важно настроить до релиза приложения, чтобы избежать ошибок в аналитике.
Используйте reportTransaction на обеих платформах, чтобы явно сообщить о каждой транзакции, а на Android дополнительно вызывайте restorePurchases, чтобы Adapty гарантированно её распознал.
Не пропускайте передачу транзакций! Если вы не вызовете эти методы, Adapty не распознает транзакцию — она не появится в аналитике и не будет передана в интеграции.
Если вы используете пейволы Adapty, передавайте variationId при отчёте о транзакции. Это свяжет покупку с пейволом, который её инициировал, и обеспечит точную аналитику пейволов.
if (Platform.OS === 'android') {
try {
await adapty.restorePurchases();
} catch (error) {
// handle the error
}
}
...
const variationId = paywall.variationId;
try {
await adapty.reportTransaction(transactionId, variationId);
} catch (error) {
// handle the `AdaptyError`
}Параметры:
| Параметр | Обязательность | Описание |
|---|---|---|
| transactionId | обязательный |
|
| variationId | необязательный | Строковый идентификатор варианта. Его можно получить через свойство variationId объекта AdaptyPaywall. |
Передача транзакций
- Версии до 3.1.x автоматически отслеживают транзакции в App Store, поэтому ручная передача не требуется.
- Версия 3.2 не поддерживает Observer Mode.
Передача транзакций
Используйте restorePurchases для передачи транзакции в Adapty в Observer Mode, как описано на странице Восстановление покупок в коде приложения.
Не пропускайте передачу транзакций!
Если вы не вызовете restorePurchases, Adapty не распознает транзакцию — она не появится в аналитике и не будет передана в интеграции.
Привязка пейволов к транзакциям
SDK Adapty не может определить источник покупок, так как их обрабатываете вы. Поэтому, если вы планируете использовать пейволы и/или A/B-тесты в Observer Mode, вам нужно связать транзакцию из вашего стора с соответствующим пейволом в коде мобильного приложения. Это важно сделать правильно до релиза приложения — иначе возникнут ошибки в аналитике.
const variationId = paywall.variationId;
try {
await adapty.setVariationId('transactionId', variationId);
} catch (error) {
// handle the `AdaptyError`
}Параметры запроса:
| Параметр | Обязательность | Описание |
|---|---|---|
| transactionId | обязательный | Для iOS, StoreKit 1: объект SKPaymentTransaction. Для iOS, StoreKit 2: объект Transaction. Для Android: строковый идентификатор (purchase.getOrderId) покупки, где покупка является экземпляром класса Purchase из библиотеки биллинга. |
| variationId | обязательный | Строковый идентификатор варианта. Его можно получить через свойство variationId объекта AdaptyPaywall. |