Перейти до основного вмісту

Перекази між рахунками (A2A)

A2A, або платежі з рахунку на рахунок, - це прямі електронні перекази коштів з банківського рахунку покупця на рахунок отримувача. Платежі A2A оминають традиційні платіжні системи і миттєво зараховуються на рахунок одержувача.

Наразі можливе використання даного методу лише при direct-інтеграції.

Direct-інтеграція

Формат взаємодії:

a2a

інформація

Зверніть увагу, що при direct-інтеграції весь інтерфейс взаємодії повинен бути реалізованим на вашій стороні.

Перелік допрацювань:

  • відобразити кнопку а2а методу оплати на вашому сайті (1 на схемі)
  • відобразити сторінку з QR платникові або направити одразу за лінкою (6 на схемі)
  • рекомендовано для оплати з десктопу відобразити якусь проміжну сторінку, поки користувач виконує платіж в своєму застосунку.
    Наприклад, "Підтвердіть/завершіть транзакцію у мобільному застосунку вашого банку" (7-8 на схемі)
  • відобразити фінальний статус платежу (10 на схемі)

Запит на створення платежу при direct-інтеграції повинен містити такі параметри:

ParameterTypeRequiredDescription
pos_idUUIDMerchant's identifier (POS_ID)
modeMODEdirect
methodMETHODPayment method ( purchase)
amountNumberTransaction amount. Must be a positive number. The number of decimal digits must be less than or equal to 2 (e.g., 100.00, 250, 50.50)
currencyCURRENCYTransaction currency (ISO_4217)
descriptionStringPayment description
order_idStringUnique identifier of order
order_3ds_bypassString3-D Secure flow option
paywayStringOptional payway. Use "bank_pay" for processing a2a payments
productsArray[Product]Array of products to be paid
customer_idStringCustomer identifier in merchant's system. Is not mandatory in case of using customer_tax_id
customer_tax_idStringCustomer’s tax identification number. The parameter is mandatory for a2a payments
customer_fnameStringCustomer first name
customer_lnameStringCustomer last name
customer_emailStringCustomer email
customer_phoneStringCustomer phone
customer_ipStringCustomer IP address
customer_countryStringCustomer country (ISO 3166-1 (alpha-2)). For instance, UA for Ukraine
server_urlURLWebhook notification will be sent to this URL
result_urlURLCustomer will be redirected to this URL after payment.
merchant_mccMCCMCC for this transaction
payloadStringField for merchant custom data. Max 4000 symbols.
validation_urlStringPreflight request will be sent to this URL

Приклад запиту:

curl --location 'https://cpay.tranzzo.com/api/v1/payment' \
--header 'Content-Type: application/json' \
--header 'X-API-AUTH: CPAY-HMAC-SHA1 $API_KEY:$SIGNATURE' \
--header 'X-API-KEY: $ENDPOINTS_KEY' \
--data '{
"pos_id": "${POS_ID}",
"mode": "direct",
"method": "purchase",
"amount": 1,
"currency": "UAH",
"description": "Order description",
"order_id": "123",
"order_3ds_bypass": "always",
"payway": "bank_pay",
"server_url": "http://callback-stub:9000/consume",
"result_url": "https://example.com/result",
"payload": "sale=true"
}'

Приклад відповіді після ініціалізації оплати (повертається user_action_url):

{
"amount": 1,
"billing_order_id": 11231231231,
"cc_mask": "411111******1111",
"cc_token": "ODJkZjBhNmY2OTMyNDJlN2wjMjFjfTQzOXU3ZDFhYzI6cWJmWHFmMHlzM3hYaXJMWEZv",
"cc_token_expiration": "2028-10-10T10:10:22",
"created_at": "2026-02-09T16:06:34.456",
"currency": "UAH",
"customer_country": "UA",
"customer_email": "[email protected]",
"customer_fname": "Tom",
"customer_lname": "Hanks",
"customer_phone": "+380999999999",
"description": "Order description",
"eci": "07",
"gateway_order_id": "2bf5044c-1daa-47b8-a6c0-b9173675ca5c",
"mcc": "4900",
"method": "purchase",
"mode": "direct",
"options_3ds": "always",
"order_id": "2769312212",
"payload": "sale=true",
"payment_id": "bee8e3b9-46ee-4db8-8275-95d8be202aeb",
"payway": "bank_pay",
"pos_id": "ab4c4e99-0154-449a-abae-e42cafdfce54",
"processed_at": "2026-02-09T16:06:35.456",
"receipt_url": "https://cpay.tranzzo.com/public/receipt/12491284012940129402424124124124124ffef3re3rf32f2vf",
"result_url": "https://example.com/result",
"status": "pending",
"status_code": "2124",
"status_description": "Waiting for redirect to continue payment",
"user_action_required": true,
"user_action_url": "https://int.secure3d.net/BNzZkf/action/bee8e3b9-46ee-4db8-8275-95d8be202aeb/start"
}

Додаткові параметри Webhook, передбачені цим методом:

ParameterTypeRequiredDescription
bank_pay.sender_mfoStringSender's Bank Identifier Code (BIC)
bank_pay.sender_ibanStringSender's IBAN
bank_pay.sender_bankStringSender's bank name
bank_pay.sender_nameStringSender's full name
bank_pay.sender_tax_idStringSender's tax ID
bank_pay.receiver_ibanStringReceiver's IBAN
bank_pay.descriptionStringDescription of a2a payment

Приклад:

"bank_pay": {
"sender_mfo": "test_mfo_456",
"sender_bank": "Pumb",
"sender_iban": "UA558771690896444199621297483",
"sender_name": "John Doe",
"sender_tax_id": "1234567890",
"receiver_iban": "UA573220000000026007233566001",
"description": "Test operation"
}