При интеграции интернет-магазина с 1С одной из самых сложных задач становится корректная фискализация оплат. Согласно 54-ФЗ, если покупатель оплачивает товар на сайте, он должен получить электронный чек. В этой статье мы подробно разберем, как реализовать этот процесс в конфигурации 1С:Управление торговлей 11.4, какие документы использовать и как соблюсти требования законодательства о «двойных чеках».
Первый вопрос, с которым сталкивается специалист: каким документом зафиксировать факт оплаты в 1С, чтобы на его основании пробить чек? Проанализируем два основных варианта:
Эквайринговый терминал с признаком «Автономный» (если интеграция с банком идет через сайт, а не напрямую через 1С). Этот способ позволяет корректно закрывать взаиморасчеты через 57 счет (переводы в пути).Рассмотрим рекомендации экспертов: если оплата прошла через платежный шлюз на сайте (интернет-эквайринг), следует использовать именно Эквайринговую операцию. Это логически ближе к сути транзакции и упрощает сверку с банковскими выписками.
Согласно действующему законодательству, при дистанционной торговле с предоплатой необходимо формировать два фискальных признака. Разберем по шагам, как это выглядит в жизненном цикле заказа в 1С:
Шаг 1: Чек на предоплату.
Как только заказ на сайте оплачен, информация об этом поступает в 1С. На основании документа Заказ клиента создается Эквайринговая операция. В момент проведения этого документа (или при нажатии кнопки «Пробить чек») ККТ формирует чек с признаком способа расчета «Предоплата 100%» или «Аванс». В этом чеке обязательно должны быть указаны позиции номенклатуры, которые клиент заказал.
Шаг 2: Чек на полный расчет (отгрузку).
Когда товар фактически передается покупателю или отгружается в службу доставки, создается документ Реализация товаров и услуг. На основании реализации пробивается второй чек. В нем признак способа расчета меняется на «Полный расчет», а в качестве способа оплаты указывается «Зачет аванса». Сумма «Наличными» или «Безналичными» в этом чеке будет равна нулю, так как оплата уже была произведена ранее.
Проанализируем ситуацию, упомянутую опытными пользователями: «из коробки» 1С не всегда автоматически пробивает второй чек при смене статуса ордера на складе. Часто для этого требуются небольшие доработки или использование расширений, которые будут мониторить статус документа Расходный ордер на товары или Реализация товаров и услуг и инициировать печать на ККТ.
Если заказов много, пробивать каждый чек вручную невозможно. Для решения этой задачи в 1С:УТ 11.4 предусмотрен механизм «Монитор очереди чеков». Выясним, как это работает:
При поступлении оплаты с сайта через модули интеграции (например, Битрикс), документ оплаты создается автоматически. Вместо прямой печати, документ помещается в очередь. На компьютере, к которому физически подключена касса, запускается специальный сеанс 1С, который в фоновом режиме опрашивает очередь и отправляет команды на печать в ККТ.
Для настройки такой автоматизации необходимо:
Поскольку при оплате на сайте бумажный чек клиенту физически не передается, критически важно заполнить контактные данные для ОФД. В документах 1С Эквайринговая операция или Поступление безналичных ДС обязательно должны быть заполнены поля Адрес электронной почты или Телефон. Если эти данные не передать в драйвер ККТ, чек может быть пробит некорректно или вовсе отклонен кассой.
Также обратим внимание на специфические теги для интернет-торговли:
Рассмотрим ситуацию, когда в заказе очень много позиций (например, более 200). Физическая память ККТ и протоколы обмена (например, АТОЛ или Штрих-М) имеют ограничения на количество строк в одном чеке. Если ваш бизнес предполагает объемные заказы, необходимо предусмотреть программное разделение чека.
В типовой 1С:УТ 11.4 при превышении лимита строк может возникнуть ошибка драйвера. В таких случаях программисты пишут обработчик, который разбивает один документ Реализация товаров и услуг на несколько этапов печати, распределяя сумму оплаты между ними, чтобы итоговая сумма всех чеков соответствовала сумме документа.
Если стандартная схема через ККТ в офисе кажется слишком сложной, можно рассмотреть интеграцию через специализированные сервисы, такие как PayKeeper. Рассмотрим этот подход:
Сайт общается с платежным шлюзом. После успешной транзакции 1С через API получает уведомление об оплате. Чек при этом может пробиваться либо на стороне агрегатора (облачная касса), либо 1С получает команду и отправляет её на локальную кассу. Плюс таких систем в том, что они часто берут на себя контроль за отправкой электронных писем с чеками клиентам, разгружая базу 1С.
Важный совет: При использовании автономных терминалов в 1С всегда следите за тем, чтобы Вид оплаты в документе соответствовал настройкам в справочнике Эквайринговые терминалы. Ошибки в этих настройках часто приводят к тому, что суммы в отчетах по эквайрингу не сходятся с фактическим поступлением денег на расчетный счет.