Серверная валидация покупки

Если вам необходимо произвести валидацию успешной покупки на сервере, вы можете использовать subscriptionToken в PurchaseResult, возвращаемой purchaseProduct при успешной покупке продукта.

SubscriptionToken состоит из invoiceId покупки и userId RuStore, записанных через точку: «$invoiceId.$userId».

RuStoreBillingClient.purchases.purchaseProduct(productId).addOnSuccessListener { paymentResult ->
    if (paymentResult is PaymentResult.PurchaseResult) {
        val subscriptionToken = paymentResult.subscriptionToken
        yourApi.validate(subscriptionToken)
    }
}

Также можно получить subscriptionToken в сущности Purchase. Сущность Purchase можно получить, используя метод getPurchases():

RuStoreBillingClient.purchases.getPurchases().addOnSuccessListener { response ->
    response.purchases?.forEach {  purchase ->
        yourApi.validate(purchase.subscriptionToken)
    }
}
Was this information helpful?