Перейти к основному содержимому

Версия SDK 4.0.0 и выше

примечание

Используйте этот метод, если работаете с версией SDK 4.0.0 и выше. Для версии ниже смотрите инструкцию.

примечание

Настоящий раздел содержит сведения о переходе на версию платежей для следующих языков программирования:

  • Kotlin;
  • Java;
  • Godot;
  • Unreal Engine.

Для получения информации о покупке, используйте метод getPurchaseInfo.

val purchasesUseCase: PurchasesUseCase = billingClient.purchases
purchasesUseCase.getPurchaseInfo("purchaseId")
.addOnSuccessListener { purchase: Purchase ->
// Process success
}
.addOnFailureListener { throwable: Throwable ->
// Process error
}

Структура покупки

data class Purchase(
val purchaseId: String?,
val productId: String,
val productType: ProductType?,
val invoiceId: String?,
val description: String?,
val language: String?,
val purchaseTime: Date?,
val orderId: String?,
val amountLabel: String?,
val amount: Int?,
val currency: String?,
val quantity: Int?,
val purchaseState: PurchaseState?,
val developerPayload: String?,
val subscriptionToken: String?
)
  • purchaseId — идентификатор покупки;
  • productId — идентификатор продукта;
  • description — описание покупки;
  • invoiceId — идентификатор счёта;
  • language — язык, указанный с помощью BCP 47 кодирования;
  • purchaseTime — время покупки;
  • orderId — уникальный идентификатор оплаты, сформированный приложением (uuid);
  • amountLable — отформатированная цена покупки, включая валютный знак на языке [language];
  • amount — цена в минимальных единицах валюты;
  • currency — код валюты ISO 4217;
  • quantity — количество продукта;
  • purchaseState — состояние покупки, возможные значения:
    • CREATED — покупка создана;
    • INVOICE_CREATED — по покупке создан счёт, ожидает оплаты;
    • PAID — только покупки потребляемого товара — промежуточный статус, средства на счёте покупателя зарезервированы. Покупка ожидает подтверждения от разработчика;
    • CONFIRMED — финальный статус, покупка подтверждена (для подписок и непотребляемых товаров). Средства отправлены разработчику. Повторная покупка товара блокируется магазином;
    • CONSUMED — для потребляемых товаров — конечный статус, потребление покупки подтверждено. Можно производить повторную покупку товара;
    • CANCELLED — покупка отменена — оплата не была произведена или был совершен возврат средств покупателю (для подписок после возврата средств покупка не переходит в CANCELLED);
    • PAUSED — для подписок — подписка перешла в HOLD период.
    • TERMINATED — подписка закрылась.
  • developerPayload — указанная разработчиком строка, содержащая дополнительную информацию о заказе;
  • subscriptionToken — токен для валидации покупки на сервере.

Статусная модель (purchaseState)

  • Статусная модель покупки потребляемых продуктов (CONSUMABLES)
  • Статусная модель покупки непотребляемых продуктов (NON-CONSUMABLES)
  • Статусная модель покупки подписок (SUBSCRIPTIONS)