Когда пробивать чек при оплате на сайте и как не ошибиться с моментом расчета

когда пробивать чек при оплате на сайтеКороткий ответ: формируйте кассовый чек после того, как платежный сервис подтвердил расчет покупателя. При дистанционной безналичной оплате чек можно сформировать не позднее следующего рабочего дня после расчета, но не позднее передачи товара покупателю. Не ждите банковскую выписку, выплату эквайера или перевод от агрегатора: это расчеты с провайдером, а не момент оплаты клиентом.

Когда формировать кассовый чек при интернет-оплате

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

Для дистанционных безналичных расчетов пункт 5.4 статьи 1.2 Закона № 54-ФЗ устанавливает срок: не позднее рабочего дня, следующего за днем расчета, но не позднее передачи товара покупателю. Практичнее формировать кассовый чек сразу после подтвержденной оплаты: так проще контролировать пропуски и связать чек с заказом.

Перед формированием кассового чека проверьте подлинность уведомления от провайдера. Используйте проверку подписи webhook по документации платежного сервиса и, если схема провайдера это предусматривает, дополнительно запросите финальный статус платежа через его API. Только после этой проверки передавайте операцию в кассу.

Защита от подмены уведомления не заменяет защиту от дублей. Сохраняйте уникальный ID платежа и статус фискализации: повторный webhook для той же операции не должен сформировать второй кассовый чек.

Электронный чек направляют на номер телефона или email, который покупатель предоставил до расчета. Добавьте в форму заказа хотя бы одно контактное поле и передавайте его в кассовый сервис. Официальная информация по применению ККТ публикуется на сайте ФНС России.

Предоплата или аванс: выберите признак до настройки кассы

Укажите «предоплата», если в момент платежа известен конкретный предмет расчета. Например, покупатель выбрал две конкретные модели товара, определенный тариф или курс с понятным составом услуг. При получении денег сформируйте кассовый чек на сумму предоплаты.

Укажите «аванс», если предмет расчета при получении денег не определен. Например, клиент вносит депозит на будущие услуги без выбора услуги, объема или номенклатуры. При поступлении денег сформируйте кассовый чек на сумму аванса.

При передаче товара, предоставлении доступа или оказании услуги сформируйте кассовый чек исполнения с зачетом ранее полученной предоплаты или аванса. Если клиент одновременно доплачивает остаток, отразите в этом чеке и зачет ранней оплаты, и оплату остатка. Не проводите всю стоимость второй раз как новую оплату: это создает дубль выручки.

Сценарии бизнеса: какой кассовый чек формировать

Интернет-магазин с доставкой

Клиент оплатил конкретный заказ сегодня, а курьер передаст его завтра. После успешной оплаты сформируйте кассовый чек с признаком «предоплата». При передаче заказа сформируйте чек исполнения с зачетом предоплаты. Если состав заказа на момент платежа еще не определен, вместо предоплаты используйте аванс.

Цифровой товар или услуга с немедленной выдачей

Если система сразу после успешной оплаты выдает ключ, файл, доступ или результат услуги, используйте сценарий полного расчета. Передавайте в кассу состав покупки, сумму и контакт покупателя. Не заменяйте номенклатуру формулировкой «заказ № 123», если учетная система уже знает позиции заказа.

Онлайн-школа, бронирование и подписка

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

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

Частичная оплата и доплата

Сформируйте кассовый чек на каждое подтвержденное поступление денег. Например, покупатель вносит 30% за определенный заказ, затем 70% перед доставкой: на каждую оплату нужен свой чек. При передаче товара настройте зачет обеих ранее полученных сумм.

Если покупатель оплачивает остаток именно при передаче товара, сформируйте чек исполнения: в нем отразите зачет ранней оплаты и поступившую доплату. Схемы с банковской рассрочкой и сервисами оплаты частями разобраны в статье «Чек при оплате в рассрочку: как оформить без дублей и пропусков».

Платежный агрегатор и маркетплейс: сначала определите роль

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

Маркетплейс — отдельная модель, а не разновидность платежного агрегатора. Площадка может продавать товар от своего имени либо действовать как агент продавца. Определите по договору и фактической витрине: кто указан продавцом перед покупателем, кто принимает деньги и кто обязан сформировать кассовый чек. Только после этого настраивайте ККТ и реквизиты поставщика.

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

При оплате через СБП действует тот же принцип: сформируйте кассовый чек по подтвержденной оплате, а не при показе QR-кода или переходе по ссылке. Отдельный разбор есть в статье «Нужен ли чек при СБП».

Таблица критериев: как настроить фискализацию

Сценарий Триггер Первый чек Что сделать при исполнении
Цифровой товар выдается сразу Проверенный успешный статус платежа Полный расчет Отдельный чек зачета не нужен
Конкретный заказ с будущей доставкой Проверенный успешный статус платежа Предоплата Сформировать чек зачета предоплаты при передаче товара
Депозит без выбранной услуги или товара Проверенный успешный статус платежа Аванс Сформировать чек зачета аванса, когда предмет расчета определен и обязательство исполнено
Оплата в два этапа Каждый проверенный успешный платеж Отдельный чек на каждое поступление Зачесть ранние оплаты; отразить доплату, если она внесена при исполнении
Платежный агрегатор Статус оплаты, подтвержденный по договорной схеме Формирует продавец или агент — согласно договору Проверить роль, реквизиты и отсутствие двойной фискализации
Маркетплейс Событие определяет модель продажи площадки Формирует продавец, агент или площадка от своего имени Сопоставить договор, карточку товара и фактический поток денег

Порядок запуска: проверьте фискализацию до первой продажи

  1. Составьте карту платежей: карта, СБП, платежная ссылка, подписка, предоплата, аванс, доплата, отмена и возврат.
  2. Для каждого сценария отметьте дату подтвержденной оплаты и дату передачи товара, доступа или результата услуги. Если события разделены, заложите чек ранней оплаты и чек зачета.
  3. Для каждого webhook включите проверку подписи. Затем запросите или подтвердите финальный статус через API провайдера, если это предусмотрено его интеграцией.
  4. Передавайте уникальный ID транзакции и включите идемпотентность. Повторное уведомление по уже обработанному платежу должно завершаться без нового кассового чека.
  5. Передавайте в кассу сумму, позиции, ставку НДС при ее применении, контакт покупателя и ID заказа. Связка ID заказа и ID платежа ускоряет поиск при возврате и обращении клиента.
  6. Проведите тесты: полная оплата, предоплата с доставкой, аванс с последующим выбором услуги, доплата, неуспешный платеж, отмена и возврат.
  7. Сверьте каждый тест в четырех местах: в заказе сайта, личном кабинете платежного провайдера, кассовом сервисе и личном кабинете ОФД.

Нужна проверка схемы до запуска? Обратитесь в Интернет Касса. Разберем платежные статусы, webhook, предоплату и агентскую роль; на выходе получите карту сценариев и перечень настроек для сайта, платежного модуля и ККТ.

Ошибки, из-за которых появляются пропуски и дубли

Кассовый чек формируют после банковской выписки. Замените ручную сверку на обработку подтвержденного статуса платежа. Выписка нужна для учета, но не должна быть триггером фискализации интернет-оплаты.

Кассовый чек создают по любому webhook. Проверяйте подпись уведомления и подтверждайте финальный статус у провайдера. Иначе ошибочный или подмененный callback может запустить фискализацию без реальной оплаты.

Повторный webhook формирует второй кассовый чек. Сохраняйте ID транзакции и результат первой обработки. При повторе возвращайте технический ответ без повторной передачи операции в кассу.

Будущую доставку оформляют как полный расчет. Если товар будет передан позже, при поступлении денег используйте предоплату либо аванс по признаку определенности номенклатуры. При доставке сформируйте чек зачета.

Агрегатор и маркетплейс считают одной схемой. Сначала установите продавца, агента, получателя платежа и лицо, формирующее чек. Затем настройте реквизиты и исключите дублирование документов двумя участниками.

Частые вопросы

Когда формировать кассовый чек при оплате на сайте: сразу после платежа или позже?

Сформируйте кассовый чек после подтверждения расчета платежным сервисом. При дистанционной безналичной оплате Закон № 54-ФЗ разрешает сделать это не позднее следующего рабочего дня после расчета, но не позднее передачи товара покупателю; ждать выплату на расчетный счет не нужно.

Нужен ли кассовый чек при оплате через платежный агрегатор?

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

Что делать при частичной оплате заказа на сайте?

Сформируйте отдельный кассовый чек на каждое подтвержденное поступление денег. При передаче товара или оказании услуги оформите зачет ранее полученных сумм и отразите доплату, если покупатель вносит остаток в этот момент.

Можно ли сформировать один кассовый чек на всю сумму заказа, если клиент платит частями?

Нет, один поздний кассовый чек не заменяет чеки на отдельные подтвержденные оплаты. Каждое поступление до исполнения оформляйте отдельно, а при исполнении зачтите полученные суммы.