Правила являются частью оферты и действуют для всех мерчантов, которые работают с сервисом через API. Техническое описание методов в документации.
1. Доступ
- Доступ к API выдаётся мерчанту после одобрения магазина. API-ключ создаётся в личном кабинете.
- Ключ показывается один раз при создании. Мы храним только его отпечаток и не можем восстановить ключ, только выпустить новый.
- Ключ предназначен для вызовов с сервера мерчанта. Нельзя размещать его в коде сайта, мобильного приложения и других местах, доступных покупателям.
- При подозрении на утечку мерчант обязан сразу выпустить новый ключ. Платежи, созданные с утёкшим ключом до его замены, считаются созданными мерчантом.
2. Лимиты
- не более 120 запросов в минуту на один API-ключ;
- при превышении лимита API отвечает кодом 429, повторите запрос позже;
- для безопасного повтора создания платежа используйте заголовок
Idempotency-Key: повторный запрос с тем же ключом вернёт уже созданный платёж; - Администрация вправе изменять лимиты, уведомив мерчантов.
3. Webhook-уведомления
- Сервис отправляет уведомления об изменении статуса платежа на адрес, указанный в личном кабинете. Адрес должен работать по HTTPS.
- Каждое уведомление подписывается HMAC-SHA256 секретом webhook, подпись передаётся в заголовке
X-Rusty-Signature. Мерчант обязан проверять подпись и не доверять уведомлениям без неё. - Сервер мерчанта должен ответить кодом 2xx в течение 10 секунд. Иначе доставка повторяется: до 6 попыток (сразу, через 30 секунд, 2 минуты, 10 минут, 30 минут и 2 часа).
- Уведомление может прийти повторно. Мерчант обрабатывает уведомления идемпотентно и при сомнениях сверяет статус платежа запросом к API.
4. Запрещено
- создавать платежи за товары и услуги из запрещённого списка;
- передавать ключ третьим лицам или использовать его для чужих магазинов;
- намеренно перегружать API, обходить лимиты, искать и эксплуатировать уязвимости;
- подменять страницу оплаты или вводить покупателей в заблуждение о получателе платежа.
Если вы нашли уязвимость, сообщите нам в Telegram @rustypay и не используйте её.
5. Ответственность
- мерчант отвечает за корректность своей интеграции и сохранность ключей;
- Администрация не отвечает за убытки, возникшие из-за ошибок интеграции, необработанных или неправильно обработанных уведомлений;
- Администрация вправе заблокировать ключ без предупреждения при нарушении этих правил или угрозе безопасности сервиса.
6. Изменения API
Мы стараемся сохранять обратную совместимость. О несовместимых изменениях мы предупреждаем заранее через личный кабинет или Telegram. Добавление новых полей в ответы и уведомления не считается несовместимым изменением.
