Интеграция
Общее описание процесса P2P-перевода средств
- Клиент указывает номер телефона получателя средств.
- Торговец передаёт системе PayCross номер телефона получателя средств для получения данных карты.
- Система отправляет запрос в сервис Visa Alias, получает данные и токен карты-приёмника по номеру телефона получателя средств и передаёт токен карты торговцу.
- Торговец инициирует запрос на уточнение суммы взимаемой комиссии за перевод средств с карты-источника на карту-приёмник.
- Система предоставляет ответ с суммой комиссии, взимаемой за P2P-перевод, если он возможен.
- Торговец информирует отправителя средств о комиссии.
- Отправитель подтверждает перевод средств. Торговец инициирует запрос на осуществление P2P-перевода.
- Система проводит перевод и информирует торговца о статусе транзакции.
Требования к запросам
Запросы в систему PayCross должны:
- иметь авторизацию типа 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.pay-cross.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": 2027,
"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 транзакции.