¶ Shadow WITHDRAWAL SBP H2H
Для выполнения платежей через терминал необходимо получить персональную ссылку для открытия терминала. Ссылка содержит персональный код, который регистрируется в терминале и позволит открыть терминал и выполнить платеж. Время жизни ссылки ограничено, на сегодняшний день оно составляет 60 минут. Если в течение этого времени не был произведен платеж, то персональный код для открытия сессии становится недействительным.
Каждое приложение, которое выполняет запрос на получение персональной ссылки для открытия сессии терминала должно быть зарегистрировано в системе B2B Backoffice. Приложение, из которого выполняется получение персональной ссылки для открытия сессии терминала, должно иметь Client ID приложения, из которого выполняется запрос, а также секретный ключ, при помощи которого необходимо формировать подпись запроса.
URL:
- Тестовое окружение:
https://payment-terminal-form.sandbox.idynsys.org/api/auth/personal-url
- Продакшн окружение:
https://pay.trustedskycenter.com/api/auth/personal-url
Метод запроса: POST
Заголовки запросе:
X-Client-Id: (обязательно). Идентификатор приложения, получаемый при регистрации приложения в системе B2B Backoffice
X-Authorization-Sign: (обязательно). Подпись запроса по секретному ключу приложения, который определяется в системе B2B Backoffice. Подпись формируется по алгоритму, описанному на странице “Подпись”
Content-Type: (обязательно) Тип содержимого запроса, должно быть 'application/json'.
Структура тела запроса:
Тело запроса должно быть в формате JSON и иметь следующую структуру:
curl --location 'https://payment-terminal-form.sandbox.idynsys.org/api/auth/personal-url' \
--header 'X-Client-Id: {{xClientId}}' \
--header 'X-Authorization-Sign: {{xAuthorizationSign}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"paymentInfo": {
"type": "withdrawal",
"amount": 5001,
"currency": "RUB",
"merchantOrderId": "234345",
"merchantOrderDescription": "withdrawal for order"
},
"sessionSettings": {
"clientTheme": "dark",
"clientLanguage": "eng",
"visibleMethods": [
{
"paymentMethodName": "SBP",
"communicationType": "h2h"
}
]
},
"urls": {
"redirectSuccess": "https://website.com/redirectSuccess",
"redirectFail": "https://website.com/redirectFail",
"return": "https://website.com/return",
"callback": "https://website.com/callback"
},
"userInfo": {
"externalId": "112345",
"trafficSegment": "VIP",
"trafficType": "ftd",
"riskGroupCode": "LOW",
"firstName": "Ivan",
"lastName": "Ivanov",
"middleName": "Ivanovich",
"phone": "254722123456"
},
"userAccount": {
"bankName": "NORTH EAST SMALL FINANCE BANK LIMITED"
}
}'
Поля в paymentInfo:
| Наименование |
Обязательное? |
Тип |
Описание |
paymentInfo.type |
Да |
string |
Тип платежа - withdrawal |
paymentInfo.amount |
Нет |
float |
Сумма платежа. Допустимые значения - больше 0. Если передается значение с дробной частью, то оно может округляться по правилам платежной системы.- Если клиент не передаёт
paymentInfo.amount или он равен 0, то сумма выбирается внутри терминала - на экране, по тем лимитам и вариантам, которые заданы в presetAmounts. - Лимиты для методов оплаты задаются в админке. Есть возможность указать быстрые суммы для выбора через
presetAmounts в sessionSettings. - Если amount передан (любое значение > 0) - терминал использует эту сумму как фиксированную — пользователь не сможет изменить её на экране. presetAmounts при данном условии игнорируется (если даже передан).
|
paymentInfo.currency |
Да |
string |
3-х значный буквенный код валюты платежа по ISO 4217. |
paymentInfo.merchantOrderId |
Да |
string |
Идентификатор ордера клиента (организации заказчика). |
paymentInfo.merchantOrderDescription |
Да |
string |
Описание ордера клиента. |
Поля в userInfo:
| Наименование |
Обязательное? |
Тип |
Описание |
userInfo.externalId |
Да |
string |
Идентификатор пользователя, который выполняет платеж. |
userInfo.trafficType |
Да |
string |
Тип трафика. Возможные значения:- ftd (первичный трафик для непроверенных пользователей делающих оплату первый раз)
- trusted (для доверенных пользователей)
|
userInfo.trafficSegment |
Нет |
string |
Сегмент трафика для текущего пользователя |
userInfo.riskGroupCode |
Нет |
string |
Код рисковой группы пользователя |
userInfo.firstName |
Да |
string |
Имя плательщика латиницей. |
userInfo.lastName |
Да |
string |
Фамилия плательщика латиницей. |
userInfo.middleName |
Да |
string |
Отчество или второе имя плательщика латиницей. |
userInfo.phone |
Да |
string |
Номер телефона плательщика в международном формате. Значение должно содержать только цифры. |
Поля в userAccount (не обязательное):
| Наименование |
Обязательное? |
Тип |
Описание |
userAccount.bankName |
Да |
string |
Код и название банка, в который выполняется платеж.Возможные значения:| Код(значение поля bankName) | Название банка |
|---|
| abank | A-Bank | | abrossiya | АБ Россия | | absolyutbank | Абсолют Банк | | agroban | AgroBan | | agropromkredit | Кб Агропромкредит | | akbars | Акбарс Банк | | akbcentrokredit | АКБ Центрокредит | | akibank | Акибанк | | alefbank | Алеф Банк | | alfabank | Альфа-банк | | alif | Алиф Банк | | almazerjienbank | Алмазэргиэнбанк | | alokabank | AlokaBank | | altyn | AO Altyn Bank | | amanbank | РК АМАНБАНК | | amobile | A-mobile | | amrabank | Amra-Bank | | anor | Anor Bank | | apexbank | APEX BANK | | aresbank | Аресбанк | | asaka | Asaka Bank | | asiaalliance | Asia Alliance Bank | | atb | Азиатско Тихоокеанский Банк | | aurorabank | Aurora-Bank | | avangard | Банк Авангард | | avtofinans | Авто Финанс Банк | | avtogradbank | Автоградбанк | | avtotorgbank | Автоторгбанк | | ayyil | Айыл Банк | | azii | Банк Азии | | bakai | Бакай Банк | | bankagroros | Банк Агророс | | bankakcept | Банк Акцепт | | bankaleksandrovskiy | Банк Александровский | | bankavers | Банк Аверс | | bankbbr | Банк ББР | | bankbkf | Банк БКФ | | bankdomrf | Банк ДОМ.РФ | | bankekb | Банк Екатеринбург (Контур Банк) | | bankfinservis | Банк Финсервис | | bankhlynov | Банк Хлынов | | bankinteza | Банк Интеза | | bankipb | Банк ИПБ (Интерпрогрессбанк) | | bankiturup | Банк Итуруп | | bankkazani | Банк Казани | | bankkremlin | Банк Кремлевский | | bankmbamoskva | Банк МБА Москва | | bankmoskvasiti | Банк Москва Сити | | banknationalstandart | Банк Национальный Стандарт | | banknewcentury | Банк Новый Век | | bankorenburg | Банк Оренбург | | bankpskb | Банк ПСКБ | | bankraund | Банк Раунд | | bankrazvitiestolicza | Банк Развитие Столицы | | bankrbk | АО Bank RBK | | banksaratov | Банк Саратов | | banksiab | Банк СИАБ (Санкт-Петербургский Индустриальный Акционерный Банк) | | banksinara | Синара Банк | | banksnezinskiy | Банк Снежинский | | banksolidarnost | Банк Солидарность | | bankvbrr | Банк ВБРР (Всероссийский банк развития регионов) | | bankvenets | Банк Венец | | bankzareche | Банк Заречье | | bankzenit | Банк Зенит | | baytushum | Бай-Тушум Банк | | belgorodsocbank | Белгородсоцбанк (БС Банк) | | bereke | AO Bereke Bank | | bksbank | БКС Банк | | blank | Бланк Банк | | brb | BRB Bank | | bta | БТА Банк | | bystrobank | Быстробанк | | bzhfbank | БЖФ Банк | | centercredit | АО Банк Центр Кредит | | centrinvest | ЦентрИнвестБанк | | chelindbank | Челиндбанк | | chelyabinvestbank | Челябинвестбанк | | cmrbank | Цмрбанк | | creditevropabankrossiya | Кредит Европа Банк Россия | | dalnevostochnybank | Дальневосточный Банк | | databank | Датабанк | | davr | Davr Bank | | demirbank | DemirBank | | derzhava | Держава Банк | | dolinskbank | Долинск Банк | | doskredobank | Дос-Кредобанк | | driveclickbank | Драйв Клик Банк | | dushanbesiti | Душанбе Сити Банк | | ekspobank | Экспобанк | | elita | Банк Элита | | elplat | Элплат | | energobank | Энергобанк | | energotransbank | Энерготрансбанк | | eob | Енисейский Объединенный Банк | | eshata | Банк Эсхата | | eurasianbank | АО Евразийский банк | | evrofinansmosnarbank | АКБ Еврофинанс Моснарбанк | | faktura | Дбо Фактура | | ffin | Ффин Банк | | finam | Финам | | finanskreditbank | ФинансКредитБанк | | finka | ФИНКА Банк | | firstheartlandjusan | First Heartland Jusan Bank | | firstinvestmentbank | Первый Инвестиционный Банк | | forabank | Фора Банк | | forshtadt | Форштадт | | forte | AO ForteBank | | freedom | АО Банк Фридом Финанс Казахстан | | garantbank | Garant-Bank | | garantinvestbank | Гарант Инвест Банк | | gazenergobank | Газэнергобанк | | gazprombank | Газпромбанк | | gaztransbank | Газтрансбанк | | genbank | Генбанк | | gorbank | Горбанк (Петербургский Городской Банк) | | gutabank | Гута Банк | | hajsbank | Хайс Банк | | halkbank | HalkBank | | halykbank | HalykBank | | hamkorbank | HamkorBank | | hmb | ХМБ (Хакасский Муниципальный Банк) | | homecredit | ХоумКредитБанк | | homecreditkz | AO Home Credit Bank | | humo | Humo | | ikbank | ИК Банк (Инвестиционный Кооперативный Банк) | | inbank | Инбанк | | infinbank | InfinBank | | ingosstrahbank | Ингосстрах Банк | | ipakyuli | IpakYuli Bank | | ipotekabank | IpotekaBank | | ishbank | Ишбанк | | jandtbank | Джей энд Ти Банк (Реалист Банк) | | kapitalbankuzb | KapitalBank (Uzbekistan) | | kazpochta | АО Казпочта | | keremet | Керемет Банк | | kivibank | Киви Банк | | kompanon | Банк Компаньон | | koshelevbank | Кошелев Банк | | kredituralbank | Кредит Урал Банк | | krokusbank | Крокус Банк | | kubankredit | Кубань Кредит | | kubantorgbank | Кубаньторгбанк | | kuzneckbiznesbank | Кузнецкбизнесбанк | | kyirgyizskiyinvestitsionnokreditnyiy | Кыргызский Инвестиционно-Кредитный Банк | | kyirgyizstan | Коммерческий банк КЫРГЫЗСТАН | | lantabank | Ланта Банк | | leftbank | Банк Левобережный | | lichnayakassa | Личная касса | | lokobank | Локо Банк | | m10 | M10 | | mb | Мб Банк | | mbank | MBank | | megapay | MegaPay | | metallinvestbank | Металлинвестбанк | | metkombank | Меткомбанк | | mfk | Международный Финансовый Клуб | | mikrokredit | MikroKredit Bank | | mkb | МКБ (Московский Кредитный Банк) | | modulbank | Модульбанк | | monobank | Monobank | | morskojbank | Морской Банк | | moskombank | Москомбанк | | moskommertbank | Москоммерцбанк | | mosoblbank | Мособлбанк | | mp | Мп Банк | | msbankrus | МС Банк Рус | | mtsbank | МТС Банк | | mtsdengieksi | МТС Деньги (ЭКСИ Банк) | | nacinvestprombank | Нацинвестпромбанк (Национальный инвестиционно-промышленный банк) | | narodnyiykyirgyizstana | Народный Банк Кыргызстана | | nbdbank | НБД Банк | | nbu | NBU Bank | | nikobank | Нико Банк | | nkbank | НК Банк | | nkoyumani | НКО Юмани | | nokssbank | Ноксбанк | | northernpeoplebank | Северный Народный Банк | | norvikbank | Норвик Банк | | novikombank | Новикомбанк | | novobank | Новобанк | | nrbank | Акб Нрбанк | | nsbank | НС Банк | | octobank | OctoBank | | odengi | O!dengi | | openbank | Банк Открытие | | optima | Оптима Банк | | oranzhevyj | Банк Оранжевый | | orientfinbank | OrientFinBank | | otpbank | ОТП Банк | | ozonbank | Озон-банк | | paynet | Paynet | | pervyjdortransbank | Первый Дортрансбанк | | plajt | Плайт | | platezhnyjkonstruktor | Рнко Платежный Конструктор | | pojdyom | Кб Пойдём! | | postbank | Post Bank | | primore | АКБ Приморье | | primsocbank | Примсоцбанк | | priovneshtorgbank | Прио Внешторгбанк | | privatbank | PrivatBank | | probank | ПроБанк (Профессионал Банк) | | psb | ПСБ (ПромСвязь Банк) | | pumb | Pumb | | raiffeisen | Райффайзенбанк | | realistbank | Реалист Банк | | renessanscredit | Ренессанс Кредит | | resocredit | Ресо Кредит | | rnkb | РНКБ | | rosbank | Росбанк | | rosdorbank | Росдорбанк | | rostfinans | КБ Ростфинанс | | rsb | РСБ (Банк Русский Стандарт) | | rshb | Россельхозбанк | | rsk | РСК Банк | | rusnarbank | Руснарбанк | | rusuniversalbank | Русский Универсальный Банк | | sanktpeterburg | Банк Санкт-Петербург | | sberbank | Сбербанк | | sberbankabh | Sberbank (ABH) | | sbibank | Эс Би Ай Банк | | sdmbank | СДМ Банк | | severgazbank | Севергазбанк | | sibsocbank | Сибсоцбанк | | simbank | Simbank | | sinkobank | Синко Банк | | sitibank | Ситибанк | | slaviya | Славия Банк | | smpbank | СМП Банк (Банк Северный Морской Путь) | | sngb | СНГБ (Сургутнефтегазбанк) | | sociumbank | Социум Банк | | solidbank | Солид Банк | | sovcombank | Совкомбанк | | spitamen | Спитамен Банк | | sqb | SQB Bank | | strojlesbank | Стройлесбанк | | tascombank | Tascombank | | tatsocbank | Татсоцбанк | | tavricheskijbank | Таврический Банк | | tbc | TBC Bank | | tenderbank | АКБ Тендер Банк | | tengebank | TengeBank | | timerbank | Таймер Банк | | tinkoff | Т-Банк | | tkb | Ткб Банк | | tochkabank | Точка банк | | tochkafkopen | Точка ФК Открытие | | togliattichembank | Тольяттихимбанк | | tomskpromstrojbank | Томскпромстройбанк | | toyotabank | Тойота Банк | | transstrojbank | Трансстройбанк | | trastpay | Trastpay | | turon | Turon Bank | | ubrir | УБРиР | | uglemetbank | Углеметбанк | | unicreditbank | ЮникредитБанк | | unistrim | КБ Юнистрим | | unitedcapitalbank | Банк Объединенный Капитал | | universalbank | Universal-Bank | | uralfd | Урал ФД | | uralfinans | Уралфинанс Банк | | uralprombank | Уралпромбанк | | uralsibbank | Банк Уралсиб | | uzcard | Uzcard | | uzum | Uzum Bank | | vladbiznesbank | Владбизнесбанк | | vneshfinbank | Внешфинбанк | | vtb | ВТБ | | vuzbank | ВУЗ Банк | | wildberries | Вайлдберриз Банк | | xazna | Xazna Bank | | yandexbank | Яндекс-банк | | yarinterbank | Икбр Яринтербанк | | yuginvestbank | Юг Инвестбанк | | zemskijbank | Земский Банк | | ziraat | Ziraat Bank |
|
Поля в urls:
| Наименование |
Обязательное? |
Тип |
Описание |
urls.redirectSuccess |
Да |
string |
URL для перенаправления после успешного депозита. |
urls.redirectFail |
Да |
string |
URL для перенаправления после неудачного депозита. |
urls.callback |
Да |
string |
URL для отправки уведомлений о статусе транзакции. |
urls.return |
Да |
string |
URL для возврата на сайт клиента |
Поля sessionSettings:
| Наименование |
Обязательное? |
Тип |
Описание |
sessionSettings.clientTheme |
Нет |
string |
Тема терминала при его открытии. Возможные значения: |
sessionSettings.clientLanguage |
Нет |
string |
Язык терминала при его открытии. Возможные значения: |
sessionSettings.visibleMethods |
Нет |
Возможные варианты:- array [string]
- array [object]
|
Поддерживаются два формата данных:- array [string] - список названий методов, которые хочет получить клиент (массив строк)
["SBP"] - array [object] - список связок “название метода + тип подключения” (массив объектов)
[{"paymentMethodName":"SBP","communicationType":"h2h"}]
|
sessionSettings.presetAmounts |
Нет |
array [object] |
Предподготовленные суммы для совершения платежа (если paymentInfo.amount не передан): [{"paymentMethodName":"SBP","communicationType":"h2h","amounts":[300,500,1000]}] |
Варианты ответов
Формат: JSON
1. Успешный ответ (статус 200)
При успешном выполнении запроса API возвращает ответ со статусом 200 OK и следующей структурой:
{
"url": "https://payment-terminal-form.idynsys.org/open/bj9MBmsE0ovw1a75Si867Le1MpDg5O-1733321054223170",
"sessionId: "bj9MBmsE0ovw1a75Si867Le1MpDg5O-1733321054223170"
}
2. Ошибка доступа (статус 403)
Если подпись некорректна, секретный ключ не совпадает с ключом, зарегистрированном в системе B2B Backoffice, отсутствует или неактивно приложение, определенное в заголовке запроса X-Client-Id, то API вернет ответ со статусом 403 Forbidden и со следующей структурой:
{
"error": {
"code": "403",
"message": "Access denied"
}
}