P2P перекази
P2P (Person-to-Person) перекази дозволяють переказувати кошти з картки платника на картку отримувача.
Процес переказу
Section titled “Процес переказу”P2P перекази включають два кроки:
- Ініціювання — списання коштів з карти платника
- Підтвердження — зарахування коштів на картку отримувача
Крок 1: Ініціювання переказу
Section titled “Крок 1: Ініціювання переказу”curl -X POST https://api.rozetkapay.com/api/payments/v1/new \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "amount": 500, "currency": "UAH", "external_id": "transfer_12345", "mode": "hosted", "confirm": false, "callback_url": "https://your-site.com/callback", "result_url": "https://your-site.com/result", "description": "Переказ коштів", "customer": { "email": "sender@example.com", "phone": "380501234567", "external_id": "sender_123", "first_name": "Іван", "last_name": "Петренко" }, "recipient": { "email": "receiver@example.com", "phone": "380509876543", "external_id": "receiver_456", "first_name": "Марія", "last_name": "Коваленко", "payment_method": { "type": "cc_token", "cc_token": { "token": "tok_recipient_card_token" } } } }'Параметри отримувача (recipient)
Section titled “Параметри отримувача (recipient)”| Параметр | Обов’язковий | Опис |
|---|---|---|
email | Ні | Email отримувача |
phone | Ні | Телефон отримувача |
external_id | Ні | ID отримувача |
first_name | Ні | Ім’я |
last_name | Ні | Прізвище |
city | Ні | Місто |
country | Ні | Країна |
postal_code | Ні | Поштовий індекс |
payment_method | Так | Платіжний метод отримувача |
Типи payment_method отримувача
Section titled “Типи payment_method отримувача”| Тип | Опис |
|---|---|
cc_token | Токен картки (з callback або віджета) |
cc_number | Повний номер картки |
wallet | ID картки з гаманця |
Приклад з номером картки
Section titled “Приклад з номером картки”{ "recipient": { "payment_method": { "type": "cc_number", "cc_number": { "number": "5454545454545454", "use_3ds_flow": true } } }}Приклад з гаманцем
Section titled “Приклад з гаманцем”{ "recipient": { "payment_method": { "type": "wallet", "wallet": { "option_id": "opt_abc123" } } }}Крок 2: Підтвердження переказу
Section titled “Крок 2: Підтвердження переказу”Після успішного списання коштів підтвердіть зарахування:
curl -X POST https://api.rozetkapay.com/api/payments/v1/confirm \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "external_id": "transfer_12345", "callback_url": "https://your-site.com/callback" }'Direct mode (Host2Host)
Section titled “Direct mode (Host2Host)”Для прямої інтеграції вкажіть mode: "direct" та платіжний метод відправника:
curl -X POST https://api.rozetkapay.com/api/payments/v1/new \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "amount": 500, "currency": "UAH", "external_id": "transfer_12345", "mode": "direct", "confirm": false, "customer": { "external_id": "sender_123", "payment_method": { "type": "cc_token", "cc_token": { "token": "tok_sender_card_token", "use_3ds_flow": true } } }, "recipient": { "external_id": "receiver_456", "payment_method": { "type": "cc_token", "cc_token": { "token": "tok_recipient_card_token" } } } }'Скасування переказу
Section titled “Скасування переказу”Якщо потрібно скасувати переказ до підтвердження:
curl -X POST https://api.rozetkapay.com/api/payments/v1/cancel \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "external_id": "transfer_12345" }'Діаграма процесу
Section titled “Діаграма процесу”┌───────────────┐ ┌───────────────┐│ Відправник │ │ Отримувач ││ (customer) │ │ (recipient) │└───────┬───────┘ └───────┬───────┘ │ │ │ 1. Create Payment │ │ confirm: false │ ▼ │┌───────────────┐ ││ Списання │ ││ коштів │ │└───────┬───────┘ │ │ │ │ 2. Confirm Payment │ │ │ ▼ ▼┌───────────────┐ ┌───────────────┐│ Кошти │─────────────────────────────▶│ Зарахування ││ переказано │ │ коштів │└───────────────┘ └───────────────┘Важливі моменти
Section titled “Важливі моменти”- confirm: false — обов’язковий параметр для P2P
- Підтвердження потрібно робити окремим запитом
- Без підтвердження кошти автоматично розблокуються
- Ключі для P2P відрізняються від звичайних еквайрингових