Покупка продукта
Для вызова покупки продукта используйте метод PurchaseProduct:
RuStoreBillingClient.Instance.PurchaseProduct( productId: "productId" , orderId: "orderId" , quantity: 1, developerPayload: "" , onFailure: (error) => { // Process error }, onSuccess: (response) => { switch (response) { case InvoiceResult invoiceResult: // Process InvoiceResult break ; case InvalidInvoice invalidInvoice: // Process InvalidInvoice break ; case PurchaseResult purchaseResult: // Process PurchaseResult break ; case InvalidPurchase invalidPurchase: // Process InvalidPurchase break ; case InvalidPaymentState invalidPaymentState: // Process InvalidPaymentState break ; } }); |
- string productId — идентификатор продукта;
- string orderId — идентификатор заказа, создаётся на стороне AnyApp;
- int quantity — количество продуктов;
- string developerPayload — дополнительная информация от разработчика AnyApp.
public class PaymentResult { public enum PaymentFinishCode { SUCCESSFUL_PAYMENT, CLOSED_BY_USER, UNHANDLED_FORM_ERROR, PAYMENT_TIMEOUT, DECLINED_BY_SERVER, RESULT_UNKNOWN } } public class InvoiceResult : PaymentResult { public string invoiceId; public PaymentFinishCode finishCode; } public class InvalidInvoice : PaymentResult { public string invoiceId; } public class PurchaseResult : PaymentResult { public PaymentFinishCode finishCode; public string orderId; public string purchaseId; public string productId; public string subscriptionToken; } public class InvalidPurchase : PaymentResult { public string purchaseId; public string invoiceId; public string orderId; public int quantity; public string productId; public int errorCode; } public class InvalidPaymentState : PaymentResult { } |
- InvoiceResult — платежи завершились с результатом;
- InvalidInvoice — платежи завершились без указания инвойса. Вероятно, они были запущены с некорректным инвойсом (пустая строка, например);
- PurchaseResult — результат успешного завершения покупки цифрового товара;
- InvalidPurchase — при оплате цифрового товара платежи завершились c ошибкой;
- InvalidPaymentState — при завершении платежей отсутствует PaymentState.
Возможные статусы, которые может содержать PaymentFinishCode:
- SUCCESSFUL_PAYMENT — успешная оплата;
- CLOSED_BY_USER — отменено пользователем;
- UNHANDLED_FORM_ERROR — неизвестная ошибка;
- PAYMENT_TIMEOUT — ошибка оплаты по таймауту;
- DECLINED_BY_SERVER — отклонено сервером;
- RESULT_UNKNOWN — неизвестный статус оплаты.
Обновлено 29 декабря 2022 г.
Was this information helpful?