Как реализовать чек коррекции прихода через драйвер АТОЛ v.10 в 1С

Программист 1С v8.3 (Управляемые формы) Налоговый учет IT и автоматизация бизнеса
← На главную

При разработке кассовых модулей в самописных конфигурациях 1С часто возникает необходимость реализовать функционал исправления ошибок в пробитых чеках. Рассмотрим подробно, как правильно сформировать чек коррекции прихода, используя драйвер АТОЛ 10-й версии, и какие нюансы законодательства следует учитывать в зависимости от версии формата фискальных данных (ФФД) — для решения этой задачи есть обработка поддержки ФФД 1.2 и чеков коррекции для ККТ АТОЛ.

Выясним причину: почему версия ФФД определяет алгоритм действий

Прежде чем приступать к написанию кода, проанализируем текущую ситуацию. Алгоритм исправления ошибки в чеке (например, неверная ставка НДС или цена) принципиально отличается для разных версий ФФД:

  1. ФФД 1.05: В этой версии для исправления ошибок чеки коррекции не используются. Если вы ошиблись в ставке НДС, необходимо пробить обычный чек с признаком расчета «Возврат прихода» (полностью копирующий ошибочный чек), а затем пробить новый чек с признаком «Приход» с верными данными. Чек коррекции в ФФД 1.05 применяется исключительно в случае «неприменения ККТ» (когда выручка принята без пробития чека).
  2. ФФД 1.1 и 1.2: Любое исправление делается именно через чеки коррекции. Чтобы исправить ошибку, сначала пробивается «Чек коррекции возврата прихода», а следом — «Чек коррекции прихода» с правильными реквизитами. В современных реалиях, особенно при торговле маркированными товарами, необходимо также учитывать разрешительный режим на кассах и онлайн проверку в Честном знаке, что накладывает дополнительные требования к проверке кодов при коррекции — здесь поможет обработка подключения касс АТОЛ и ШТРИХ под ФФД 1.2 и разрешительный режим.

Разберем по шагам работу с тегами в драйвере АТОЛ v.10

Для того чтобы налоговая служба могла связать исправительный чек с ошибочным, необходимо передать специальные фискальные признаки. Рассмотрим основные теги, которые нам потребуются:

Проанализируем пример программной реализации

При работе с объектом драйвера LIBFPTR последовательность действий выглядит следующим образом. Сначала мы устанавливаем параметры коррекции, а затем открываем чек. Посмотрим на пример кода для регистрации параметров коррекции:


// Установка типа чека коррекции прихода
Драйвер.setParam(Драйвер.LIBFPTR_PARAM_RECEIPT_TYPE, Драйвер.LIBFPTR_RT_SELL_CORRECTION);

// Передача типа коррекции (самостоятельно - 0)
Драйвер.setParam(1173, 0);

// Дата документа основания (дата ошибки)
Драйвер.setParam(1174, ДатаОшибки);

// Передача ФП исходного (ошибочного) чека в тег 1192
Драйвер.setParam(1192, "1234567890"); 

// Открытие чека
Драйвер.openReceipt();

Обратите внимание, что для ФФД 1.1 и 1.2 чек коррекции обязательно должен содержать перечень товаров (номенклатуру), как и обычный чек. В некоторых случаях, помимо фискальных регистраторов, в ритейле используются и принтеры чеков Posiflex, однако чек коррекции формируется именно на ККТ с фискальным накопителем.

Использование JSON-заданий: современный подход

Рассмотрим более надежный способ взаимодействия с ККТ — метод processJson. Он позволяет избежать ошибок в последовательности команд драйвера. Структура JSON-задания для чека коррекции выглядит примерно так:


{
    "type": "sellCorrection",
    "taxationType": "osn",
    "correctionType": "self",
    "correctionBaseDate": "2023-10-25",
    "correctionBaseNumber": "1",
    "items": [
        {
            "type": "position",
            "name": "Товар с верным НДС",
            "price": 100.0,
            "quantity": 1,
            "amount": 100.0,
            "tax": { "type": "vat20" }
        }
    ],
    "additionalAttribute": "ФП_ИЗ_ОШИБОЧНОГО_ЧЕКА"
}

Нюансы для 2025 года: ставки НДС 5% и 7%

Проанализируем ситуацию с изменениями налогового законодательства. Если вам необходимо исправить чек с использованием новых налоговых режимов, рекомендуем использовать решения для групповой выгрузки и загрузки файлов в XML с поддержкой ставок НДС 5% и 7%. При реализации в коде убедитесь, что:

  1. Версия драйвера АТОЛ не ниже 10.10.5.
  2. Прошивка ККТ обновлена до актуальной версии (Платформа 5.0, версия 5.8.x и выше) — для корректной интеграции есть драйвер подключения ККТ АТОЛ Платформа 5.0 под ФФД 1.2.
  3. В коде используются правильные константы налоговых ставок, такие как LIBFPTR_TAX_VAT5 или LIBFPTR_TAX_VAT7.

В специфических условиях, например, при выездной торговле, могут применяться мобильные принтеры с печатью по bluetooth, однако полноценный чек коррекции должен быть зафиксирован в фискальной памяти устройства и передан в ОФД.

Важный момент: Если использовать устаревший драйвер или прошивку, при попытке пробить чек со ставкой 5%, касса выдаст ошибку «Неверная налоговая ставка».

Таким образом, мы выяснили, что для успешной реализации чека коррекции необходимо строго следовать требованиям версии ФФД вашей кассы и корректно заполнять тег 1192 для связи документов в базе ФНС. Для быстрого перехода на новые форматы фискальных данных без доработки кода 1С есть обработка подключения онлайн-касс АТОЛ под ФФД 1.2 без обновления конфигурации.

← На главную