По закону 54-ФЗ интернет-магазины обязаны передавать в налоговую фискальные данные (с названиями и ценами товаров, ставкой НДС и другой необходимой информацией). ЮKassa готова участвовать в этом процессе.
Онлайн-касса — специальный кассовый аппарат с фискальным накопителем (ККТ), подключается к интернету, постоянно находится в онлайне и передает фискальные данные в ОФД.
ОФД — оператор фискальных данных, посредник между онлайн-кассами и налоговой.
КЭП — квалифицированная электронная подпись, нужна для регистрации онлайн-кассы в налоговой.
ЮKassa может собирать данные в нужном виде и отправлять их в онлайн-кассу в момент оплаты или возврата. Из этих данных онлайн-касса сформирует чек и отправит его в ОФД, а ОФД — в налоговую.
- Подключить онлайн-кассу одного из партнеров ЮKassa.
- Заключить договор с оператором фискальных данных (ОФД).
- Получить квалифицированную электронную подпись (КЭП).
- Зарегистрировать онлайн-кассу на сайте налоговой (в личном кабинете юрлица).
- Поменять настройки в личном кабинете ЮKassa.
- Передавать ЮKassa данные для формирования чека (то есть реализовать изменения протокола, описанные в этом документе).
- В запросы к ЮKassa добавляются новые параметры (например, название, цена и ставка НДС для каждого товара в заказе).
- Проведение платежа или возврата зависит от отправки фискальных данных в онлайн-кассу: при некоторых настройках платежи перестанут проходить, если онлайн-касса не отвечает. (См. Отправка данных для чека)
Только тем, кто собирается использовать решение ЮKassa для отправки данных для чека в свою онлайн-кассу. Если вы собираетесь настраивать взаимодействие с онлайн-кассой самостоятельно, ничего менять не нужно.
В личном кабинете ЮKassa необходимо указать:
- что вы будете использовать решение ЮKassa по работе 54-ФЗ;
- партнера ЮKassa, у которого вы покупаете или арендуете онлайн-кассу;
- когда отправлять фискальные данные вашей онлайн-кассе: до уведомления о платеже (
paymentAviso
) или вместе с ним: - электронный адрес, на который будут приходить письма с ошибками;
- адрес вашего магазина (физический адрес или URL вашего сайта, он будет указан в чеке).
Процесс оплаты зависит от того, когда отправляются данные для чека: до уведомления об успешной оплате (
paymentAviso
) или вместе с ним, это настраивается в личном кабинете ЮKassa.Подробнее в разделе Отправка данных для чека
Параметры для передачи фискальных данных добавляются в стандартную платежную форму ЮKassa.
В форму добавляется один дополнительный параметр, в котором передаются все нужные данные (
ym_merchant_receipt
).Подробнее в разделе Параметры для формирования чека
Метод returnPayment отвечает за проведение возвратов.
Параметры для чека нужно передавать только в случаях, когда состав чека меняется:
- при частичном возврате;
- если платеж, который нужно вернуть, проводился без отправки чека.
В этом случае в запросе появляется параметр
receipt
, в котором передаются параметры для чека (по товарам, за которые возвращаются деньги).Параметры для чека не нужно передавать при полных возвратах (если при платеже уже отправлялся чек).
Подробнее в описании метода returnPayment.
Метод repeatCardPayment отвечает за повтор платежей с банковских карт, через Mir Pay и за привязку карт для платежей в конкретном магазине.
Параметры для чека нужно передавать, если:
- меняется сумма платежа;
- меняется состав заказа;
- платеж, который нужно повторить, проводился без отправки чека.
В этом случае к запросу добавляется параметр
ym_merchant_receipt
, данные отправляются в формате JSON (так же, как в платежной форме).В остальных случаях используются данные для чека, которые передавались при исходном платеже.
Подробнее в описании метода repeatCardPayment
Метод confirmPayment позволяет подтвердить отложенный платеж с банковской карты (если вы проводите платежи с карт с предавторизацией).
Параметры для чека нужно передавать, если:
- сумма платежа отличается от исходной, переданной в платежной форме (проводится частичный клиринг);
- платеж, который нужно подтвердить, проводился без отправки чека.
В этом случае к запросу добавляется параметр
ym_merchant_receipt
, данные отправляются в формате JSON (так же, как в платежной форме).В остальных случаях используются данные для чека, которые передавались при исходном платеже.
Подробнее в описании метода confirmPayment
Метод cancelPayment позволяет отменить отложенный платеж с банковской карты (если вы проводите платежи с карт с предавторизацией).
Параметры для чека нужно передавать, если платеж, который нужно отменить, проводился без отправки чека.
В этом случае к запросу добавляется параметр
ym_merchant_receipt
, данные отправляются в формате JSON (так же, как в платежной форме).В остальных случаях используются данные для чека, которые передавались при исходном платеже.
Подробнее в описании метода cancelPayment
Метод createInvoice позволяет провести списание со счета пользователя во внешних платежных системах (SberPay).
Данные для чека передаются обязательно, в параметре
Параметры для формирования чекаym_merchant_receipt
, в формате JSON (так же, как в платежной форме).