Invoice Exchange Rates & Payment Methods API
v1.0.0
/InvoiceFX
https://subdomain
.transfermateeducation.com/InvoiceFX
Returns all available payment methods, the associated charges, and the payment flow.
Each available Payment Method is returned as a separate <rate> element.
Payment Methods flagged as "locked" (@locked="true"), should be displayed along with the contents of the "lock_reason" element but the payer should not be able to select any of them.
For example:
Query Params
Parameter ID | Data Type | Length | Required | Description |
---|---|---|---|---|
username_loginto | string | 255 | Yes | Username |
password_loginto | string | 255 | Yes | Password |
bank_account_id | integer | - | Yes |
The Bank Account ID The Base Currency for the FX conversion will be derived from the Settlement Bank Account Details provided in the account setup stage. |
payment_amount | float | - | Yes |
The amount that needs to be converted into the payers local currency. The payer local currency is derived from the country he pays from. |
country_pay_from | string | 2 | Yes |
The country code (ISO 3166-1 alpha-2 code) from which the payer is making the payment. You can call the Countries API to get a list with all country codes. |
company_unique_id | string | 255 | Yes |
The unique identifier of the company. This parameter must be unique to each company. The same unique ID can't be used for more than one company. (Can be the same as the company number or email address if it is unique to the company and not used by another company). Allowed characters (case insensitive): A-Z 0-9 # @ & \ - _ = : ( ) . ; , { }
|
Response Examples
XML Response Breakdown
Field Name | Field Type | Parent Element | Return Value | Data Type | Max Length / Range |
Description |
---|---|---|---|---|---|---|
root | Element | - | - | - | - | The root/parent element. |
operation | Element | root | - | - | - | Contains the operation related information. |
type | Element | operation | Rates | string | 5 | The Request Type. |
result | Element | operation | ok, failure | string | 7 | The Request Status result. ok - The request was successful and you can continue paring the XML response. Please note that, error_code, error_message and field_id elements are not returned if the result is "ok". failure - There was an error and you should not parse the XML response any further. The error_code, error_message and field_id elements will be returned in the operation element, which can be used to determine what caused the error. |
error_code | Element | operation | Integer Number | integer | 0 - 10000 | The error code. |
error_message | Element | operation | String - Error Message | string | 255 | The error message. |
field_id | Element | operation | String - Field Name | string | 50 | The field_id contains the parameter name which is causing the error. |
datetime | Element | operation | YYYY-MM-DDThh:mm:ss+TZ | string | 30 | The date & time of the response in ISO 8601 format. Example: 2025-02-07T10:01:21+00:00 |
rates | Element | root | - | - | - | Payment Methods Wrapper element. Note that the returned Payment Methods / Rates are dynamic and depends on the country and availability. |
total | Attribute | rates | Integer Number | integer | 0 - 100 | The total number of Payment Methods available for the provided country. |
rate | Element | rates | - | - | - | Wrapper element, contains the details per each available Payment Method. |
type | Attribute | rate | Payment Method Name | string | 50 | The Type/Name of the Payment Method, e.g. Bank Transfer, VISA, AMEX, etc. |
payment_method_id | Attribute | rate | Integer Number | integer | 0 - 1000 | The ID of the Payment Method, e.g. 0 for Bank Transfer, 2 for VISA, etc. Each Payment Method has a dedicated ID that will never change. |
payment_method_flow | Attribute | rate | direct, redirect | string | 20 | The Payment Flow for the current Payment Method. |
locked | Attribute | rate | true, false | string | 5 | Indicates whether the Payment Method is currently locked for payments. |
lock_reason | Attribute | rate | String - Lock Reason | string | 1000 | If the Payment Method is locked (@locked="true"), this attribute will contain the message which explains why it's locked. The value will be empty if the Payment Method is not locked. |
logo | Attribute | rate | URL | string | 100 | The payment method logo |
source_amount | Element | rate | decimal number | float | - | The provided source/base amount for conversion. |
source_currency | Element | rate | ISO 4217 currency code | string | 3 | The source/base currency. The base currency depends on the provided Bank Account ID. |
converted_amount | Element | rate | decimal number | float | - | The converted amount. |
converted_currency | Element | rate | ISO 4217 currency code | string | 3 | The converted currency. The converted currency depends on the Country Pay From parameter. |
fx_rate | Element | rate | decimal number | float | - | The Exchange Rate. For same currency payments, the value is fixed to "1". |
taxes | Element | rate | - | - | - | Contains all charges/taxes applied to the current Payment Method. Please note that if there aren't applied charges/taxes, the taxes element will be empty and the @total attribute will be set to "0". |
total | Attribute | taxes | Integer Number | integer | 0 - 10 | The total number of applied taxes/charges. |
tax | Element | taxes | - | - | - | Tax wrapper element. |
name | Element | taxes | String - Tax Name | string | 50 | Short tax name. |
amount | Element | taxes | decimal number | float | - | The tax amount. |
percentage | Element | taxes | decimal number | float | 0 - 100 | If the tax is a fixed amount rather than a percentage on the converted amount, the percentage element value will be set to 0. |
description | Element | taxes | String - Tax Description | string | 1000 | Contains additional information about the tax. |