Client library for OpenFinTech.io
npm install --save @datafire/openfintech
let openfintech = require('@datafire/openfintech').create();
.then(data => {
console.log(data);
});
OpenFinTech.io is an open database that comprises of standardized primary data for FinTech industry.
It contains such information as geolocation data (countries, cities, regions), organizations, currencies (national, digital, virtual, crypto), banks, digital exchangers, payment providers (PSP), payment methods, etc.
It is created for communication of cross-integrated micro-services on "one language". This is achieved through standardization of entity identifiers that are used to exchange information among different services.
UML Domain Model diagram you can find here.
Entities are updated not more than 1 time per day.
This OpenFinTech.io is made available under the Open Database License.
Any rights in individual contents of the database are licensed under the Database Contents License.
For any questions, please email - info@openfintech.io
Or you can contact us at Gitter
Powered by Paymaxi
If you use POSTMAN or similar program which can operate with swagger`s files - just download our spec and import it. Also you can try live API demo.
The OpenFinTech API is organized around REST. Our API has predictable, resource-oriented URLs, and uses HTTP response codes to indicate API errors.
API is based on JSON API standard. JSON is returned by all API responses, including errors, although our API libraries convert responses to appropriate language-specific objects.
JSON API requires use of the JSON API media type (application/vnd.api+json
) for exchanging data.
Your requests should always include the header:
Accept: application/vnd.api+json
To use OpenFinTech API no needed authorization.
When we make changes to the API, we release new, dated versions. The current version is 2017-08-24. Read our API upgrades guide to see our API changelog and to learn more about backwards compatibility.
OpenFinTech APIs to retrieve lists of banks, currencies and other resources - paginated to 100 items by default. The pagination information will be included in the list API response under the node name meta
- contains information about listed objects [total
- contains information about total count of listed objects, pages
- count of pages], links
- contain links to navigate between pages [first
- link to first page, prev
- link to previous page, next
- link to next page, last
- link to last page].
By default first page will be listed. For navigating through pages, use the page parameter (e.g. page[number]
, page[size]
).
The page[size]
parameter can be used to set the number of records that you want to receive in the response.
The page[number]
parameter can be used to set needed page number.
Example of response:
{
"meta": {
"total": 419,
"pages": 42
},
"links": {
"first": "/v1/{path}?page[number]=1&page[size]=10",
"prev": "/v1/{path}?page[number]=39&page[size]=10",
"next": "/v1/{path}?page[number]=41&page[size]=10",
"last": "/v1/{path}?page[number]=42&page[size]=10"
}
OpenFinTech`s API supported query parameter to sort result collection [e.g. ?sort=code
]. Information about available parameters may be found in the endpoint description. Positive parameter [e.g. ?sort=code
] points to ascending sorting, negative [e.g. ?sort=-code
] - to descending sorting. Also, supported multiple sorting parameters [e.g. ?sort=code, -name, id
, etc.]
https://api.openfintech.io/v1/countries?sort=name,-area
Filtering provided by unique query key filter[*filtering_condition*]
. Information about available parameters may be found in the endpoint description.
https://api.openfintech.io/v1/countries?filter[region]=europe
OpenFinTech provides two types of images: icons and logos. To get one of those types you should to use next url pattern:
https://api.openfintech.io/v1/{path}/{id}/{icon/logo}
Also, images can be resized by adding next parameters: h={height}&w={width}
. For example, you want to get organization icon with width equals to 20 pixels:
https://api.openfintech.io/v1/organizations/{id}/icon?w=20&h=20
If argument height or width is missing API returns original image with real sizes.
API uses conventional HTTP response codes to indicate the success or failure of an API request. In general, codes in the 2xx
range indicate success, codes in the 4xx
range indicate an error that failed given the information provided (e.g., a required parameter was omitted, etc.), and codes in the 5xx
range indicate an error with OpenFinTech's servers (these are rare).
Code | Description |
---|---|
200 - OK | Everything worked as expected. |
400 - Bad Request | The request was unacceptable, often due to missing a required parameter. |
401 - Unauthorized | No valid API key provided. |
402 - Request Failed | The parameters were valid but the request failed. |
404 - Not Found | The requested resource doesn't exist. |
409 - Conflict | The request conflicts with another request (perhaps due to using the same idempotent key). |
429 - Too Many Requests | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests. |
500, 502, 503, 504 - Server Errors | Something went wrong on OpenFinTech's end. (These are rare.) |
Returns list of banks. Each object contains general information about bank such as name and status, also information about bank details and related link to main organization.
openfintech.banks.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Filtering by banks code.string
: Filtering by code.array
: Filtration by status.array
: Sort params:Returns bank with specific ID.
openfintech.banks.id.get({
"id": ""
}, context)
object
string
: Unique ID.Returns all available countries.
openfintech.countries.get({}, context)
object
integer
: Current page number.integer
: Page size.array
: Filtration by region.array
: Filtration by sub region.array
: Sort params:Returns country with specific ID.
openfintech.countries.id.get({
"id": ""
}, context)
object
string
: Unique ID.Returns all available currencies.
openfintech.currencies.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Full text search with name, code, type, code_iso_alpha3, code_jsons_alpha, code_estandards_alpha, category.string
: Filtering by ISO code.integer
: Filtering by ISO number.string
: Filtering by estandards code.array
: Filtration by currency type.array
: Filtration by category.array
: Sort params:Returns currency with specific ID.
openfintech.currencies.id.get({
"id": ""
}, context)
object
string
: Unique ID.Returns list of deposit methods. Each object contains information about deposit method such as name and category, also related link to deposit method issuer (which processing it).
openfintech.deposit_methods.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Full text search with id, name, code, category.string
: Filtering by name.string
: Filtering by code.string
: Filtering by processor_name.array
: Filtering by category.array
: Sort params:Returns deposit method with specific ID.
openfintech.deposit_methods.id.get({
"id": ""
}, context)
object
string
: Unique ID.Returns list of exchange markets. Each object contains general information about exchanger such as name and status, also information about rates export and related link to main organization.
Rates export standards is represented by:
openfintech.exchangers.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Filtering by name.array
: Filtration by status.array
: Sort params:Returns exchanger with specific ID.
openfintech.exchangers.id.get({
"id": ""
}, context)
object
string
: Unique ID.Returns all available merchant fields of activity.
openfintech.merchant_industries.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Filtering by name.Returns merchant industry with specific ID.
openfintech.merchant_industries.id.get({
"id": ""
}, context)
object
string
: Unique ID.This endpoint retrievs the list of organizations present in the system. The data displays general, public information, without reference to the type of activity (for example - name, address, contacts, etc.).
openfintech.organizations.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Full text search with id, name, code.string
: Filtering by name.string
: Filtering by code.array
: Filtration by status.string
: Filtering by industries.array
: Sort params:Returns organization with specific ID.
openfintech.organizations.id.get({
"id": ""
}, context)
object
string
: Unique ID.Returns list of payment methods. Each object contains information about payment method such as name and category, also related link to payment method issuer (which processing it).
openfintech.payment_methods.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Full text search with id, name, code, category.string
: Filtering by name.string
: Filtering by code.string
: Filtering by processor_name.array
: Filtering by category.array
: Sort params:Returns payment method with specific ID.
openfintech.payment_methods.id.get({
"id": ""
}, context)
object
string
: Unique ID.A payment service provider (PSP) offers shops online services for accepting electronic payments by a variety of payment methods.
Endpoint returns list of PSPs. Each object contains: name, type, supported features and sales channels, also related link to available payment methods and main organization.
openfintech.payment_providers.get({}, context)
object
integer
: Current page number.integer
: Page size.string
: Full text search with id, code, name.string
: Filtering by name.string
: Filtering by code.array
: Filtering by types.array
: Filtering by sales channels.array
: Filtering by features.array
: Sort params:Returns payment provider with specific ID.
openfintech.payment_providers.id.get({
"id": ""
}, context)
object
string
: Unique ID.object
: Active in countriesarray
object
string
string
object
string
object
string
: Bank`s IDstring
object
: Array of bank attributesstring
string
string
string
: Bank`s codestring
string
: Bank`s namestring
string
: Status [active, liquidated, problem, deleted]string
object
object
string
: Organization`s IDstring
object
string
object
object
object
array
object
array
object
string
: Country`s IDstring
object
string
: Country’s area (sq km)array
: Array of country`s phone codesinteger
string
: Country’s capitalstring
: Country`s ISO alpha3 codearray
: Array of country`s languagesstring
string
: Country`s namestring
: Country`s nativ namestring
: Country’s populationstring
: Country’s region:string
: Country’s sub region:array
: Array of country`s timezones (UTC)string
array
: Array of country`s domainsstring
object
object
object
object
string
object
array
object
string
: Currency IDstring
object
: Array of currencies attributesstring
: Currency categorystring
: Currency system codestring
string
: Currency ISO codeinteger
: Currency ISO numeric codestring
string
: Created date in system (in Unixtime)string
: Type of currencies [national, digital, virtual, metal, energy]string
: Number of digits after the decimal separatorstring
: Currency`s issuerstring
: Currency descriptionstring
: Currency’s symbol. In general, only for nationals currenciesstring
: Currency’s symbol. In general, only for nationals currenciesobject
: Links to currency iconsstring
: 16x16 iconstring
: 32x32 iconstring
: 64x64 iconobject
object
string
object
: Currency Issuer. 'Only for virtual currency'object
string
object
: Issuer.object
string
: Issuer organization IDstring
object
string
object
string
: Issuer IDstring
object
: Parent currency. 'Only for virtual currency'object
string
: Parent currency IDstring
object
string
object
object
object
string
: Deposit-methods`s IDstring
object
: Array of Deposit-method attributesstring
string
: Deposit-method`s codestring
: Deposit-method`s namestring
: Deposit-method`s processorobject
: Processor`s Data.array
object
string
: Processor`s id.string
: Processor`s type.object
string
object
object
object
array
object
string
: Exchanger`s IDstring
object
string
: Exchanger`s namestring
string
string
: Exchanger`s status [active, blocked, deleted]integer
: Exchanger`s WebMoney IDobject
object
string
: Organization IDstring
object
string
object
object
object
array
object
array
object
string
: Merchant-industry`s IDstring
object
: Array of Merchant-industry attributesstring
: Merchant-industry`s nameobject
object
string
: Organization`s IDstring
object
array
string
object
string
object
: Organization`s addressstring
string
integer
string
: Country’s region:string
object
string
: Organization`s blogstring
: Organization`s codestring
: Descriptionarray
: Industriesstring
string
: Organization`s namestring
: Organization`s sitestring
: Organization`s status [active, liquidated, deleted]string
: Organization`s wikiobject
: Links to organization iconsstring
: 16x16 iconstring
: 32x32 iconstring
: 64x64 iconobject
: Links to organization logosstring
: 50x50 logostring
: 100x100 logostring
: 150x150 logoobject
: Organization`s contactsstring
string
string
string
object
object
string
: HQ locationstring
object
string
object
object
object
: Social profilesstring
string
string
string
string
object
object
string
string
object
string
object
array
object
string
: Payment-methods`s IDstring
object
: Array of Payment-method attributesstring
string
: Payment-method`s codestring
: Payment-method`s namestring
: Payment-method`s processorobject
array
string
object
string
object
: Payment-method issuer.object
: Processor`s Data.string
: Processor`s id.string
: Processor`s type.object
string
object
object
object
array
object
string
: Payment-provider`s IDstring
object
: Array of Payment-provider attributesstring
: Payment-provider`s codearray
string
string
: Payment-provider`s namearray
string
array
string
object
object
string
: Organization`s IDstring
object
string
object
array
string
object
string
object
object
object
array
object
string
: first page of querystring
: last page of querystring
: next page in querystring
: previous page in queryobject
integer
: total pagesinteger
: total objects in queryobject
string
object
: Supported pspsarray
object
string
string
object
string
Version | Tag | Published |
---|---|---|
6.0.0 | latest | 2yrs ago |