Skip to main content

Принтер чеков

После проведения оплаты, LIFE POS Checkout может распечатать чек на внешнем принтере. Принтер чеков нужно подключить вручную через Checkout. В текущей версии поддерживается только принтер чеков MiNi Thermal Printer. Подключение производится по bluetooth.

Печать текстового чека

Операция позволяет напечатать чек на принтере. Для этого из вашего приложения нужно передать тело чека. Дополнительно можно передать QR-код для печати после тела и завершающую часть чека.

При успешном запросе Checkout возвращает resultCode = Activity.RESULT_OK (-1) и экземпляр класса Intent с действием action, которое было указано во входящем интенте.

При ошибке Checkout вернёт resultCode со значением отличным от Activity.RESULT_OK или intent будет содержать null.

Для определения факта успешной печати чека проверяйте значение параметра code:

  • значение 0 — чек успешно напечатан;
  • значение отличное от 0 — произошла ошибка.

Описание метода

Действие: ru.lifepay.checkout.receipt_printer.print_receipt

Параметры запроса:

НазваниеТипОбязательностьЗначение/описание
bodyStringдаТело чека. Отдельные строки должны быть разделены символом \n. Можно использовать поле printView класса FDReceipt, после фискализации.
qr_codeStringнетQR код. Печатается после тела чека, в случае наличия. Можно использовать поле qrCode класса FDReceipt, после фискализации.
footerStringнетЗавершающая часть чека. Печатается после QR кода, в случае наличия. Отдельные строки должны быть разделены символом \n.

В случае необходимости можно передавать поле request_id типа String и поле metadata типа HashMap<String, String>. Они будут возвращаться в ответе. Они не используются для других операций.

Параметры результата при успешной печати:

НазваниеТипОбязательностьЗначение/описание
codeIntда0 - успешная печать текстового чека.

Значения полей можно извлекать из экземпляра класса Bundle получаемого из свойства extras класса Intent при помощи методов extras.getInt(...) и extras.getString(...).

Параметры результата при ошибке:

НазваниеТипОбязательностьЗначение/описание
codeIntдаОтличное от нуля значение. Означает, что произошла ошибка.
messageStringдаТекст ошибки для вывода пользователю.