NAV Navbar
javascript / php
  • Getting Started with API
  • Access Authentication
  • Access Key Management
  • Account and Account Holder interaction API Calls
  • Lookup API Calls
  • Transactional API Calls
  • Notification Management
  • Getting Started with API

      /$$$$$$            /$$       /$$                 /$$
     /$$__  $$          |__/      | $$                | $$
    | $$  \ $$  /$$$$$$  /$$      | $$$$$$$   /$$$$$$ | $$  /$$$$$$
    | $$$$$$$$ /$$__  $$| $$      | $$__  $$ /$$__  $$| $$ /$$__  $$
    | $$__  $$| $$  \ $$| $$      | $$  \ $$| $$$$$$$$| $$| $$  \ $$
    | $$  | $$| $$  | $$| $$      | $$  | $$| $$_____/| $$| $$  | $$
    | $$  | $$| $$$$$$$/| $$      | $$  | $$|  $$$$$$$| $$| $$$$$$$/
    |__/  |__/| $$____/ |__/      |__/  |__/ \_______/|__/| $$____/
              | $$                                        | $$
              | $$                                        | $$
              |__/
    

    This guide is an introduction to the MiFinity API. Please refer to the appropriate section according to the feature intended for integration.

    To follow this guide, and later for general API use, you need:

    HTTP Response Status Codes

    Codes Description Codes Description
    100 Continue 401 Unauthorized
    101 Switching Protocols 402 Payment Required
    200 OK 404 Not Found
    201 Created 405 Method Not Allowed
    202 Accepted 407 Proxy Authentication Required
    203 Non-Authoritative Information 408 Request Timeout
    204 No Content 410 Gone
    205 Reset Content 411 Length Required
    206 Partial Content 413 Request Entity Too Large
    207 Multi-Status (WebDAV) 414 414 Request-URI Too Long
    208 Already Reported (WebDAV) 416 Requested Range Not Satisfiable
    300 Multiple Choices 417 Expectation Failed
    301 Moved Permanently 422 Unprocessable Entity (WebDAV)
    302 Found 424 Failed Dependency (WebDAV)
    303 See Other 425 Reserved for WebDAV
    304 Not Modified 428 Precondition Required
    305 Use Proxy 429 Too Many Requests
    307 Temporary Redirect 444
    308 Permanent Redirect (experimental) 449
    400 Bad Request 451 Unavailable For Legal Reasons
    403 Forbidden 499 Client Closed Request (Nginx)
    406 Not Acceptable 449 Retry With (Microsoft)
    409 Conflict 500 Internal Server Error
    412 Precondition Failed 501 Not Implemented
    415 Unsupported Media Type 502 Bad Gateway
    418 I'm a teapot (RFC 2324) 503 Service Unavailable
    423 Locked (WebDAV) 504 Gateway Timeout
    426 Upgrade Required 505 HTTP Version Not Supported
    431 Request Header Fields Too Large 506 Variant Also Negotiates (Experimental)
    450 Blocked by Windows Parental Controls (Microsoft) 507 Insufficient Storage (WebDAV)
    508 Loop Detected (WebDAV) 509 Bandwidth Limit Exceeded (Apache)
    510 Not Extended 511 Network Authentication Required
    598 Network read timeout error 599 Network connect timeout error

    Access Authentication

    Token Authentication

    Make sure to replace Basic c3RlaXhlaXJhQG1pZmluaXR5LmNvbToiZG1pbjEyMzQy with your credentials.

    This is the most basic level of authentication using your MiFinity credentials (user name and password). This function returns a security token. We are showing this function for information purposes in the context of this tutorial. For regular API calls, do not use tokens, use API keys instead (will be explained in next session "Generate API Key"). The accountHolderId and userId values will be useful for some API functions. We recommend storing them in your system to avoid automating this function call.

    To authorize, use this code:

    var data = "grant_type=client_credentials";
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/oauth/token");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("authorization", "Basic c3RlaXhlaXJhQG1pZmluaXR5LmNvbToiZG1pbjEyMzQy");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/oauth/token

    Parameter Type Description
    Content-Type String Use value 'application/x-www-form-urlencoded'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Authorization String Concatenate 'Basic ' and 'username:password (encoded in Base64)'

    Parameters

    Field Type Description
    grant_type String Use value 'client_credentials'

    Successful response

    {
      "access_token":"YivPXq-5z3LjeZ_pc4V_2npiNoXACcYIAkQqLrFumht.........IE5dxw8d-biwUJ09KtS7RvARKSOJyzsv9",
      "token_type":"bearer",
      "expires_in":86399,
      "accountHolderId":"8UA4IF4sJXQOrT-0xHXDeigJkTxp3MR9kGhwa4oFFAg=",
      "createTime":"2018-05-02T12:32:12.883Z",
      "passwordExpired":false,
      "uuid":"f291b39e-064c-4f89-9e23-d2c3672d8e96",
      "userId":"6hY9RsVoIwUvC_4RVSLhnGhJIsf3QJXCFcPULH0bQJY="
    }
    

    Successful response

    Field Type Description
    access_token String Security token
    accountHolderId String Your Account Holder Id (store it in your system if possible)
    userId String Your User ID (store it in your system if possible)
    token_type String The type of token
    expires_in Number
    createTime DataTime Time of creation
    passwordExpired Boolean
    uuid Srring

    Production environment

    https://secure.mifinity.com is our production endpoint to be reached by clients.

    https://secure.mifinity.com

    Access Key Management

    Generate API key

    If you are doing an automated connection to our APIs (machine to machine), you have to create a security key. Send this key within every call so we can authenticate you into our APIs.

    Keys do not expire (unless you create them with expiry date) and you can store them and use multiple times.

    Use the example below replacing access_token and userId with the values you have from the previous steps.

    The returning field keyData is your security key to call the API functions. Store this key (using the method you prefer) at the moment it is generated. Once created we will not show this value to you again (for security reasons). If you lose it, you can generate a new key and disable the lost one.

    We recommend that you manage your keys using the MiFinity portal. It can be convenient as it is usually not necessary to create keys frequently, and you can avoid implementing API calls for key creation in your system.

    To generate the API key , use this code:

    var data = "name=my%20key%20name";
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/users/6hY9RsVoIwUvC_4RVSLhnGhJIsf3QJXCFcPULH0bQJY=/api-keys");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("authorization", "Bearer YivPXq-5z3LjeZ_pc4V_2npiNoXACcYIAkQqLrFumht.........IE5dxw8d-biwUJ09KtS7RvARKSOJyzs");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/users/{userId}/api-keys

    Parameter Type Description
    Content-Type String Use value 'application/x-www-form-urlencoded'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Authorization String Authorization Use 'bearer '

    Parameters

    Field Type Description
    userId String (Path Variable)Your user Id
    name String Api Key name of your choice

    Successful response

    {
      "payload":[
        {
          "entityId":"smFb_iAQU2uHaP88myysvG-O90rUfax0WjHKz6gWWzI=",
          "lastPasswordChange":"2018-05-02T13:14:14.989Z",
          "createdOn":"2018-05-02T13:14:14.975Z",
          "keyName":"my key name",
          "keyData":"qbS2i_dlYYQrLwYvTzDd2CHpZ-KNR...VNs-3qLI1jQg7uvfx-A-bYwAS9EbHl-3h_OuQWNxjIO25mkr-t7j",
          "type":"API_KEY",
          "status":"ACTIVE",
          "totpEnabled":false,
          "valid":true
        }
      ]
    }
    

    Successful response

    Field Type Description
    entityId String Id for API key
    createOn DateTime Date Time for creating API time
    KeyData String Update an new API key.
    totpEnabled Boolean
    keyName String Key name
    type String Having API_KEY and EMAIL_PASSWORD two options
    totpEnabled Boolean
    valid Boolean
    lastPasswordChang String
    status String

    Disable API Key

    To disable an API key , use this code:

    var data = "name=my%20key%20name";
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("DELETE", "https://demo.mifinity.com/api/api-keys/smFb_iAQU2uHaP88myysvG-O90rUfax0WjHKz6gWWzI=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "qbS2i_dlYYQrLwYvTzDd2CHpZ-KNR...VNs-3qLI1jQg7uvfx-A-bYwAS9EbHl-3h_OuQWNxjIO25mkr-t7j");
    xhr.send(data);
    

    HTTP Request

    DELETE https://demo.mifinity.com/api/api-keys/{entityId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/x-www-form-urlencoded'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    key String Use your API key

    Parameters

    Field Type Description
    entityId String (Path Variable) The entity id of the key that will be disabled.

    Update API Key

    Updates an API key properties. Note that calling this API will return in token being flagged as expired.

    To update an API key , use this code:

    var data = JSON.stringify({
            "totpEnabled":false
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("PUT", "https://demo.mifinity.com/api/api-keys/S_bYbUDbx-QjAbhNP6_YOqNVqQJ_SH1TUQ5SlUfLuNk=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p8Bq2r2AO1jG68Tjp2Qw1d62F8R_axDre5aOFQkIpldqtl8D_CWRIcazGBDIE0KVLHnl0H4oa2OlzjF65qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    PUT https://demo.mifinity.com/api/api-keys/{keyId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/x-www-form-urlencoded'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    key String Use your API key

    Parameters

    Field Type Require Description
    keyId String Entity Id for the API Key (Path Variable)
    totpEnabled Boolean
    keyName String optional Key name
    type String optional Having API_KEY and EMAIL_PASSWORD two options
    keyData String optional API Key

    Successful response

    {
       "payload": [
            {
                "entityId": "BQb4XyMlK3Cr5wNx6ytwsbPmhQs6wk32TvQUqd9BpGc=",
                "lastPasswordChange": "2018-09-25T09:05:25.542Z",
                "createdOn": "2018-09-25T09:05:25.539Z",
                "keyName": "fifth key",
                "keyData": "2v9hJY9SscdEgCsQZokCcDvg90Q0QCqE/plDflvRl38=",
                "type": "API_KEY",
                "status": "ACTIVE",
                "totpEnabled": false,
                "valid": true
            }
        ]
    }
    

    Successful response

    Field Type Description
    entityId String Id for API key
    createOn DateTime Date Time for creating API time
    KeyData String Update an new API key.
    totpEnabled Boolean
    keyName String Key name
    type String Having API_KEY and EMAIL_PASSWORD two options
    lastPasswordChang String
    valid Boolean
    status String

    Account and Account Holder interaction API Calls

    Get Account Listing by Account Holder Id

    Get list of Accounts belonging to an Account Holder by AccountHolderId. Replacing key and accountHolderId with the values that you have from the previous steps. Using any paramaters value.

    To get account lists, use this code:

    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/account-holders/c50fzSfbhsLvmtcx9zTgkDwvjg8ZxOi2LUWHvcGkVc0=/accounts");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    
    

    HTTP Request

    GET https://demo.mifinity.com/api/account-holders/{accountHolderId}/accounts

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountHolderId String Unique account holder id (Path Variable)
    accountDescription String optional Account description
    number Number optional Unique account number
    accountType String optional The account type. Accepted values: SYSTEM, PLATFORM, CARD
    loading boolean optional Is loading account
    currency String optional Account currency
    includeDisabled boolean Show disabled accounts
    andor String optional And, Or operator
    includeKycPending boolean optional Show KYC pending accounts (default true)
    sort sort optional Records sort direction
    total long optional Total number of records to return
    page int optional
    size int optional

    Successful response

    {
        "payload": [
            {
                "accountNumber": "50010001000007",
                "accountDescription": "Travel",
                "balance": {
                    "amount": 0,
                    "currency": "EUR",
                    "presentationAmount": "EUR0.00"
                },
                "availableBalance": {
                    "amount": 0,
                    "currency": "EUR",
                    "presentationAmount": "EUR0.00"
                },
                "displayInfo": "50010001000007-travel [ 0.00 EUR ]",
                "accountHolderId": "n9bOW7XaTXpfU-rtQwEWr2XBAX1nkI6LtgwiZVikWKY=",
                "accountType": "PLATFORM",
                "notificationThresholdAmount": 0,
                "accountCategory": "TRAVEL",
                "createdOn": "2018-09-12T10:37:46.185Z",
                "isDefault": true,
                "entityId": "DM0fGZ8g3lyhgT8atnG6Rc0l4DcrkpaUpsTvaZwAB78="
            }
        ],
        "page": {
            "size": 100,
            "page": 0,
            "total": 3
        }
    }
    

    Successful response

    Field Type Description
    accountNumber String The unique account number
    accountDescription String Description of the account
    balance Object Complex object containing amount, currency and persentationAmount
    avaiableBalance Object Complex object containing amount, currency and persentationAmount
    displayInfo String Display information
    accountHolderId String Unique account holder Id
    accountType String the type of account
    notificationThresholdAmount int
    createdOn String Date and time token generation timestamp
    accountCategory String Account category. Values: GAMING, TRAVEL, E_COMMERCE, FOREX
    isDefault boolean
    entityId String Unique entity id
    page Object Complex object containing: size, page and total

    Update Account Threshold

    Update an account threshold by using accountId (which is entityid) generated in the previous steps.

    To update account threshold, use this code:

    var data = JSON.stringify({
      "notificationThresholdAmount": 10
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("PUT", "https://demo.mifinity.com/api/accounts/HbQDvaIwhweH6BW0FF_uSdL__FEJ7QCkw8KCfOJVNP0=/threshold");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    PUT https://demo.mifinity.com/api/accounts/{accountId}/threshold

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    EntityId String Unique entity id
    notificationThresholdAmount BigDecimal the value of threshold amount

    Successful response

    {
        "payload": [
            {
                "accountNumber": "50010001000015",
                "accountDescription": "teff",
                "balance": {
                    "amount": 0,
                    "currency": "EUR",
                    "presentationAmount": "EUR0.00"
                },
                "availableBalance": {
                    "amount": 0,
                    "currency": "EUR",
                    "presentationAmount": "EUR0.00"
                },
                "displayInfo": "50010001000015-teff [ 0.00 EUR ]",
                "accountHolderId": "Q_dr37VojL1shDZwSvQe1KVUhV19nDaRwqzdbw1EHsI=",
                "accountType": "PLATFORM",
                "notificationThresholdAmount": 10,
                "accountCategory": "GAMING",
                "createdOn": "2018-09-12T12:28:31.241Z",
                "isDefault": false,
                "entityId": "lyUneEZqJSMF3lqvHIrJoQvDdXk-DrG6hPLgQGaa52c="
            }
        ]
    }
    

    Successful response

    Field Type Description
    accountNumber String The unique account number
    accountDescription String Description of the account
    balance Object Complex object containing amount, currency and persentationAmount
    avaiableBalance Object Complex object containing amount, currency and persentationAmount
    displayInfo String Display information
    accountHolderId String Unique account holder Id
    accountType String the type of account
    notificationThresholdAmount int changed into new value
    createdOn String Date and time token generation timestamp
    accountCategory String Account category. Values: GAMING, TRAVEL, E_COMMERCE, FOREX
    isDefault boolean default is false
    entityId String Unique entity id

    Change Users Password

    An API call used to change a user’s password using the userId which is generated in the first steps. A successful response is shown through an empty payload (status 200). Note that a password can only be updated once per day.

    To change user's password, use this code:

    var data = JSON.stringify({
      "newPassword":"NeW_Pa$$w0rD",
      "oldPassword":"Pa$$w0rD"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("PUT", "https://demo.mifinity.com/api/users/PJ71Bz9hI3SKv3Q5YBQTqUrO5fKtSDs0PzQ8MrmdlFo=/password");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    PUT https://demo.mifinity.com/api/users/{userId}/password

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    userId String Unique entity id
    newPassword String optional the new password for the platform
    oldPassword String optional the old password for the platform

    Successful response

    {
        "payload": []
    }
    
    {
        "errors": [
            {
                "type": "VALIDATION_FIELD",
                "errorCode": "VALIDATION",
                "message": "You can change your password only once per day.",
                "formObjectName": "form",
                "field": "newPassword"
            }
        ]
    }
    

    Disable Account

    Disabling a particular account

    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("DELETE", "https://demo.mifinity.com/api/accounts/HbQDvaIwhweH6BW0FF_uSdL__FEJ7QCkw8KCfOJVNP0=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    
    

    HTTP Request

    DELETE https://demo.mifinity.com/api/accounts/{accountId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountId String (Path Variable) Unique entityid

    Successful response

    {
       "payload": []
    }
    

    Successful Response

    HTTP Status Code 200. It means that the account has been deleted successfully.

    Get Account Details

    API call used to get account details for a specific account using the entityId that generated by previous steps.

    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/accounts/dbUMjHccVQm-YS0m2U-AvAqbnRiFyGUTg111fZheWho=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    
    

    HTTP Request

    GET https://demo.mifinity.com/api/accounts/{accountId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountId String (Path Variable) Unique accountId

    Successful response

    {
         "payload": [
            {
                "accountNumber": "50010001000056",
                "accountDescription": "Account Description",
                "balance": {
                    "amount": 0,
                    "currency": "EUR",
                    "presentationAmount": "EUR0.00"
                },
                "availableBalance": {
                    "amount": 0,
                    "currency": "EUR",
                    "presentationAmount": "EUR0.00"
                },
                "displayInfo": "50010001000056-Account Description [ 0.00 EUR ]",
                "accountHolderId": "-y9hAHGi37AAcYcZMLgXoYoCAyLpv7RzMURfLesNuQ4=",
                "accountType": "PLATFORM",
                "notificationThresholdAmount": 0,
                "accountCategory": "GAMING",
                "createdOn": "2018-09-18T13:41:51.934Z",
                "isDefault": false,
                "entityId": "XEO_sznjmzGEPtTL7Bk0t_LqSgdt_UvzgQYMRRwV704="
            }
        ]
    }
    

    Successful response

    Field Type Description
    accountNumber String The unique account number
    accountDescription String Description of the account
    balance Object Complex object containing amount, currency and persentationAmount
    avaiableBalance Object Complex object containing amount, currency and persentationAmount
    displayInfo String Display information
    accountHolderId String Unique account holder Id
    accountType String the type of account
    notificationThresholdAmount int
    createdOn String Date and time token generation timestamp
    accountCategory String Account category. Values: GAMING, TRAVEL, E_COMMERCE, FOREX
    isDefault boolean default is false
    entityId String Unique entity id

    Update Account Description

    Updating an eWallet Account friendly name (description) by using the unique entityId generated previously and providing a new account description.

    var data = JSON.stringify({
           "accountDescription":"specific account for Travel Europe"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("PUT", "https://demo.mifinity.com/api/accounts/HbQDvaIwhweH6BW0FF_uSdL__FEJ7QCkw8KCfOJVNP0=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    PUT https://demo.mifinity.com/api/accounts/{accountId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountDescription String The new description for the account

    Successful response

    {
         "payload": [
           {
                "accountNumber": "50010001000007",
                "accountDescription": "specific account for Travel Europe",
                "balance": {
                    "amount": 118,
                    "currency": "EUR",
                    "presentationAmount": "EUR118.00"
                },
                "availableBalance": {
                    "amount": 118,
                    "currency": "EUR",
                    "presentationAmount": "EUR118.00"
                },
                "displayInfo": "50010001000007-specific account for Travel Europe [ 118.00 EUR ]",
                "accountHolderId": "VaEKpgpPl5eNJs4RKv9BuFmICfDpgX1-OQfv2CWqX78=",
                "accountType": "PLATFORM",
                "notificationThresholdAmount": 0,
                "accountCategory": "GAMING",
                "isDefault": true,
                "entityId": "NPZMGY7K2rRIjyGpoOgbKhu2GCc7bB4u1NUQI4-m3K4="
            }
    
        ]
    }
    

    Successful response

    Field Type Description
    accountNumber String The unique account number
    accountDescription String New Description of the account
    balance Object Complex object containing amount, currency and persentationAmount
    avaiableBalance Object Complex object containing amount, currency and persentationAmount
    displayInfo String Display information
    accountHolderId String Unique account holder Id
    accountType String the type of account
    notificationThresholdAmount int changed into new value
    accountCategory String Account category. Values: GAMING, TRAVEL, E_COMMERCE, FOREX
    isDefault boolean default is false
    entityId String Unique entity id

    Lookup API Calls

    Currency Lookup

    Return all available currrencies.

    To return available currencies, use this code:

    var data = "grant_type=client_credentials";
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/currencies");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    GET https://demo.mifinity.com/api/currencies

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Successful response

    {
          "payload": [
            {
                "currencyCode": "EUR",
                "displayName": "Euro",
                "fractionDigits": 2
            },
            {
                "currencyCode": "CZK",
                "displayName": "Czech Republic Koruna",
                "fractionDigits": 2
            },
            {
                "currencyCode": "SEK",
                "displayName": "Swedish Krona",
                "fractionDigits": 2
            }
        ]
    }
    

    Successful response

    Field Type Description
    currencyCode String The code for currency
    displayName String The currency name
    fractionDigits Integer

    Get Bank Field Descriptions

    Returns bank details fields dictionary.

    To return bank details field descriptions, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/dictionaries/bank-details-fields");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/dictionaries/bank-details-fields

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Successful response

    {
         "payload" : [
        {
      "code" : "BANK_NAME",
      "name" : "Bank Name"
    }
      ]
    }
    

    Successful response

    Field Type Description
    code String Represent Enum Key
    name String Represent Enum value

    Parse IBAN Number

    Validates input IBAN number and returns bank details if IBAN is valid.

    var data = JSON.stringify({
            "iban":"NL75RABO0315142490"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/validate/iban/NL75RABO0315142490");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    GET https://demo.mifinity.com/api/validate/iban/{iban}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Description
    iban String (Path Variable) it's an additional number that contains extra information to help overseas banks identify your account for payments

    Successful response

    {
         "payload" : [
        {
      "iban" : "NL75RABO0315142490",
      "bankName" : "Bank Name",
      "country" : {
        "iso2" : "IE",
        "name" : "Ireland"
      },
      "city" : "San Gwann",
      "address" : "Head Office, Digital Hub, Ind. Est. LS3, LifeScience Park, , San Gwann",
      "swift" : "APAPSMT",
      "valid" : true
    }
      ]
    }
    

    Successful response

    Field Type Description
    iban String IBAN number.Size range: minimum of 34 characters and up to 34 characters.
    bankName String Bank Name
    country String Complex object containing country code: iso2 and country name
    city String Bank city
    address String Bank Address
    swift String Bank Swift Code
    valid boolean If Bank is valid or not

    Get Pay My Card Currencies

    To get all available currencies for Pay My Card.

    To return all available currencies for Pay My Card, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/pmc/currencies");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/pmc/currencies

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Successful response

    {
         "payload": [
            {
                "currencyCode": "AFN",
                "displayName": "Afghan Afghani",
                "fractionDigits": 2
            },
            {
                "currencyCode": "ALL",
                "displayName": "Albanian Lek",
                "fractionDigits": 2
            },
            {
                "currencyCode": "DZD",
                "displayName": "Algerian Dinar",
                "fractionDigits": 2
            },
            {
                "currencyCode": "VND",
                "displayName": "Vietnamese Dong",
                "fractionDigits": 0
            }
        ]
    }
    

    Successful response

    Field Type Description
    currencyCode String currencyCode
    displayName String Name of Country currency
    fractionDigits Integer Fraction Digits

    Transactional API Calls

    • iFrame

    eWallet iFrame

    Getting Started with iFrame

    To use iFrame you need to get API key and account number for funds in MiFinity merchant account. The next step you are to implement a code that makes a secure call upon MiFinity the init-iframe api with your api key and payment info. The init-iframe call will return you encrypted initilizationToken you can use to show payment interface on your website.

    For instance, you wish to get 20 EUR for purchase from a client called John Smith. On your backend you call MiFinity API as the right way (shell code).

    var data = JSON.stringify({
      "client":{
        "dob":"1985-10-10",
        "firstName":"John",
        "lastName":"Smith",
        "nationality":"GB",
        "emailAddress":"smith@mail.test",
        "phone":"79797979",
        "dialingCode": "353"},
        "clientReference":"john85",
        "address":{
          "addressLine1":"Baker str 212B",
          "countryCode":"GB",
          "postalCode":"123456",
          "city":"London"},
          "traceId":"$TRACE_ID",
          "money":
          {"amount":20,
          "currency":"EUR"
          },
          "description":"payment",
          "validationKey":"$VALIDATION_KEY",
          "returnUrl":"$RETURN_URL",
          "destinationAccountNumber":"$ACCOUNT_NUMBER"}
        );
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/pegasus-ci/api/gateway/init-iframe");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/pegasus-ci/api/gateway/init-iframe

    Parameter Type Description
    Content-Type String Use value 'application/x-www-form-urlencoded'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    $API_KEY String Your API key
    $ACCOUNT_NUMBER String your MiFinity account number for funds
    $VALIDATION_KEY String Unique ID for the transaction
    $TRACE_ID String Unique ID for the transaction
    $RETURN_URL String URL upon which you will receive a callback from Mifinity when the transaction is successfully processed.

    In response you will have json string with initializationToken.

    {
    "payload":[
        {
          "traceId":"traceId1497444847",
          "initializationToken":"initializationToken_example",
          "client":
            {
              "dob":"1985-10-10",
              "firstName":"John",
              "lastName":"Smith",
              "nationality":"GB",
              "emailAddress":"smith@mail.test"
              },
          "address":
            {
              "addressLine1":"Baker str 212B",
              "countryCode":"GB",
              "postalCode":"123456",
              "city":"London"
              }
        }
    ]
    }
    

    initializationToken — contains encrypted payment info you should use on your website to initialize IFrame.

    So next, when you have the initializationToken, you are to generate the right way in javascript rag html code for your client John Smith

    <script src="https://demo.mifinity.com/widgets/sgpg.js?58190a411dc3"></script>
    <div id="widget-container"></div>
    <script>
        var widget = showPaymentIframe("widget-container", {
            token: "initializationToken_example",
            complete: function() {
                setTimeout(function() {
                  // some code here
                  // widget.close(); // or redirect
                }, 5000);
            }
        });
    </script>
    

    initializationToken_example — is initializationToken

    complete — is a function which will be called upon the completion of the payment no matter if it is successful or not. In the above given example the complete function contains the code sample that closes Sgpg Iframe 5 seconds later.

    MiFinity javascript API also provides you with success and fail callback functions in case you wish to redirect John Smith to a specific page according to the result of payment but you should not trust these callbacks since they are client side and cannot be trusted to make any funds moving. You should wait for a notification on the return_url.

    When John Smith makes the payment and it is successfully processed, you will get a POST request upon your return_url from Mifinity with json string as in the right example.

    {"traceId":"traceId1497542703",
    "money":{"amount":20.00,"currency":"EUR","presentationAmount":"20 EUR"},
    "description":"payment",
    "clientReference":"john85",
    "validationKey":"72d6131606cf4f05e4db32c92c4cab7fa081a4cf99c51e874e9e224dc6e60c03",
    "cardToken":null,
    "responseCode":"A3R4GYDl_KkIuRbOTA6NG4dU0Pn_rNJrrR3ZjVP3Bkc=",
    "captureToken":null,
    "transactionReference":"85181c39-0128-4f3c-81b8-6ca5314f7d96",
    "paymentType":"EWALLET"}
    

    iFrame JavaScript API

    Methods

    showPaymentIframe(divId, widgetParams) → {PaymentIframeObject}

    generates a payment widget and attaches it to DOM

    Tutorials: Getting Started with IFrame

    Parameters:

    Name Type Description
    divId String id of container for widget in DOM model
    widgetParams PaymentIframeParams The parameters

    Returns:

    Type: PaymentIframeObject

    widget handler

    See the Example under javascript tag

    <script src="https://demo.mifinity.com/widgets/sgpg.js?58190a411dc3"></script>
    <div id="widget-container"></div>
    <script>
        var widget = showPaymentIframe("widget-container", {
            token: "initializationToken_example",
            complete: function() {
                // close the widget after 5s
                setTimeout(function() {
                  widget.close();
                }, 5000);
            }
        });
    </script>
    

    PaymentIframeObject

    Properties:

    Name Type Description
    close function id of container for widget in DOM model

    PaymentIframeParams

    Properties:

    Name Type Attributes Description
    widgetParams.token String initilizationToken obtained by calling the init-iframe api
    widgetParams.merchant String optional Company name to show to a client on ui side (in the field "Payment for:")
    widgetParams.fail function optional The function will be called upon failure of the payment
    widgetParams.success function optional The function will be called upon the successfull completion of the payment. This response is client-side and should not be trusted. Please check transaction status by requesting MiFinity trasaction status API before doing any funds moving.
    widgetParams.complete function optional The function will be called upon the completion of the payment no matter if it is successful or not

    Initialize iFrame

    This API is used to receive initialization token for SGPG iframe. Token should be used in 30 minutes, otherwise it will expire.

    HTTP Request

    POST https://demo.mifinity.com/pegasus-ci/api/gateway/init-iframe

    var data = JSON.stringify({
        "returnUrl": "http://yoururl/callback",
        "errorUrl": "http://yoururl/errorcallback",
        "validationKey": "246576793213125465465465ewqweqwewqewqeqwe32414erwrewrewrew4654",
        "client": {
            "dob": "1985-10-10",
            "firstName": "Luke",
            "lastName": "Skywalker",
            "dialingCode": "353",
            "phone": "79797979",
            "nationality": "IE",
            "emailAddress":"smith@mail.test"
        },
        "clientReference": "Client 123",
        "address": {
            "addressLine1": "Digital Hub, Ind. Est.",
            "addressLine2": "LS3, LifeScience Park, ",
            "countryCode": "IE",
            "postalCode": "ABC 1234",
            "city": "San Gwann"
        },
        "traceId": "R3f3r3n)E",
        "money": {
            "amount": 200,
            "currency": "EUR",
            "presentationAmount": "EUR200.0"
        },
        "description": "this is a description",
        "destinationAccountNumber": "5000000123432105"});
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/pegasus-ci/api/gateway/init-iframe");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Header

    Parameter Type Description
    Content-Type String Use value 'application/x-www-form-urlencoded'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    PHP example

    There are two PHP files, which show how to work by using PHP language: payment.php & callback.php.

    payment.php

    The code example in the right code erea.

    payment.php

    <?php
    // usage: php -S localhost:8000
    $apiKey = ""; // your api key
    $accountId = '0000000000000007'; // your account number
    
    $url = 'https://demo.mifinity.com';
    $traceId = 'traceId'.time(); // unique id for the transaction
    $validationKey = hash('sha256', 'validationKey'.$traceId);
    
    $clientData = [
        'client' => [
            'dob' => '1985-10-10',
            'firstName' => 'John',
            'lastName' => 'Smith',
            'nationality' => 'GB',
            'emailAddress' => 'smith@mail.test',
            'phone' => '8911111111111',
             "dialingCode": "353"
         ],
        'clientReference' => 'john85',
        'address' => [
            'addressLine1' => 'Baker str 212B',
            'countryCode' => 'GB',
            'postalCode' => '123456',
            'city' => 'London'
        ],
        'traceId' => $traceId,
        'money' => [
            'amount' => 20,
            'currency' => 'EUR'
        ],
        'description' => 'payment',
        'validationKey' => $validationKey,
        'returnUrl' => 'http://yoururl/callback.php',
        'destinationAccountNumber' => $accountId,
        'checkThreeDSecure' => true
    ];
    ?>
    <!doctype html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>Example</title>
        <style>
            #widget-container {
                /* your styles */
                margin: 25px auto;
            }
        </style>
    <script src="<?=$url ?>/widgets/sgpg.js?58190a411dc3"></script>
    </head>
    <body>
    <h1>init-iframe result</h1>
    <pre>
    <?php
    $ch = curl_init("$url/pegasus-ci/api/gateway/init-iframe");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
      'api-version: 1',
      "key: $apiKey",
      'Content-Type: application/json;charset=UTF-8'
    ]);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($clientData));
    $rawResp = curl_exec($ch);
    $resp = json_decode($rawResp, true);
    if (!isset($resp['payload'][0]['initializationToken'])) {
      echo "Error\n";
      $curl_errno = curl_errno($ch);
      $curl_error = curl_error($ch);
      if ($curl_errno > 0) {
        error_log("cURL Error ($curl_errno): $curl_error");
      } else {
        error_log("init-iframe error. Output: $rawResp");
      }
    }
    curl_close($ch);
    $token = $resp['payload'][0]['initializationToken'];
    ?>
    </pre>
    <div id="widget-container"></div>
    <script>
        var widget = showPaymentIframe("widget-container", {
            token: "<?= $token?>",
            complete: function() {
                setTimeout(function() {
                  //widget.close();
                }, 10000);
            },
            fail: function() {
              alert('Payment has been failed');
            },
            success: function() {
              // don't trust this response, wait for the notification on the url specified in returnUrl
              alert('Payment has been processed');
            }
        });
    </script>
    </body>
    </html>
    

    callback.php

    The code example in the right code erea.

    callback.php

    <?php
    $req = json_decode(file_get_contents('php://input'));
    $traceId = $req['traceId'];
    $validationKey = $req['validationKey'];
    $clientReference = $req['clientReference'];
    
    // only example
    if (isTransactionValid($traceId, $validationKey)) {
      updateClientsBalance($clientReference, $traceId);
    }
    ?>
    

    Parameters

    Name Type Required Description
    returnUrl URL true

    URL to send callback after successful transfer. Response will be JSON representation of ApiSGPGPaymentResponse object. Results will be sent asynchronously as soon as transfer will be executed by remote processor (this can happen after closing of iframe). Time of execution is not guaranteed and can be different for different processors.

    errorUrl URL false

    URL to send callback after failed transfer. Response will be JSON representation of ApiSGPGErrorResponse object. Results will be sent asynchronously as soon as transfer will be executed by remote processor (this can happen after closing of iframe). Time of execution is not guaranteed and can be different for different processors.

    validationKey String true

    Secret key to validate payment response and get status of payment

    . Minimum characters are 48 and maximum characters are 255.
    client SGPGPlatformUser true

    Complex object containing information about client. All information except email can be edited in iframe

    clientReference String true

    Id of client in merchant’s system

    . Maximum characters are 48.
    address SGPGAddress true

    Complex object containing information about client’s address, can be edited in iframe

    traceId String true

    Merchant's identifier for the call

    . Maximum characters are 48.
    money Money true

    Complex Money object containing transfer amount and currency

    description String true

    Description of transfer. Sofort/Klarna deposits are limited to 27 characters.

    . Maximum characters are 255.
    destinationAccountNumber String true

    Merchant’s account number to collect payment

    iframeId EntityId false

    Id of iframe if merchant has several iframes with different types

    SGPGPlatformUser

    Name Type Required Description
    dob LocalDate true

    Date of birth

    firstName String true

    First name

    lastName String true

    Last name

    phone String true

    Phone number

    dialingCode String true

    DialingCode

    nationality String false

    Nationality

    emailAddress String true

    Email address

    . Maximum characters are 50.

    SGPGAddress

    Name Type Required Description
    addressLine1 String true

    Contains Building Name/Number

    addressLine2 String false

    Contains Street

    countryCode String true

    The ISO 2 digit country code

    postalCode String false

    Address postcode

    state String false

    State code

    city String true

    City

    Money

    Name Type Required Description
    amount BigDecimal true

    The amount of Money

    currency String true

    Currency in ISO 4217 Format

    presentationAmount String false

    Consists of Currency Code and Amount

    
    {
      "payload" : [
        {
      "traceId" : "R3f3r3n)E",
      "initializationToken" : 
        "ttobQnnk5foJyHK4_C4gt9R7j-9FxxHTtYvk_fsOLyY4PqBO1qTTmnXy0MgJlnO9Bv3BX1zAgNO5G
        vtagiQYBsVZb5kU9dz_mn_YiW5otHzdQmqmPTRulJBI1k93B1ZzivuqJ723PBtJ5_GSbVt4Z12V1Zh
        UYjm6iwqIjsVs7SFRxME4WsWjvytWc6HEe7v7I7Yxk6A2O60TPMaNGmC6HAA2F52Ho4frmpwUmkfzS
        0rklgSiSWhWQ2OVfNRDwSyLUY7s8OsywtUsHHXu3DVBAVONfqrnW295zwf16Tv6Py05OCg7_M4tLOE
        1gbfMbyQKPW_BNAj9F53IrTXTCAxMExai6dlvjATJhPnhViO511T32_nO_tdmQssqQAiLu35YLGfC_I
        VeQ1FDQZo6yZhDWENgVADCmbkGk7lW9RnBMp6GzxxPhhiykDzqdJfFYAs3LjV-IZfkCwj0iA2u4XwY
        H4wP2VUshu-P3EUDXdau3NPx9ked5tr1Grpe_0wt1d2i2m_hknJWlFZ7AjXP-cBtqgbjMcbhVq9nGA
        LDtxEJtvbQ42fnDRoLlX-TWliSUgmKoo8VrUiXpRvD8pyFjDY_p5vDg4UXBQQ-VdDWLtdS-tN_HpwU
        T0ELaCkTPdxOYaXW2936z1otKZB6JZDDhmcg8mO-R2e9lf--I0Gqr7N-7SZ71XaO3e7IsHClUQ31OX
        3m0WcakbsaKLGp4jf-jxGEqFhrHa0_VmwY_8NgZun5s3nUXueyal6g-J1DKye6NVNULV2TimIbEyuk
        401aECRsF5LAhF9FjZM2TZHslfkVk1FJlyKPIrxrpk0pkilFCADHHMdmjjLFGls_IpOLuI9Ao7Wsfb
        t-sZpqFTl3swlKZYWLZHg33_rVOg9rtL_iLaLQZQaVJYaqsGt1LFLDix41TorRNk8UT0fSPs_NwORN
        7KQoWjEExiITGpyNtHsG5-isZT-4NGxLmBmVPJRJKeHkvoQ0JRHA0sJVWLVqn78pfRdYV2m_sKQvQi
        k2LIJeKhm5oMP--UebFN7jaEwWqK5tVpAqGLPN6LiX2dUcnY7-1-2SXHl5OPua7iNwC4WaG_d_bDqT
        9HqPCJCYO7lAs6De_Myco1xWEioeSySn5zLMaZ7YpzLamZ0Pnp6-Q-nMTZNTPSekdQlAXwUByrwsoJ
        IjTsZ5leaMAcb567krAfFmAaFa4zoUwz05rCuiivslDrdvp0N2PlZ3x6E1Os8YODqgJrMHZpCYxDsa
        C8bXf-ByfIcSh2Mu_KrQ94D7VM1yjcTXVqgzlvaHWWV2P435_E6Wb2a1XAkVyIZjikWoj-pMTb3gfG
        H4x73g7-DWopEXW529RTH3P44xG-_Ti4_dq4iPhlXVujdNU6v4361lCfMBsdPr6wXwzyi3zIdhB7dI
        -zZSmyKNnOVAExNxcHKaaNLfaIZRnHoYk1y4TTr2xyYC-Xp34qQydp68tkcfIa70x4jU14m7QPJxPq
        -cFhr2Ol4fIvJgza95bMLkgtpXY8uqbqZYPp-qq8YrAlMdKMB2BGRXI4FBNAoBSf4j_eMooB8sWn-t
        5EshU2CmjVAHeSfnFe-NEKPnX3EzvqPawPgVFajjx5EdC0vlt9bT92bzRzK4fPGTQpW8x8O186p_28
        YlMLCo0uGoY6R3NE0m3oNjYEAz9uzmwNcoHr-sAs5oyeRRPiXnmFTnIDZhK9_DTUvbFsM=",
      "client" : {
        "dob" : "1985-10-10",
        "firstName" : "Luke",
        "lastName" : "Skywalker",
        "dialingCode": "353",
        "phone" : "79797979",
        "nationality" : "IE"
      },
      "address" : {
        "addressLine1" : "Digital Hub, Ind. Est.",
        "addressLine2" : "LS3, LifeScience Park, ",
        "countryCode" : "IE",
        "postalCode" : "ABC 1234",
        "city" : "San Gwann"
      }
    }
      ]
    }
    

    Successful Response

    Name Type Description
    traceId String

    The trace id that was submitted with the call

    initializationToken String

    Encoded iframe initialization token

    client SGPGPlatformUser

    Complex object containing initial information about client

    address SGPGAddress

    Complex object containing initial information about client's address

    Payment Status

    This API is used to get status of SGPG payment.

    HTTP Request

    GET https://demo.mifinity.com/api/gateway/payment-status/{validationKey}

    Parameters

    Name Type Required Description
    validationKey String true

    Secret key used in Initialize SGPG Iframe (Path Variable)

    Successful Response

    {
      "payload" : [
        {
      "status" : "SUCCESSFUL",
      "paymentResponse" : {
        "traceId" : "R3f3r3n)E",
        "money" : {
          "amount" : 200.0,
          "currency" : "EUR",
          "presentationAmount" : "EUR200.0"
        },
        "description" : "this is a description",
        "clientReference" : "Client 123",
        "validationKey" : "cmdamxyhjwcoyvqweuaacspwcifddiywaeuvoylkjudhixez",
        "responseCode" : "c5c36p7rkodsgcpfa8r2lrkaht",
        "transactionReference" : "2990de05-c3be-4eee-821b-544b1abc633e",
        "paymentType" : "CARD"
      }
    }
      ]
    }
    

    SGPGPaymentStatusResponse

    Name Type Required Description
    status SGPGPaymentStatus true

    (ApiSGPGPaymentStatus is an enum)

    paymentResponse SGPGPaymentResponse true

    Payment response in case of successful transfer

    errorMessage String true

    Error message in case of error

    SGPGPaymentStatus

    Name
    AUTHORISED
    SUCCESSFUL
    PENDING
    FAILED
    NOT_COMPLETED

    SGPGPaymentResponse

    Name Type Required Description
    sourceMoney Money true

    The source amount that was submitted with the call

    destinationMoney Money true

    The total amount that was deposited to the destinationAccount

    totalFees Money true

    The total amount of fees that were charged from the source amount

    exchangeRate BigDecimal true

    The exchange rate used in the transfer

    traceId String false

    The trace id that was submitted with the call

    money Money false

    Complex Money object containing transfer amount and currency

    description String false

    Description of payment

    clientReference String true

    Id of client in merchant’s system

    validationKey String false

    Secret key to validate payment response (available only for Iframe responses)

    cardToken EntityId true

    Card token for further usage

    responseCode String false

    Response code for futher usage in SGPG Revert and Credit API calls

    captureToken String true

    Capture token (available only for Sub-Iframe responses)

    transactionReference String false

    Reference for money transaction

    paymentType SGPGPaymentType false

    (ApiSGPGPaymentType is an enum)

    SGPGPaymentType

    Name
    CARD
    BANK
    EWALLET

    Account to Account Transfer

    An API used to complete an account to account transcation by using an account details. This API will throw a 401 error code if TOTP (aka Two Factor Auth) is enabled on the logged in user until the request is sent with a security-code header containing a valid value.

    To transfer account to account, use this code

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "EUR"
      },
      "sourceAccount": "5001000001080652",
      "destinationAccount": "5001000001100815",
      "description": "10 EUR ACC2ACC",
      "traceId": "zeihwhp-43gs8iwyf7v4h5f"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/acct2acct");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    
    

    To perform an account to account transfer (eWallet), please use the example below replacing key and sourceAccount with the values you have from the previous steps.

    This feature is intended to transfer money to any MiFinity account. For test purposes, login into the MiFinity portal in Demo and create an account. Use the number of this newly created account as the destinationAccount.

    HTTP Request

    POST https://demo.mifinity.com/api/payments/acct2acct

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    sourceAccount String Account number from which the amount of money will be debited
    destinationAccount String Account number to receive the credit
    amount Number Transaction value
    currency String Currency code (ISO 4217)
    description String Description for this transfer which min character is 1 and max characters are 25
    traceId String Unique transaction identifier. You can assign any value
    paymentCategoryType String optional ApiPaymentCategory is an enum,which containing GAMING_PAYOUT/REMITTANCE/REFUND/PAYROLL/EXPENSES/E_COMMERCE/TRAVEL/NOT_SET

    Successful response

    {
      "payload": [
            {
                "transactionId": "N4t0bf5GxqVL0WoyypbNXgnB7TE5NpbMuV8Z0wVPGXY=",
                "transactionReference": "69f6c395-ef54-4140-8a63-a1f869150f81",
                "traceId": "R3f3r3n)E",
                "datePosted": "2018-09-21T10:15:58.189Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR20.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR20.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    Successful response

    Field Type Description
    transactionId EntityId Encrypted identifier of the transaction
    transactionReference String Transaction unique reference
    traceId String Identifier that has been passed to the request will be returned
    datePosted DateTime The date/time that the transaction posted.
    sourceMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    destinationMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    exchangeRate Integer
    totalFee Object Complex object containing: amount(Number), currency(String) and displayable (String)

    iFrame integration document

    The details on how to use API documentation for iFrame integrations can be found here

    • PayAnyCard / PayMyCard

    Using the Card details

    To perform a Pay Any Card / Pay My Card transaction by using card details, please use the example below replacing key and sourceAccount with the values you have from the previous steps.

    To do a PAC , use this code

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "EUR"
      },
      "cardNumber": "4485419417109",
      "description": "10 EUR PAC",
      "expiryDate": "12/18",
      "sourceAccount": "50010001000007",
      "traceId": "zeihwhp-13gs8iwyf7v4h5d",
      "cardHolderCountryCode": "MT",
      "cardHolderNationality": "MT",
      "cardHolderAddress": "London st.",
      "cardName": "Luke Skywalker"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pac");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "qbS2i_dlYYQrLwYvTzDd2CHpZ-KNR...VNs-3qLI1jQg7uvfx-A-bYwAS9EbHl-3h_OuQWNxjIO25mkr-t7j");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/payments/pac

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    money Object The Object containing two String attributes: amount and currency of the transfer
    description String Optional Description for this transfer which min character is 1 and max characters are 25
    expiryDate String Card expiry date
    sourceAccount String Account number from which the amount of money will be debited
    traceId String Unique transaction identifier. You can assign any value
    cardNumber String Card number. Your business contact can provide more test numbers
    Currency      Card Number
    ----------      --------------
    USD         4670 1253 3973 2535
    EUR         4532 0013 1173 7685
    GBP         4929 8243 3119 8286
    INR         5316 6240 2619 0070
    cardHolderCountryCode String Card holder country code (ISO 3166-1)
    cardHolderNationality String Card holder nationality (ISO 3166-1)
    cardHolderAddress String Optional Card holder address
    cardName String Name on card
    cardHolderEmail String Optional Card holder email (this is required by our processors)
    paymentCategoryType PaymentCategoryType Optional Enum Object which containing GAMING_PAYOUT, REMITTANCE, REFUND, PAYROLL, EXPENSES,E_COMMERNCE, TRAVEL AND NOT_SET

    money

    Field Type Required Description
    presentationAmount String Optional Consists of Currency Code and Amount
    amount Number Transaction value
    currency String Currency code (ISO 4217)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    Successful Response

    Field Type Description
    transactionId EntityId Encrypted identifier of the transaction
    transactionReference String Transaction unique reference
    traceId String Identifier that has been passed to the request will be returned
    datePosted DateTime The date/time that the transaction posted.
    sourceMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    destinationMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    exchangeRate Integer
    totalFee Object Complex object containing: amount(Number), currency(String) and displayable (String)

    To do a PMC , use this code

    var data = JSON.stringify({
      "money" : {"amount":1, "currency":"GBP"},
            "cardNumber" : "4485419417109",
            "description" : "1 GBP PMC",
            "expiryDate" : "01/22",
            "sourceAccount" : "50010001000007",
            "traceId" : "zeihwhp-43gs8iwyf7vd9",
            "cardHolderCountryCode":"GB",
            "cardHolderNationality":"GB",
            "cardHolderAddress":"London st.",
            "cardName":"Card Name"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pmc");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "qbS2i_dlYYQrLwYvTzDd2CHpZ-KNR...VNs-3qLI1jQg7uvfx-A-bYwAS9EbHl-3h_OuQWNxjIO25mkr-t7j");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/payments/pmc

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    money Object The Object containing two String attributes: amount and currency of the transfer
    description String Optional Description for this transfer which min character is 1 and max characters are 25
    expiryDate String Card expiry date
    sourceAccount String Account number from which the amount of money will be debited
    traceId String Unique transaction identifier. You can assign any value
    cardNumber String Card number. Your business contact can provide more test numbers
    Currency      Card Number
    ----------      --------------
    USD         4670 1253 3973 2535
    EUR         4532 0013 1173 7685
    GBP         4929 8243 3119 8286
    INR         5316 6240 2619 0070
    cardHolderCountryCode String Card holder country code (ISO 3166-1)
    cardHolderNationality String Card holder nationality (ISO 3166-1)
    cardHolderAddress String Optional Card holder address
    cardName String Name on card
    cardHolderEmail String Optional Card holder email (this is required by our processors)
    paymentCategoryType PaymentCategoryType Optional Enum Object which containing GAMING_PAYOUT, REMITTANCE, REFUND, PAYROLL, EXPENSES,E_COMMERNCE, TRAVEL AND NOT_SET

    money

    Field Type Required Description
    presentationAmount String Optional Consists of Currency Code and Amount
    amount Number Transaction value
    currency String Currency code (ISO 4217)

    Successful response

    {
    
       "payload": [
            {
                "transactionId": "iygyFrwQoBcEyriUyrDQs5bSTqDDYuSd3k-KcNbXfpA=",
                "transactionReference": "838b5837-5171-4ac9-b215-cb0bd87ff362",
                "destinationMoney": {
                    "amount": 1,
                    "currency": "GBP",
                    "presentationAmount": "GBP1.00"
                },
                "exchangeRate": 1,
                "sourceMoney": {
                    "amount": 1,
                    "currency": "GBP",
                    "presentationAmount": "GBP1.00"
                },
                "traceId": "zeihwhp-43gs8iwyf7vd9",
                "datePosted": "2018-09-24T10:03:42.774Z"
            }
        ]
    }
    

    Successful Response

    Field Type Description
    transactionId EntityId Encrypted identifier of the transaction
    transactionReference String Transaction unique reference
    traceId String Identifier that has been passed to the request will be returned
    datePosted DateTime The date/time that the transaction posted.
    sourceMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    destinationMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    exchangeRate Integer

    Using CardPayeeId (token)

    To perform a Pay Any Card / Pay My Card transaction by using cardPayeeId, please use the example below replacing key and sourceAccount with the values you have from the previous steps.

    To do a PAC , use this code

    var data = JSON.stringify({
           "money" : {"amount":10, "currency":"EUR"},
            "sourceAccount" : "50010001000007",
            "traceId" : "zeihwhp-13gs8iwyf7v4h5d",
            "cardPayeeId":"vWwhHgps4wreiE9JeTrgzBRZeihwLr6W9ujjq9auOz0="
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pac");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "qbS2i_dlYYQrLwYvTzDd2CHpZ-KNR...VNs-3qLI1jQg7uvfx-A-bYwAS9EbHl-3h_OuQWNxjIO25mkr-t7j");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/payments/pac

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    money Object The Object containing two String attributes: amount and currency of the transfer
    description String Optional Description for this transfer which min character is 1 and max characters are 25
    sourceAccount String Account number from which the amount of money will be debited
    traceId String Unique transaction identifier. You can assign any value
    cardPayeeId String Card Payee Id
    paymentCategoryType PaymentCategoryType Optional Enum Object which containing GAMING_PAYOUT, REMITTANCE, REFUND, PAYROLL, EXPENSES,E_COMMERNCE, TRAVEL AND NOT_SET

    money

    Field Type Required Description
    presentationAmount String Optional Consists of Currency Code and Amount
    amount Number Transaction value
    currency String Currency code (ISO 4217)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    Successful Response

    Field Type Description
    transactionId EntityId Encrypted identifier of the transaction
    transactionReference String Transaction unique reference
    traceId String Identifier that has been passed to the request will be returned
    datePosted DateTime The date/time that the transaction posted.
    sourceMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    destinationMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    exchangeRate Integer
    totalFee Object Complex object containing: amount(Number), currency(String) and displayable (String)

    To do a PMC , use this code

    var data = JSON.stringify({
            "money" : {"amount":1, "currency":"GBP"},
            "cardPayeeId" : "vWwhHgps4wreiE9JeTrgzBRZeihwLr6W9ujjq9auOz0=",
            "sourceAccount" : "50010001000007",
            "traceId" : "zeihwhp-43gs8iwyf7vd9"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pmc");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "qbS2i_dlYYQrLwYvTzDd2CHpZ-KNR...VNs-3qLI1jQg7uvfx-A-bYwAS9EbHl-3h_OuQWNxjIO25mkr-t7j");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/payments/pmc

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    money Object The Object containing two String attributes: amount and currency of the transfer
    description String Optional Description for this transfer which min character is 1 and max characters are 25
    sourceAccount String Account number from which the amount of money will be debited
    traceId String Unique transaction identifier. You can assign any value
    cardPayeeId String Card Payee Id
    paymentCategoryType PaymentCategoryType Optional Enum Object which containing GAMING_PAYOUT, REMITTANCE, REFUND, PAYROLL, EXPENSES,E_COMMERNCE, TRAVEL AND NOT_SET

    money

    Field Type Required Description
    presentationAmount String Optional Consists of Currency Code and Amount
    amount Number Transaction value
    currency String Currency code (ISO 4217)

    Successful response

    {
    
       "payload": [
            {
                "transactionId": "iygyFrwQoBcEyriUyrDQs5bSTqDDYuSd3k-KcNbXfpA=",
                "transactionReference": "838b5837-5171-4ac9-b215-cb0bd87ff362",
                "destinationMoney": {
                    "amount": 1,
                    "currency": "GBP",
                    "presentationAmount": "GBP1.00"
                },
                "exchangeRate": 1,
                "sourceMoney": {
                    "amount": 1,
                    "currency": "GBP",
                    "presentationAmount": "GBP1.00"
                },
                "traceId": "zeihwhp-43gs8iwyf7vd9",
                "datePosted": "2018-09-24T10:03:42.774Z"
            }
        ]
    }
    

    Successful Response

    Field Type Description
    transactionId EntityId Encrypted identifier of the transaction
    transactionReference String Transaction unique reference
    traceId String Identifier that has been passed to the request will be returned
    datePosted DateTime The date/time that the transaction posted.
    sourceMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    destinationMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    exchangeRate Integer

    UnionPay International (China UnionPay)

    We have a partnership with UnionPay and as a principal member we offer a money remittance service back to users in mainland China. We can process payouts from any country in the European Economic Area (EEA) back on to UnionPay cards issued by supported banks and card types in mainland China. These would still be using Pay Any Card/Pay My Card, meaning the request and responses are identical. The main difference is that China have a State Administration Foreign Exchange called SAFE which opens at 23h00 GMT until 14h00 GMT. Transactions sent within this period are processed instantly. Transactions outside SAFE’s opening times are queued and processed when SAFE opens again in the next day.

    PAC/PMC integration document

    The details on how to use API documentation for Pay MyCard (PMC) and Pay AnyCard (PAC) integrations can be found here

    PAC iFrame

    PAC iFrame integration document

    The details on how to ue API documentation for Pay AnyCard (PAC) integration on iFrame can be found here

    • PayAnyBank

    An API call used to perform bank payments. To perform a Pay Any Bank transaction, please use the example below replacing key and sourceAccount with the values you have from the previous steps. Pay special attention to the ‘fields’ object. Note that every country has different requirements for bank transactions which should be observed within the data passed. The parameters Money, BankPayee and fields should be changed according to the bank country. The details are shown for each country within the list.

    To do a PAB , use this code:

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "EUR"
      },
      "description": "10 EUR PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "IE",
        "currency": "EUR",
        "description": "bank payment description",
        "fields": {
          "IBAN": "IE29AIBK93115212345678",
          "BIC": "BOFIIE2D",
          "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"IE",
          "CUSTOMER_NAME": "Customer Name",
          "BANK_NAME": "Bank of Ireland"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/payments/pab

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    sourceAccount String Account number from which the amount of money will be debited
    money Money Transaction value
    description String Description for this transfer which min character is 1 and max characters are 25
    traceId String Unique transaction identifier. You can assign any value
    bankPayee BankPayee Destination account and destination bank data. In demo you can use fake data
    executionMode String optional ExcutionMode isan enum, which containing STANDRAD/URGENT/TARGET/SAME_DAY_VALUE
    paymentCategoryType String optional ApiPaymentCategory is an enum,which containing GAMING_PAYOUT/REMITTANCE/REFUND/PAYROLL/EXPENSES/E_COMMERCE/TRAVEL/NOT_SET

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217)

    BankPayee

    Field Type Required Description
    country String Bank payee country code
    currency String Bank Payee Currency
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN
    BIC String Bank BIC
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    Successful Response

    Field Type Description
    transactionId EntityId Encrypted identifier of the transaction
    transactionReference String Transaction unique reference
    traceId String Identifier that has been passed to the request will be returned
    datePosted DateTime The date/time that the transaction posted.
    sourceMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    destinationMoney Object Complex object containing: amount(Number), currency(String) and displayable (String)
    exchangeRate Integer
    totalFee Object Complex object containing: amount(Number), currency(String) and displayable (String)

    1. Argentina

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "ARS"
      },
      "description": "10 ARS PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "AR",
        "currency": "ARS",
        "description": "bank payment description",
        "fields": {
                "ACCOUNT_NUMBER": "0145806057668127441234",
                "PERSONAL_ID_NUMBER": "12345678",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): ARS

    BankPayee

    Field Type Required Description
    country String Bank payee country code: AR
    currency String Bank Payee Currency: ARS
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String CBU (22 digits)
    PERSONAL_ID_NUMBER String DNI: 8 digits, numeric or CUIT: 11 digits, numeric
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "ARS",
                    "displayable": "ARS10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "ARS",
                    "displayable": "ARS10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "ARS",
                    "displayable": "ARS0.00"
                }
            }
        ]
    }
    

    2. Austria

    var data = JSON.stringify({
    
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "AT",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN":"AT022050302101023600",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"AT",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: AT
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN Alphanumeric (20)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    3. Belgium

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "EUR"
      },
      "description": "10 EUR PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "BE",
        "currency": "EUR",
        "description": "bank payment description",
        "fields": {
          "IBAN": "BE68844010370034",
          "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"BE",
          "CUSTOMER_NAME": "Customer Name",
          "BANK_NAME": "Name of Bank"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: BE
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (16)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    4. Bulgaria

    4.1. BGN currency example

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "BGN"
      },
      "description": "10 BGN PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "BG",
        "currency": "BGN",
        "description": "bank payment description",
        "fields": {
          "IBAN": "BG13UNCR70004520615675",
          "CUSTOMER_NAME": "Customer Name",
          "BANK_NAME": "Name of Bank"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): BGN

    BankPayee

    Field Type Required Description
    country String Bank payee country code: BG
    currency String Bank Payee Currency: BGN
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "BGN",
                    "displayable": "BGN10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "BGN",
                    "displayable": "BGN10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "BGN",
                    "displayable": "BGN0.00"
                }
            }
        ]
    }
    

    4.2. EUR currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "BG",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "BG80BNBG96611020345678",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"BG",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
        }
      });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: BG
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    5. Brazil

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "BRL"
      },
      "description": "10 BRL PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "BR",
        "currency": "BRL",
        "description": "bank payment description",
        "fields": {
         "ACCOUNT_NUMBER": "014580605766",
                "BRANCH_CODE": "12345",
                "PERSONAL_ID_NUMBER": "12345678901",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): BRL

    BankPayee

    Field Type Required Description
    country String Bank payee country code: BR
    currency String Bank Payee Currency: BRL
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (6 - 12 digits)
    BRANCH_CODE String (4 or 5 digits)
    PERSONAL_ID_NUMBER String CPF: 11 digits, numeric or CPNJ: 13 digits, numeric
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "BRL",
                    "displayable": "BRL10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "BRL",
                    "displayable": "BRL10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "BRL",
                    "displayable": "BRL0.00"
                }
            }
        ]
    }
    

    6. Canada

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "CAD"
      },
      "description": "10 CAD PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "CA",
        "currency": "CAD",
        "description": "bank payment description",
        "fields": {
         "ACCOUNT_NUMBER": "0145806",
                "BANK_CODE": "123",
                "BRANCH_CODE": "12345",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): CAD

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CA
    currency String Bank Payee Currency: CAD
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (7-12 digits)
    BANK_CODE String normally 3 digits
    BRANCH_CODE String normally 5 digits (transit code)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "CAD",
                    "displayable": "CAD10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "CAD",
                    "displayable": "CAD10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "CAD",
                    "displayable": "CAD0.00"
                }
            }
        ]
    }
    

    7. Switzerland

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "EUR"
      },
      "description": "10 EUR PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "CH",
        "currency": "EUR",
        "description": "bank payment description",
        "fields": {
          "IBAN": "CH5604835012345678009",
          "BIC": "KBAGCH22",
          "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"CH",
          "CUSTOMER_NAME": "Customer Name",
          "BANK_NAME": "Name of Bank"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CH
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (21)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    8. Chile

    var data = JSON.stringify({
       "money" : {"amount":10, "currency":"CLP"},
            "description" : "10 CLP PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "CL",
              "currency": "CLP",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "0145806057668124",
                "PERSONAL_ID_NUMBER": "12345678",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): CLP

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CL
    currency String Bank Payee Currency: CLP
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (4-16 digits)
    PERSONAL_ID_NUMBER String RUT: 8 or 9 alphanumeric characters
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "CLP",
                    "displayable": "CLP10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "CLP",
                    "displayable": "CLP10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "CLP",
                    "displayable": "CLP0.00"
                }
            }
        ]
    }
    

    9. Colombia

    var data = JSON.stringify({
      "money" : {"amount":3600, "currency":"COP"},
            "description" : "3600 COP PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "CO",
              "currency": "COP",
              "description": "bank payment description",
              "fields": {
                 "ACCOUNT_NUMBER": "014580605766",
                "PERSONAL_ID_NUMBER": "12345678",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): COP

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CO
    currency String Bank Payee Currency: COP
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (8-12 digits)
    PERSONAL_ID_NUMBER String Cedula de Ciudadania "CC": 8 - 10 digits, numeric
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "COP",
                    "displayable": "COP3600.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "COP",
                    "displayable": "COP3600.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "COP",
                    "displayable": "COP0.00"
                }
            }
        ]
    }
    

    10. Costa Rica

    var data = JSON.stringify({
       "money" : {"amount":650, "currency":"CRC"},
            "description" : "650 CRC PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "CR",
              "currency": "CRC",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "01458060576681200",
                "PERSONAL_ID_NUMBER": "123456789",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): CRC

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CR
    currency String Bank Payee Currency: CRC
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String 17 digits local account number (SINPE)
    PERSONAL_ID_NUMBER String Cedula de Identidad: 9-10 digits, numeric
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "CRC",
                    "displayable": "CRC650.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "CRC",
                    "displayable": "CRC650.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "CRC",
                    "displayable": "CRC0.00"
                }
            }
        ]
    }
    

    11. Cyprus

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "EUR"
      },
      "description": "10 EUR PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "CY",
        "currency": "EUR",
        "description": "bank payment description",
        "fields": {
          "IBAN": "CY17002001280000001200527600",
          "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"CY",
          "CUSTOMER_NAME": "Customer Name",
          "BANK_NAME": "Name of Bank"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CY
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (28)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    12. Czech Republic

    12.1. CZK currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"CZK"},
            "description" : "10 CZK PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "CZ",
              "currency": "CZK",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "0000192000145399",
                "BANK_CODE": "0800",
                "CUSTOMER_ADDRESS": "asdsasadsadsadas",
                "CUSTOMER_CITY": "city",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"CZ",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): CZK

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CZ
    currency String Bank Payee Currency: CZK
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String 16 digits
    BANK_CODE String 4 digits
    CUSTOMER_CITY String Alphanumeric (Max 25 characters
    CUSTOMER_ADDRESS String Alphanumeric (Max 25 characters
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "CZK",
                    "displayable": "CZK10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "CZK",
                    "displayable": "CZK10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "CZK",
                    "displayable": "CZK0.00"
                }
            }
        ]
    }
    

    12.2. EUR currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "CZ",
              "currency": "EUR",
              "description": "bank payment description",
               "fields": {
                "IBAN": "CZ6508000000192000145399",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"CZ",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: CZ
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (24)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    13. Germany

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "DE",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "DE89370400440532013000",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"DE",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: DE
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    14. Denmark

    14.1. EUR currency example

    var data = JSON.stringify({
             "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "DK",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "DK5000400440116243",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"DK",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: DK
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (18
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    14.2. DKK currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"DKK"},
            "description" : "10 DKK PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "DK",
              "currency": "DKK",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "044011624",
                "BANK_CODE": "0040",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): DKK

    BankPayee

    Field Type Required Description
    country String Bank payee country code: DK
    currency String Bank Payee Currency: DKK
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (Min 4, Max 10 digits)
    BANK_CODE String (4 digits)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "DKK",
                    "displayable": "DKK10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "DKK",
                    "displayable": "DKK10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "DKK",
                    "displayable": "DKK0.00"
                }
            }
        ]
    }
    

    15. Estonia

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "EE",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                 "IBAN":"EE382200221020145685",
                 "ACCOUNT_NUMBER": "1034126658",
                "BANK_CODE": "22",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"EE",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: EE
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String Min 4, Max 14 digits
    BANK_CODE String 2 digits
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    16. Spain

    var data = JSON.stringify({
           "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "ES",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "ES8701820004756386447000",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"ES",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: ES
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (24)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    17. Finland

    var data = JSON.stringify({
       "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "FI",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "FI2112345600000785",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"FI",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: FI
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (18)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    18. France

    var data = JSON.stringify({
      "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "FR",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "FR1420041010050500013M02606",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"FR",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: FR
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    19. United Kingdom

    19.1. GBP currency example

    var data = JSON.stringify({
    
            "money" : {"amount":10, "currency":"GBP"},
            "description" : "10 GBP PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "GB",
              "currency": "GBP",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "31926819",
                "BANK_SORT_CODE": "601613",
                "CUSTOMER_ADDRESS": "asdsasadsadsadas",
                "CUSTOMER_CITY": "city",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"GB",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): GBP

    BankPayee

    Field Type Required Description
    country String Bank payee country code: GB
    currency String Bank Payee Currency: GBP
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String ( 8 digits)
    BANK_SORT_CODE String 6 digits
    CUSTOMER_CITY String Alphanumeric (Max 25 characters)
    CUSTOMER_ADDRESS String Alphanumeric (Max 25 characters)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "GBP",
                    "displayable": "GBP10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "GBP",
                    "displayable": "GBP10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "GBP",
                    "displayable": "GBP0.00"
                }
            }
        ]
    }
    

    19.2. EUR currency example

    var data = JSON.stringify({
    
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "GB",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "GB29NWBK60161331926819",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"GB",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: GB
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    20. French Guiana

    var data = JSON.stringify({
    
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "GF",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "FR7630006000011234567890189",
                "BIC": "BNPAGFGX",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"GF",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: GF
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    21. Gibraltar

    var data = JSON.stringify({
           "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "GI",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "GI04BARC000001234567890",
                "BIC": "BJSBGIGX",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"GI",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: GI
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (23)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    22. Guadeloupe

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "GP",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "FR7630006000011234567890189",
                "BIC": "AGRIGPGX",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"GP",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: GP
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    23. Greece

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "GR",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "GR1601101250000000012300695",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"GR",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code:GR
    currency String Bank Payee Currency:EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    24. Croatia

    24.1. EUR currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "HR",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "HR1210010051863000160",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"HR",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: HR
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (21)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    24.2. HRK currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"HRK"},
            "description" : "10 HRK PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "HR",
              "currency": "HRK",
              "description": "bank payment description",
              "fields": {
                "IBAN": "HR1210010051863000160",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): HRK

    BankPayee

    Field Type Required Description
    country String Bank payee country code: HR
    currency String Bank Payee Currency: HRK
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (21)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    25. Hungary

    25.1. EUR currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "HU",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "HU42117730161111101800000000",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"HU",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code:HU
    currency String Bank Payee Currency:EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (28)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    25.2 HUF currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"HUF"},
            "description" : "10 HUF PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "HU",
              "currency": "HUF",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "117080012054779400000000",
                "BANK_CODE": "11708001",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):HUF

    BankPayee

    Field Type Required Description
    country String Bank payee country code:HU
    currency String Bank Payee Currency:HUF
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String 24 digits
    BANK_CODE String 8 digits
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "HUF",
                    "displayable": "HUF10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "HUF",
                    "displayable": "HUF10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "HUF",
                    "displayable": "HUF0.00"
                }
            }
        ]
    }
    

    26. Ireland

    var data = JSON.stringify({
      "money": {
        "amount": 10,
        "currency": "EUR"
      },
      "description": "10 EUR PAB",
      "sourceAccount": "5001000001080652",
      "traceId": "zeihwhp-43gs8iwyf7v4h9k",
      "bankPayee": {
        "country": "IE",
        "currency": "EUR",
        "description": "bank payment description",
        "fields": {
          "IBAN": "IE29AIBK93115212345678",
          "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"IE",
          "CUSTOMER_NAME": "Customer Name",
          "BANK_NAME": "Bank of Ireland"
        }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code:IE
    currency String Bank Payee Currency:EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    27. Italy

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "IT",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "IT60X0542811101000000123456",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"IT",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code:IT
    currency String Bank Payee Currency:EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    28. Liechtenstein

    var data = JSON.stringify({
           "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "LI",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "LI7408806123456789012",
                "BIC": "BALPLI22",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"LI",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code:LI
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (21)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    29. Lithuania

    var data = JSON.stringify({
           "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "LT",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "LT601010012345678901",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"LT",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: LT
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (20)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    30. Luxembourg

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "LU",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "LU280019400644750000",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"LU",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217):EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: LU
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (20)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    31. Latvia

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "LV",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "LV80BANK0000435195001",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"LV",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: LV
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (21)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    32. Monaco

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "MC",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "MC5810096180790123456789085",
                "BIC": "BACAMCMC",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"MC",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: MC
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    33. Martinique

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "MQ",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "FR7630006000011234567890189",
                "BIC": "BNPAMQMX",
               "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"MQ",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: MQ
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    34. Malta

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "MT",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "MT84MALT011000012345MTLCAST001S",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"MT",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: MT
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (31)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    35. Mexico

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"MXN"},
            "description" : "10 MXN PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "MX",
              "currency": "MXN",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "012345678912345678",
                "PERSONAL_ID_NUMBER": "123456789012345678",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): MXN

    BankPayee

    Field Type Required Description
    country String Bank payee country code: MX
    currency String Bank Payee Currency: MXN
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String CLABE: 18 digits
    PERSONAL_ID_NUMBER String CURP: 18 alphanumeric characters
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "MXN",
                    "displayable": "MXN10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "MXN",
                    "displayable": "MXN10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "MXN",
                    "displayable": "MXN0.00"
                }
            }
        ]
    }
    

    36. Netherlands

    var data = JSON.stringify({
           "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "NL",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "NL91ABNA0417164300",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"NL",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: NL
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (18)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    37. Peru

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"PEN"},
            "description" : "10 PEN PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "PE",
              "currency": "PEN",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "00000123456789123456",
                "PERSONAL_ID_NUMBER": "12345678",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): PEN

    BankPayee

    Field Type Required Description
    country String Bank payee country code: PE
    currency String Bank Payee Currency: PEN
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (20 digits)
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    PERSONAL_ID_NUMBER String DNI: 8 digits, numeric or RUC: 11 digits, numeric or Foreigner Card: 12 digits, alphanumeric
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "PEN",
                    "displayable": "PEN10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "PEN",
                    "displayable": "PEN10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "PEN",
                    "displayable": "PEN0.00"
                }
            }
        ]
    }
    

    38. Poland

    38.1. EUR currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "PL",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "PL61109010140000071219812874",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"PL",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: PL
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (28)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    38.2. PLN currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"PLN"},
            "description" : "10 PLN PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "PL",
              "currency": "PLN",
              "description": "bank payment description",
              "fields": {
                "IBAN": "PL61109010140000071219812874",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): PLN

    BankPayee

    Field Type Required Description
    country String Bank payee country code: PL
    currency String Bank Payee Currency: PLN
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (28)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "PLN",
                    "displayable": "PLN10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "PLN",
                    "displayable": "PLN10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "PLN",
                    "displayable": "PLN0.00"
                }
            }
        ]
    }
    

    39. Portugal

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "PT",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "0000000784311",
                "BANK_CODE": "0035",
                "BRANCH_CODE": "0683",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"PT",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: PT
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String 13 digits
    BANK_CODE String 4 digits
    BRANCH_CODE String 4 digits
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    40. Paraguay

    var data = JSON.stringify({
            "money" : {"amount":7000, "currency":"PYG"},
            "description" : "7000 PYG PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "PY",
              "currency": "PYG",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "0123456789123456",
                "PERSONAL_ID_NUMBER": "1234567",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): PYG

    BankPayee

    Field Type Required Description
    country String Bank payee country code: PY
    currency String Bank Payee Currency: PYG
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (4-16 digits)
    PERSONAL_ID_NUMBER String Cedula de Identidad: 7 digits, numeric or Passport: 5 digits, alphanumeric or RUC: 9 digits, numeric
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "PYG",
                    "displayable": "PYG7000.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "PYG",
                    "displayable": "PYG7000.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "PYG",
                    "displayable": "PYG0.00"
                }
            }
        ]
    }
    

    41. Reunion

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "RE",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "FR7630006000011234567890189",
                "BIC": "BFCORERX",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"RE",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: RE
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    42. Romania

    42.1. EUR currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "RO",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "RO49AAAA1B31007593840000",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"RO",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: RO
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (24)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    42.2. RON currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"RON"},
            "description" : "10 RON PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "RO",
              "currency": "RON",
              "description": "bank payment description",
              "fields": {
                "IBAN": "RO49AAAA1B31007593840000",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): RON

    BankPayee

    Field Type Required Description
    country String Bank payee country code: RO
    currency String Bank Payee Currency: RON
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (24)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    43. Sweden

    43.1. SEK currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"SEK"},
            "description" : "10 SEK PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "SE",
              "currency": "SEK",
              "description": "bank payment description",
              "fields": {
                "IBAN": "SE4550000000058398257466",
                "ACCOUNT_NUMBER": "310910412",
                "BANK_CODE": "6000",
                "CUSTOMER_ADDRESS_1": "asdsasadsadsadas",
                "CUSTOMER_CITY": "city",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"SE",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): SEK

    BankPayee

    Field Type Required Description
    country String Bank payee country code: SE
    currency String Bank Payee Currency: SEK
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String normally 6-10 digits
    BANK_CODE String normally 4 digits (but 5 digits in case of Swedbank)
    CUSTOMER_CITY String Alphanumeric (Max 25 characters
    CUSTOMER_ADDRESS_1 String Alphanumeric (Max 25 characters
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "SEK",
                    "displayable": "SEK10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "SEK",
                    "displayable": "SEK10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "SEK",
                    "displayable": "SEK0.00"
                }
            }
        ]
    }
    

    43.2. EUR currency example

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "SE",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "SE4550000000058398257466",
                "ACCOUNT_NUMBER": "310910412",
                "BANK_CODE": "6000",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"SE",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: SE
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (24)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    44. Slovenia

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "SI",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "SI56031001001300933",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"SI",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: SI
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (19
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    45. Slovakia (Slovak Republic)

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "SK",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "SK9311110000001057361004",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"SK",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: SK
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (24)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    46. Uruguay

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"UYU"},
            "description" : "10 UYU PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "UY",
              "currency": "UYU",
              "description": "bank payment description",
              "fields": {
                "ACCOUNT_NUMBER": "01234567891234",
                "PERSONAL_ID_NUMBER": "12345678",
                "ACCOUNT_TYPE": "1",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): UYU

    BankPayee

    Field Type Required Description
    country String Bank payee country code: UY
    currency String Bank Payee Currency: UYU
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    ACCOUNT_NUMBER String (Min 7, Max 14 digits)
    PERSONAL_ID_NUMBER String Cedula de Identidad: 8 digits, numeric or RUT: 12 digits, numeric
    ACCOUNT_TYPE String 0: checking account or 1: savings account
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "UYU",
                    "displayable": "UYU10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "UYU",
                    "displayable": "UYU10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "UYU",
                    "displayable": "UYU0.00"
                }
            }
        ]
    }
    

    47. Mayotte

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "YT",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "FR7630006000011234567890189",
                "BIC": "BFCOYTYT",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"YT",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: YT
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (27)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    48. Guernsey

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "GG",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "GB29NWBK60161331926819",
                "BIC": "NWBKGB2L",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"GG",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: GG
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    49. Isle of Man

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "IM",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "GB29NWBK60161331926819",
                "BIC": "NWBKGB2L",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"IM",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: IM
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    50. Jersey

    var data = JSON.stringify({
            "money" : {"amount":10, "currency":"EUR"},
            "description" : "10 EUR PAB",
            "sourceAccount" : "5001000001080652",
            "traceId" : "zeihwhp-43gs8iwyf7v4h9k",
            "bankPayee": {
              "country": "JE",
              "currency": "EUR",
              "description": "bank payment description",
              "fields": {
                "IBAN": "GB29NWBK60161331926819",
                "BIC": "NWBKGB2L",
                "BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE":"JE",
                "CUSTOMER_NAME": "Customer Name",
                "BANK_NAME": "Name of Bank"
              }
      }
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/payments/pab");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    Money

    Field Type Required Description
    amount Number Transaction value
    currency String Currency code (ISO 4217): EUR

    BankPayee

    Field Type Required Description
    country String Bank payee country code: JE
    currency String Bank Payee Currency: EUR
    entityId String optional BankPayee unique identification number
    description String optional Description for this transfer which min character is 1 and max characters are 25
    fields Map Map of type String

    fields

    Field Type Required Description
    IBAN String Bank IBAN: Alphanumeric (22)
    BIC String Bank BIC: Alphanumeric (Min 8, Max 11)
    CUSTOMER_NAME String Alphanumeric (Max 70 characters)
    BANK_NAME String Alphanumeric (Max 70 characters)
    BENEFICIARY_ADDRESS_COUNTRY_ISO_CODE String Country code

    Successful response

    {
    
        "payload": [
            {
                "transactionId": "6PX0FjAufQSJ9eEMzjdyuMpFeR4vXI_Ln08rgzdvO-I=",
                "transactionReference": "4c9f3bf3-1c92-4d79-bbf0-b3d85cee2980",
                "traceId": "82595452748399303479",
                "datePosted": "2018-09-24T09:53:52.158Z",
                "sourceMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "destinationMoney": {
                    "amount": 10,
                    "currency": "EUR",
                    "displayable": "EUR10.00"
                },
                "exchangeRate": 1,
                "totalFees": {
                    "amount": 0,
                    "currency": "EUR",
                    "displayable": "EUR0.00"
                }
            }
        ]
    }
    

    • Transaction Information

    Get Transactions

    An API call that gets transactions for a particular account holder. We return the transactions ordered by decreasing creation date, new transactions displayed first. We return the transactions in pages, such that you can use the page parameter to get the next list of transactions after the first API call. If you want to get the status of a single transaction you can use Get Transaction Status API call. It is recommended to always use the fromdate and todate parameters.

    To get transaction, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/account-holders/{accountHolderId}/transactions?fromdate=2020-03-22T00:00:00.000Z&todate=2020-03-22T23:59:59.999Z&page=1&size=50");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/account-holders/{accountHolderId}/transactions?fromdate=2020-03-22T00:00:00.000Z&todate=2020-03-22T23:59:59.999Z&page=1&size=50

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountHolderId String Unique account Holder Id (Path Variable)
    fromdate DateTime optional transactions from date (Request Parameter)
    todate DateTime optional transactions to date (Request Parameter)
    description String optional Description for transaction
    traceId String optional Trace ID for transaction
    arn String optional ARN Number
    accountNumber String optional Account Number
    statusCode Integer optional Status Code
    transactionReference String optional Transaction Reference
    paymentCategoryType String optional Payment Category containing:GAMING, REMITTANCE, REFUND, PAYROLL, EXPENSES, E_COMMERCE, TRAVEL and NOT_SET
    eventType String optional Event type for transactions: LOAD_FROM_CARD, LOAD_FROM_BANK, LOAD_FROM_SGPG etc
    minSourceAmount BigDecimal optional Min source amount
    maxSourceAmount BigDecimal optional Max source amount
    currencyCode String optional Currency of the transfer
    minAmount BigDecimal optional Min transaction amount
    maxAmount BigDecimal optional Max transaction amount
    page int optional page that will be returned
    size int optional The number of transactons history

    Successful response

    {
        "payload": [
            {
                "money": {
                    "amount": 100,
                    "currency": "EUR",
                    "presentationAmount": "EUR100.00"
                },
                "source": "Card. 448541XXXXXX7109",
                "destination": "50010001000015",
                "description": "test",
                "transactionStatus": 3,
                "transactionStatusDescription": "Submitted",
                "traceId": "eadf3bf9-4536-49e3-a309-b6e72c17fa93",
                "transactionReference": "5131dc21-b4cc-461c-b4d7-9141ff7fa638",
                "createdOn": "2020-03-22T10:07:19.795Z",
                "paymentCategoryType": "NOT_SET",
                "entityId": "nIElxgeQoyqOWkxRrbm2i8tHsbJXlj0Nukh8fH1gW6o=",
                "eventType": "LOAD_FROM_CARD_SGPG",
                "accountEntries": [
                    {
                        "money": {
                            "amount": 100,
                            "currency": "EUR",
                            "presentationAmount": "EUR100.00"
                        },
                        "datePosted": "2020-03-22T10:07:19.796Z",
                        "description": "test",
                        "eventName": "Load From VISA",
                        "transactionReference": "5131dc21-b4cc-461c-b4d7-9141ff7fa638",
                        "accountFee": false
                    }
                ],
                "sourceAccountEntries": [
                    {
                        "money": {
                            "amount": -100,
                            "currency": "EUR",
                            "presentationAmount": "EUR-100.00"
                        },
                        "datePosted": "2020-03-22T10:07:19.796Z",
                        "description": "test",
                        "eventName": "Load From VISA",
                        "transactionReference": "5131dc21-b4cc-461c-b4d7-9141ff7fa638",
                        "accountFee": false
                    }
                ],
                "status": "OK",
                "type": "LOAD_FROM_CARD_SGPG",
                "processorType": "SECURE_TRADING",
                "initiatorUser": "akfz44tUsbYfT5OmltBXEW0S5SKVi0IutcZF2_VoWrw=",
                "initiatorAccountHolderId": "ECouoAw29Jj5F35UZe4sHAvpWs_bb6Y6owRtI1U0KYc="
            }
        ],
        "page": {
            "size": 50,
            "page": 0,
            "total": 1
        }
    }
    

    Successful Response

    Field Type Description
    money Money Complex Object Containing money amount
    source String a source account
    destination String a destination account
    descripton String Description for the transaction
    transactionStatus Integer Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    transactionStatusDescription String Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    traceId String Unique transaction identifier, Trace id of original request
    transactionReference String Transaction Reference
    createdOn String Date and time token generation timestamp
    paymentCategoryType String Complex enum Object containing: GAMING_PAYOUT, REMITTANCE, REFUND, PAYROLL, EXPENSES, E_COMMERCE, TRAVEL and NOT_SET
    entityId String Unique
    eventType String Complex enum Object containing: LOAD_FROM_CARD, LOAD_FROM_BANK, LOAD_FROM_SGPG, PAY_MY_CARD, PAY_ANY_CARD,PAY_ANY_BANK, LOAD_FROM_CARD_SGPG and so on
    status String status for http request
    type String that is same with eventType
    processorType String Complex enum Object containing: FINTRAX, ENVOY, REALEX, UNION_PAY, EARTHPORT, SECURE_TRADING,REPORTSENDER and so on
    initiatorUser String Unique user id
    initiatorAccountHolderId String Unique account holder id

    AccountEntries & SourceAccountEntries

    Field Type Description
    money Money Complex Object Containing money amount
    datePosted String Date and time token posted timestamp
    descripton String Transaction creation timestamp
    eventName String Transaction Name
    transactionReference String Transaction Reference
    accountFee boolean Defines whether entry is an account fee or not

    Money

    Field Type Description
    amount BigDecimal The amount of Money
    money String Currency in ISO 4217 Format
    presentationAmount String Consists of Currency Code and Amount

    Retrieving a Single Transaction

    To retrieve a single transaction it is recommended to use either the traceId or transactionReference, both of which are unique. An example is shown below:

    To get transaction by traceId, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/account-holders/{accountHolderId}/transactions?traceId= eadf3bf9-4536-49e3-a309-b6e72c17fa93");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/account-holders/{accountHolderId}/transactions?traceId= eadf3bf9-4536-49e3-a309-b6e72c17fa93

    To get transaction by transactionReference, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/account-holders/{accountHolderId}/transactions?transactionReference= 5131dc21-b4cc-461c-b4d7-9141ff7fa638");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/account-holders/{accountHolderId}/transactions?transactionReference= 5131dc21-b4cc-461c-b4d7-9141ff7fa638

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountHolderId String Unique account Holder Id (Path Variable)
    fromdate DateTime optional transactions from date (Request Parameter)
    todate DateTime optional transactions to date (Request Parameter)
    description String optional Description for transaction
    traceId String optional Trace ID for transaction
    arn String optional ARN Number
    accountNumber String optional Account Number
    statusCode Integer optional Status Code
    transactionReference String optional Transaction Reference
    paymentCategoryType String optional Payment Category containing:GAMING, REMITTANCE, REFUND, PAYROLL, EXPENSES, E_COMMERCE, TRAVEL and NOT_SET
    eventType String optional Event type for transactions: LOAD_FROM_CARD, LOAD_FROM_BANK, LOAD_FROM_SGPG etc
    minSourceAmount BigDecimal optional Min source amount
    maxSourceAmount BigDecimal optional Max source amount
    currencyCode String optional Currency of the transfer
    minAmount BigDecimal optional Min transaction amount
    maxAmount BigDecimal optional Max transaction amount
    page int optional page that will be returned
    size int optional The number of transactons history

    Successful response

    {
        "payload": [
            {
                "money": {
                    "amount": 100,
                    "currency": "EUR",
                    "presentationAmount": "EUR100.00"
                },
                "source": "Card. 448541XXXXXX7109",
                "destination": "50010001000015",
                "description": "test",
                "transactionStatus": 3,
                "transactionStatusDescription": "Submitted",
                "traceId": "eadf3bf9-4536-49e3-a309-b6e72c17fa93",
                "transactionReference": "5131dc21-b4cc-461c-b4d7-9141ff7fa638",
                "createdOn": "2020-03-22T10:07:19.795Z",
                "paymentCategoryType": "NOT_SET",
                "entityId": "nIElxgeQoyqOWkxRrbm2i8tHsbJXlj0Nukh8fH1gW6o=",
                "eventType": "LOAD_FROM_CARD_SGPG",
                "accountEntries": [
                    {
                        "money": {
                            "amount": 100,
                            "currency": "EUR",
                            "presentationAmount": "EUR100.00"
                        },
                        "datePosted": "2020-03-22T10:07:19.796Z",
                        "description": "test",
                        "eventName": "Load From VISA",
                        "transactionReference": "5131dc21-b4cc-461c-b4d7-9141ff7fa638",
                        "accountFee": false
                    }
                ],
                "sourceAccountEntries": [
                    {
                        "money": {
                            "amount": -100,
                            "currency": "EUR",
                            "presentationAmount": "EUR-100.00"
                        },
                        "datePosted": "2020-03-22T10:07:19.796Z",
                        "description": "test",
                        "eventName": "Load From VISA",
                        "transactionReference": "5131dc21-b4cc-461c-b4d7-9141ff7fa638",
                        "accountFee": false
                    }
                ],
                "status": "OK",
                "type": "LOAD_FROM_CARD_SGPG",
                "processorType": "SECURE_TRADING",
                "initiatorUser": "akfz44tUsbYfT5OmltBXEW0S5SKVi0IutcZF2_VoWrw=",
                "initiatorAccountHolderId": "ECouoAw29Jj5F35UZe4sHAvpWs_bb6Y6owRtI1U0KYc="
            }
        ],
        "page": {
            "size": 50,
            "page": 0,
            "total": 1
        }
    }
    

    Successful Response

    Field Type Description
    money Money Complex Object Containing money amount
    source String a source account
    destination String a destination account
    descripton String Description for the transaction
    transactionStatus Integer Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    transactionStatusDescription String Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    traceId String Unique transaction identifier, Trace id of original request
    transactionReference String Transaction Reference
    createdOn String Date and time token generation timestamp
    paymentCategoryType String Complex enum Object containing: GAMING_PAYOUT, REMITTANCE, REFUND, PAYROLL, EXPENSES, E_COMMERCE, TRAVEL and NOT_SET
    entityId String Unique
    eventType String Complex enum Object containing: LOAD_FROM_CARD, LOAD_FROM_BANK, LOAD_FROM_SGPG, PAY_MY_CARD, PAY_ANY_CARD,PAY_ANY_BANK, LOAD_FROM_CARD_SGPG and so on
    status String status for http request
    type String that is same with eventType
    processorType String Complex enum Object containing: FINTRAX, ENVOY, REALEX, UNION_PAY, EARTHPORT, SECURE_TRADING,REPORTSENDER and so on
    initiatorUser String Unique user id
    initiatorAccountHolderId String Unique account holder id

    AccountEntries & SourceAccountEntries

    Field Type Description
    money Money Complex Object Containing money amount
    datePosted String Date and time token posted timestamp
    descripton String Transaction creation timestamp
    eventName String Transaction Name
    transactionReference String Transaction Reference
    accountFee boolean Defines whether entry is an account fee or not

    Money

    Field Type Description
    amount BigDecimal The amount of Money
    money String Currency in ISO 4217 Format
    presentationAmount String Consists of Currency Code and Amount

    Get Account Entries

    API Call used to search relevant transactional entries of a particular account. This API call will return the transactions for the given account. Transactions are returned in pages, and one can return the next list of transactions using the page parameter.

    To get transaction detail, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/accounts/7FjySjwTibCU3puJcqkYMMZDeN4hdGnuWOREvIR8WZ0=/entries");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/accounts/{accountId}/entries

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accoutId String Unique account Id (Path Variable)
    fromdate DateTime transactions from date (Request Parameter)
    todate DateTime transactions to date (Request Parameter)
    total long optional
    page int optional page that will be returned
    size int optional

    Successful response

    {
          "payload": [
            {
                "account": {
                    "accountNumber": "50010001000007",
                    "accountDescription": "specific account for Travel Europe",
                    "balance": {
                        "amount": 98,
                        "currency": "EUR",
                        "presentationAmount": "EUR98.00"
                    },
                    "availableBalance": {
                        "amount": 98,
                        "currency": "EUR",
                        "presentationAmount": "EUR98.00"
                    },
                    "displayInfo": "50010001000007-specific account for Travel Europe [ 98.00 EUR ]",
                    "accountHolderId": "9q90bBfHWdg41SYDq1fuHKrvA7nUdr26c6fJ80mPROw=",
                    "accountType": "PLATFORM",
                    "notificationThresholdAmount": 0,
                    "accountCategory": "GAMING",
                    "createdOn": "2018-09-12T10:37:46.185Z",
                    "isDefault": true,
                    "entityId": "EmYyFJ4J_YMfzwJ3Smdy0xfEAr8MC1aLud6kdA8NUp0="
                },
                "money": {
                    "amount": 1,
                    "currency": "EUR",
                    "presentationAmount": "EUR1.00"
                },
                "runningBalanceInDisplay": {
                    "amount": 119,
                    "currency": "EUR",
                    "presentationAmount": "EUR119.00"
                },
                "datePosted": "2018-09-21T09:27:08.039+01:00",
                "description": "Pegasus Card Verification",
                "eventName": "Load From VISA",
                "transactionReference": "e830ec55-6bcb-49b2-a972-400347c94b71",
                "accountFee": false
            }
        ],
        "page": {
            "size": 100,
            "page": 0,
            "total": 3
        }
    }
    

    Successful Response

    Field Type Required Description
    account Account Complex object containing account details. shown below
    money Money Complex Object Containing money amount
    runningBalanceInDisplay Money Complex Object Containing money running balance
    descripton String Transaction creation timestamp
    eventName boolean Transaction Name
    transactionReference String Transaction Reference
    accountFee boolean Defines whether entry is an account fee or not

    Account

    Field Type Description
    accountNumber String The unique account number
    accountDescription String Description of the account
    balance Object Complex object containing amount, currency and persentationAmount
    avaiableBalance Object Complex object containing amount, currency and persentationAmount
    displayInfo String Display information
    accountHolderId String Unique account holder Id
    accountType String the type of account
    notificationThresholdAmount int
    createdOn String Date and time token generation timestamp
    accountCategory String Account category. Values: GAMING, TRAVEL, E_COMMERCE, FOREX
    isDefault boolean
    entityId String Unique entity id

    Money

    Field Type Required Description
    amount BigDecimal The amount of Money
    money String Currency in ISO 4217 Format
    presentationAmount String optional Consists of Currency Code and Amount

    Get Account Transaction Entries

    An API call that returns the transaction entries for all accounts belonging to your account holder. Transactions are returned in pages, and one can return the next list of transactions using the page parameter.

    To get transaction history, use this code:

    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/account-holders/N_hdbbvpUCqIxjW9tpf_GXGcXs2UBViztcbTEEcWX3Y=/accounts/entries");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/account-holders/{accountHolderId}/accounts/entries

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accoutHolderId String Unique account Holder Id (Path Variable)
    fromdate DateTime optional transactions from date (Request Parameter)
    todate DateTime optional transactions to date (Request Parameter)
    transactionRef string optional specific transaction reference
    total long optional
    page int optional
    size int optional

    Successful response

    {
         "payload": [
            {
                "account": {
                    "accountNumber": "50010001000007",
                    "accountDescription": "specific account for Travel Europe",
                    "balance": {
                        "amount": 98,
                        "currency": "EUR",
                        "presentationAmount": "EUR98.00"
                    },
                    "availableBalance": {
                        "amount": 98,
                        "currency": "EUR",
                        "presentationAmount": "EUR98.00"
                    },
                    "displayInfo": "50010001000007-specific account for Travel Europe [ 98.00 EUR ]",
                    "accountHolderId": "9q90bBfHWdg41SYDq1fuHKrvA7nUdr26c6fJ80mPROw=",
                    "accountType": "PLATFORM",
                    "notificationThresholdAmount": 0,
                    "accountCategory": "GAMING",
                    "createdOn": "2018-09-12T10:37:46.185Z",
                    "isDefault": true,
                    "entityId": "EmYyFJ4J_YMfzwJ3Smdy0xfEAr8MC1aLud6kdA8NUp0="
                },
                "money": {
                    "amount": 1,
                    "currency": "EUR",
                    "presentationAmount": "EUR1.00"
                },
                "runningBalanceInDisplay": {
                    "amount": 119,
                    "currency": "EUR",
                    "presentationAmount": "EUR119.00"
                },
                "datePosted": "2018-09-21T09:27:08.039+01:00",
                "description": "Pegasus Card Verification",
                "eventName": "Load From VISA",
                "transactionReference": "e830ec55-6bcb-49b2-a972-400347c94b71",
                "accountFee": false
            }
        ],
        "page": {
            "size": 100,
            "page": 0,
            "total": 1
        }
    }
    

    Successful Response

    Field Type Description
    account Account Complex object containing account details. shown below
    money Money Complex Object Containing money amount
    runningBalanceInDisplay Money Complex Object Containing money running balance
    descripton String Transaction creation timestamp
    eventName boolean Transaction Name
    transactionReference String Transaction Reference
    accountFee boolean Defines whether entry is an account fee or not

    Account

    Field Type Description
    accountNumber String The unique account number
    accountDescription String Description of the account
    balance Object Complex object containing amount, currency and persentationAmount
    avaiableBalance Object Complex object containing amount, currency and persentationAmount
    displayInfo String Display information
    accountHolderId String Unique account holder Id
    accountType String the type of account
    notificationThresholdAmount int
    createdOn String Date and time token generation timestamp
    accountCategory String Account category. Values: GAMING, TRAVEL, E_COMMERCE, FOREX
    isDefault boolean
    entityId String Unique entity id

    Money

    Field Type Description
    amount BigDecimal The amount of Money
    money String Currency in ISO 4217 Format
    presentationAmount String Consists of Currency Code and Amount

    Get Transaction Status

    An API call that given a transaction reference, returns the status of that particular transaction.

    To get transaction Status, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/transactions/69f6c395-ef54-4140-8a63-a1f869150f81/status");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/transactions/{transactionReference}/status

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    TrasactionReference String Unique transaction id identifier (Path Variable)

    Successful response

    {
          "payload": [
             {
                "transactionReference": "69f6c395-ef54-4140-8a63-a1f869150f81",
                "transactionStatus": 3,
                "transactionStatusDescription": "Submitted",
                "transactionLastUpdated": "2018-09-21T10:15:58.189Z",
                "traceId": "R3f3r3n)E"
            }
        ]
    }
    

    Successful Response

    Field Type Description
    transactionReference String Transaction Reference
    transactionStatus Integer Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    transactionStatusDescription String Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    transactionLastUpdated DateTime
    traceId String Trace Id of original request

    Get Transactions Status History

    An API call that gets transaction status history for a particular account holder between fromdate and todate. If fromdate and todate both are on a same date, it will display whole day transactions status history no matter what time they are. We return the transaction status history in pages, you can use the page parameter to get the next list of transactions after the first API call.

    To get transaction, use this code:

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/account-holders/N_hdbbvpUCqIxjW9tpf_GXGcXs2UBViztcbTEEcWX3Y=/transactions/history?fromdate=2018-12-03T10:07:19.795Z&todate=2019-02-20T16:07:19.795Z");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/account-holders/{accountHolderId}/transactions/history?fromdate=2018-12-03T10:07:19.795Z&todate=2019-02-20T16:07:19.795Z

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountHolderId String Unique account Holder Id (Path Variable)
    fromdate DateTime transactions from date (Request Parameter)
    todate DateTime transactions to date (Request Parameter)

    Successful response

    {
       "payload": [
            {
                "traceId": "399e0a4d-fc1e-419a-97cb-eeeb9ae9aa2e",
                "createdOn": "2019-02-20T15:47:41.728Z",
                "description": "INITIAL",
                "stateName": "RECEIVED"
            },
            {
                "traceId": "399e0a4d-fc1e-419a-97cb-eeeb9ae9aa2e",
                "createdOn": "2019-02-20T15:47:42.924Z",
                "description": "DISPATCHER_CALLED",
                "stateName": "IN_PROGRESS"
            },
            {
                "traceId": "399e0a4d-fc1e-419a-97cb-eeeb9ae9aa2e",
                "createdOn": "2019-02-20T15:47:43.004Z",
                "description": "OK",
                "stateName": "SUBMITTED"
            }
        ],
        "page": {
            "size": 50,
            "page": 0,
            "total": 3
        }
    }
    

    Successful Response

    Field Type Description
    descripton String Enum Constant
    traceId String Unique transaction identifier, Trace id of original request
    createdOn String Date and time token generation timestamp
    stateName String Enum Type, containing Enum Constant: RECEIVED, INTERNAL_ERROR, SUBMITTED, PROCESSED_BY_PSP, PROCESSED_BY_ACQUIRER, REJECTED and IN_PROGRESS

    Updating a Transactions status

    To update the status of a transaction, please use the example below replacing key with the values you have from the previous steps, ACCOUNT_HOLDER_ID with the value of the account holder who owns the transaction and TRANSACTION_REFERENCE with the transactions Id

    To do a transaction status update.

    var data = JSON.stringify({
             "comment":"reverse transaction",
                    "status":"REVERSED"
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("PUT", "https://demo.mifinity.com/api/account-holders/AZhR22ONlVUcbkqCyeN5S2b7vGfpxCEzkF3TGq40sGI=/transaction/34b89889-f536-482c-9d7d-75b56af8d950");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "qbS2i_dlYYQrLwYvTzDd2CHpZ-KNR...VNs-3qLI1jQg7uvfx-A-bYwAS9EbHl-3h_OuQWNxjIO25mkr-t7j");
    xhr.send(data);
    

    HTTP Request

    PUT https://demo.mifinity.com/api/account-holders/ACCOUNT_HOLDER_ID/transaction/TRANSACTION_REFERENCE

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    comment String Comment on the reason for the status change
    status String Status to change the transaction to, currently can only change from ON_HOLD_KYC to REVERSED
    ACCOUNT_HOLDER_ID String The Id of the account holder who owns this transaction
    TRANSACTION_REFERENCE String The Transaction Reference of the transaction that will be updated

    Successful response

    {
                "money": {
                    "amount": 20,
                    "currency": "EUR",
                    "presentationAmount": "EUR20.00"
                },
                "source": "5001000001200599",
                "destination": "Card. Currency EUR for Sarah Park(448541XXX7109)",
                "description": "test kyc reverse",
                "transactionStatus": 6,
                "transactionStatusDescription": "Rejected",
                "traceId": "94d7c467-07fa-47c1-bc86-5026450b2616",
                "transactionReference": "d02381a6-6476-41b4-85c6-30f26c506a04",
                "createdOn": "2019-05-01T08:27:53.805Z",
                "paymentCategoryType": "GAMING_PAYOUT",
                "entityId": "yX4kd4sCduCPufDU_eensG94J9O0P84r5vZlicW3cGQ=",
                "eventType": "PAY_ANY_CARD",
                "accountEntries": [
                    {
                        "account": {
                            "accountNumber": "0000000000000800",
                            "accountDescription": "SecureTrading EUR account",
                            "balance": {
                                "amount": 1000020,
                                "currency": "EUR",
                                "presentationAmount": "EUR1,000,020.00"
                            },
                            "availableBalance": {
                                "amount": 1000020,
                                "currency": "EUR",
                                "presentationAmount": "EUR1,000,020.00"
                            },
                            "displayInfo": "0000000000000800-SecureTrading EUR account [ 1000020.00 EUR ]",
                            "accountHolderId": "sd3bVyqTigVjWg2bhK6WV4LZum5Cz_PE1FzkaSPlNJY=",
                            "accountType": "SYSTEM",
                            "notificationThresholdAmount": 0,
                            "accountCategory": "GAMING",
                            "createdOn": "2013-09-18T17:56:14.127Z",
                            "isDefault": false,
                            "entityId": "l1i8wskNrOB-Rg9W9t3xEnkFbYaiMfL2AoNXZnmPKfw=",
                            "disabled": false
                        },
                        "money": {
                            "amount": 20,
                            "currency": "EUR",
                            "presentationAmount": "EUR20.00"
                        },
                        "datePosted": "2019-05-01T08:27:53.889Z",
                        "description": "test kyc reverse",
                        "eventName": "Pay Any Card",
                        "transactionReference": "d02381a6-6476-41b4-85c6-30f26c506a04",
                        "accountFee": false,
                        "eventRollback": false,
                        "eventSubtype": "PAY_ANY_CARD"
                    },
                    {
                        "account": {
                            "accountNumber": "5001000001200599",
                            "accountDescription": "test",
                            "balance": {
                                "amount": 2016.65,
                                "currency": "EUR",
                                "presentationAmount": "EUR2,016.65"
                            },
                            "availableBalance": {
                                "amount": 2016.65,
                                "currency": "EUR",
                                "presentationAmount": "EUR2,016.65"
                            },
                            "displayInfo": "5001000001200599-test [ 2016.65 EUR ]",
                            "accountHolderId": "pKrZbTgt4wmFqcJqlQutKfkCDL9-X2KCCDPIf0J2iIc=",
                            "accountType": "PLATFORM",
                            "notificationThresholdAmount": 0,
                            "accountCategory": "GAMING",
                            "createdOn": "2018-12-27T14:23:06.415Z",
                            "isDefault": false,
                            "entityId": "na-OUXVOgSZoy_vKG9lazJO1SnU3dXpJr8FOu9dx8sQ=",
                            "disabled": false
                        },
                        "money": {
                            "amount": -20,
                            "currency": "EUR",
                            "presentationAmount": "EUR-20.00"
                        },
                        "datePosted": "2019-05-01T08:27:53.889Z",
                        "description": "test kyc reverse",
                        "eventName": "Pay Any Card",
                        "transactionReference": "d02381a6-6476-41b4-85c6-30f26c506a04",
                        "accountFee": false,
                        "eventRollback": false,
                        "eventSubtype": "PAY_ANY_CARD"
                    }
                ],
                "status": "REVERSED",
                "type": "PAY_ANY_CARD",
                "processorType": "SECURE_TRADING",
                "initiatorUser": "NP3Avpc2nsAt9L2DwNy88Hss4m3lO8RuheiQJ4VO-bE=",
                "auditableEvent": {
                    "type": "MONEY_TRANSFER_AUDITABLE_EVENT",
                    "description": "PAY_ANY_CARD",
                    "status": "REVERSED",
                    "whenNoticed": "2019-05-01T08:27:52.940Z",
                    "whenOccurred": "2019-05-01T08:27:52.936Z",
                    "money": {
                        "amount": 20,
                        "currency": "EUR",
                        "presentationAmount": "EUR20.00"
                    },
                    "source": "5001000001200599",
                    "destination": "Card. Currency EUR"
                },
                "initiatorAccountHolderId": "Bxkkz35EWh2oFpdl9EhnWM5Va3QUs2B05JmU4g5NIbQ="
            }
    

    Successful Response

    Field Type Description
    money Money Complex Object Containing money amount
    source String a source account
    destination String a destination account
    descripton String Description for the transaction
    transactionStatus Integer Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    transactionStatusDescription String Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    traceId String Unique transaction identifier, Trace id of original request
    transactionReference String Transaction Reference
    createdOn String Date and time token generation timestamp
    paymentCategoryType String Complex enum Object containing: GAMING_PAYOUT, REMITTANCE, REFUND, PAYROLL, EXPENSES, E_COMMERCE, TRAVEL and NOT_SET
    entityId String Unique
    eventType String Complex enum Object containing: LOAD_FROM_CARD, LOAD_FROM_BANK, LOAD_FROM_SGPG, PAY_MY_CARD, PAY_ANY_CARD,PAY_ANY_BANK, LOAD_FROM_CARD_SGPG and so on
    status String status for http request
    type String that is same with eventType
    processorType String Complex enum Object containing: FINTRAX, ENVOY, REALEX, UNION_PAY, EARTHPORT, SECURE_TRADING,REPORTSENDER and so on
    initiatorUser String Unique user id
    initiatorAccountHolderId String Unique account holder id

    AccountEntries & SourceAccountEntries

    Field Type Description
    money Money Complex Object Containing money amount
    datePosted String Date and time token posted timestamp
    descripton String Transaction creation timestamp
    eventName String Transaction Name
    transactionReference String Transaction Reference
    accountFee boolean Defines whether entry is an account fee or not

    Money

    Field Type Description
    amount BigDecimal The amount of Money
    money String Currency in ISO 4217 Format
    presentationAmount String Consists of Currency Code and Amount

    Notification Management

    Our Notification Management allows the account holder to receive real time automatic notifications in the form of API callbacks related to a transaction, thus informing the account holder whether a transaction was successful or failed. These are applicable for the following types of transactions:

      • Account To Account transactions
      • Pay Any Card / Pay My Card transactions
      • Pay Any Bank transactions

    From your end, you need to subscribe to our notifications by providing MiFinity with your callback URLs, or you can define them on your own using our API. Note that the design on how to develop the callback logic is up to your development team. You can either define different callback URL’s and handle the logic separately, or you can provide us with a single endpoint and handle the logic within that endpoint for both cases (success or failure). It is suggested that the notifications are subscribed to the account holder.

    Successful Notification received

    {
       "payload": [
            {
                 "postedOn": null,
                 "money": {
                    "amount": 1,
                    "currency": "EUR",
                    "presentationAmount": "EUR1.00"
                 },
                "source": "5001000001156551",
                "destination": "5001000001161478",
                "description": "test",
                "transactionStatus": 3,
                "transactionStatusDescription": "Submitted",
                "traceId": "eb3cb323-96e1-473d-915a-6388a12a8f72",
                "transactionReference": "0c1d4779-77f5-461d-85bc-396269688fb1",
                "eventTypeDescription": "Account to Account Transfer",
                "createdOn": "2018-10-24T14:43:54.989Z",
                "arn": null,
             "paymentCategoryType": "E_COMMERCE"
            }
        ]
    }
    

    Failure Notification received

    {
       "payload": [
            {
                 "postedOn": null,
                 "money": {
                    "amount": 1,
                    "currency": "EUR",
                    "presentationAmount": "EUR1.00"
                 },
                "source": "50010001000007",
                "destination": "Card. Currency EUR for ddddd(448541XXX7109)",
                "description": "test",
                "transactionStatus": 6,
                "transactionStatusDescription": "Rejected",
                "traceId": "3f5d27fe-e47a-4c8b-b582-9eaa24959953",
                "transactionReference": "929b124b-f9d1-41e6-82e7-432998f17124",
                "eventTypeDescription": "Pay Any Card",
                "createdOn": "2018-10-25T09:30:17.502+01:00",
                "arn": null,
             "paymentCategoryType": "TRAVEL"
            }
        ]
    }
    

    There are JSON examples for HTTP notification payload in the right side:

    Successful/Failure response

    Field Type Description
    postedOn String Default value: null
    money Object Containing amount(Integer), currency(String) and presentationAmount(String)
    source String Source Account Number
    destination String Destination Account Number
    transactionStatus Integer Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"), IN_PROGRESS("7") and ON_HOLD_KYC("8")
    description String Description for this transaction
    transactionStatusDescription String Related with legacyTransactionState: RECEIVED("1"), INTERNAL_ERROR("2"), SUBMITTED("3"), PROCESSED_BY_PSP("4"), PROCESSED_BY_ACQUIRER("5"), REJECTED("6"),IN_PROGRESS("7") and ON_HOLD_KYC("8")
    traceId String Trace id of original request
    transactionReference String Transaction reference
    eventTypeDescription String enum Object containing: LOAD_FROM_CARD, LOAD_FROM_BANK, LOAD_FROM_SGPG, PAY_MY_CARD, PAY_ANY_CARD,PAY_ANY_BANK, LOAD_FROM_CARD_SGPG and so on
    createdOn DateTime Date Time for the transaction
    arn String Acquirer Reference Number. Default value : null
    paymentCategoryType String Containing

    Add Account Holder Notifications

    Add a notification preference for an Account Holder. In reality, it is possible to create SMS, EMAIL and HTTP_JSON notifications for each notification type from account holders, users and accounts. However, at the moment some notification types are only associated with account holder. For example, we use transaction state change events (TRANSACTION_NOTIFICATION_SUCCESS, TRANSACTION_NOTIFICATION_FAILURE) notifications for account holders and accounts, but not for users. Thus, the attribute Usage has the value YES when the notification type is associated with account holders.

    To add account holder notifications, use this code

    var data = JSON.stringify({
            "method" : "EMAIL",
            "type" : "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
            "value" : "false",
            "keyType" : "DESTINATION",
            "canEdit" : false
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/account-holders/N_hdbbvpUCqIxjW9tpf_GXGcXs2UBViztcbTEEcWX3Y=/preferences/notifications");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/account-holders/{accountHolderId}/preferences/notifications

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accoutHolderId String Unique account holder Id (Path Variable)
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String optional Id for this particular preference entity
    entityId String optional Entity Id for the Account Holder
    entityType String optional ACCOUNT_HOLDER
    canEdit Boolean optional Flag indicating if this particular preference can be edited

    type

    Field Type Usage
    MS_ACCOUNT_REPORT_READY NotificationType NO
    ACCOUNT_HOLDER_RESET_PASS_CONFIRMATION NotificationType NO
    ACCOUNT_HOLDER_CHANGE_EMAIL_TOKEN NotificationType NO
    ACCOUNT_HOLDER_CHANGE_EMAIL_INFORMATION NotificationType NO
    ACCOUNT_HOLDER_RESET_PASS_TOKEN NotificationType NO
    ACCOUNT_HOLDER_CHANGE_PASS NotificationType NO
    ACCOUNT_HOLDER_PASSWORD_EXPIRATION_WARNING NotificationType NO
    ACCOUNT_HOLDER_PASSWORD_EXPIRED NotificationType NO
    ACCOUNT_HOLDER_PENDING_KYC_VERIFICATION NotificationType NO
    ACCOUNT_HOLDER_FLAGGED_KYC_VERIFICATION NotificationType NO
    ACCOUNT_HOLDER_KYC_LEVEL_UNVERIFIED NotificationType NO
    ACCOUNT_HOLDER_ACTIVATION_TOKEN NotificationType NO
    ACCOUNT_HOLDER_ACTIVATION_TOKEN_IFRAME NotificationType NO
    SILENT_ACCOUNT_HOLDER_RESET_PASS_TOKEN NotificationType NO
    QUICK_TRANSFER_SENT NotificationType NO
    QUICK_TRANSFER_RECEIVED NotificationType NO
    QUICK_TRANSFER_ROLLBACK NotificationType NO
    ADMIN_MANUAL_WITHDRAWAL NotificationType NO
    ADMIN_GOODWILL_CORRECTION NotificationType NO
    ADMIN_MANUAL_FEE_WITHDRAWAL NotificationType NO
    ADMIN_MANUAL_LOAD_FOUNDS_CONFIRMATION NotificationType NO
    ADMIN_MANUAL_LOAD_FOUNDS_APPROVAL NotificationType NO
    ADMIN_MANUAL_LOAD_FOUNDS NotificationType NO
    ADMIN_TRANSACTION_REVERSAL NotificationType NO
    ADMIN_KYC_DOCUMENT_VERIFICATION_FAILED NotificationType NO
    ADMIN_KYC_DOCUMENT_VERIFICATION_PASSED_AFTER_FAILED NotificationType NO
    SIMPLE_MESSAGE NotificationType NO
    CONTACT_SUPPORT NotificationType NO
    CONTACT_SUPPORT_CONFIRMATION NotificationType NO
    INVITATION NotificationType NO
    SET_PASSWORD_BY_CLIENT NotificationType NO
    CURRENCY_EXCEPTIONS_NOTIFICATIONS NotificationType YES
    KYC_CALLBACK NotificationType NO
    KYC_WATCHLIST NotificationType NO
    KYC_PEP NotificationType NO
    KYC_OFAC_REPORT NotificationType NO
    KYC_LIMIT_EXCEEDED NotificationType NO
    KYC_LIMIT_REACHED NotificationType NO
    KYC_LIMIT_THRESHOLD NotificationType NO
    KYC_CARD_TRANSACTION_WARNING NotificationType NO
    ADMIN_KYC_LIMIT_EXCEEDED NotificationType NO
    ACCOUNT_HOLDER_KYC_DOCUMENT_VERIFICATION_PASSED NotificationType YES
    SGPG_PAYMENT_NOTIFICATION NotificationType NO
    SGPG_ERROR_NOTIFICATION NotificationType NO
    ACCOUNT_HOLDER_MERCHANT_ACTIVATION_TOKEN NotificationType NO
    COUPON_NOTIFICATION NotificationType NO
    COUPON_SENDER_NOTIFICATION NotificationType YES
    RECURRING_FAILED_NOTIFICATION NotificationType YES
    SECURITY_CODE_NOTIFICATION NotificationType NO
    BIN_FILE_EXPIRED_NOTIFICATION NotificationType NO
    TRANSACTION_NOTIFICATION_SUCCESS NotificationType YES
    TRANSACTION_NOTIFICATION_FAILURE NotificationType YES
    DELEGATE_ACTIVATION_NOTIFICATION NotificationType YES
    SECURITY_QUESTION_UPDATE_NOTIFICATION NotificationType NO
    ACCOUNT_HOLDER_KYC_DOCUMENT_UPLOADED NotificationType NO
    KYC_UPLOAD_SUCCESS_NOTIFICATION NotificationType NO

    Successful response

    {
       "payload": [
            {
                "method": "EMAIL",
                "type": "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
                "value": "false",
                "keyType": "DESTINATION",
                "preferenceId": "tnsouB-KWOl2S_DmlLmW1PEa5szaxWlPLqPSDbgDyzc=",
                "entityId": "jJU2QqfjDow6Mmiffc29vj42yL9ZutJdkUzsaEIYrPE=",
                "entityType": "ACCOUNT_HOLDER",
                "canEdit": false
            }
        ]
    }
    

    Successful response

    Field Type Description
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see above parameter section
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String Id for this particular preference entity
    entityId String Entity Id for the Account Holder
    entityType String ACCOUNT_HOLDER
    canEdit Boolean Flag indicating if this particular preference can be edited

    Add Account Notification

    Add a notification preferences for an account. In the type table, attribute Usage has the value YES when the notification type is associated with accounts.

    To add account notifications, use this code

    var data = JSON.stringify({
            "method" : "EMAIL",
            "type" : "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
            "value" : "false",
            "keyType" : "DESTINATION",
            "canEdit" : false
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/accounts/7FjySjwTibCU3puJcqkYMMZDeN4hdGnuWOREvIR8WZ0=/preferences/notifications");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    

    HTTP Request

    POST https://demo.mifinity.com/api/accounts/{accountId}/preferences/notifications

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accoutId String Unique account Id (Path Variable)
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the below
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String optional Id for this particular preference entity
    entityId String optional Entity Id for the Account
    entityType String optional ACCOUNT
    canEdit Boolean optional Flag indicating if this particular preference can be edited

    type

    Field Type Usage
    MS_ACCOUNT_REPORT_READY NotificationType YES
    ACCOUNT_HOLDER_RESET_PASS_CONFIRMATION NotificationType NO
    ACCOUNT_HOLDER_CHANGE_EMAIL_TOKEN NotificationType NO
    ACCOUNT_HOLDER_CHANGE_EMAIL_INFORMATION NotificationType NO
    ACCOUNT_HOLDER_RESET_PASS_TOKEN NotificationType NO
    ACCOUNT_HOLDER_CHANGE_PASS NotificationType NO
    ACCOUNT_HOLDER_PASSWORD_EXPIRATION_WARNING NotificationType NO
    ACCOUNT_HOLDER_PASSWORD_EXPIRED NotificationType NO
    ACCOUNT_HOLDER_PENDING_KYC_VERIFICATION NotificationType NO
    ACCOUNT_HOLDER_FLAGGED_KYC_VERIFICATION NotificationType NO
    ACCOUNT_HOLDER_KYC_LEVEL_UNVERIFIED NotificationType NO
    ACCOUNT_HOLDER_ACTIVATION_TOKEN NotificationType NO
    ACCOUNT_HOLDER_ACTIVATION_TOKEN_IFRAME NotificationType NO
    SILENT_ACCOUNT_HOLDER_RESET_PASS_TOKEN NotificationType NO
    QUICK_TRANSFER_SENT NotificationType YES
    QUICK_TRANSFER_RECEIVED NotificationType YES
    QUICK_TRANSFER_ROLLBACK NotificationType YES
    ADMIN_MANUAL_WITHDRAWAL NotificationType YES
    ADMIN_GOODWILL_CORRECTION NotificationType YES
    ADMIN_MANUAL_FEE_WITHDRAWAL NotificationType YES
    ADMIN_MANUAL_LOAD_FOUNDS_CONFIRMATION NotificationType YES
    ADMIN_MANUAL_LOAD_FOUNDS_APPROVAL NotificationType YES
    ADMIN_MANUAL_LOAD_FOUNDS NotificationType YES
    ADMIN_TRANSACTION_REVERSAL NotificationType YES
    ADMIN_KYC_DOCUMENT_VERIFICATION_FAILED NotificationType YES
    ADMIN_KYC_DOCUMENT_VERIFICATION_PASSED_AFTER_FAILED NotificationType YES
    SIMPLE_MESSAGE NotificationType NO
    CONTACT_SUPPORT NotificationType NO
    CONTACT_SUPPORT_CONFIRMATION NotificationType NO
    INVITATION NotificationType NO
    SET_PASSWORD_BY_CLIENT NotificationType YES
    CURRENCY_EXCEPTIONS_NOTIFICATIONS NotificationType NO
    KYC_CALLBACK NotificationType NO
    KYC_WATCHLIST NotificationType NO
    KYC_PEP NotificationType NO
    KYC_OFAC_REPORT NotificationType NO
    KYC_LIMIT_EXCEEDED NotificationType NO
    KYC_LIMIT_REACHED NotificationType NO
    KYC_LIMIT_THRESHOLD NotificationType NO
    KYC_CARD_TRANSACTION_WARNING NotificationType NO
    ADMIN_KYC_LIMIT_EXCEEDED NotificationType NO
    ACCOUNT_HOLDER_KYC_DOCUMENT_VERIFICATION_PASSED NotificationType NO
    SGPG_PAYMENT_NOTIFICATION NotificationType NO
    SGPG_ERROR_NOTIFICATION NotificationType NO
    ACCOUNT_HOLDER_MERCHANT_ACTIVATION_TOKEN NotificationType NO
    COUPON_NOTIFICATION NotificationType NO
    COUPON_SENDER_NOTIFICATION NotificationType NO
    RECURRING_FAILED_NOTIFICATION NotificationType YES
    ACCOUNT_THRESHOLD_NOTIFICATION NotificationType YES
    SECURITY_CODE_NOTIFICATION NotificationType NO
    BIN_FILE_EXPIRED_NOTIFICATION NotificationType NO
    TRANSACTION_NOTIFICATION_SUCCESS NotificationType YES
    TRANSACTION_NOTIFICATION_FAILURE NotificationType YES
    DELEGATE_ACTIVATION_NOTIFICATION NotificationType YES
    SECURITY_QUESTION_UPDATE_NOTIFICATION NotificationType NO
    ACCOUNT_HOLDER_KYC_DOCUMENT_UPLOADED NotificationType NO
    KYC_UPLOAD_SUCCESS_NOTIFICATION StriNotificationTypeng NO

    Successful response

    {
       "payload": [
            {
                "method": "EMAIL",
                "type": "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
                "value": "false",
                "keyType": "DESTINATION",
                "preferenceId": "zZzXQVGtlQ8BkenJTL-T1Wd2k5PbUlgCPCfFs2ouR9E=",
                "entityId": "MfjK2svMSfKQqgSuZ5jYwbTKXX3ZlVvdt5X2_9zSG1k=",
                "entityType": "ACCOUNT",
                "canEdit": false
            }
        ]
    }
    

    Successful response

    Field Type Description
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the above parameter section
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String Id for this particular preference entity
    entityId String Entity Id for the Account
    entityType String ACCOUNT
    canEdit Boolean Flag indicating if this particular preference can be edited

    Add User's Notification

    Add a notification preferences for a user. In the type table, attribute named Usage has the value YES when the notification type is associated with users.

    To add account holder notifications, use this code

    var data = JSON.stringify({
            "method" : "EMAIL",
            "type" : "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
            "value" : "false",
            "keyType" : "DESTINATION",
            "canEdit" : false
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("POST", "https://demo.mifinity.com/api/users/anRUeiOf5zB5HbqwZAQ9IQYG-n96oLixsI_Q4N6p9mY=/preferences/notifications");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    
    

    HTTP Request

    POST https://demo.mifinity.com/api/users/{userId}/preferences/notifications

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    userId String Unique account user Id (Path Variable)
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the below
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String optional Id for this particular preference entity
    entityId String optional Entity Id for the User
    entityType String optional USER
    canEdit Boolean optional Flag indicating if this particular preference can be edited

    type

    Field Type Usage
    MS_ACCOUNT_REPORT_READY NotificationType NO
    ACCOUNT_HOLDER_RESET_PASS_CONFIRMATION NotificationType YES
    ACCOUNT_HOLDER_CHANGE_EMAIL_TOKEN NotificationType YES
    ACCOUNT_HOLDER_CHANGE_EMAIL_INFORMATION NotificationType YES
    ACCOUNT_HOLDER_RESET_PASS_TOKEN NotificationType YES
    ACCOUNT_HOLDER_CHANGE_PASS NotificationType YES
    ACCOUNT_HOLDER_PASSWORD_EXPIRATION_WARNING NotificationType YES
    ACCOUNT_HOLDER_PASSWORD_EXPIRED NotificationType YES
    ACCOUNT_HOLDER_PENDING_KYC_VERIFICATION NotificationType YES
    ACCOUNT_HOLDER_FLAGGED_KYC_VERIFICATION NotificationType YES
    ACCOUNT_HOLDER_KYC_LEVEL_UNVERIFIED NotificationType YES
    ACCOUNT_HOLDER_ACTIVATION_TOKEN NotificationType YES
    ACCOUNT_HOLDER_ACTIVATION_TOKEN_IFRAME NotificationType YES
    SILENT_ACCOUNT_HOLDER_RESET_PASS_TOKEN NotificationType YES
    QUICK_TRANSFER_SENT NotificationType NO
    QUICK_TRANSFER_RECEIVED NotificationType NO
    QUICK_TRANSFER_ROLLBACK NotificationType NO
    ADMIN_MANUAL_WITHDRAWAL NotificationType NO
    ADMIN_GOODWILL_CORRECTION NotificationType NO
    ADMIN_MANUAL_FEE_WITHDRAWAL NotificationType NO
    ADMIN_MANUAL_LOAD_FOUNDS_CONFIRMATION NotificationType NO
    ADMIN_MANUAL_LOAD_FOUNDS_APPROVAL NotificationType NO
    ADMIN_MANUAL_LOAD_FOUNDS NotificationType NO
    ADMIN_TRANSACTION_REVERSAL NotificationType NO
    ADMIN_KYC_DOCUMENT_VERIFICATION_FAILED NotificationType NO
    ADMIN_KYC_DOCUMENT_VERIFICATION_PASSED_AFTER_FAILED NotificationType NO
    SIMPLE_MESSAGE NotificationType YES
    CONTACT_SUPPORT NotificationType YES
    CONTACT_SUPPORT_CONFIRMATION NotificationType YES
    INVITATION NotificationType YES
    SET_PASSWORD_BY_CLIENT NotificationType NO
    CURRENCY_EXCEPTIONS_NOTIFICATIONS NotificationType NO
    KYC_CALLBACK NotificationType YES
    KYC_WATCHLIST NotificationType YES
    KYC_PEP NotificationType YES
    KYC_OFAC_REPORT NotificationType YES
    KYC_LIMIT_EXCEEDED NotificationType YES
    KYC_LIMIT_REACHED NotificationType YES
    KYC_LIMIT_THRESHOLD NotificationType YES
    KYC_CARD_TRANSACTION_WARNING NotificationType YES
    ADMIN_KYC_LIMIT_EXCEEDED NotificationType YES
    ACCOUNT_HOLDER_KYC_DOCUMENT_VERIFICATION_PASSED NotificationType YES
    SGPG_PAYMENT_NOTIFICATION NotificationType YES
    SGPG_ERROR_NOTIFICATION NotificationType YES
    ACCOUNT_HOLDER_MERCHANT_ACTIVATION_TOKEN NotificationType YES
    COUPON_NOTIFICATION NotificationType NO
    COUPON_SENDER_NOTIFICATION NotificationType YES
    RECURRING_FAILED_NOTIFICATION NotificationType NO
    ACCOUNT_THRESHOLD_NOTIFICATION NotificationType NO
    SECURITY_CODE_NOTIFICATION NotificationType YES
    BIN_FILE_EXPIRED_NOTIFICATION NotificationType YES
    TRANSACTION_NOTIFICATION_SUCCESS NotificationType NO
    TRANSACTION_NOTIFICATION_FAILURE NotificationType NO
    DELEGATE_ACTIVATION_NOTIFICATION NotificationType NO
    SECURITY_QUESTION_UPDATE_NOTIFICATION NotificationType YES
    ACCOUNT_HOLDER_KYC_DOCUMENT_UPLOADED NotificationType YES
    KYC_UPLOAD_SUCCESS_NOTIFICATION NotificationType YES

    Successful response

    {"payload": [
            {
                "method": "EMAIL",
                "type": "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
                "value": "false",
                "keyType": "DESTINATION",
                "preferenceId": "9MyuLpy84OBmbCFUqw_mfa5dqf0GniYQWtcXqiQWiIg=",
                "entityId": "LZvOASTDTfcP_i1FKbw_9yM4XUR89QQJuDWTEf9ImGQ=",
                "entityType": "USER",
                "canEdit": false
            }
        ]
    }
    

    Successful response

    Field Type Description
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the above parameter section
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String Id for this particular preference entity
    entityId String Entity Id for the User
    entityType String USER
    canEdit Boolean Flag indicating if this particular preference can be edited

    Delete Notification Details

    Delete a notification preference. Only works for destinations.

    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("DELETE", "https://demo.mifinity.com/api/preferences/notifications/9MyuLpy84OBmbCFUqw_mfa5dqf0GniYQWtcXqiQWiIg=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    
    
    

    HTTP Request

    DELETE https://demo.mifinity.com/api/preferences/notifications/{preferenceId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    preferenceId String Entity Id for the Preference (Path Variable)

    Successful response

    {
         "payload": []
    
    }
    

    Successful response

    HTTP status code 200. It means that the specific notification has been deleted successfully.

    Get Notification Preferences

    Get Notification Preference by preferenceId.

    To get Notificaton Preferences, use this code:

    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/preferences/notifications/9MyuLpy84OBmbCFUqw_mfa5dqf0GniYQWtcXqiQWiIg=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/preferences/notifications/{preferenceId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    preferenceId String Entity Id for the Preference (Path Variable)

    Successful response

    {
         "payload": [
            {
                "method": "EMAIL",
                "type": "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
                "value": "false",
                "keyType": "DESTINATION",
                "preferenceId": "UlL-CD8U46vimigRTt-BBE_fFWnntSQj4qQ3IjO19cY=",
                "entityId": "vPWTUqE0oU6-E3RW_LQ4O44VJAz35OGa43uhGYTa-HE=",
                "entityType": "USER",
                "canEdit": false
            }
        ]
    }
    

    Successful Response

    Field Type Description
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the above Add User's Notification part
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String Id for this particular preference entity
    entityId String Entity Id for the relevant entityType
    entityType String ACCOUNT, ACCOUNT_HOLDER or USER
    canEdit Boolean Flag indicating if this particular preference can be edited

    Retrieve Notification details

    By User Id

    Retrieves all the notification preferences for a user.

    To retrieve Notificaton details for a user, use this code:

    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/users/anRUeiOf5zB5HbqwZAQ9IQYG-n96oLixsI_Q4N6p9mY=/preferences/notifications");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/users/{userId}/preferences/notifications

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    userId String Entity Id for the Preference (Path Variable)

    Successful response

    {
         "payload": [
            {
                "method": "EMAIL",
                "type": "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
                "value": "false",
                "keyType": "DESTINATION",
                "preferenceId": "6UjCnGbIx68YsBpr18HCaabAt7uyqEyBySHuSWX7vuk=",
                "entityId": "_Md6P8iXwHhShbyM9gNXOq6sYATbvmzGKQehrl6p4R0=",
                "entityType": "ACCOUNT_HOLDER",
                "canEdit": false
            },
            {
                "method": "EMAIL",
                "type": "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
                "value": "false",
                "keyType": "DESTINATION",
                "preferenceId": "IfSQpkuAby2d1D7ueKiVjYxxetDgfym5fuAOHQMiE-o=",
                "entityId": "j5IIPKXBAi_O5aiMc9_pfdXx-HMjpWsooHhgoCT8mN0=",
                "entityType": "ACCOUNT",
                "canEdit": false
            }
        ]
    }
    

    Successful Response

    Field Type Description
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the above Add User's Notification part
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String Id for this particular preference entity
    entityId String Entity Id for the relevant entityType
    entityType String ACCOUNT, ACCOUNT_HOLDER or USER
    canEdit Boolean Flag indicating if this particular preference can be edited

    By account Id

    To retrieve Notificaton details for an account, use this code:

    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("GET", "https://demo.mifinity.com/api/accounts/7FjySjwTibCU3puJcqkYMMZDeN4hdGnuWOREvIR8WZ0=/notifications");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    

    HTTP Request

    GET https://demo.mifinity.com/api/accounts/{accountId}/notifications

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    accountId String Entity Id for the Preference (Path Variable)

    Successful response

    {
         "payload": [
            {
                "method": "EMAIL",
                "type": "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
                "value": "false",
                "keyType": "DESTINATION",
                "preferenceId": "5AqSwLX9kRyNj9SVNcWkcAflClpwRqn-EnExY37OfrQ=",
                "entityId": "L-cL-E_O991EeZNMHDZfE7_CigM-ERwMsWl2C2i0gpA=",
                "entityType": "ACCOUNT",
                "canEdit": false
            }
        ]
    }
    

    Successful Response

    Field Type Description
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the above Add User's Notification part
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String Id for this particular preference entity
    entityId String Entity Id for the relevant entityType
    entityType String Containing : Account, ACCOUNT_HOLDER or USER
    canEdit Boolean Flag indicating if this particular preference can be edited

    Update Notification Details

    Update a preference vaule.

    To update a preference value, use this code

    var data = JSON.stringify({
            "method" : "EMAIL",
            "type" : "ACCOUNT_HOLDER_ACTIVATION_TOKEN",
            "value" : "false",
            "keyType" : "DESTINATION",
            "canEdit" : false
    });
    
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;
    
    xhr.addEventListener("readystatechange", function () {
      if (this.readyState === 4) {
        console.log(this.responseText);
      }
    });
    
    xhr.open("PUT", "https://demo.mifinity.com/api/preferences/notifications/5AqSwLX9kRyNj9SVNcWkcAflClpwRqn-EnExY37OfrQ=");
    xhr.setRequestHeader("accept", "application/json");
    xhr.setRequestHeader("content-type", "application/json");
    xhr.setRequestHeader("x-api-version", "1");
    xhr.setRequestHeader("key", "sQO8Q3i5-HeD7F0BqVSIN1p......qnjqMDo8Bl0GKUTvexaVm5n7g");
    xhr.send(data);
    
    

    HTTP Request

    PUT https://demo.mifinity.com/api/preferences/notifications/{preferenceId}

    Header

    Parameter Type Description
    Content-Type String Use value 'application/json'
    Accept String Use value 'application/json'
    x-api-version String Use value 1
    Key String API key

    Parameters

    Field Type Required Description
    perferenceId String Entity Id for the Preference (Path Variable)
    method String Containing: SMS, EMAIL and HTTP_JSON
    type String Containing many options: see the below
    value String Value for the notification preference
    keyType String Containing: ENABLED, DESTINATION,LAST_SENT, REMINDER_PERIOD and SINGLE_SEND
    preferenceId String optional Id for this particular preference entity
    entityId String optional Entity Id for the relevant entityType
    entityType String optional ACCOUNT,ACCOUNT_HOLDER or USER
    canEdit Boolean optional Flag indicating if this particular preference can be edited

    type

    Field Type -Description
    MS_ACCOUNT_REPORT_READY