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

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