Платіжні методи
Доступні методи оплати через RozetkaPay API
Для оплати доступні такі платіжні методи:
- Платіжна картка (
cc) — потрібна сертифікація PCI DSS - Токенізована картка (
cc_token) - Гаманець RozetkaPay (
wallet) — збережені картки - Apple Pay (
apple_pay) - Google Pay (
google_pay)
Вибір платіжного методу
Платіжна сторінка (mode: hosted)
Користувач вибирає метод на платіжній сторінці RozetkaPay.
Напряму через API (mode: direct)
Платіжний метод передається в блоці customer.payment_method.
Оплата карткою
curl -X POST https://api.rozetkapay.com/api/payments/v1/new \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "external_id": "order_12345", "mode": "direct", "amount": 100, "currency": "UAH", "callback_url": "https://your-site.com/callback", "customer": { "external_id": "user_123", "phone": "380501234567", "payment_method": { "type": "cc", "cc": { "number": "4242424242424242", "exp_month": 12, "exp_year": 2025, "cvv": "123" } } } }'Весь перелік полів — у API Reference →
Оплата токенізованою карткою
Оплата збереженою карткою можлива після:
- Збереження картки через віджет
- Збереження картки на платіжній сторінці
curl -X POST https://api.rozetkapay.com/api/payments/v1/new \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "external_id": "order_12345", "mode": "direct", "amount": 100, "currency": "UAH", "callback_url": "https://your-site.com/callback", "customer": { "external_id": "user_123", "phone": "380501234567", "payment_method": { "type": "cc_token", "cc_token": { "token": "tok_2df5e29f-7ace-4e1a-9153-7a95e5d6a503", "use_3ds_flow": true, "save_to_wallet": true } } } }'| Параметр | Обов’язковий | Опис |
|---|---|---|
token | Так | Токен картки |
use_3ds_flow | Ні | Використовувати 3DS (за замовчуванням true) |
save_to_wallet | Ні | Зберегти в гаманець |
Оплата через гаманець
Оплата збереженою карткою з гаманця користувача.
curl -X POST https://api.rozetkapay.com/api/payments/v1/new \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "external_id": "order_12345", "mode": "direct", "amount": 100, "currency": "UAH", "callback_url": "https://your-site.com/callback", "customer": { "external_id": "user_123", "phone": "380501234567", "payment_method": { "type": "wallet", "wallet": { "option_id": "opt_2df5e29f-7ace-4e1a-9153-7a95e5d6a503", "use_3ds_flow": true } } } }'| Параметр | Обов’язковий | Опис |
|---|---|---|
option_id | Так | ID платіжного інструмента в гаманці |
use_3ds_flow | Ні | Використовувати 3DS (за замовчуванням true) |
Apple Pay
Детальна інтеграція: Apple Pay & Google Pay
curl -X POST https://api.rozetkapay.com/api/payments/v1/new \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "external_id": "order_12345", "mode": "direct", "amount": 100, "currency": "UAH", "customer": { "external_id": "user_123", "payment_method": { "type": "apple_pay", "apple_pay": { "token": "eyJ2ZXJzaW9uIjoiRUNfdjEi...", "use_3ds_flow": true } } } }'Google Pay
Детальна інтеграція: Apple Pay & Google Pay
curl -X POST https://api.rozetkapay.com/api/payments/v1/new \ -u "login:password" \ -H "Content-Type: application/json" \ -d '{ "external_id": "order_12345", "mode": "direct", "amount": 100, "currency": "UAH", "customer": { "external_id": "user_123", "payment_method": { "type": "google_pay", "google_pay": { "token": "eyJ0b2tlbiI6Ii...", "use_3ds_flow": true } } } }'Важливо:
- Передайте
gatewayзі значеннямevopay - Закодуйте токен у Base64
gatewayMerchantIdотримайте у службі підтримки
Валідація типу картки (campaign_name)
На рівні Create payment (та Create batch acquiring payment) можна обмежити прийом оплати до конкретного типу картки — передайте поле campaign_name:
| Значення | Що приймає |
|---|---|
r_card | Тільки картка Rozetka |
diia_card | Тільки Дія.Картка |
Якщо поле не передано — оплата обробляється без додаткової валідації. Якщо передано, і покупець вводить картку іншого типу — операція завершиться помилкою.
{ "external_id": "order_12345", "mode": "hosted", "amount": 100, "currency": "UAH", "campaign_name": "r_card", "customer": { "email": "user@example.com" }}