С чего начать
ZefirPay — приём платежей через Систему быстрых платежей (СБП) для сайтов, мобильных приложений и Telegram-ботов. Покупатель платит по QR-коду или в приложении своего банка, без ввода данных карты.
Как проходит оплата
- Создание платежа. Ваш сервер отправляет запрос создания платежа и получает ссылку на страницу оплаты
paymentUrl. - Переход на оплату. Покупатель открывает ссылку. На компьютере он видит QR-код, на телефоне — кнопку перехода в приложение банка. Сумма и получатель уже подставлены.
- Подтверждение. Покупатель подтверждает перевод в приложении своего банка.
- Уведомление. Мы отправляем на ваш сервер уведомление с результатом оплаты.
- Выдача заказа. Вы проверяете статус платежа и выдаёте заказ.
Данные для подключения
Чтобы подключить магазин, напишите на support@zefirpay.com. При подключении вы получаете:
| Поле | Тип | Описание |
|---|---|---|
shopId | integer | ID магазина. Передаётся в запросах создания платежа. |
API-ключ | string | Авторизует запросы к API. Начинается с zp_. |
Секретный ключ | string | Подписывает запросы создания платежа и уведомления о платежах. |
Храните API-ключ и секретный ключ только на своём сервере. Не передавайте их в браузер, мобильное приложение или в код, который выполняется на устройстве покупателя.
Основные сведения
| Базовый URL | https://api.zefirpay.com/api |
|---|---|
| Формат | JSON в кодировке UTF-8, заголовок Content-Type: application/json |
| Авторизация | Authorization: Bearer <API-ключ> |
| Валюта | Российский рубль, rub |
| Суммы | Строкой, в рублях с копейками: "1500.00" |
| Сумма платежа | От 10 до 300 000 ₽ |
| Срок оплаты | 30 минут с момента создания платежа |
| Дата и время | ISO 8601 с часовым поясом, например 2026-11-10T12:30:00+00:00 |
Быстрый старт
1. Посчитайте подпись
Подпись — это sha1 от склеенных currency, amount, shopId и секретного ключа. Подробнее — Авторизация и подпись.
2. Создайте платёж
curl -X POST https://api.zefirpay.com/api/v2/payments \
-H "Authorization: Bearer zp_9fJ2kLm0QxVb7RtY4sWn1cEhUoPaZd8i" \
-H "Content-Type: application/json" \
-d '{
"currency": "rub",
"amount": "1500.00",
"uuid": "order-1024",
"shopId": 482193,
"description": "Оплата заказа №1024",
"sign": "56ca36a52215141d58343fed155d15786508f182"
}'
{
"success": true,
"paymentUrl": "https://pay.zefirpay.com/p/Qm9xV2hY3kTn0aLb7RcD1w",
"id": 1482093517
}
3. Отправьте покупателя на оплату
Перенаправьте покупателя по ссылке paymentUrl или отправьте её в сообщении. Если хотите показать QR-код в своём интерфейсе, получите его данные запросом QR-код СБП.
4. Примите уведомление
Когда покупатель оплатит, на адрес уведомлений вашего магазина придёт POST-запрос с "payment_status": "success". Проверьте его подпись и выдайте заказ — см. Формат уведомлений.