Это инструкция по подключению ERIP на VPS, чтобы принимать онлайн‑платежи в белорусских рублях. Коротко: что такое ERIP, зачем он нужен малому бизнесу и как на VPS организовать приём, подтверждение и учёт платежей без лишних рисков.
Что такое ERIP и когда его подключать (пример: цветочный магазин в Могилёве)
ERIP — общая платаёжная система для Беларуси. Для небольшого интернет‑магазина цветов из Могилёва это удобный способ принимать оплату по коду и в кошельках банков. Подключать ERIP стоит, если у вас регулярные онлайн‑заказы и нужен простой способ принять оплату в BYN.
Как сделать: получите договор с банком‑эквайером, запросите ERIP‑код для ваших услуг и настройте приём уведомлений (webhook) на VPS. На стороне сайта создавайте заказ, сохраняйте уникальный идентификатор и возвращайте покупателю ERIP‑код и сумму.
Настройка вебхуков на VPS и безопасность (пример: интернет‑салон красоты в Минске)
Сценарий: салон продаёт подарочные сертификаты онлайн. Банк отправляет уведомления о платеже на ваш endpoint. Важно надёжно принять и обработать это уведомление.
Как сделать:
- Разместите endpoint /payments/erip на VPS и слушайте только POST‑запросы.
- Используйте HTTPS с валидным сертификатом и запретите старые протоколы TLS.
- Проверяйте подпись сообщения или IP‑диапазон отправителя по документации банка.
- Обрабатывайте уведомления идемпотентно: если банк отправил одно и то же уведомление дважды, не создавайте дубликат транзакции.
Логика обработки и сверки платежей (пример: небольшой магазин электроники в Барановичах)
Сценарий: клиент оплачивает аксессуары через ERIP, но платеж иногда приходит с задержкой. Нужно правильно учитывать статусы заказа и остатки.
Как сделать:
- При создании заказа присваивайте внутренний UID и сохраняйте ожидаемую сумму.
- При получении уведомления сверяйте UID и сумму, обновляйте статус заказа на «оплачен» только при точном совпадении.
- Настройте ежедневную сверку платежей: скрипт на VPS сравнивает логи вебхуков, данные БД и отчёты банка, помечает расхождения для ручной проверки.
Надёжность и восстановление после сбоев (пример: интернет‑кондитерская в Гомеле)
Сценарий: VPS перезагрузился во время массовой распродажи, часть уведомлений не прошла. Нужна архитектура, чтобы быстро восстановиться и не потерять платежи.
Как сделать:
- Включите логирование входящих уведомлений в файл и в очередь задач (например, простая очередь в базе данных).
- Организуйте автоматические бэкапы конфигураций и базы данных. Подсказка по настройке резервных копий на VPS и в облаке доступна в статье про автоматические бэкапы: автоматические бэкапы на VPS и в облаке в Беларуси.
- Подумайте о защите от DDoS: если сайт падает из‑за трафика, уведомления не пройдут. См. материал по DDoS‑защите для малого бизнеса на белорусском VPS: уровни фильтрации трафика и защита.
Реальные операционные советы для разработки и тестирования (пример: магазин товаров для дома в Витебске)
Сценарий: команда запускает новый модуль платежей и хочет избежать ошибок на проде.
Как сделать:
- Создайте тестовый аккаунт и среду на отдельном субдомене или локально. Реплейте реальные уведомления от банка.
- Добавьте unit‑тесты на разбор уведомлений, обработку дубликатов и ошибочных сумм.
- Настройте уведомления в админке о неудачных сверках и ручную форму для коррекции статусов.
Типичные ошибки
- Приём уведомлений без проверки подписи или источника.
- Создание заказа «оплачен» при получении первого уведомления без сверки суммы и UID.
- Отсутствие идемпотентности: дублирование платежей в базе при повторных уведомлениях.
- Локальные логи только в оперативной памяти — при перезагрузке теряется история.
- Нет плана на случай задержек или падения банка‑эквайера — заказы уходят в неопределённое состояние.
3 шага, которые можно сделать на неделе:
- Собрать требования банка и получить тестовый ERIP‑аккаунт; подготовить endpoint /payments/erip на VPS.
- Включить HTTPS, настроить логирование вебхуков и простую проверку подписи или IP‑фильтр.
- Запустить один цикл сверки: скрипт, который сравнивает логи вебхуков и базу, помечает расхождения для ручной проверки.
Полезные ссылки: материалы по автоматическим бэкапам и защите сервера, которые помогут снизить риски при интеграции ERIP.