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

Перед печатью чека необходимо подключить принтер чеков вручную из приложения LIFE POS Checkout. На данный момент для подключения доступен принтер чеков MiNi Thermal Printer. Подключение производится по bluetooth. Данный принтер выводит 32 символа в строке.

Параметры входящего запроса

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

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

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

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

В случае необходимости можно передавать поле request_id типа String и поле metadata типа HashMap<String, String>, они будут возвращаться в ответе. (Успешном/неуспешном) Никакой логики на них не завязано.

Параметры результата запроса

В случае успешной обработки запроса приложение LIFE POS Checkout возвращает resultCode = Activity.RESULT_OK (-1) и экземпляр класса Intent с действием action которое было указано во входящем интенте. Если resultCode отличается от Activity.RESULT_OK или intent == null, то следует рассматривать данную ситуацию как ошибку.

Для определения факта успешной/неуспешной печати текстового чека следует ориентироваться на значение параметра code, значение 0 соответствует успешной печати чека, значение отличное от 0 соответствует ошибке.

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

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

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

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

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