Когда пробивать кассовый чек при оплате через СБП и как найти его по референсу

когда пробивать кассовый чек при оплате через сбп — При оплате через СБП чек формируют после подтверждения платежа, а не при создании QR-кода или платёжной ссылки. Ниже — схема для интернет-магазина, сервиса со ссылками на оплату и точки с QR: когда отправлять запрос в ККТ, какие идентификаторы хранить и как найти документ для сверки или возврата.

Автор: Александр Пылев, Основатель Интернет Касса

Нужен ли чек при оплате через СБП и в какой срок его сформировать

Да, ИП и организации формируют кассовый чек при приёме через СБП оплаты за товары, работы или услуги, если для этой деятельности они обязаны применять ККТ. СБП — только способ безналичной оплаты: он не заменяет кассу, фискальный накопитель и передачу данных в ОФД.

Исключения бывают, но они связаны не со СБП, а с освобождением от применения ККТ или с операциями, которые не признаются расчётом по 54-ФЗ. Например, сам по себе перевод денег между физлицами не делает получателя пользователем ККТ. Для продаж бизнеса не принимайте оплату по СБП за исключение: сначала определите обязанность применять кассу по статье 2 закона № 54-ФЗ и разъяснениям на сайте ФНС России.

Юридический срок и рабочая настройка — не одно и то же. При безналичном расчёте, в том числе когда покупатель предъявляет QR при непосредственном взаимодействии, электронный чек можно передать не позднее следующего рабочего дня после расчёта, но до передачи товара. Однако для сайта, приложения и платёжной ссылки настройте автоматическую отправку запроса на формирование чека сразу после статуса «успешно»: так оплаченный заказ не останется без фискализации из-за ручной обработки.

Не формируйте чек при выпуске ссылки или QR-кода: покупатель может не оплатить заказ. Также не формируйте второй чек по повторному webhook-уведомлению: до отправки запроса в ККТ проверяйте уникальный идентификатор платежа.

Три сценария бизнеса

Интернет-магазин

Создайте заказ до перехода к оплате. После успешной оплаты передайте в ККТ состав корзины, количество, сумму, ставку НДС либо признак без НДС, а также телефон или email покупателя, если он предоставлен до расчёта. Для интернет-магазина без физической кассы подходит облачная касса для бизнеса: выбор, запуск и типовые ошибки.

Услуга по платёжной ссылке

Школе, клинике, агентству или B2C-сервису нужно привязывать ссылку к номеру счёта или заказа. Не отправляйте ссылку только на сумму: в карточке операции должны быть клиент, услуга, номер заказа, идентификатор платежа, референс СБП и реквизиты чека. Тогда поддержка найдёт документ за несколько шагов, а не будет сопоставлять одинаковые суммы вручную.

Оплата по QR в точке или на выезде

Подтверждайте оплату в кассовой программе, банковском приложении для бизнеса или кабинете провайдера. Скриншот покупателя не подтверждает поступление денег. После успешного статуса кассир формирует чек вручную либо интеграция автоматически отправляет запрос в ККТ.

Если вы принимаете оплату на сайте, используйте схему из статьи «Подключение СБП на сайт с автоматической фискализацией чеков в ОФД».

Как настроить фискализацию оплаты по ссылке СБП

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

В мобильном приложении успешный статус должен получать сервер, а не только экран приложения: покупатель может не вернуться из банковского приложения. Практическая схема описана в материале «Чеки при оплате в приложении: схема работы, ошибки и запуск».

Как найти чек по референсу СБП

Ищите по цепочке «референс → платёж → заказ → чек». Референс относится к платёжной операции и не обязан отображаться в фискальном документе или быть доступным для поиска в личном кабинете ОФД.

  1. Откройте карточку платежа в банке или у платёжного провайдера.
  2. Скопируйте референс, идентификатор операции, сумму, дату, время и номер заказа.
  3. Найдите заказ в CMS, CRM или учётной системе по внутреннему номеру.
  4. Откройте сохранённые реквизиты чека: номер фискального документа, номер смены, номер фискального накопителя и фискальный признак.
  5. Найдите документ в личном кабинете кассы или ОФД по реквизитам чека либо по данным заказа.

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

Контрольная таблица: что проверить в связке СБП и кассы

Критерий Что проверить Что сделать
Триггер чека ККТ получает запрос только после успешной оплаты Настройте webhook или API-вызов по подтверждённому статусу
Защита от дублей Повторный webhook не создаёт второй чек Проверяйте уникальный идентификатор платежа до фискализации
Состав чека Передаются позиции, количество, сумма и налоговые реквизиты Передавайте корзину из CMS или CRM, а не одну сумму вручную
Поиск документа У заказа есть референс, номер платежа и реквизиты чека Храните идентификаторы в одной карточке заказа
Контроль ошибок Видны успешные платежи без чека Создайте очередь ошибок и назначьте ответственного
Возвраты Поддержка находит исходный платёж и исходный чек Свяжите идентификатор возврата с чеком «возврат прихода»

Как оформить возврат оплаты через СБП

Сначала верните деньги по исходной операции в банке или платёжном сервисе, затем сформируйте в ККТ чек «возврат прихода». Не удаляйте оплату из CRM и не создавайте новый чек прихода вместо возвратного документа.

  1. Найдите исходный платёж по референсу, идентификатору операции или номеру заказа.
  2. Сверьте сумму возврата и исходный фискальный документ.
  3. Создайте возврат в личном кабинете банка или платёжного провайдера по исходной операции.
  4. После подтверждения возврата отправьте в ККТ запрос на чек «возврат прихода» с возвращаемыми позициями и суммой.
  5. Сохраните идентификатор возврата и реквизиты возвратного чека в заказе.
  6. Проверьте два результата: деньги успешно возвращены в платёжном контуре, а чек принят кассой и передан в ОФД.

Защитите возврат от повторов так же, как оплату: повторный webhook или ручный ретрай не должны создать второй возврат денег и второй возвратный чек.

Пошаговый запуск до первой оплаты

  1. Подготовьте ККТ: зарегистрируйте её, подключите ОФД и проверьте обмен данными.
  2. Подключите СБП у банка или платёжного провайдера и получите перечень статусов, идентификаторов платежа и возврата.
  3. Настройте передачу заказа в ККТ после успешной оплаты, а не после создания ссылки.
  4. Добавьте проверку идемпотентности: один идентификатор платежа — один запрос на чек.
  5. Проведите тестовую оплату и проверьте статус платежа, заказ, чек, передачу в ОФД и отправку покупателю.
  6. Найдите тестовый документ по цепочке «референс → платёж → заказ → чек».
  7. Проведите тестовый возврат: операция у провайдера, чек «возврат прихода», статусы обоих действий и защита от повторной обработки.

Ошибки, из-за которых теряются чеки

  • Чек создаётся при выпуске ссылки. Исправление: используйте только подтверждённый успешный статус оплаты.
  • Менеджер вручную отмечает оплату и забывает отправить данные в ККТ. Исправление: автоматизируйте фискализацию или заведите очередь успешных платежей без чека.
  • Повторный webhook создаёт второй документ. Исправление: блокируйте повторную фискализацию по идентификатору операции.
  • Референс не сохраняется у заказа. Исправление: записывайте его вместе с номером платежа и реквизитами чека.
  • Поддержка ищет документ по одной сумме. Исправление: используйте референс или номер заказа, дату, время и идентификатор операции.
  • Возврат проводят без исходного платежа и чека. Исправление: найдите исходную операцию, верните деньги через провайдера и сформируйте чек «возврат прихода».

Кому Интернет Касса поможет настроить СБП и чеки

Интернет Касса подключает СБП, облачную кассу и автоматическую фискализацию для интернет-магазинов, сервисов с оплатой по ссылке, мобильных приложений и офлайн-точек с QR. Мы можем настроить интеграцию webhook/API, проверить передачу позиций и реквизитов в чек, внедрить защиту от дублей и провести аудит уже работающей связки «платёж → заказ → ККТ → ОФД».

Нужна рабочая связка СБП, сайта и кассы? Обратитесь в Интернет Касса: опишите ваш сценарий оплаты, и мы подскажем путь запуска, состав интеграции и контрольные точки для сверки и возвратов.

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

Когда пробивать кассовый чек при оплате через СБП?

Отправляйте запрос на формирование чека после подтверждения успешной оплаты. При безналичном расчёте, включая оплату по QR при непосредственном взаимодействии, закон допускает передачу электронного чека не позднее следующего рабочего дня после расчёта, но до передачи товара; для сайта и ссылки настройте автоматическую фискализацию сразу по успешному статусу.

Можно ли найти чек по референсу СБП?

Да, найдите сначала платёж по референсу, а затем связанный с ним заказ и чек. Референс СБП не обязан быть реквизитом фискального документа, поэтому в кассе или ОФД поиск часто выполняют по номеру заказа, сумме, времени и реквизитам чека.

Что делать, если платёж прошёл, а чек не находится?

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

Нужен ли отдельный регламент для чеков по платёжным ссылкам СБП?

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

Как оформить возврат оплаты через СБП?

Верните деньги через банк или платёжный сервис по исходной операции и сформируйте в ККТ чек «возврат прихода». После этого проверьте успешный статус возврата в платёжном контуре и статус чека в кассе или ОФД; повторные уведомления должны быть заблокированы по идентификатору возврата.