Меня зовут Максим, я веб-разработчик. В 2025 году в России ужесточились требования к защите несовершеннолетних в интернете. Если ваш сайт продаёт алкоголь (даже информационно), табачные изделия, содержит контент 18+, предлагает финансовые услуги или позволяет делать покупки без ограничений — вам нужна система верификации возраста. Не формальная кнопка «Мне есть 18 лет» (она не имеет юридической силы), а реальный механизм проверки. Расскажу, какие варианты существуют, что требует закон и как это реализовать технически.
Что требует российское законодательство
436-ФЗ «О защите детей от информации»
Закон обязывает маркировать контент по возрастным категориям (0+, 6+, 12+, 16+, 18+) и ограничивать доступ несовершеннолетних к контенту 18+. Для сайтов это означает: если ваш контент не предназначен для детей — нужен механизм ограничения доступа.
Запрет продажи алкоголя онлайн
Дистанционная продажа алкоголя в России запрещена (171-ФЗ). Но сайты винотек, ресторанов с доставкой, производителей — содержат информацию об алкогольной продукции. Даже для информационного контента об алкоголе рекомендуется верификация возраста.
Возрастная маркировка контента
Каждая единица контента на сайте, доступная широкой аудитории, должна иметь возрастную маркировку. Это касается: статей, видео, изображений, пользовательских отзывов (если они содержат ненормативную лексику или описание жестокости).
Планируемые ужесточения
В 2025–2026 году обсуждаются дополнительные меры: обязательная верификация через Госуслуги для доступа к определённым категориям контента, возрастные фильтры на уровне провайдеров, штрафы за отсутствие верификации на сайтах с контентом 18+.
Методы верификации возраста
Метод 1: Самодекларация (кнопка «Мне есть 18»)
Самый простой и самый бесполезный метод. Посетитель нажимает кнопку — и получает доступ. Никакой реальной проверки. Но для многих категорий контента — пока достаточно с точки зрения закона (если нет специальных требований).
Техническая реализация: модальное окно при первом визите, выбор сохраняется в cookie. Элементарно — 1 час работы.
Когда допустимо: информационный контент об алкоголе, материалы с маркировкой 18+ (не требующие строгой верификации).
Метод 2: Ввод даты рождения
Посетитель вводит дату рождения. Система проверяет: если возраст < 18 — доступ закрыт. Чуть надёжнее кнопки, но легко обходится (ввести любую дату).
Техническая реализация: форма с полями дня, месяца, года рождения. Валидация на клиенте и сервере. Результат — в cookie или серверной сессии.
Когда допустимо: игровые платформы, контент с маркировкой 16+/18+.
Метод 3: Верификация через Госуслуги (ЕСИА)
Самый надёжный метод для российских сайтов. Пользователь авторизуется через Госуслуги — система получает подтверждённый возраст из государственной базы данных.
Техническая реализация: интеграция с ЕСИА через OAuth 2.0. Сайт запрашивает доступ к базовым данным пользователя (ФИО, дата рождения). Система проверяет возраст и выдаёт/отказывает в доступе.
Нюансы:
- Для подключения к ЕСИА нужна регистрация в Министерстве цифрового развития
- Процесс подключения занимает 1–3 месяца (бюрократия)
- Не все пользователи имеют подтверждённую учётную запись на Госуслугах
- Для коммерческих сайтов доступ к ЕСИА ограничен (нужно обоснование)
Когда нужно: финансовые услуги для несовершеннолетних, контент с жёстким ограничением 18+, если законодательство прямо требует верификацию через ЕСИА.
Метод 4: Верификация через банковскую карту
Если у пользователя есть банковская карта — значит, ему минимум 14 лет (для дебетовых) или 18 (для кредитных). Метод: попросить оплатить символическую сумму (1 рубль, который возвращается) или привязать карту.
Техническая реализация: через API платёжного провайдера (ЮKassa, CloudPayments). Авторизация суммы 1 рубль → проверка → отмена.
Ограничения: подтверждает наличие карты, но не гарантирует, что картой пользуется именно её владелец. Подростки часто используют карты родителей.
Метод 5: Верификация через мобильный номер
Привязка телефона + SMS-код. Оператор связи имеет данные о возрасте абонента (при оформлении SIM-карты). Некоторые операторы предоставляют API для проверки возраста (без раскрытия персональных данных — только да/нет на вопрос «абоненту больше 18?»).
Техническая реализация: интеграция с API оператора (МТС, Мегафон, Билайн имеют такие сервисы). Пользователь вводит номер → получает SMS → подтверждает → система запрашивает оператора о возрасте.
Ограничения: SIM-карта может быть оформлена на родителя.
Как я реализую верификацию возраста
Для информационных сайтов (алкоголь, табак)
Модальное окно при первом визите: «Этот сайт содержит информацию об алкогольной продукции. Для продолжения подтвердите, что вам исполнилось 18 лет».
Два варианта кнопок:
- «Мне есть 18 лет» → закрываем окно, сохраняем в cookie на 30 дней
- «Мне нет 18 лет» → редирект на другую страницу (или просто закрытие сайта)
Дизайн: строгий, без развлекательных элементов. Фон — затемнённый. Окно — по центру, невозможно закрыть без выбора.
Для интернет-магазинов
При добавлении в корзину товара с возрастным ограничением — повторная проверка: «Для покупки этого товара необходимо подтвердить возраст». Для ценных заказов — верификация через SMS + проверку возраста у оператора.
При доставке — курьер проверяет паспорт (это физическая верификация, но сайт должен предупредить об этом при оформлении заказа).
Для контентных платформ
Разграничение контента по возрастным категориям. Каждая единица контента имеет метку: 0+, 6+, 12+, 16+, 18+. Пользователь выбирает свой возраст (или верифицируется) — и видит только доступный контент.
Техническая реализация: поле `age_rating` в базе данных для каждой единицы контента. Middleware проверяет возраст пользователя (из cookie/сессии) и фильтрует контент.
Возрастная маркировка на сайте
Даже если полная верификация не требуется — маркировка контента обязательна.
Как я размещаю маркировку:
- Значок возрастного ограничения (0+, 6+, 12+, 16+, 18+) на каждой странице с контентом
- В мета-тегах: `<meta name="rating" content="adult">` для контента 18+
- В структурированных данных (Schema.org): `contentRating`
- В RSS-ленте (если есть): тег `<media:rating>`
Размер значка: минимум 12×12 пикселей, контрастный, на видном месте (обычно — в начале статьи или у заголовка).
Стоимость внедрения
Простая самодекларация (модальное окно «Мне есть 18»). 15–30 тысяч рублей. Срок: 1–2 дня.
Верификация через SMS + API оператора. 80–200 тысяч рублей. Срок: 2–4 недели (включая подключение к API оператора).
Интеграция с ЕСИА (Госуслугами). 150–400 тысяч рублей. Срок: 2–4 месяца (включая бюрократию подключения).
Комплексная система возрастной маркировки и фильтрации. 100–250 тысяч рублей. Срок: 2–4 недели.
Главный принцип
Верификация возраста — это не только юридическое требование, но и ответственность. Защита детей от неподходящего контента — задача, которую бизнес должен решать искренне, а не формально. Кнопка «Мне есть 18» — это минимум. Если ваш бизнес связан с чувствительным контентом — инвестируйте в настоящую верификацию.
Если нужна помощь с внедрением верификации возраста — обращайтесь.