Converting funds to supported currency
Integrating Currency Conversion
Paysera offers a secure API that lets you make currency conversions inside Paysera account.
Step 1. Calculation request (optional)
How to calculate a currency conversion rate using the Paysera API, without actually performing the conversion transaction.
GET https://wallet.paysera.com/rest/v1/currency-conversion
Parameters
Parameters are passed in the query string.
More about available parameters can be found in here: Currency Conversion.
Example requests
GET /rest/v1/currency-conversion?from_currency=EUR&to_currency=USD&from_amount=150 HTTP/1.1 Host: wallet.paysera.com User-Agent: Paysera WalletApi PHP library Authorization: MAC id="wkVd93h2uS", ts="1343811600", nonce="nQnNaSNyubfPErjRO55yaaEYo9YZfKHN", mac="KwCRgR3O9cWGni/fkUPjVBLfl5cCURgLHIc7yppjFHw="
convert_currency scope authorizedExample response
HTTP/1.1 200 OK Content-type: application/json;charset=utf-8
{
"from_currency": "EUR",
"to_currency": "USD",
"from_amount": 150,
"from_amount_decimal": "1.50",
"to_amount": 200,
"to_amount_decimal": "2.00"
}
Step 2. Converting currency
This step handles exchanging your funds from one currency to another.
Currency conversion request
POST https://wallet.paysera.com/rest/v1/currency-conversion
Error codes
not_found
- account was not found by given ID
no_rights
- user has no needed permissions to execute currency conversions in this account
not_enough_funds
- there is not enough funds to perform this operation
limits_exceeded
- currency conversion limits were exceeded
expectation_failed
- conversion price or result did not match expectations (provided by max_from_amount or min_to_amount parameters)
Example request
POST /rest/v1/currency-conversion HTTP/1.1 Host: wallet.paysera.com Content-Type: application/json;charset=utf-8 User-Agent: Paysera WalletApi PHP library Authorization: MAC id="wkVd93h2uS", ts="1343811600", nonce="nQnNaSNyubfPErjRO55yaaEYo9YZfKHN", mac="+ZVwDWDVqqhjTeA5t6cW4ZtgcXI9ikDH3oKzzWEHDfI=", ext="body_hash=%2FnvaEOVnCNABstYnlN4pVfw3f6FElVlYw5CNvgYzBls%3D"
{
"from_currency": "EUR",
"to_currency": "USD",
"to_amount": 200,
"account_number": "EVP0010001000101",
"max_from_amount": 150
}
Example response
HTTP/1.1 200 OK Content-type: application/json;charset=utf-8
{
"id": 11221,
"date": 1391686980,
"from_currency": "EUR",
"to_currency": "USD",
"from_amount": 150,
"from_amount_decimal": "1.50",
"to_amount": 200,
"to_amount_decimal": "2.00",
"account_number": "EVP0010001000101"
}