Получение списка покупок
Для получения списка покупок необходимо использовать метод GetPurchases:
Вызов метода получения списка покупок пользователя
long requestId = URuStoreBillingClient::Instance()->GetPurchases( []( long requestId, TSharedPtr<FURuStorePurchasesResponse, ESPMode::ThreadSafe> response) { // Process response }, []( long requestId, TSharedPtr<FURuStoreRuStoreError, ESPMode::ThreadSafe> error) { // Process error } ); |
Blueprint-реализация:
Метод возвращает:
Ответ GetPurchases
USTRUCT(BlueprintType) struct FURuStorePurchasesResponse : public FURuStoreResponseWithCode { GENERATED_USTRUCT_BODY() UPROPERTY(BlueprintReadOnly) TArray<FURuStorePurchase> purchases; }; |
- purchases — список покупок.
Базовый класс ответа:
Базовый класс ответа
USTRUCT(BlueprintType) struct FURuStoreResponseWithCode { GENERATED_USTRUCT_BODY() FURuStoreResponseWithCode() { code = 0; errorMessage = "" ; errorDescription = "" ; } UPROPERTY(BlueprintReadOnly) int code; UPROPERTY(BlueprintReadOnly) FString errorMessage; UPROPERTY(BlueprintReadOnly) FString errorDescription; UPROPERTY(BlueprintReadOnly) TArray<FURuStoreDigitalShopGeneralError> errors; }; |
- code — код ответа.
- errorMessage — сообщение об ошибке.
- errorDescription — описание ошибки.
- errors — список ошибок.
Структура ошибки:
Структура ошибки
USTRUCT(BlueprintType) struct FURuStoreDigitalShopGeneralError { GENERATED_USTRUCT_BODY() FURuStoreDigitalShopGeneralError() { name = "" ; code = 0; description = "" ; } UPROPERTY(BlueprintReadOnly) FString name; UPROPERTY(BlueprintReadOnly) int code; UPROPERTY(BlueprintReadOnly) FString description; }; |
- name — наименование ошибки.
-
code — код ошибки.
- description — описание ошибки.
Структура покупки:
Структура с информацией о покупке
USTRUCT(BlueprintType) struct FURuStorePurchase { GENERATED_USTRUCT_BODY() FURuStorePurchase() { purchaseId = "" ; productId = "" ; invoiceId = "" ; description = "" ; language = "" ; purchaseTime = FDateTime(0); orderId = "" ; amountLabel = "" ; amount = 0; currency = "" ; quantity = 0; purchaseState = EURuStorePurchaseState::CANCELLED; developerPayload = "" ; subscriptionToken = "" ; } UPROPERTY(BlueprintReadOnly) FString purchaseId; UPROPERTY(BlueprintReadOnly) FString productId; UPROPERTY(BlueprintReadOnly) FString invoiceId; UPROPERTY(BlueprintReadOnly) FString description; UPROPERTY(BlueprintReadOnly) FString language; UPROPERTY(BlueprintReadOnly) FDateTime purchaseTime; UPROPERTY(BlueprintReadOnly) FString purchaseTimeLabel; UPROPERTY(BlueprintReadOnly) FString orderId; UPROPERTY(BlueprintReadOnly) FString amountLabel; UPROPERTY(BlueprintReadOnly) int amount; UPROPERTY(BlueprintReadOnly) FString currency; UPROPERTY(BlueprintReadOnly) int quantity; UPROPERTY(BlueprintReadOnly) EURuStorePurchaseState purchaseState; UPROPERTY(BlueprintReadOnly) FString developerPayload; UPROPERTY(BlueprintReadOnly) FString subscriptionToken; }; |
- purchaseId — идентификатор покупки.
- productId — идентификатор продукта.
- description — описание покупки.
- invoiceId — идентификатор счета.
- language — язык, указанный с помощью BCP 47 кодирования.
- purchaseTime — время покупки.
- purchaseTimeLabel — время покупки в формате DD.MM.YYYY HH:MM:SS.
- orderId — уникальный идентификатор оплаты, сформированный приложением (uuid).
- amountLable — отформатированная цена покупки, включая валютный знак на языке [language].
- amount — цена в минимальных единицах валюты.
- currency — код валюты ISO 4217.
- quantity — количество продукта.
- purchaseState — состояние покупки.
- Возможные значения состояния покупки:
- CREATED — создана.
- INVOICE_CREATED — создана, ожидает оплаты.
- CONFIRMED — подтверждена.
- PAID — оплачена.
- CANCELLED — покупка отменена.
- CONSUMED — потребление покупки подтверждено.
- CLOSED — подписка была отменена.
- Возможные значения состояния покупки:
- developerPayload — указанная разработчиком строка, содержащая дополнительную информацию о заказе.
- subscriptionToken — токен для валидации покупки на сервере.
Обновлено 17 июля 2023 г.
Was this information helpful?