Документация API
Здесь собраны методы, которые используются фронтом: P2P (виджет), Crypto и Fiat (с провайдерами).
Содержание
База / авторизация
#baseBase URL
Для доступа к API вам нужны параметры доступа:
- Base URL (URL базовой ноды / реплики)
- Token (ключ/токен доступа)
Эти параметры выдаёт менеджер. Если у вас нет Base URL и токена — запросы работать не будут.
Формат Base URL
https://node.<COUNTRY>.pay-electric.com/api
Вместо <COUNTRY> подставляйте страну (см. список серверов ниже).
Сервера по странам
Выберите нужную ноду (реплику) по стране. Итоговый Base URL будет выглядеть так:
https://node.<страна>.pay-electric.com/api
- Россия: node.russia.pay-electric.com
- Казахстан: node.kazakhstan.pay-electric.com
- Турция: node.turkey.pay-electric.com
- ОАЭ: node.uae.pay-electric.com
- Европа: node.europe.pay-electric.com
- США: node.usa.pay-electric.com
Если у вас другой список стран/алиасов — используйте значения, которые выдаст менеджер.
Authorization
Для защищённых методов передавайте токен в заголовке:
Authorization: Bearer <token>
Reference: методы и валюты
#referenceПолучить доступные валюты по методу
GET
Возвращает список платёжных методов и список валют/сетей, которые доступны на выбранной ноде (по стране). Это позволяет не хардкодить RUB в интерфейсе и выбирать валюту динамически.
/reference/payment-methods
Пример (curl)
curl -X GET "https://node.<COUNTRY>.pay-electric.com/api/reference/payment-methods" \
-H "Authorization: Bearer <token>"Response (пример)
{
"methods": [
{
"id": "p2p",
"name": "P2P (виджет)",
"currencies": ["RUB", "KZT"],
"params": ["comment"]
},
{
"id": "acquiring_sbp",
"name": "СБП",
"currencies": ["RUB"],
"params": ["success_url", "fail_url"]
},
{
"id": "acquiring_mir",
"name": "МИР",
"currencies": ["RUB"],
"params": ["success_url", "fail_url"]
},
{
"id": "acquiring_card",
"name": "VISA / Mastercard",
"currencies": ["USD", "EUR", "RUB"],
"params": ["success_url", "fail_url"]
},
{
"id": "crypto",
"name": "Crypto",
"currencies": ["USDT", "BTC"],
"networks": ["TRC20", "BEP20", "ETH", "TON"]
}
]
}Это справочный метод. Фактический список валют/сетей зависит от страны (ноды) и включённых провайдеров.
P2P (виджет): выставить счёт
#p2pСоздание P2P-счёта
POST
Возвращает ссылку на оплату (её можно открыть или скопировать).
/p2p/pay-init
Body
{
"value": 1000,
"currency": "<CURRENCY>",
"comment": "необязательно"
}Валюту выбирайте из справочника /reference/payment-methods. Если поле currency не поддерживается на бэке — используйте валюту по умолчанию для вашей ноды.
Пример (curl)
curl -X POST "https://node.<COUNTRY>.pay-electric.com/api/p2p/pay-init" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"value":1000,"currency":"RUB","comment":"необязательно"}'Response (пример)
{
"link": "<PAYMENT_URL>",
"uid": 123456,
"status": "draft"
}Поля ответа могут отличаться — фронту критично поле link.
Crypto: платежный виджет
#cryptoОткрыть крипто-виджет
Для пополнения в криптовалюте используется переход в виджет по ссылке с токеном. Также можно передать выбранные валюту и сеть (чтобы сразу открыть нужный вариант оплаты в виджете).
https://node.<COUNTRY>.pay-electric.com/crypto?token=<token>¤cy=<CURRENCY>&network=<NETWORK>
Открытие производится редиректом/новой вкладкой; API-вызова для создания счёта на фронте нет. Доступные валюты/сети зависят от страны (ноды) и провайдера — берите их из /reference/payment-methods.
Топ‑10 валют (пример)
- USDT
- BTC
- ETH
- TRX
- BNB
- TON
- USDC
- LTC
- XRP
- SOL
Популярные сети (пример)
- TRC20 (USDT/TRX)
- BEP20 (BNB/USDT/USDC)
- ERC20 (ETH/USDT/USDC)
- TON (TON/USDT)
- BTC (Bitcoin)
- SOL (Solana)
- XRP (XRP Ledger)
- LTC (Litecoin)
Пример
// Открыть виджет сразу для USDT в сети TRC20
https://node.<COUNTRY>.pay-electric.com/crypto?token=<token>¤cy=USDT&network=TRC20PAYIN: P2P (локальные банки) + провайдеры
#payin-p2pP2P провайдеры / методы (Fiat)
Это и есть PAYIN P2P: банковские переводы / локальные методы оплаты. Конкретный список доступных методов зависит от страны (ноды) и настроек провайдера — получайте его через справочник /reference/payment-methods.
Россия (пример)
- Сбербанк
- Альфа-Банк
- Т-Банк (Тинькофф)
- Юмани
- Payeer
- Газпромбанк
- Почта Банк
- Озон Банк
- и др.
Европа (примеры методов)
- SEPA (EU): SEPA Credit Transfer / SEPA Instant
- iDEAL (Нидерланды)
- Bancontact (Бельгия)
- Sofort / Klarna Pay Now (DE/AT и др.)
- Giropay (Германия, где доступно)
- BLIK (Польша)
- Faster Payments (Великобритания)
- Open Banking (UK/EU, где поддерживается)
Азия (примеры методов)
- UPI (Индия)
- PayNow (Сингапур)
- PromptPay (Таиланд)
- GCash (Филиппины)
- Boost / Touch ’n Go (Малайзия, где поддерживается)
- Bank transfer (локальные переводы, зависит от страны)
СНГ / MENA (примеры методов)
- Kaspi (Казахстан, где доступно)
- Humo / Uzcard (Узбекистан, где доступно)
- FAST (Турция)
- Local bank transfer (ОАЭ и др., зависит от провайдера)
Список выше — ориентир по типовым методам. Истина всегда в /reference/payment-methods.
Как происходит PAYIN P2P
Пополнение фиатом в текущем фронте — это P2P-счёт (см. раздел P2P (виджет)).
Эквайринг
#acquiringМИР / СБП
Эквайринг по МИР и СБП — это redirect-оплата через стороннего провайдера: вы создаёте платеж/инвойс, а в ответе получаете ссылку (redirect_url) на сторонний ресурс (страница оплаты/виджет/банк), куда нужно перевести пользователя.
Платёжные методы (МИР / СБП)
- SBP_QR: СБП по QR (провайдер отдаёт QR или ссылку на QR-страницу)
- SBP_DEEPLINK: СБП по ссылке (deeplink) в приложение банка (если поддерживается)
- MIR_CARD: оплата картой МИР (через платёжную форму провайдера)
- MIR_PAY: MIR Pay (если включено провайдером)
Пример: создание redirect-платежа
https://node.<COUNTRY>.pay-electric.com/acquiring/invoice/create
{
"amount": 1000,
"currency": "RUB",
"method": "SBP_QR",
"order_id": "ORDER-100500",
"description": "Пополнение баланса",
"success_url": "https://<YOUR_APP>/thank-you",
"fail_url": "https://<YOUR_APP>/pay",
"customer": {
"id": "user-123"
}
}Response (пример)
{
"invoice_id": "inv_abc123",
"status": "pending",
"redirect_url": "https://<PROVIDER>/pay/inv_abc123",
"expires_at": "2026-01-01T12:00:00Z"
}Дальше фронт делает redirect/открывает новую вкладку по redirect_url.
VISA / Mastercard
Эквайринг по VISA и Mastercard — также redirect-сценарий: создание инвойса → получение redirect_url → переход на платёжную страницу/виджет провайдера (обычно с 3‑D Secure при необходимости).
Платёжные методы (VISA / Mastercard)
- VISA_CARD: оплата картой VISA
- MASTERCARD_CARD: оплата картой Mastercard
- 3DS: 3‑D Secure (включается провайдером автоматически по рискам)
- APPLE_PAY: Apple Pay (если включено провайдером)
- GOOGLE_PAY: Google Pay (если включено провайдером)
Пример: создание redirect-платежа
https://node.<COUNTRY>.pay-electric.com/acquiring/invoice/create
{
"amount": 1490,
"currency": "RUB",
"method": "VISA_CARD",
"order_id": "ORDER-100501",
"description": "Оплата подписки",
"success_url": "https://<YOUR_APP>/thank-you",
"fail_url": "https://<YOUR_APP>/pay",
"customer": {
"id": "user-123"
}
}Response (пример)
{
"invoice_id": "inv_def456",
"status": "pending",
"redirect_url": "https://<PROVIDER>/pay/inv_def456",
"expires_at": "2026-01-01T12:00:00Z"
}PAYOUT: P2P (локальные банки)
#payout-p2pСоздать payout-заявку (P2P)
POST
P2P payout — это вывод через локальные банки/кошельки (по стране ноды). Обычно пользователь указывает банк и реквизиты (карта/счёт/телефон СБП).
/new-withdraw
Body (пример)
{
"type": "card",
"currency": "<CURRENCY>",
"meta": "<BANK_OR_METHOD>",
"address": "<CARD_OR_ACCOUNT_OR_PHONE>",
"amount": 1000
}meta: банк/метод (зависит от страны). currency: выбирайте из /reference/payment-methods.
Пример (curl)
curl -X POST "https://node.<COUNTRY>.pay-electric.com/api/new-withdraw" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"type":"card","currency":"<CURRENCY>","meta":"<BANK_OR_METHOD>","address":"<CARD_OR_ACCOUNT_OR_PHONE>","amount":1000}'PAYOUT: Fiat (карты/эквайринг)
#payout-fiatЧто такое Fiat payout
Fiat payout — вывод на банковские карты/счета через платёжного провайдера (не P2P). В отличие от эквайринга (оплаты), payout — это сервер‑сервер операция: пользователь не уходит на сторонний виджет.
Создать payout (пример через провайдера)
POST
Конкретный endpoint зависит от подключенного провайдера и страны ноды. Ниже — пример формата.
https://node.<COUNTRY>.pay-electric.com/acquiring/payout/create
Body (пример)
{
"amount": 1000,
"currency": "<CURRENCY>",
"method": "CARD_PAYOUT",
"destination": {
"pan": "411111******1111",
"holder": "IVAN IVANOV"
},
"order_id": "PAYOUT-100500"
}Response (пример)
{
"payout_id": "po_abc123",
"status": "processing"
}Методы/поля зависят от провайдера. Список доступных payout‑методов и валют берите из /reference/payment-methods.
PAYOUT: Crypto
#payout-cryptoСоздать payout-заявку (Crypto)
POST
/new-withdraw
Body (пример)
{
"type": "crypto",
"currency": "<CURRENCY>",
"meta": "<NETWORK>",
"address": "<WALLET_ADDRESS>",
"amount": 25
}currency/meta для crypto: монета/сеть (см. справочник /reference/payment-methods).
Пример (curl)
curl -X POST "https://node.<COUNTRY>.pay-electric.com/api/new-withdraw" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"type":"crypto","currency":"<CURRENCY>","meta":"<NETWORK>","address":"<WALLET_ADDRESS>","amount":25}'Ошибки
#errorsТипичные причины
- 401/403: отсутствует или неверный Bearer token
- 400: невалидный body (сумма меньше минимума, пустые поля)
- 5xx: временная ошибка сервера/провайдера
Подсказка: для отладки удобно логировать status и тело ответа (json).
Вдохновение по структуре: doc.cryptomus.com