Сценарий потребления и отмены покупки

Обработка незавершённых платежей должна производиться разработчиком AnyApp. 

Метод отмены покупки (deletePurchase) необходимо использовать, если:

1. Метод получения списка покупок (getPurchases) вернул покупку со статусом:

    1. PurchaseState.CREATED. 
    2. PurchaseState.INVOICE_CREATED. 

Важно. В некоторых случаях, после оплаты через приложение банка (СБП, СберPay, TinkoffPay и т.д.), при последующем возврате обратно в AnyApp приложение, статус покупки может быть всё ещё PurchaseState.INVOICE_CREATED. Это связано с временем обработки покупки на стороне банка. Поэтому разработчику необходимо правильно связать логику получения списка покупок с ЖЦ экрана.

Альтернативным вариантом решения данной проблемы является отмена покупки в статусе PurchaseState.INVOICE_CREATED только через взаимодействие пользователя с приложением. Например, вынести эту логику в отдельную кнопку.

2. Метод покупки (purchaseProduct) вернул PaymentResult.Cancelled. 
3. Метод покупки (purchaseProduct) вернул PaymentResult.Failure.

Метод потребления продукта (confirmPurchase) необходимо использовать, если метод получения списка покупок (getPurchases) вернул покупку типа CONSUMABLE и со статусом PurchaseState.PAID.

 

Обновлено 24 августа 2023 г.
Was this information helpful?