|
На главную | Карта сайта | Обратная связь | Интернет-банкинг | Интернет-банкинг WAP | Интернет-банкинг Mobile
|
Корпоративным клиентамZRBank предоставляет бизнесу надёжную платёжную инфраструктуру на базе ZCoin.
💳 Pays™ — система платежей ZRBankPays™ — единое расчётное пространство ZRBank, аналог ЕРИП. Разработчики регистрируют свои сервисы с кастомными полями ввода, а пользователи ZRBank оплачивают их напрямую из интернет-банка без редиректа. После оплаты ZRBank отправляет POST-запрос на ваш сервер с HMAC-SHA256 подписью. Как подключиться
Поля сервисаПри регистрации вы можете добавить до 10 кастомных полей, которые пользователь заполнит перед оплатой:
Типы суммы
Callback после оплаты
После успешного платежа ZRBank отправляет POST-запрос на ваш {
"transaction_id": 42,
"service_id": "a1b2c3d4e5f6g7h8",
"amount": 100.00,
"fee": 1.00,
"status": "success",
"fields": {
"1": "значение поля 1",
"2": "значение поля 2"
},
"signature": "hmac_sha256_hex..."
}
Ключи в объекте Проверка подписиДля верификации запроса вычислите HMAC-SHA256 и сравните с полем PHP:
$expected = hash_hmac(
'sha256',
"{$transaction_id}:{$service_id}:{$amount}:success",
$secret_key
);
if (!hash_equals($expected, $_POST['signature'])) {
// подпись не совпадает — отклонить запрос
}
Python:
import hmac, hashlib
msg = f"{transaction_id}:{service_id}:{amount}:success"
expected = hmac.new(secret_key.encode(), msg.encode(), hashlib.sha256).hexdigest()
Важные детали
🏪 PayGate — классический шлюз с редиректомПодключите платёжный шлюз ZRBank к своему интернет-магазину. Пользователь переходит по ссылке на страницу оплаты ZRBank, подтверждает платёж и возвращается на ваш сайт с параметрами транзакции. Как подключиться
/ib/pay.php?shop_id=SHOP_ID&amount=100&item=Название+товара&redirect=https://yoursite.com/callback
Параметры возвратаПосле оплаты пользователь перенаправляется на https://yoursite.com/callback?txn_id=42&amount=100&item=Товар&sign=ПОДПИСЬ&status=success Проверка подписиPHP:
$expected = md5($txn_id . ":" . $amount . ":" . $secret_key);
if ($expected !== $_GET['sign']) {
// подпись не совпадает
}
PayGate v2 (pay2.php) — с проверкой товара
Альтернативный эндпоинт /ib/pay2.php?shop_id=SHOP_ID&amount=100&item=Название+товара&redirect=https://yoursite.com/callback Отличия от pay.php:
Проверка подписи для pay2.phpПодпись формируется из txn_id + amount + item + secret_key: PHP:
$item = $_GET['item']; // из URL, уже urldecoded
$expected = md5($txn_id . ":" . $amount . ":" . $item . ":" . $secret_key);
if ($expected !== $_GET['sign']) {
// подпись не совпадает
}
Python:
import hashlib
from urllib.parse import unquote
item = unquote(item_from_url)
expected = hashlib.md5(f"{txn_id}:{amount}:{item}:{secret_key}".encode()).hexdigest()
Важно: В подписи Тарифы для бизнеса
|
НОВОСТИ БАНКА08.05.2026 06.05.2026 03.05.2026 |
НОВЫЕ ПРОДУКТЫ |
СЕРВИСЫ
|