Получение списка покупок

Для получения списка покупок необходимо использовать метод GetPurchases:

RuStoreBillingClient.Instance.GetPurchases(
    onFailure: (error) => {
        // Process error
    },
    onSuccess: (response) => {
        // Process response
    });

Метод возвращает:

public class PurchasesResponse : ResponseWithCode {
 
    public List<Purchase> purchases;
}
  • purchases — список покупок.
Базовый класс ответа:
public class ResponseWithCode {
 
    public int code;
    public string errorMessage;
    public string errorDescription;
    public string traceId;
    public List<DigitalShopGeneralError> errors;
}
  • code — код ответа;
  • errorMessage — сообщение об ошибке;
  • errorDescription — описание ошибки;
  • traceId — идентификатор ошибки;
  • errors — список ошибок.
Структура ошибки:
public class DigitalShopGeneralError {
 
    public string name;
    public int code;
    public string description;
}
  • name — наименование ошибки;
  • code — код ошибки;
  • description — описание ошибки.
Структура покупки:
public class Purchase {
 
    public enum PurchaseState
    {
        CREATED,
        INVOICE_CREATED,
        CONFIRMED,
        PAID,
        CANCELLED,
        CONSUMED,
        CLOSED
    }
 
    public string purchaseId;
    public string productId;
    public string description;
    public string language;
    public DateTime purchaseTime;
    public string orderId;
    public string amountLabel;
    public int amount;
    public string currency;
    public int quantity;
    public PurchaseState purchaseState;
    public string developerPayload;
    public string subscriptionToken;
}
  • purchaseId — идентификатор покупки;
  • productId — идентификатор продукта;
  • description — описание покупки;
  • language — язык, указанный с помощью BCP 47 кодирования; 
  • purchaseTime — время покупки;
  • orderId — уникальный идентификатор оплаты, сформированный приложением (uuid);
  • amountLable — отформатированная цена покупки, включая валютный знак на языке [language];
  • amount — цена в минимальных единицах валюты (копейках);
  • currency — код валюты ISO 4217;
  • quantity — количество продукта;
  • purchaseState — состояние покупки:
    • возможные значения состояния покупки: 

      • CREATED — создана;
      • INVOICE_CREATED — создана, ожидает оплаты; 
      • CONFIRMED — подтверждена;
      • PAID — оплачена;
      • CANCELLED — покупка отменена; 
      • CONSUMED — потребление покупки подтверждено; 
      • CLOSED — подписка была отменена.
  • developerPayload — указанная разработчиком строка, содержащая дополнительную информацию о заказе.
  • subscriptionToken — токен для валидации покупки на сервере.

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

Статусная модель покупки подписок (SUBSCRIPTIONS):                           

image   

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

    image  

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

image

Обновлено 30 марта 2023 г.
Was this information helpful?