Чтобы реализовать комбинированную оплату в своём приложении:
В манифесте приложения, добавьте разрешение:
<uses-permission android:name="ru.evotor.permission.COMBINED"/>
Создайте службу, которая будет обрабатывать комбинированные платежи. Например, .CombinedPaymentService
.
Служба .CombinedPaymentService
наследуется от класса IntegrationService.java
.
В манифесте приложения, в intent-filter
службы укажите событие, которое будет её запускать:
<intent-filter>
<action android:name="evo.v2.receipt.sell.payment.COMBINED" />
</intent-filter>
Для обработки события используйте класс PaymentDelegatorEventProcessor.kt
.
Чтобы получить данные всех приложений, которые позволяют оплачивать чек, используйте метод getAllPaymentPerformers
, класса PaymentPerformerApi.kt
. Метод возвращает список объектов PaymentPerformer.kt
.
После обработки событий, служба .CombinedPaymentService
должна возвращать соответствующий результат:
PaymentDelegatorSelectedEventResult.kt
– выбрана платёжная система, с помощью которой будет совершён платёж. Результат содержит объект PaymentPurpose
PaymentDelegatorCanceledEventResult.kt
– пользователь отменил выбранный способ оплаты.PaymentDelegatorCanceledAllEventResult.kt
– пользователь отменил все способы оплаты. В этом случае смарт-терминал последовательно отменяет все выбранные способы оплаты.