Архитектура интеграции: редиректы, серверные уведомления
Классический поток: ваш сайт формирует параметры заказа и подпись, переадресует пользователя на страницу оплаты Robokassa. После оплаты Robokassa отправляет серверное уведомление (Result URL) на ваш бекенд и редиректит пользователя на Success/Fail URL. Ваша система должна доверять только Result URL, а не клиентскому редиректу.
![Схема взаимодействия с Robokassa API]
Ключи и подписи: как формируются и где хранить
В кабинете вы получаете логин мерчанта и секретные пароли/ключи для подписи. Подпись — хэш, формируемый из набора параметров (логин, сумма, номер заказа и секрет). Важно:
- хранить секреты в переменных окружения/секрет‑хранилищах;
- периодически ротировать ключи и отслеживать их использование;
- не передавать секреты в клиентском коде.
Основные сценарии: создание счета, редирект на оплату, подтверждение
- Создание счета: генерируете уникальный ID заказа, сумму, валюту, описание.
- Редирект: формируете URL Robokassa с параметрами и подписью.
- Подтверждение: принимаете webhook (Result URL), проверяете подпись, возвращаете «OK» и фиксируете оплату, затем показываете пользователю Success.
Result/Success/Fail URL и порядок обработки
Result URL — главный триггер. Обработка:
