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