Деньги на сайте

Как принимать оплату на сайте и не нарушить закон

2026.09.18 · La Casa Larin

Вы сделали сайт, к вам приходят люди, и надо брать деньги. Дальше начинается то, о чём обычно не рассказывают заранее: касса, чеки, комиссии, проверка банка. Разберём по порядку — что требует закон, сколько это стоит и что ломается на практике, даже когда всё подключено правильно.

Сразу оговорка: мы не юристы и не бухгалтеры. Мы делаем сайты, которые принимают деньги, и рассказываем то, что видели своими руками.


Главное правило: деньги и чек — две разные вещи

Многие думают, что подключить приём платежей — это поставить кнопку «Оплатить». Кнопка — самая простая часть.

Закон (54-ФЗ) говорит: при расчёте с покупателем нужно выдать кассовый чек. Не платёжку из банка, не письмо «спасибо за заказ», а именно чек — тот самый документ с перечнем товаров, суммой и признаком расчёта, который уходит в налоговую.

Поэтому правильная цепочка выглядит так:

человек нажал «оплатить» ↓ банк списал деньги ↓ банк сообщил вашему сайту, что оплата прошла ↓ сайт проверил сообщение и выдал доступ к товару ↓ касса пробила чек и отправила его покупателю

Каждое звено может сломаться отдельно. Дальше — как это выглядит для разных форм бизнеса.


Кому что нужно

Самозанятый

Онлайн-касса не нужна — это главная льгота режима. Но чек всё равно обязателен: его формирует приложение «Мой налог» или платёжный сервис, который умеет отправлять доход в налоговую автоматически.

Что стоит держать в голове:

  • Лимит дохода — 2,4 млн ₽ в год. Перешагнули — режим слетает, и дальше всё меняется. Если планируете расти, закладывайте переход на ИП заранее, а не в день, когда лимит кончится.
  • Закон не обязывает самозанятого подключать эквайринг и открывать расчётный счёт. Но если оплата идёт с сайта, чек надо формировать на каждую продажу, а не раз в неделю.

ИП и ООО

Здесь касса нужна. Вариантов два:

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

Второй вариант почти всегда дешевле и спокойнее, если у вас нет офлайн-точки.


Чем платят и сколько это стоит

Здесь лежит самая заметная экономия, которую почти все пропускают.

Способ Комиссия Что важно знать
СБП (по QR или кнопке) 0,4–0,7 % Ставку определяет вид деятельности. Образование, медицина, транспорт, товары повседневного спроса — в льготной категории 0,4 %
Карты 2,5–3,5 % Обычный эквайринг
Apple Pay, Google Pay как карта Это не отдельная комиссия, а способ приложить карту. Платёжная система берёт столько же, сколько за карту

Разница между СБП и картой — в несколько раз. На обороте в миллион рублей это 4 тысячи против 30 тысяч. Деньги, которые просто остаются у вас.

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


Что ломается на самом деле

Теперь то, ради чего стоило читать. Всё ниже мы встретили в живых проектах — с настоящими деньгами и настоящими покупателями.

1. Подлинность сообщения от банка — не то же самое, что его правильность

Самая дорогая ошибка из всех, что мы видели.

Когда человек оплачивает, банк присылает вашему сайту уведомление: «оплата такая-то прошла». Уведомление подписано — подпись доказывает, что письмо действительно от банка, а не от мошенника. И на этом многие разработчики успокаиваются: подпись сошлась → выдаём товар.

Подпись доказывает отправителя. Она ничего не говорит о сумме.

В одном из наших проектов курс за 25 000 ₽ купили за 10 ₽. Сумму при оплате через виджет задаёт браузер покупателя — её можно подменить. Банк честно списал десять рублей и честно прислал подписанное уведомление об этом. Сайт увидел «оплата прошла» и выдал доступ к курсу.

Что делать: везде, где выдаётся товар, сверять сумму и валюту с тем, что должно было быть оплачено. Не только статус. Это три строчки кода, которые стоят разницы между 25 000 и 10 рублями.

2. Уведомление может не дойти

Банк отправил, у вас в этот момент падал сервер или моргнула сеть — сообщение потерялось. Деньги у вас, а покупатель доступа не получил. Он пишет в поддержку, вы разбираетесь вручную.

Бывает и наоборот: деньги вернули, а сайт об этом не узнал, и человек продолжает пользоваться тем, за что уже не платит.

Что делать: ночная сверка с банком. Раз в час или раз в сутки сайт сам спрашивает у банка: «что у нас произошло за период?» — и чинит расхождения в обе стороны. У нас это закрывает оба случая и работает без участия человека.

3. Возврат бывает частичным

Покупатель вернул половину заказа. Если код умеет только «вернули всё» и «не вернули ничего», он либо закроет доступ целиком, либо не заметит возврата вовсе.

Что делать: суммировать возвраты и сравнивать с оплатой. Доступ закрывается, когда вернули всю сумму, а не первый рубль.

4. Подписка не продлевается сама — и человек об этом не знает

Автопродление — отдельная история. Карта истекла, на ней нет денег, банк не пропустил платёж. Если просто отключить доступ в ту же секунду, вы потеряете клиента, который вернулся бы через день.

Что делать: грейс-период. Три дня доступ живёт, система пробует списать ещё раз и предупреждает человека письмом. Только потом закрывает.

5. Название в чеке пугает покупателя

Мелочь, которая стоит возвратов. В кассовом чеке продавец отображается так, как заведено у платёжного сервиса — иногда это латиницей и неузнаваемо. Человек видит в банковском приложении незнакомое слово и жмёт «оспорить платёж».

Что делать: сразу после подключения проверить, что видит покупатель в чеке и в выписке. Меняется одним обращением в поддержку сервиса — но только если об этом вспомнить.


Короткий чек-лист

Прежде чем включать приём денег на бою:

  • Понятно, кто продавец: самозанятый, ИП или ООО — и нужна ли касса
  • Чек уходит покупателю автоматически, а не руками
  • СБП подключён и стоит первой кнопкой
  • Сайт сверяет сумму и валюту, а не только статус оплаты
  • Есть сверка с банком на случай потерянных уведомлений
  • Возвраты обрабатываются, в том числе частичные
  • У подписки есть грейс-период
  • Проверено, что видит покупатель в чеке и в выписке
  • Проведена настоящая оплата настоящей картой — и возврат тоже

Последний пункт важнее остальных. Тестовый режим показывает, что код работает. Живая оплата показывает, что работает всё остальное: касса, чек, письмо, доступ, выписка.


Если не хочется разбираться самому

Мы такие системы строим: приём денег, чеки по 54-ФЗ, подписки с автопродлением, возвраты, сверка с банком и личный кабинет, в котором покупатель сам видит свои платежи. Всё перечисленное выше — не теория, а то, что у нас работает на живых проектах.

Начинаем с бесплатного разбора: смотрим, что у вас уже есть, и показываем, что нужно именно вам. Документ остаётся у вас в любом случае.

[Получить разбор →]

Мы делаем то, о чём пишем: сайты с приёмом оплаты, приложения и продвижение. Начинаем с бесплатного разбора — документ остаётся у вас в любом случае.

Получить разбор

Ещё в блоге