Client API IBANFIRST (1.1)

Download OpenAPI description
Languages
Servers
https://sandbox.ibanfirst.com/api/

Wallets

In the IBANFIRST API, what we call a "wallet" account can be either a physical iban account, or a virtual iban account with IBANFIRST. A virtual account is an administrative "subaccount" of one physical iban account (the "masteraccount"). Cash can be earmarked as belonging to a virtual account so that you can easily allocate funds per business unit, per client, or incoming/outgoing transactions).

Operations

Financial movements

The IBANFIRST Rest API allows you to get all financial movements from your Wallets.

Operations

External bank account

In the IBANFIRST API, what we call external bank account, can be either your own account in another bank or a third party recipient account.

Operations

Payments

Sending funds from your IBANFIRST wallet account to your own bank account or a third-party recipient involves two steps:

  1. Generate the payment object with the Submit Payment method. When you submit a payment to be scheduled, you assign a unique id to that payment.
    Caution: The payment created will be automatically rolled to the next closest working days if not confirmed in the scheduled date of operation.

  2. Confirm the payment to the API for processing, using the Confirm Payment method. When you confirm a payment for processing, make sure you have sufficient funds in your wallet account balance.
    Caution: If the balance of your wallet account is not sufficient to cover the payment amount, funds may be locked-in by IBANFIRST.

Operations

Trades

IBANFIRST provides a deliverable FX facility and deliverable FX liquidity via the IBANFIRST-REST API. You will become counterparty to IBANFIRST and can market and sell deliverable FX services to corporate and private clients as well as using such services on their behalf.

The IBANFIRST-rest API supports online trading for the following contracts: TOD (Same-day), TOM (next-day), SPOT (T+2) and forward contracts up to one year.

FX trades are always made between two wallet accounts of a unique counterparty. IBANFIRST will automatically debit the source wallet account and credit the delivery wallet account at the date specified in the FX trade instructions. If the delivery date has been scheduled, the delivery is automatically processed in the morning before 00:30 am Paris time. If the delivery date is today (TOD), the funds is available on your wallet account by the next 20mn.

A FX trades also involves an amount, which includes both the numeric amount and the currency in order to define if this amount is the nominal to be bought or sold, for example: '100000.00+GBP'.

Operations

Documents

The IBANFIRST API let you acces your online documents stored on the IBANFIRST platform.
Note that the API do not send the document content, but a one-time link to access it.
This one-time link is only available once. So if you need another access to the document, you have to request another link by listing documents or getting document result.

Operations

Logs

As a developper, you might want to go further than sending request and recieve responses.
The IBANFIRST API allows you to access the logs of its own services, to provide you some details about what you send, and what it's done on the platform.

You can retrieve informations during a certain time.
This time passed, your log entry will be lost.

HTTP MethodTime
GET1 hour
POST, PUT1 week
Operations

Retrieve log list

Request

The IBANFIRST-REST API provides a log feed about request you made, allowing you to know exactly what your request do on the platform.
This request uses the login sent in your header to get logs about this user's actions.

Query
pagestring

Index of the page.

Default "1"
per_pagestring

Inumber of items returned.

Default "50"
sortstring

A code representing the order of rendering objects.

Enum"ASC""DESC"
curl -i -X GET \
  'https://sandbox.ibanfirst.com/api/logs/?page=1&per_page=50&sort=ASC'

Responses

OK

Bodyapplication/jsonArray [
idstring(^[A-Za-z0-9]{*}$)(ID)^[A-Za-z0-9]{*}$

A String representing the id of an object. This string contains alpha-numeric characters, including the capital ones.

Example: "Na5Dv6E"
createdAtstring(^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([012][0-9]|3[01])\ ([01][0-9]|2[0-3])\:([0-5][0-9])\:([0-5][0-9]))$)(Datetime)^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([01...

A String representing a date by its year, month, day in month, hour, minute and second.

Example: "2016-01-01 00:00:00"
closedAtstring(^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([012][0-9]|3[01])\ ([01][0-9]|2[0-3])\:([0-5][0-9])\:([0-5][0-9]))$)(Datetime)^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([01...

A String representing a date by its year, month, day in month, hour, minute and second.

Example: "2016-01-01 00:00:00"
tokenNoncestring

The nonce used in the HTTP header to authenticate the request.

remoteAddressstring<= 15 characters

The IP address of the request's emiter.

requestMethodstring<= 6 characters

The HTTP method of the request

uriRequestedstring

The Universal Resource Identifier given for this request.

parametersGivenstring

The optional parameters (e.g. after the ?) given for this request.

requestBodystring

The HTTP request body.

httpResponseCodenumber(int)

The HTTP response code.

responseBodystring

The text sent by the server as a result for the request.

restErrorTypeIdnumber(integer)

If there is an error during the processing the request, this id could be used to find this error.

loginstring

The login used for the request.

legalnamestring

The legal name of the client used for the request.

]
Response
application/json
[ { "id": "Na5Dv6E", "createdAt": "2016-01-01 00:00:00", "closedAt": "2016-01-01 00:00:00", "tokenNonce": "string", "remoteAddress": "string", "requestMethod": "string", "uriRequested": "string", "parametersGiven": "string", "requestBody": "string", "httpResponseCode": 0, "responseBody": "string", "restErrorTypeId": 0, "login": "string", "legalname": "string" } ]

Retrieve log details

Request

In case of somewhat happens during the request, the IBANFIRST API allows you to retrive a log entry by its nonce.

Path
noncestringrequired

The nonce used to authenticate the request. As the one in the header, this nonce has to be Base64 encoded. The nonce you get with GET /logs is already encoded.

curl -i -X GET \
  'https://sandbox.ibanfirst.com/api/logs/-{nonce}'

Responses

OK

Bodyapplication/json
idstring(^[A-Za-z0-9]{*}$)(ID)^[A-Za-z0-9]{*}$

A String representing the id of an object. This string contains alpha-numeric characters, including the capital ones.

Example: "Na5Dv6E"
createdAtstring(^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([012][0-9]|3[01])\ ([01][0-9]|2[0-3])\:([0-5][0-9])\:([0-5][0-9]))$)(Datetime)^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([01...

A String representing a date by its year, month, day in month, hour, minute and second.

Example: "2016-01-01 00:00:00"
closedAtstring(^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([012][0-9]|3[01])\ ([01][0-9]|2[0-3])\:([0-5][0-9])\:([0-5][0-9]))$)(Datetime)^((19[0,99]|2[0-9]{3})\-(0[1-9]|1[012])\-([01...

A String representing a date by its year, month, day in month, hour, minute and second.

Example: "2016-01-01 00:00:00"
tokenNoncestring

The nonce used in the HTTP header to authenticate the request.

remoteAddressstring<= 15 characters

The IP address of the request's emiter.

requestMethodstring<= 6 characters

The HTTP method of the request

uriRequestedstring

The Universal Resource Identifier given for this request.

parametersGivenstring

The optional parameters (e.g. after the ?) given for this request.

requestBodystring

The HTTP request body.

httpResponseCodenumber(int)

The HTTP response code.

responseBodystring

The text sent by the server as a result for the request.

restErrorTypeIdnumber(integer)

If there is an error during the processing the request, this id could be used to find this error.

loginstring

The login used for the request.

legalnamestring

The legal name of the client used for the request.

Response
application/json
{ "id": "Na5Dv6E", "createdAt": "2016-01-01 00:00:00", "closedAt": "2016-01-01 00:00:00", "tokenNonce": "string", "remoteAddress": "string", "requestMethod": "string", "uriRequested": "string", "parametersGiven": "string", "requestBody": "string", "httpResponseCode": 0, "responseBody": "string", "restErrorTypeId": 0, "login": "string", "legalname": "string" }

Auth

This service is intended to authenticate users on the API for certain cases

Operations