2.1 Токенизация карты (сохранение полного номера и срока карты на стороне Fondy)
Method: POST
URL: https://wallet.fondy.eu/authorizer/token/application/get
Для авторизация используется приватный ключ приложения
Пример запроса:
POST: /authorizer/token/application/get
HTTP/1.1
Host: wallet.fondy.eu
Content-Type: application/json;charset=UTF-8
Body
{
«signature»: «67b036bd007c40378d4be5a934f197e6…»,
«application_id»: «464119»,
«date»: «2017-01-21 11:23:45»
}
где:
application_id — идентификатор приложения, выданный сервисом Fondy
date — дата запроса в формате YYYY-MM-DD HH24:MI:SS
signature — сигнатура, сформированная путем применения функции SHA512 к строке, состоящей из секретного ключа и идентификатора приложения разделенных символом вертикальной черты |
signature = SHA512(secret_key + ‘|’ + application_id + ‘|’ + date)
Пример ответа:
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
«access_token»: «67b036bd007c40378d4be5a934f197e6»,
«expires_in»: 3600
}
Полученный токен действует в течении 3600 сек. Токен необходимо добавлять к каждому запросу на fondy.eu в заголовке HTTP запроса:
Authorization: Token 67b036bd007c40378d4be5a934f197e6
Если токен истек, необходимо получить новый, используя запрос POST: /authorizer/token/application/get
Запрос
Method: POST
URL: https://wallet.fondy.eu/kms/api/cards/add
Параметры запроса
поле | тип | обязательное | описание |
number | string | y | номер счета/карты |
expdate | string | n | срок действия карты |
name | string | n | название счета/карты |
Параметры ответа
поле | тип | описание |
id | string | токен счета/карты |
Пример запроса:
POST: /kms/api/cards/add
Authorization: Token 67b036bd007c40378d4be5a934f197e6
HTTP/1.1
Host: wallet.fondy.eu
Content-Type: application/json
Body
{
«number»:«4444555566661111»,
«expdate»:«1234»,
«name»:«My cool card»
}
Пример ответа:
{
«id»:«XWwc2TJ9IIT7J1Vw2A3Usc8nA2JIcUWM7a»
}
Запрос
Method: GET
URL: https://wallet.fondy.eu/kms/api/mva/balances
Параметры запроса
без параметров
Параметры ответа
поле | тип | описание |
accounts | object | массив счетов всех мерчантов данного application_id. Ключем массива счетов будет id мерчанта |
id | string | идентификатор счета |
currency | string | валюта счета |
balance | number(19,2) | основной баланс, на который поступают первоначально средства с банковского счета компании или от эквайринговых платежей в адрес мерчанта |
balance_db | number(19,2) | баланс, который становится доступный к выплате на карты или на расчетные счета после перевода с balance |
balance_cr | number(19,2) | баланс овердрафта или долга мерчанта, всегда отрицательный или 0 |
balance_hold | number(19,2) | транзитный баланс, на который поступают средства по невыясненным транзакциям. Например если при выплате на карту процессинг банка эквайера вернул неоднозначный ответ, по которому нельзя установить, средства отправлены, или возвращены |
balance_income | number(19,2) | доходный баланс мерчанта |
Пример запроса:
GET:/kms/api/mva/balances
Authorization: Token 67b036bd007c40378d4be5a934f197e6
Пример ответа
{
«accounts»: {
«900200»: [
{
«id»: «a160d4fa502e3f6a4fd3844a5c00606ac1861236»,
«currency»: «GBP»,
«balance»: 0,
«balance_db»: 0,
«balance_cr»: 0,
«balance_hold»: 0,
«balance_income»: 0
},
{
«id»: «4b6281c8e71fbb88963cd5c271a3757ec145817»,
«currency»: «UAH»,
«balance»: 10961.08,
«balance_db»: 157.5,
«balance_cr»: 0,
«balance_hold»: 232.9,
«balance_income»: 0
},
{
«id»: «915778b5e7359500874ccda9d219177374d»,
«currency»: «USD»,
«balance»: 0,
«balance_db»: 0,
«balance_cr»: 0,
«balance_hold»: 0,
«balance_income»: 0
},
{
«id»: «4fdb528d327a704f8fa9331283635ef1446»,
«currency»: «EUR»,
«balance»: 0,
«balance_db»: 0,
«balance_cr»: 0,
«balance_hold»: 0,
«balance_income»: 0
}
]
},
«total»: {
«UAH»: {
«balance»: 666909518.84,
«balance_db»: 671646122.71,
«balance_cr»: -100600,
«balance_hold»: 202669.84,
«balance_income»: 0
},
«EUR»: {
«balance»: 0,
«balance_db»: 1212,
«balance_cr»: 0,
«balance_hold»: 0,
«balance_income»: 0
},
«GBP»: {
«balance»: 4531.95,
«balance_db»: 3129524.08,
«balance_cr»: -1000,
«balance_hold»: 270.8,
«balance_income»: 2753.5
},
«USD»: {
«balance»: 0,
«balance_db»: 8934.36,
«balance_cr»: -2396.86,
«balance_hold»: 16.5,
«balance_income»: 0
}
},
«request_id»: «4b94ebcc2cd88a45»
}