Интеграция 1С и ОФД убирает ручной перенос сумм между заказом, оплатой и чеком. Настраивать нужно не прямую отправку «из 1С в ОФД», а цепочку 1С → ККТ или облачная касса → ОФД → результат в 1С: касса формирует фискальный документ, а ОФД принимает его от кассы.
Автор: Александр Пылев, Основатель Интернет Касса
Начните с карты расчётов: откуда приходит оплата, какая касса формирует чек, кто отвечает за очередь обмена и куда возвращается результат. Если для одной продажи нет уникального идентификатора заказа или платежа, при повторной доставке события легко получить два чека.
Правила применения ККТ устанавливает Федеральный закон № 54-ФЗ; текст доступен в КонсультантПлюс. Сервисы и разъяснения по регистрации ККТ публикует сайт ФНС России.
В 1С хранится продажа: товары или услуги, сумма, скидка, способ оплаты и номер заказа. В кассу уходит задание на фискализацию. Касса создаёт чек, присваивает ему фискальные реквизиты и передаёт документ ОФД. Затем 1С получает статус и реквизиты для сверки.
Внешний идентификатор — это уникальный номер заказа, платежа или запроса в кассу. Сохраняйте его в документе 1С и передавайте без изменений на каждом этапе. Очередь кассы — список заданий, которые кассовый сервис ещё обрабатывает или не смог обработать. Она показывает причину задержки раньше, чем кабинет ОФД.
Для каждой операции сохраняйте: идентификатор заказа или платежа, номер кассы, сумму, дату и время, номер фискального документа (ФД), фискальный признак, статус задания и статус загрузки в 1С. По этим данным бухгалтер или оператор найдёт конкретный чек без ручного поиска по одинаковым суммам.
Свяжите 1С с драйвером локальной ККТ. Кассир проводит продажу, 1С передаёт состав покупки в кассу, а касса печатает или отправляет электронный чек и передаёт сведения ОФД. До запуска проверьте драйвер, передачу номенклатуры, скидок и способа оплаты. Для выбора оборудования используйте материал как выбрать кассу для розничного магазина и запустить продажи.
Подавайте команду на чек после успешного статуса платежа от эквайринга. Создание заказа, резерв товара и открытие платёжной страницы не подтверждают расчёт. Для сайта удобна связка «платёжный сервис — облачная касса — 1С»: платёжный сервис сообщает об оплате, облачная касса фискализирует заказ, а 1С получает результат.
Если касса работает в облаке, изучите схему подключения заранее: облачная касса для бизнеса: выбор, запуск и типовые ошибки. Приём оплаты на сайте и фискализация — разные интеграции: порядок подключения платежей разобран в статье как подключить интернет-эквайринг.
Создайте отдельные события для первой оплаты, регулярного списания, предоплаты, зачёта аванса, доплаты и возврата. Не отправляйте все операции как одну «продажу»: кассе нужны фактическая сумма, состав расчёта, способ оплаты и настроенный для этого события признак способа расчёта.
Распределённая фискализация — это архитектура, в которой несколько касс обслуживают разные каналы или точки, а 1С собирает данные в одном контуре. Закрепите за заказом конкретную кассу либо правило маршрутизации: например, сайт А — касса 1, розница — касса 2. Тогда сбой можно локализовать по кассе и очереди, а не искать по всем продажам.
Не пытайтесь отправить «чек в ОФД» отдельной ручной командой: это делает ККТ или облачная касса после фискализации. Ручное повторение команды без проверки статусов — основная причина дублей.
| Этап | Что должно быть | Если этап не пройден |
|---|---|---|
| Платёж | Есть подтверждённый статус оплаты или подтверждённый возврат от платёжного сервиса. | Не создавайте чек. Проверьте платёж у эквайера или в платёжном сервисе. |
| Задание в кассу | 1С или сайт передали запрос с уникальным идентификатором; задание принято либо находится в очереди. | Проверьте журнал обмена, доступы, обязательные поля и неотправленные задания. |
| Чек сформирован | Касса вернула номер ФД и фискальный признак либо иной успешный результат сервиса. | Исправьте ошибку в данных или настройках. Не создавайте новый запрос, пока не проверите исходный идентификатор. |
| Передача в ОФД | Касса передала сформированный документ ОФД; чек появился в кабинете ОФД или имеет статус доставки. | Проверьте соединение кассы, очередь неотправленных документов и статус ККТ. Сформированный чек не означает, что нужно формировать второй. |
| Загрузка в 1С | Реквизиты чека связаны с исходной продажей, оплатой или возвратом. | Проверьте модуль обратного обмена и правило сопоставления по идентификатору заказа или платежа. |
Отсутствие чека в кабинете ОФД не доказывает, что чек не сформирован. Сначала выясните, есть ли у исходного запроса номер ФД и фискальный признак. Если есть, разбирайте доставку в ОФД; если нет — ошибку формирования в кассе или в данных запроса.
| Событие | Что отправить в кассу | Что связать в 1С |
|---|---|---|
| Полная оплата товара или услуги | Чек продажи с фактическими позициями, суммой, способом оплаты и настроенным признаком полного расчёта. | Заказ, платёж, задание в кассу и номер ФД. |
| Предоплата | Чек на полученную предоплату. Для известного состава заказа и аванса правила могут различаться, поэтому настройте отдельный тип события, а не копируйте полную оплату. | Документ аванса, заказ и идентификатор платежа. |
| Зачёт ранее полученного аванса | Отдельное событие при передаче товара или оказании услуги с реквизитами окончательного расчёта и зачёта ранее полученной суммы. | Исходный аванс, реализацию и чек зачёта в одной цепочке заказа. |
| Частичная оплата или доплата | Чек на фактически полученную часть суммы; остаток не подменяйте полной оплатой. | График или документы оплат, сумму каждой части и общий заказ. |
| Возврат | Отдельный чек возврата прихода на сумму подтверждённого возврата с привязкой к исходной продаже. | Заявление или операция возврата, исходный чек и возвратный чек. |
Названия признаков расчёта и порядок передачи реквизитов зависят от кассового решения и учётной схемы. До запуска утвердите маппинг с бухгалтером и интегратором на реальных примерах: полная оплата, предоплата, зачёт, частичная оплата и возврат. Не подставляйте один признак для всех операций.
Обратный обмен нужен для сверки оплат, записи реквизитов чека в реализацию и поиска ошибок. Подключайте его штатным модулем 1С, API ОФД, возможностями кассового сервиса или обработкой интегратора.
Сопоставляйте документы прежде всего по идентификатору заказа, платежа или запроса в кассу. Если он не передавался, используйте одновременно номер кассы, дату и время, сумму и номер ФД. Суммы недостаточно: два заказа на одну сумму система может ошибочно объединить.
Ежедневно сверяйте три списка: успешные платежи эквайринга, чеки в ОФД и документы 1С. Разбирайте исключения по порядку:
| Условие | Подходящая схема | Что сделать |
|---|---|---|
| Одна розничная точка и кассир | 1С + локальная ККТ | Настроить драйвер, передачу позиций и журнал статусов. |
| Оплата на сайте | Платёжный сервис + облачная касса + 1С | Отправлять чек только после успешной оплаты. |
| Курьеры или мастера принимают оплату | Мобильная ККТ + заказы из 1С | Закрепить кассу за сотрудником и описать возвраты. |
| Несколько точек, сайтов или касс | Несколько касс под контролем 1С | Передавать идентификатор кассы и контролировать очереди отдельно. |
| Много возвратов, авансов и доплат | Двусторонний обмен | Загружать реквизиты чеков и связывать их с операциями 1С. |
| Некому контролировать ошибки | Запуск после назначения владельца процесса | Настроить уведомления и ежедневный отчёт по исключениям. |
Интернет Касса может провести аудит текущей цепочки «1С — платёжный сервис — касса — ОФД», подобрать схему для вашей конфигурации 1С и кассы, настроить обмен, протестировать продажи и возвраты, а затем передать команде регламент контроля. Оставьте заявку на разбор схемы — подготовим перечень точек интеграции и проверок до запуска.
Для облачного контура используйте отдельный план: подключение облачной кассы для бизнеса: пошаговый запуск и выбор схемы.
Дубли чеков. Причина — повторная отправка после тайм-аута. Храните идентификатор запроса, проверяйте кассу и ОФД, затем повторяйте операцию только после подтверждённой ошибки исходного задания.
Чек сформирован до оплаты. Причина — триггером стало создание заказа или ссылки на оплату. Перенесите фискализацию на успешный статус платежа; отмену и возврат обрабатывайте отдельными событиями.
В чеке технические названия или неправильные позиции. Причина — нет маппинга номенклатуры 1С. Настройте соответствие товаров и услуг, проверьте скидки, доставку, количество и возвраты на тестовых заказах.
Расхождение между эквайрингом, ОФД и 1С. Причина — нет регулярной сверки. Формируйте ежедневный список исключений и закрепите за сотрудником срок обработки каждого расхождения.
Чек не найден в ОФД. Найдите документ в 1С, посмотрите очередь и журнал кассы, проверьте наличие номера ФД. Новый чек создавайте только после того, как установите, что исходный документ не был сформирован.
Нужен запуск для сайта, розницы или сети касс? Свяжитесь с Интернет Касса: проведём аудит связки, настроим интеграцию с вашей 1С, кассой и ОФД, проверим тестовые операции и передадим правила ежедневного контроля.