R1.pay: инструкция по интеграции¶
Версия 1.5. Дата обновления 02.09.2026
О сервисе R1.pay¶
Сервис R1.pay - это платёжный шлюз, интеграция с которым позволит поставщику услуг выставлять счета на оплату своим клиентам, использующим данный сервис, а также принимать оплату за оказанные услуги.
Интеграция осуществляется по протоколу HTTP/JSON. Все endpoints ожидают тело запроса в формате application/json и возвращают JSON-ответы.
Базовый URL шлюза: https://paygw.robstor.ru/
Функции системы¶
1. Работа с лицевыми счетами¶
Подробнее см. в разделе Работа с лицевыми счетами.
Шлюз обращается к API вашей системы для:
- Проверки существования лицевого счёта (
/account/check) - Добавление лицевого счёта (
/account/add) - Удаление лицевого счёта (
/account/del)
Что вам нужно сделать: Реализовать указанные endpoints на своей стороне.
2. Выгрузка счетов¶
Подробнее см. в разделе Выгрузка счетов.
2.1. Отправка пакета счетов в API шлюза:¶
- Загрузка счетов (
/api/v1/invoices/push) - Проверка статуса загрузки счетов (
/api/v1/invoices/status)
Что вам нужно сделать: Реализовать клиент для вызова endpoints шлюза
2.2. Получение вебхук-уведомлений о загрузке счетов¶
- Получение уведомлений о статусе загрузки и рассылки счетов (
webhook/invoices/status)
Что вам нужно сделать: Реализовать обработчик вебхука.
3. Работа с платежами¶
Подробнее см. в разделе Работа с платежами.
3.1. Общий функционал по работе с платежами¶
- Платёжный шлюз обеспечивает отправку денежных средств со счёта клиента на расчётный счёт поставщика услуг.
3.2. Получение вебхук-уведомлений о платежах¶
Что вам нужно сделать: Реализовать обработчик вебхука.
Безопасность запросов¶
Безопасность запросов при взаимодействии сервисов осуществляется с использованием API-токенов. Все API endpoints требуют аутентификацию через добавление в раздел header запроса ключа R1-Token со значением токена аутентификации. Для подключения к вашим API вы выдаёте сгенерированный токен представителю сервиса R1.pay, а для обращения к API шлюза вам нужно получить наш токен, сгенерированный для вашего сервиса.
Пример CURL запроса с использованием токена аутентификации:
curl -X POST https://paygw.robstor.ru/api/v1/invoices/status \
-H "Content-Type: application/json" \
-H "R1-Token: ваш_секретный_токен" \
-d '{
"push_id": 12345
}'
Пример части кода на Python, реализующего проверку на валидность токена:
EXPECTED_TOKEN = os.environ.get("R1_Token")
token = request.headers.get("R1-Token")
if not token:
abort(401)
received = token.encode("utf-8")
expected = EXPECTED_TOKEN.encode("utf-8")
if not hmac.compare_digest(received, expected):
abort(401)