Удаленная фискализация
Отправка уведомления об обработке документа
В случае, если в запросе отправки чека на печать в параметре callback_url, либо в личном кабинете Lifepay в разделе Фискализация -> Настройки был указан URL для уведомлений, 
Lifepay после обработки документа (смена статуса в “обработан”, “ожидает повтора”, “ошибка”) сформирует уведомление на указанный URL.
Сервер клиента, после успешной обработки уведомления, в ответ на запрос должен вернуть http код 200. Иначе сервер LifePay будет повторять запрос через определенные промежутки времени до получения http кода 200 или до подхода к максимальному лимиту на количество запросов по данному уведомлению. Промежутки повтора запроса: 1 минута, 3 минуты, 5 минут, 10 минут, далее – один раз в час. Всего допустимо не более 10 попыток отправки уведомления.
Тип запроса:
POST
Формат:
JSON
Пример данных печати фискального документа продажи:
data:
{
    "mode": "print",
    "type": "payment",
    "uuid": "0bf63680-1c0d-5af8-b10c-eb456c603cc7",
    "ext_id": null,
    "status": "printed",
    "attempt": 1,
    "command": "fiscalPrint",
    "printer": "atol",
    "datetime": "2019-03-25T16:33:00+03:00",
    "repeat_at": null,
    "error_code": null,
    "user_login": null,
    "fiscal_data": {
        "inn": "7729724371",
        "fnSn": "99990789463",
        "summ": 239.45,
        "agent": 127,
        "fdNum": "466",
        "kkmSn": "00106304012797",
        "kktNum": "0000000357031084",
        "ofdUrl": "f1test.taxcom.ru",
        "taxSum": {
            "none": 0,
            "vat0": 0,
            "vat10": 0,
            "vat18": 0,
            "vat20": 39.91
        },
        "address": "г Москва, Ленинская слобода, д 19",
        "fdValue": "1672477510",
        "checkNum": "34",
        "username": "АКЦИОНЕРНОЕ ОБЩЕСТВО \"БЫСТРЫЙ ПЛАТЕЖ\"",
        "ofdStatus": {
            "status": 2,
            "fnError": 0,
            "ofdError": 0,
            "queuedDocs": 1,
            "fnErrorText": "Ошибок нет",
            "networkError": 0,
            "ofdErrorText": "Ошибок нет",
            "networkErrorText": "Ошибок нет",
            "queuedFirstDocNum": 466,
            "queuedFirstDocDate": "Mar 25, 2019 4:33:00 PM"
        },
        "cashAmount": 0,
        "fdDatetime": "Mar 25, 2019 4:33:00 PM",
        "checkSession": "28",
        "senderAddress": "noreply@life-pay.ru"
    },
    "callback_data": null,
    "error_message": null,
    "customer_email": null,
    "customer_phone": null,
    "printer_serial": "00106304012797",
    "purchase_amount": 293.45,
    "ofd_url": "https://check-demo.ofd.ru/rec/7729724371/0000012321010134/9999078900000753/346/1039451501",
    "lifepay_transaction": {
        "number": "14912372884081",
        "internet_acquiring": {
            "tid": "490097404",
            "order_id": "11795015324012",
            "service_id": "65521"
        }
    },
    "oism_result": {
        "items": [
            {
                "key": 0,
                "name": "Товар 1",
                "valid": true,
                "marking_code": "010462930887704421DzkcYt2\u001d8005177000\u001d93dGVz",
                "oism_error_code": 0,
                "validation_errors": [],
                "oism_error_message": null
            }
        ],
        "valid": true,
        "req_id": "7e18f9c0-88e4-49d3-8686-4ba4ed8faca5",
        "req_timestamp": 1733842075706
    }
}
Пример данных печати z-отчета:
data:
{
    "mode": "print",
    "type": null,
    "uuid": "811a3d39-206f-5a14-b386-435639c68ac8",
    "ext_id": null,
    "status": "printed",
    "attempt": 1,
    "command": "zReport",
    "printer": "atol",
    "datetime": "2019-03-21T17:40:00+03:00",
    "repeat_at": null,
    "error_code": null,
    "user_login": null,
    "fiscal_data": {
        "inn": "7729724371",
        "fnSn": "99990789463",
        "agent": 127,
        "fdNum": "382",
        "kkmSn": "00106304012797",
        "kktNum": "0000000357031084",
        "ofdUrl": "f1test.taxcom.ru",
        "address": "г Москва, Ленинская слобода, д 19",
        "fdValue": "1966682749",
        "revenue": 814.9,
        "checkNum": "0",
        "username": "АКЦИОНЕРНОЕ ОБЩЕСТВО \"БЫСТРЫЙ ПЛАТЕЖ\"",
        "cashInSum": 0,
        "ofdStatus": {
            "status": 5,
            "fnError": 0,
            "ofdError": 0,
            "queuedDocs": 1,
            "fnErrorText": "Ошибок нет",
            "networkError": 0,
            "ofdErrorText": "Ошибок нет",
            "networkErrorText": "Ошибок нет",
            "queuedFirstDocNum": 383,
            "queuedFirstDocDate": "Mar 21, 2019 5:51:00 PM"
        },
        "cashAmount": 0,
        "cashOutSum": 0,
        "fdDatetime": "Mar 21, 2019 5:40:00 PM",
        "incomeTotal": {
            "mcSum": 0,
            "cardSum": 0,
            "cashSum": 604.9
        },
        "shiftTaxSum": {
            "buy": {
                "none": 0,
                "vat0": 0,
                "vat10": 9.09,
                "vat18": 0,
                "vat20": 33.33
            },
            "sell": {
                "none": 27,
                "vat0": 0,
                "vat10": 0,
                "vat18": 0,
                "vat20": 96.32
            },
            "buy_refund": {
                "none": 380,
                "vat0": 280,
                "vat10": 13.64,
                "vat18": 0,
                "vat20": 50
            },
            "sell_refund": {
                "none": 0,
                "vat0": 0,
                "vat10": 9.09,
                "vat18": 0,
                "vat20": 83.35
            },
            "buy_correction": {
                "none": 0,
                "vat0": 0,
                "vat10": 0,
                "vat18": 0,
                "vat20": 0
            },
            "sell_correction": {
                "none": 0,
                "vat0": 0,
                "vat10": 0,
                "vat18": 0,
                "vat20": 0
            }
        },
        "checkSession": "25",
        "outcomeTotal": {
            "mcSum": 0,
            "cardSum": 0,
            "cashSum": 600
        },
        "senderAddress": "noreply@life-pay.ru"
    },
    "callback_data": null,
    "error_message": null,
    "customer_email": null,
    "customer_phone": null,
    "printer_serial": "00106304012797",
    "purchase_amount": null
}
Описание общих полей
| Параметр | Тип | Описание | 
|---|---|---|
| mode | Строка | Режим печати/отправки чека. Возможные значения:print - распечатать чек (по умолчанию),email - отправить электронный чек по email и/или смс,print_email - распечатать чек и отправить по email и/или смс. | 
| type | Строка | Тип. Возможные значения:payment - приход;refund - возврат прихода;buy - расход;buy_refund - возврат расхода;sell_correction - коррекция прихода;buy_correction - коррекция расхода. | 
| uuid | Строка | Уникальный идентификатор документа. При запросе отправки чека на печать возвращается в ответе в случае успешного создания. | 
| ext_id | Строка | Идентификатор в сторонней системе, переданный в запросе отправки чека на печать. | 
| status | Строка | Статус обработки документа. Возможные значения: queued - в очереди;in_progress - обрабатывается;waiting_for_retry - ожидает повтора;printed - обработан;cancelled - отменен;fail - ошибка; | 
| attempt | Целое | Номер попытки печати. | 
| command | Строка | Команда. Возможные значения:fiscalPrint - печать фискального чека;fiscalPrintFfd1_2 - печать фискального чека ФФД 1.2;chequeCorrection - печать чека коррекции;zReport - закрытие смены;openSession - открытие смены;xReport - печать x-отчета;chpuPrint - печать дубликата фискального чека; | 
| printer | Строка | Принтер, который использовался для печати. Возможные значения:atol - АТОЛ;shtrih - ШТРИХ;mstar - МСТАР;winbond - чекопечатающее устройство Winbond; | 
| printer_serial | Строка | Серийный номер принтера. | 
| datetime | Строка | Время обновления информации по документу в формате ISO 8601 | 
| repeat_at | Строка | Планируемое время повторной печати чека после неуспешной обработки в формате ISO 8601 | 
| error_code | Строка | Код ошибки от принтера. | 
| error_message | Строка | Описание ошибки от принтера. | 
| user_login | Строка | Логин пользователя, который совершил транзакцию с последующей фискализацией. | 
| fiscal_data | json | Фискальные данные. | 
| callback_data | Строка|Объект|Массив | Пользовательские данные, переданные в запросе отправки на печать. | 
| customer_email | Строка | Email покупателя. | 
| customer_phone | Строка | Телефон покупателя. | 
| purchase_amount | Вещественное | Сумма покупки/возврата. Вычисляется по позициям в чеке. | 
| ofd_url | Строка | URL адрес на чек ОФД (если АПИ получения чека предоставляется ОФД). | 
| lifepay_transaction | Объект | Данные из транзакционной системы LIFE PAY | 
| oism_result | Объект | Результат проверки в ОИСМ | 
Описание поля lifepay_transaction
| Параметр | Тип | Описание | 
|---|---|---|
| number | Строка | Номер транзакции | 
| internet_acquiring | Объект|Массив | Информация по транзакции по интернет эквайрингу | 
Описание поля oism_result при работе в штатном режиме
| Параметр | Тип | Описание | 
|---|---|---|
| items | Список объектов | Список проверенный позиций в ОИСМ | 
| items[].key | Целое | Индекс позиции в чеке из позиций products | 
| items[].name | Строка | Наименование позиции | 
| items[].valid | Булево | Признак корректности маркировки | 
| items[].marking_code | Строка | Код маркировки | 
| items[].oism_error_code | Целое | Код ошибки ОИСМ | 
| items[].oism_error_message | Строка | Сообщение ошибки ОИСМ | 
| items[].validation_errors | Список строк | Ошибки валидации кодов маркировки | 
| valid | Булево | Признак корректности всех маркировок, проверенных в ОИСМ | 
| req_id | Строка | Уникальный идентификатор запроса в ОИСМ | 
| req_timestamp | Целое | Дата и время регистрации запроса в ОИСМ | 
Описание поля oism_result при аварийной ситуации
| Параметр | Тип | Описание | 
|---|---|---|
| emergency | Строка | Сообщение об аварийном режиме | 
Описание поля internet_acquiring
| Параметр | Тип | Описание | 
|---|---|---|
| tid | Строка | Идентификатор транзакции | 
| order_id | Строка | Номер заказа | 
| service_id | Строка | Номер сервиса | 
Описание поля fiscal_data
Возвращаемые значения зависят от типа команды на ФР и описаны в интерфейсах:
Чек прихода/возврата прихода/расхода/возврата расхода; Чек коррекции прихода/расхода
FiscalChequeDataInterface FiscalSessionDataInterface FiscalDocDataInterface FiscalKktDataInterface
Печать Z отчета
FiscalSessionDataInterface FiscalReportDataInterface FiscalDocDataInterface FiscalKktDataInterface
Печать X отчета
FiscalSessionDataInterface FiscalReportDataInterface FiscalKktDataInterface
Открытие смены
FiscalSessionDataInterface FiscalDocDataInterface FiscalKktDataInterface