Перейти к содержанию

Интеграция

Общее описание процесса P2P-перевода средств

  1. Клиент указывает номер телефона получателя средств.
  2. Торговец передаёт системе UnonaPay номер телефона получателя средств для получения данных карты.
  3. Система отправляет запрос в сервис Visa Alias, получает данные и токен карты-приёмника по номеру телефона получателя средств и передаёт токен карты торговцу.
  4. Торговец инициирует запрос на уточнение суммы взимаемой комиссии за перевод средств с карты-источника на карту-приёмник.
  5. Система предоставляет ответ с суммой комиссии, взимаемой за P2P-перевод, если он возможен.
  6. Торговец информирует отправителя средств о комиссии.
  7. Отправитель подтверждает перевод средств. Торговец инициирует запрос на осуществление P2P-перевода.
  8. Система проводит перевод и информирует торговца о статусе транзакции.

Требования к запросам

Запросы в систему UnonaPay должны:

  • иметь авторизацию типа Basic c ID и Secret Key магазина как имя пользователя и пароль соответственно;
  • иметь заголовки Content-Type: application/json, Accept: application/json, X-Api-Version: 3;
  • использовать SSL соединение с 128-bit (или более сложным) шифрованием для соответствия требованиям стандарта PCI DSS;
  • использовать кодировку UTF-8.

Получение данных карты-приёмника по номеру телефона

Запрос

Отправьте POST запрос на https://gateway.unonapay.com/services/visa-alias/verify-phone со следующими параметрами:

Параметр Тип Описание
recipient_info object
phone_number * обязательный
string Номер телефона получателя средств.
Пример запроса
{
    "recipient_info": {
      "phone_number": "375291234567"
    }
}

Ответ на запрос получения данных карты

Если карта привязана к номеру телефона в сервисе Visa Alias, то вы получите ответ со статусом 200.

Параметр Тип Описание
holder string Имя владельца карты-приёмника.
stamp string Хэш номера карты-приёмника.
brand string Бренд карты-приёмника.
last_4 string Последние четыре цифры карты-приёмника.
first_1 string Первая цифра карты-приёмника.
bin string BIN карты-приёмника.
issuer_country string Страна карты-приёмника.
issuer_name string Банк-эмитент карты-приёмника.
product * required
string Тип карточного продукта карты-приёмника.
exp_month string Месяц окончания срока действия карты-приёмника, представленный двумя цифрами, например 01.
exp_year string Год окончания срока действия карты-приёмника, представленный четырьмя цифрами, например 2021.
token string Токен карты-приёмника.
service_info object Секция параметров получателя средств.
recipientName string Имя получателя средств.
issuerName string Банк-эмитент карты-приёмника.
cardType string Тип карточного продукта карты-приёмника.
address1 string Адрес получателя средств.
address2 string Дополнительные данные адреса получателя средств.
city string Город получателя средств.
country string Страна получателя средств.
postalCode string Индекс получателя средств.
Пример ответа, если карта привязана к номеру телефона
{
    "holder": "Percy A G",
    "stamp": "3212dc99441c4997b2388abe5892f04c850df1dc67a17575203fff86ec1a7833",
    "brand": "visa",
    "last_4": "4895",
    "first_1": "4",
    "token": "a38bc9c6-b575-4a49-bc75-635c385398a9",
    "product": null,
    "bin": "470127",
    "issuer_country": null,
    "issuer_name": "Test Bank 1",
    "exp_month": 12,
    "exp_year": 2026,
    "service_info": {
        "recipientName": "Percy A G",
        "issuerName": "Test Bank 1",
        "cardType": "Visa Classic",
        "address1": "Street 1",
        "address2": "Region 1",
        "city": "Berlin",
        "country": "Germany",
        "postalCode": "00111"
    }
}

В случае неверно указанного номера телефона, система отправит ответ со статусом 400 и описанием ошибки.

Пример ответа с ошибкой передачи данных
{
  "error_code": "request_validation_error",
  "message": {
    "recipient_info": {
      "phone_number": [
        "is in invalid format"
      ]
    }
  },
  "status": "error",
  "code": "E.1025",
  "friendly_message": "Invalid request params"
}

Если карта не зарегистрирована в сервисе Visa Alias, то система отправит ответ со статусом 404 и описанием ошибки.

Пример ответа с ошибкой регистрации карты в сервисе Visa Alias
{
  "status": "error",
  "code": "E.1037",
  "message": "Card Not Found",
  "friendly_message": "Card Not Found"
}

Получение суммы комиссии, взимаемой за P2P-перевод

Для уточнения взимаемой комиссии отправьте запрос проверки возможности P2P-перевода, где в параметре recipient_card.token передайте полученное значение параметра token.


Осуществление P2P-перевода

После подтверждения, что транзакция возможна, отправьте запрос на осуществление P2P-перевода. В запросе в параметре recipient_card.token передайте полученное значение параметра token.

При необходимости вы можете уточнить статус транзакции отправив запрос статуса с UID или tracking_id транзакции.