Онлайн-оплата на сайте SaaS-продукт требует выбора платежного шлюза, интеграции API и настройки подписок. AVOdigital реализует эквайринг для SaaS в согласованные сроки с нуля.
Онлайн-оплата на сайте SaaS-продукт — это интеграция платежного шлюза (например, ЮKassa или Stripe) с поддержкой рекуррентных платежей. AVOdigital подключает эквайринг в согласованные сроки, включая разработку ТЗ и тестирование.
Введение: зачем SaaS-продукту качественное ТЗ на эквайринг
Онлайн-оплата на сайте SaaS-продукт — это ключевой элемент монетизации, который позволяет автоматизировать прием платежей за подписки и услуги. В этой статье AVOdigital рассказывает, как правильно выбрать платежную систему, составить техническое задание и подключить эквайринг для вашего SaaS-сервиса.
Выбор платёжного шлюза: ЮKassa vs Robokassa
Для SaaS-продуктов критичны поддержка рекуррентных платежей (подписок), холдирование средств и сплитование выплат. Сравним двух популярных провайдеров: ЮKassa (Яндекс.Касса) и Robokassa.
| Параметр | ЮKassa | Robokassa |
|---|---|---|
| Рекуррентные платежи | Да (через payment_method_id) | Да (через Recurring) |
| Холдирование | Да (capture / cancel) | Нет (только полная оплата) |
| Сплитование | Да (до 10 получателей) | Нет (только один мерчант) |
| Поддержка 54-ФЗ | Встроенная, онлайн-кассы | Через сторонние сервисы |
| API | REST, JSON, Webhook | REST, XML/JSON, Webhook |
| Стоимость подключения | Бесплатно, комиссия от 2.9% | Бесплатно, комиссия от 3.5% |
| Тестовый режим | Sandbox, тестовые карты | Тестовый стенд |
Интеграция с биллингом и личным кабинетом
Типовая архитектура: пользователь выбирает тариф в личном кабинете, переходит на оплату, после подтверждения подписка активируется. В ТЗ нужно описать следующие процессы:
- Создание платежа с указанием amount, description, metadata (user_id, plan_id).
- Обработка webhook'ов: waiting_for_capture, succeeded, cancelled.
- Холдирование средств и их последующий capture (или отмена) при успешной проверке.
- Генерация чека в момент списания (54-ФЗ).
- Синхронизация статусов подписки с биллинговой базой данных (например, PostgreSQL).
Пример полей запроса на создание платежа (ЮKassa)
{ "amount": { "value": "990.00", "currency": "RUB" }, "description": "Подписка «Базовый» на месяц", "payment_method_data": { "type": "bank_card" }, "confirmation": { "type": "redirect", "return_url": "https://saas.example.com/payment/success" }, "metadata": { "user_id": "123456", "plan_id": "basic", "subscription_type": "monthly" }, "capture": false // холдирование
}
API-документация: что должно быть в ТЗ
Раздел с API описывает методы, форматы данных и сценарии ошибок. Минимальный набор:
- POST /api/v1/payments — создание платежа.
- POST /api/v1/payments/{id}/capture — подтверждение холда.
- POST /api/v1/payments/{id}/cancel — отмена холда.
- POST /api/v1/subscriptions — создание подписки.
- POST /api/v1/subscriptions/{id}/cancel — отмена подписки.
- Webhook: уведомления о статусах (payment.succeeded, payment.cancelled, subscription.renewed).
Маппинг полей между платёжной системой и внутренней базой
| Поле платежного шлюза | Поле в БД SaaS | Тип | Описание |
|---|---|---|---|
| payment.id | payment_id | VARCHAR(36) | Уникальный идентификатор |
| payment.status | status | ENUM('pending','succeeded','cancelled','waiting_for_capture') | Статус транзакции |
| payment.amount.value | amount | DECIMAL(10,2) | Сумма в рублях |
| payment.metadata.user_id | user_id | INTEGER | Идентификатор пользователя |
| payment.payment_method.id | payment_method_id | VARCHAR(36) | Токен карты для рекуррентов |
| payment.created_at | created_at | TIMESTAMP | Дата создания платежа |
Этапы реализации интеграции
Проект по подключению эквайринга обычно включает следующие этапы:
| Этап | Длительность | Результат |
|---|---|---|
| 1. Анализ требований | 3–5 дней | Согласованные сценарии, спецификация API |
| 2. Интеграция API платежей | 5–10 дней | Работающие методы создания/подтверждения платежей |
| 3. Интеграция биллинга | 5–7 дней | Автоматическое создание подписок, обработка webhook |
| 4. Фискализация (54-ФЗ) | 2–4 дня | Отправка чеков в ФНС через онлайн-кассу |
| 5. Тестирование и отладка | 5–7 дней | Все сценарии покрыты тестами, UAT |
| 6. Деплой и мониторинг | 1–2 дня | Развёртывание на production, настройка алертов |
Повышение конверсии: UX-фишки для платежного интерфейса
- Вывод логотипов принимаемых карт (Visa, Mastercard, МИР) на кнопке оплаты.
- Индикация безопасности (замок, HTTPS).
- Возможность сохранить карту для будущих платежей (с согласия пользователя).
- Показывать прогресс-бар при обработке платежа.
- Адаптивный дизайн формы оплаты.
Обратите внимание: стоимость интеграции (подключение интернет-эквайринга цена) зависит от сложности сценариев и выбранного провайдера. AVOdigital предлагает прозрачную смету с фиксацией этапов.
Заключение
Грамотное ТЗ на подключение интернет-эквайринга — основа успешной монетизации облачного сервиса. Уделите внимание деталям API, безопасности и пользовательскому опыту, и ваша платёжная система станет конкурентным преимуществом. Если требуется помощь — обращайтесь в AVOdigital: мы сопровождаем проекты от прототипа до запуска.
Часто задаваемые вопросы
Какие платежные системы подходят для SaaS-продукта?
Для SaaS-продукта чаще всего выбирают ЮKassa, Stripe или Robokassa. Они поддерживают рекуррентные платежи, подписки и автоматические списания, что критично для подписочной модели.
Сколько стоит подключить онлайн-оплату на сайте SaaS?
В цену входит разработка ТЗ, подключение API, настройка подписок и тестирование.
Какие документы нужны для подключения эквайринга?
Для подключения эквайринга на сайте SaaS-продукта потребуются: ИНН, ОГРН, договор с банком или платежным агрегатором, а также описание бизнес-модели (подписки, тарифы).
Как обеспечить безопасность платежей на SaaS-сайте?
Безопасность онлайн-оплаты на сайте SaaS-продукта обеспечивается через PCI DSS-сертификацию платежного шлюза, использование HTTPS и токенизацию данных карт. AVOdigital рекомендует выбирать проверенных провайдеров.