API FONDYВерсія 1.0

Параметри запиту

ПараметрТипОписПриклад переданого мерчантом значення
order_idstring(1024)Ідентифікатор замовлення, що призначається мерчантом.

обов’язковий
ID1234
merchant_idinteger(12)Унікальний ідентифікатор мерчанта. Видається торговцю після реєстрації.

обов’язковий
1
order_descstring(1024)Опис замовлення. Передається мерчантом завжди в кодуванні UTF-8

обов’язковий
Придбати квиток на поїзд № 1234 Київ – Львів
signaturestring(40)Підпис замовлення. Служить для перевірки цілісності та автентичності запиту від мерчанта на стороні сервера платіжного шлюзу. Алгоритм формування підпису див. Формування підпису запиту і відповіді

обов’язковий
1773cf135bd89656131134b98637894dad42f808
amountinteger(12)Сума замовлення в копійках/центах без роздільників

обов’язковий
1020 (USD) — означає 10 доларів 20 центів
currencystring(3)Валюта замовлення. Допустимі значення:
UAH — українська гривня
\
USD — доллар США
EUR — євро
GBP — фунт стерлінгів

CZK — чеські крони
USD
rectokenstring(40)Токен картки, за яким можна списувати кошти з картки без подальшої участі клієнта
544d3f86237886b6404d8b000f6a7d71c45410b7
versionstring(10)Версія протоколу.

Значення за замовчуванням: 1.0
1.0
server_callback_urlstring(2048)URL сторінки мерчанта, на яку буде надіслано відповідь про результат оплати через сервер-сервер з’єднання
http://site.com/callbackurl
client_ipstring(15)Реальний IP платника
8.8.8.8
default_payment_systemstring(25)Платіжна система, яка першою відобразиться платнику на платіжній сторінці.
Допустимі значення: див. Підтримувані платіжні системи
card
lifetimeinteger(6)Час життя замовлення в секундах. Після закінчення цього часу, замовленню буде присвоєно статус ‘expired’ якщо клієнт його не оплатив

Значення за замовчуванням: 36000
600
merchant_datastring(2048)Будь-який довільний набір даних, який мерчант хоче отримати назад у відповіді на response_url та/або server_callback_url, а також у звітах
preauthstring(1)Параметр застосовується тільки при оплаті карткою Visa/MasterCard
N — сума списується з картки клієнта відразу і відшкодовується на рахунок мерчанта відповідно до регламенту зарахування.
Y — сума блокується на картці клієнта і не списується доти, доки мерчант не надішле запит capture для підтвердження списання

Значення за замовчуванням: N
N
sender_emailstring(254)Email платника
cvv2string(4)CVV2/CVC картки123
product_idstring(1024)Ідентифікатор оплачуваного товару/послуги

Параметри відповіді

Див. Параметри фінальної відповіді

Параметри відповіді в разі помилки

Див. Параметри відповіді в разі помилки

Формування запиту

Запит платежу за токеном на сервер FONDY завжди формується способом host-to-host на URL https://pay.fondy.eu/api/recurring

Host-to-host АПІ підтримує такі текстові формати запитів:

У контексті запиту завжди повертається відповідь у тому ж форматі, що й запит. Тобто якщо запит був у форматі JSON, то і відповідь повернеться у форматі JSON.

Приклад host-to-host для схеми взаємодії B (JSON)

Content Type: application/json

Запит

{
  "request":{
    "order_id":"test8037875286",
    "order_desc":"Test payment",
    "currency":"UAH",
    "amount":"100",
    "rectoken":"544d3f86237886b6404d8b000f6a7d71c45410b7",
    "signature":"07bc309047a56275f8d89ae222e2af0ceb94fe79",
    "merchant_id":"1"
  }
}

Нормальна відповідь

{
  "response": {
    "rrn": "",
    "masked_card": "",
    "sender_cell_phone": "",
    "response_signature_string": "**********1000USD1000530159USDTest1test7926651365approved13.01.2014 15:10:472100Visa/MC",
    "response_status": "",
    "currency": "USD",
    "fee": "",
    "reversal_amount": "",
    "settlement_amount": "",
    "actual_amount": "1000",
    "order_status": "approved",
    "response_description": "",
    "order_time": "13.01.2014 15:10:47",
    "actual_currency": "USD",
    "order_id": "test7926651365",
    "tran_type": "",
    "eci": "",
    "settlement_date": "",
    "payment_system": "Visa/MC",
    "approval_code": "530159",
    "merchant_id": "1",
    "settlement_currency": "",
    "payment_id": "2100",
    "card_bin": "",
    "response_code": "",
    "card_type": "",
    "amount": "1000",
    "sender_email": "",
    "signature": "3a587a6908e1b4119729e6b00f9f055a927728fd",
    "product_id": ""
  }
}

Відповідь у разі помилки

{
  "response":{
  "response_status":"failure",
  "error_message":"Parameter `amount` is mandatory",
  "error_code":"1008"
  }
}

Приклад host-to-host для схеми взаємодії B (XML)

Content Type: application/xml

Запит

<?xml version="1.0" encoding="UTF-8"?>
<request>
  <response_url>https://pay.fondy.eu/responsepage/</response_url>
  <order_id>test622138965</order_id>
  <order_desc>Test payment</order_desc>
  <currency>UAH</currency>
  <amount>100</amount>
  <rectoken>544d3f86237886b6404d8b000f6a7d71c45410b7</rectoken>
  <signature>fad685643ed5375d6d08c27f4f600e848549b0c5</signature>
  <merchant_id>1</merchant_id>
</request>

Нормальна відповідь

<?xml version="1.0" encoding="UTF-8"?>
<response>
  <rrn>401311593803</rrn>
  <masked_card>444455XXXXXX1111</masked_card>
  <sender_cell_phone />
  <response_status />
  <currency>USD</currency>
  <fee />
  <reversal_amount />
  <settlement_amount />
  <actual_amount>1000</actual_amount>
  <order_status>approved</order_status>
  <response_description />
  <order_time>13.01.2014 15:10:47</order_time>
  <actual_currency>USD</actual_currency>
  <order_id>test7926651365</order_id>
  <tran_type />
  <eci />
  <settlement_date />
  <payment_system>Visa/MC</payment_system>
  <approval_code>530159</approval_code>
  <merchant_id>1</merchant_id>
  <settlement_currency />
  <payment_id>2100</payment_id>
  <card_bin>444455</card_bin>
  <response_code />
  <card_type>VISA</card_type>
  <amount>1000</amount>
  <sender_email />
  <signature>1f894ec8c9b9c0a619e87f92ad7d347431f705c0</signature>
  <product_id />
</response>

Відповідь у разі помилки

<?xml version="1.0" encoding="UTF-8"?>
<response>
  <response_status>failure</response_status>
  <error_message>Parameter `amount` is mandatory</error_message>
  <error_code>1008</error_code>
</response>

Приклад host-to-host для схеми взаємодії B (HTML form)

Content Type: application/x-www-form-urlencoded

Запит

order_id=test3600040034&order_desc=Test payment&currency=UAH&rectoken=544d3f86237886b6404d8b000f6a7d71c45410b7
&amount=100&merchant_id=1&signature=ea326b841f9a1e2e90fb392392d3ed6255a6698d

Нормальна відповідь

rrn=401311593803&masked_card=444455XXXXXX1111&sender_cell_phone=&response_status=
&currency=USD&fee=&reversal_amount=&settlement_amount=&actual_amount=1000
&order_status=approved&response_description=&order_time=13.01.2014+15%3A10%3A47
&actual_currency=USD&order_id=test7926651365&tran_type=&eci=
&settlement_date=&payment_system=Visa%2FMC&approval_code=530159&merchant_id=1
&settlement_currency=&payment_id=2100&card_bin=444455&response_code=&
card_type=VISA&amount=1000&sender_email=&signature=1f894ec8c9b9c0a619e87f92ad7d347431f705c0&product_id=

Відповідь у разі помилки

response_status=failure&error_message=Parameter%20%60amount%60%20is%20mandatory&error_code=1008

Хочу приймати платежі з усього світу!