Air Bank AISP

An AISP (Account Information Service Providers) provides an overview of all the payment accounts the customer has and balances and transactions for single account. An AISP will not be able to transfer funds out of a payment account, they just provide an aggregated view of past transactions that have already occurred.

Security

To use banking services like list of accounts or transactions history, you need a valid OAuth2 access token. Chapter Authentication describes how to get and use it.

Some extra sensitive banking operations (like entering a payment) requires additional user authorization, on top of valid OAuth2 token. Authorization mechanism is described in chapter Authorization.

Authentication

To access user sensitive data through API (use /openapi/banking, accountInfo, etc… resources), user must grant your application a permission to do so. Open API uses OAuth2 mechanism to grant permissions to access user data. As for now, only authorization code grant flow is supported. This section describes mechanism and resources to get valid access token and use it to access protected resources.

  • if you fail to specify OAuth2 token, you will receive 401 Unauthorized error and following response body:
{
   "error_description": "The access token is missing",
   "error": "invalid_request"
}
  • if you provide invalid OAuth2 token, you will receive 401 Unauthorized error and following response body:
{
    "error_description":"The access token is invalid or has expired",
    "error":"invalid_token"
}

Developers perspective

  1. Register your application at developers portal and request access to OAuth2 protected resources. You have to provide (beside others) redirect URI attribute - this is the URI user is redirected to after he logs in and approves your application (see below to learn more). You will receive client ID and client secret (note: those are different than apikey, used to access any resource from Open API).

  2. When you wish to access protected resource (pretty much anything under /openapi/banking,accountInfo, etc… path) for the first time, redirect user to login page with parameters:

    • client_id - client ID parameter you received from previous step
    • response_type - only value code is supported
    • state - random value that will be returned to you. You should check the value received on successfull redirect back to your app. Setting the state parameter is optional, but highly recommended

    Example login request:

    https://ib.airbank.cz/?client_id=MYID&response_type=code&state=ehshvnajgtf34

    IMPORTANT NOTE: Do not use embedded webview in mobile applications, use platform native browser instead.

  3. User have to log-in using his bank identity and approve your application’s access

  4. If successfull, user is redirected to redirect URI you specified at application registration, together with parameter code. This redirect should be handled by your application, in order to exchange code for valid access token; for mobile applications, consider using custom URL scheme (iOS), intents (Android) or similar mechanism.

    Example redirect URI:

    https://myapp.example.com/handle_authentication?code=123arjdmvcskfm&state=ehshvnajgtf34
  5. Upon receiving redirect URI on successfull authentication, you have to check state parameter - it has to be the same as you passed to login page. If it differs, you should not continue.

  6. Access API token resource and exchange code for access token. You will also receive refresh token; you can use it to get new access token when access token validity expires.

  7. You receive access token that has limited lifespan (usually to 20 min or so), along with refresh token. Refresh token can later be used to exchange for new access token, when old one expires.

  8. Use retireved access token to access protected resources by specifying it in header Authorization, together with its type, e.g.:

    curl -H "Authorization: Bearer access_token" https://apiendpoint/openapi/banking/profile

IMPORTANT NOTE: You must keep your client secret safe. It serves as your application password.

User perspective

  1. User runs your application for the first time

  2. Your application redirects user to Open API login page

  3. User provides its credentials (user + password, possibly combined with another factor like SMS code etc)

  4. User sees a page, that displays details about your application and rights it requested.

  5. User authorizes your application’s access and he can start using your application.

Authentication resources

resource enviroment address
login page production https://ib.airbank.cz
token resource production /oauth2/token

Authorization

Sensitive active operations (such as placing a payment order) requires additional authorization, besides existing OAuth2 token. Such resources are marked in documentation. This section describes mechanism and resources used for authorization.

Currently there are two methods of authorization supported:

  • redirecting user to a bank authorization page and grab the authorization result behind the scenes - this is the default and always available method

  • use API resources to initiate and grab the authorization result - this method is only allowed when certain conditions are met (such as user approved authorization methods etc.)

Authorization object

Parameters of authorization are returned as a result of sensitive active operation (e.g. by creating/updating payment order). Authorization object has following structure:

  • authorizationId: aobrCdeU1Yu4HG_sKQe_uP25B0CYz7hsPYK_w9uF41ZK90KE9mANj (string, required) - internal authorization request identifier, expect arbitrary long string.

  • authResultURL: /openapi/banking/authorization/aobrCdeU1Yu4HG_sKQe_uP25B0CYz7hsPYK_w9uF41ZK90KE9mANj (string, required) - resource used to GET authorization result

  • mustRedirect: false (boolean, required) - if set to true, application must redirect user to redirectURL to complete authorization

  • redirectURL: https://www.airbank.cz/authorization/aobrCdeU1Yu4HG_sKQe_uP25B0CYz7hsPYK_w9uF41ZK90KE9mANj (string, required) - redirect URL for fallback authorization or for redirecting if mustRedirect is set to true

  • status: IN_PROGRESS (string, required) - authorization status. If status is AUTHORIZED, you can fetch the result by calling appropriate resource.

When mustRedirect is set to true, your app MUST use the redirect method to complete authorization.

Redirect user to bank authorization page

Authorization flow is handled completely by a web page provided by bank. All your app have to do is to redirect user to redirectURL, which initiates the authorization flow. You SHOULD provide query parameter callbackURL to the authorization web page; user will be redirected to this callbackURL when authorization finishes. This callbackURL MUST be registered in developers portal with corresponding application.

You will get the authorization result by calling authResultURL resource after your app gets notified by the redirection.

Use API resources to do the authorization

Alternative method, which is only available when mustRedirect attribute is set to false. Authorization flow is started by active operation itself, and all your app have to do is regularly poll authResultURL resource to retrieve authorization result. Your application SHOULD provide some indication to user that authorization is in progress. Your application SHOULD always provide means to access default authorization method of redirecting to bank authorization page, as this alternative method availability may vary by user.

Security resources

This is the resources used to support security concepts described above.

Token exchange resource

POST https://api.airbank.cz/oauth2/token
RequestsExchange code for access tokenExchange refresh token for access token
Body
{
  "grant_type": "authorization_code",
  "code": "123arjdmvcskfm",
  "redirect_uri": "https://myapp.example.com/handle_authentication",
  "client_id": "<your client ID>",
  "client_secret": "<your client secret>"
}
Responses200
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "access_token": "aa225511dd",
  "expires_in": 7200,
  "refresh_token": "ff423123aa",
  "token_type": "bearer"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "access_token": {
      "type": "string",
      "description": "OAuth2 access token"
    },
    "expires_in": {
      "type": "number",
      "description": "token validity in seconds"
    },
    "refresh_token": {
      "type": "string",
      "description": "OAuth2 refresh token"
    },
    "token_type": {
      "type": "string",
      "description": "OAuth2 token type"
    }
  },
  "required": [
    "access_token",
    "expires_in",
    "token_type"
  ]
}
Body
{
  "grant_type": "refresh_token",
  "refresh_token": "123arjdmvcskfm",
  "client_id": "<your client ID>",
  "client_secret": "<your client secret>"
}
Responses200
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "access_token": "aa225511dd",
  "expires_in": 7200,
  "refresh_token": "ff423123aa",
  "token_type": "bearer"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "access_token": {
      "type": "string",
      "description": "OAuth2 access token"
    },
    "expires_in": {
      "type": "number",
      "description": "token validity in seconds"
    },
    "refresh_token": {
      "type": "string",
      "description": "OAuth2 refresh token"
    },
    "token_type": {
      "type": "string",
      "description": "OAuth2 token type"
    }
  },
  "required": [
    "access_token",
    "expires_in",
    "token_type"
  ]
}

Token exchange resource
POST/oauth2/token

This resource is used to retrieve access token, either from authorization code or from refresh token.


Accounts Overview

GET https://api.airbank.cz/openapi/accountInfo/v1/my/accounts?size=3&page=0
Responses200
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "pageNumber": "0",
  "pageCount": "3",
  "pageSize": "3",
  "nextPage": "1",
  "totalCount": "8",
  "accounts": [
    {
      "id": "10037188",
      "identification": {
        "iban": "CZ41 3030 0000 0010 1807 4010",
        "other": "111111111",
        "currency": "CZK",
        "servicer": {
          "bankCode": "3030",
          "currencyCode": "CZ",
          "bic": "AIRACZPP"
        },
        "nameI18N": "Sporíci účet v CZK",
        "productI18N": "SAVINGS"
      }
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "pageNumber": {
      "type": "string"
    },
    "pageCount": {
      "type": "string"
    },
    "pageSize": {
      "type": "string"
    },
    "nextPage": {
      "type": "string"
    },
    "totalCount": {
      "type": "string"
    },
    "accounts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "account ID"
          },
          "identification": {
            "type": "object",
            "properties": {
              "iban": {
                "type": "string",
                "description": "account number in IBAN format"
              },
              "other": {
                "type": "string",
                "description": "account number in national format"
              },
              "currency": {
                "type": "string",
                "description": "currency of money"
              },
              "servicer": {
                "type": "object",
                "properties": {
                  "bankCode": {
                    "type": "string",
                    "description": "bank code in national format"
                  },
                  "currencyCode": {
                    "type": "string",
                    "description": "currency of money"
                  },
                  "bic": {
                    "type": "string",
                    "description": "BIC for account"
                  }
                },
                "required": [
                  "bankCode",
                  "currencyCode",
                  "bic"
                ]
              },
              "nameI18N": {
                "type": "string",
                "description": "account name"
              },
              "productI18N": {
                "type": "string",
                "description": "account type"
              }
            },
            "required": [
              "iban",
              "other",
              "currency",
              "servicer",
              "nameI18N",
              "productI18N"
            ]
          }
        },
        "required": [
          "id",
          "identification"
        ]
      }
    }
  },
  "required": [
    "accounts"
  ]
}

Accounts Overview
GET/openapi/accountInfo/v1/my/accounts{?size,page}

Introduction

Get a list of active and blocked accounts for logged-in user. Only show accounts that are owned by user.

Provided account types:

  • current accounts

  • savings accounts

Features

feature supported
paging yes
sorting no
filtering no
URI Parameters
HideShow
size
number (optional) Example: 3

number of items per page

page
number (optional) Example: 0

page number to go (starts from 0)


Account Balances

GET https://api.airbank.cz/openapi/accountInfo/v1/my/accounts/1234/balances
Responses200404
Headers
Content-Type: application/json;charset=UTF-8
Body
{
  "balances": [
    {
      "type": {
        "codeOrProprietary": {
          "code": "PRCD"
        }
      },
      "creditLine": {
        "included": true,
        "amount": {
          "value": 1000.65,
          "currency": "CZK"
        }
      },
      "amount": {
        "value": 1000.65,
        "currency": "CZK"
      },
      "creditDebitIndicator": "CRDT",
      "date": {
        "dateTime": "2018-03-20T15:34:46Z"
      }
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "balances": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "object",
            "properties": {
              "codeOrProprietary": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "enum": [
                      "PRCD",
                      "CLAV"
                    ],
                    "description": "PRCD previously closed booked balance, CLAV closing available balance"
                  }
                },
                "required": [
                  "code"
                ]
              }
            },
            "required": [
              "codeOrProprietary"
            ],
            "description": "balance type"
          },
          "creditLine": {
            "type": "object",
            "properties": {
              "included": {
                "type": "boolean",
                "description": "if debit or overdraft is included"
              },
              "amount": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "number"
                  },
                  "currency": {
                    "type": "string"
                  }
                },
                "required": [
                  "value",
                  "currency"
                ],
                "description": "amount of agreed and allowed debit or overdraft"
              }
            },
            "required": [
              "included"
            ],
            "description": "debit or overdraft"
          },
          "amount": {
            "type": "object",
            "properties": {
              "value": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              }
            },
            "required": [
              "value",
              "currency"
            ],
            "description": "amount of money for balance"
          },
          "creditDebitIndicator": {
            "type": "string",
            "enum": [
              "CRDT",
              "DBIT"
            ],
            "description": "CRDT indicates positive balance, DBIT indicates negative balance"
          },
          "date": {
            "type": "object",
            "properties": {
              "dateTime": {
                "type": "string",
                "description": "actual time in ISO 8601"
              }
            },
            "required": [
              "dateTime"
            ],
            "description": "time when balance was obtained"
          }
        },
        "required": [
          "type",
          "creditLine",
          "amount",
          "creditDebitIndicator",
          "date"
        ]
      }
    }
  },
  "required": [
    "balances"
  ]
}
Headers
Content-Type: application/json
Body
{
  "errors": [
    {
      "error": "ID_NOT_FOUND",
      "message": "Account with id [123456789] was not found."
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "error"
        ]
      }
    }
  },
  "required": [
    "errors"
  ]
}

Account Balances
GET/openapi/accountInfo/v1/my/accounts/{id}/balances

Introduction

Returns list of balances for client’s bank account. Account is identified by it’s id. Please retrieve account id by calling accounts overview for logged-in user.

Features

feature supported
paging no
sorting no
filtering no
URI Parameters
HideShow
id
number (required) Example: 1234

internal account identifier


Account Transactions

GET https://api.airbank.cz/openapi/accountInfo/v1/my/accounts/1234/transactions?fromDate=2018-02-06&toDate=2018-03-06&size=3&page=0&sort=transactionType&order=ASC
Responses200400400400400
Headers
Content-Type: application/json
Body
{
  "pageNumber": "0",
  "pageCount": "1",
  "pageSize": "3",
  "nextPage": "1",
  "totalCount": "1",
  "transactions": [
    {
      "entryReference": "RB-4567813",
      "amount": {
        "value": 1000.65,
        "currency": "CZK"
      },
      "status": "BOOK",
      "creditDebitIndicator": "DBIT",
      "bookingDate": {
        "date": "2016-02-09T10:00Z"
      },
      "valueDate": {
        "date": "2016-02-09T10:00Z"
      },
      "bankTransactionCode": {
        "proprietary": {
          "code": "10000101000",
          "issuer": "CBA"
        }
      },
      "entryDetails": {
        "transactionDetails": {
          "references": {
            "paymentInformationIdentification": "879213546",
            "mandateIdentification": "456789",
            "endToEndIdentification": "123456",
            "clearingSystemReference": "DTRNOUTO",
            "chequeNumber": "516844******8964"
          },
          "amountDetails": {
            "instructedAmount": {
              "amount": {
                "value": 1000.65,
                "currency": "CZK"
              }
            },
            "counterValueAmount": {
              "amount": {
                "value": 1000.65,
                "currency": "CZK"
              }
            },
            "currencyExchange": {
              "sourceCurrency": "CZK",
              "targetCurrency": "EUR",
              "exchangeRate": 28
            }
          },
          "charges": {
            "beare": "OUR"
          },
          "relatedParties": {
            "debtorAccount": {
              "identification": {
                "iban": "CZ41 3030 0000 0010 1807 4010",
                "other": {
                  "identification": "1018074010/3030"
                }
              },
              "currency": "CZK",
              "name": "Běžný účet v CZK"
            },
            "creditorAccount": {
              "identification": {
                "iban": "CZ41 3030 0000 0010 1807 4010",
                "other": {
                  "identification": "1018074010/3030"
                }
              },
              "currency": "CZK",
              "name": "Běžný účet v CZK"
            }
          },
          "relatedAgents": {
            "debtorAgent": {
              "financialInstitutionIdentification": {
                "bic": "AIRACZPP",
                "clearingSystemMemberIdentification": {
                  "memberIdentification": "3030"
                },
                "name": "Air Bank a.s.",
                "postalAddress": {
                  "country": "CZE",
                  "addressLine": "OLBRACHTOVA 6214000 PRAGUE"
                }
              }
            },
            "creditorAgent": {
              "financialInstitutionIdentification": {
                "bic": "AIRACZPP",
                "clearingSystemMemberIdentification": {
                  "memberIdentification": "3030"
                },
                "name": "Air Bank a.s.",
                "postalAddress": {
                  "country": "CZE",
                  "addressLine": "OLBRACHTOVA 6214000 PRAGUE"
                }
              }
            }
          },
          "remittanceInformation": {
            "unstructured": "messageToReceiver",
            "structured": {
              "creditorReferenceInformation": {
                "reference": "VS:123456/KS:456789/SS:879213546"
              }
            }
          },
          "additionalTransactionInformation": "Odchozí platba"
        }
      }
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "pageNumber": {
      "type": "string"
    },
    "pageCount": {
      "type": "string"
    },
    "pageSize": {
      "type": "string"
    },
    "nextPage": {
      "type": "string"
    },
    "totalCount": {
      "type": "string"
    },
    "transactions": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "entryReference": {
            "type": "string",
            "description": "internal transaction identifier"
          },
          "amount": {
            "type": "object",
            "properties": {
              "value": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              }
            },
            "required": [
              "value",
              "currency"
            ],
            "description": "transaction amount in account currency"
          },
          "status": {
            "type": "string",
            "enum": [
              "BOOK",
              "PDNG"
            ],
            "description": "transaction status"
          },
          "creditDebitIndicator": {
            "type": "string",
            "enum": [
              "DBIT",
              "CRDT"
            ],
            "description": "transaction direction"
          },
          "bookingDate": {
            "type": "object",
            "properties": {
              "date": {
                "type": "string"
              }
            },
            "required": [
              "date"
            ],
            "description": "date when bank processed transaction - ISO Date format"
          },
          "valueDate": {
            "type": "object",
            "properties": {
              "date": {
                "type": "string"
              }
            },
            "required": [
              "date"
            ],
            "description": "maturity date of payment - ISO Date format"
          },
          "bankTransactionCode": {
            "type": "object",
            "properties": {
              "proprietary": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string"
                  },
                  "issuer": {
                    "type": "string"
                  }
                },
                "required": [
                  "code",
                  "issuer"
                ]
              }
            },
            "required": [
              "proprietary"
            ],
            "description": "bank transaction code according to enumeration issued by Czech bank association for this particular payment"
          },
          "entryDetails": {
            "type": "object",
            "properties": {
              "transactionDetails": {
                "type": "object",
                "properties": {
                  "references": {
                    "type": "object",
                    "properties": {
                      "paymentInformationIdentification": {
                        "type": "string",
                        "description": "specific symbol"
                      },
                      "mandateIdentification": {
                        "type": "string",
                        "description": "constant symbol"
                      },
                      "endToEndIdentification": {
                        "type": "string",
                        "description": "variable symbol"
                      },
                      "clearingSystemReference": {
                        "type": "string",
                        "description": "internal payment type identifier"
                      },
                      "chequeNumber": {
                        "type": "string",
                        "description": "payment card number"
                      }
                    }
                  },
                  "amountDetails": {
                    "type": "object",
                    "properties": {
                      "instructedAmount": {
                        "type": "object",
                        "properties": {
                          "amount": {
                            "type": "object",
                            "properties": {
                              "value": {
                                "type": "number"
                              },
                              "currency": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "value",
                              "currency"
                            ]
                          }
                        },
                        "required": [
                          "amount"
                        ],
                        "description": "transaction amount in account currency"
                      },
                      "counterValueAmount": {
                        "type": "object",
                        "properties": {
                          "amount": {
                            "type": "object",
                            "properties": {
                              "value": {
                                "type": "number"
                              },
                              "currency": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "value",
                              "currency"
                            ]
                          }
                        },
                        "required": [
                          "amount"
                        ],
                        "description": "required amount and currency"
                      },
                      "currencyExchange": {
                        "type": "object",
                        "properties": {
                          "sourceCurrency": {
                            "type": "string"
                          },
                          "targetCurrency": {
                            "type": "string"
                          },
                          "exchangeRate": {
                            "type": "number"
                          }
                        },
                        "required": [
                          "sourceCurrency",
                          "targetCurrency",
                          "exchangeRate"
                        ],
                        "description": "exchange rate"
                      }
                    },
                    "required": [
                      "instructedAmount"
                    ]
                  },
                  "charges": {
                    "type": "object",
                    "properties": {
                      "beare": {
                        "type": "string"
                      }
                    }
                  },
                  "relatedParties": {
                    "type": "object",
                    "properties": {
                      "debtorAccount": {
                        "type": "object",
                        "properties": {
                          "identification": {
                            "type": "object",
                            "properties": {
                              "iban": {
                                "type": "string"
                              },
                              "other": {
                                "type": "object",
                                "properties": {
                                  "identification": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "identification"
                                ]
                              }
                            },
                            "required": [
                              "other"
                            ]
                          },
                          "currency": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "identification",
                          "currency",
                          "name"
                        ],
                        "description": "deptor account identification"
                      },
                      "creditorAccount": {
                        "type": "object",
                        "properties": {
                          "identification": {
                            "type": "object",
                            "properties": {
                              "iban": {
                                "type": "string"
                              },
                              "other": {
                                "type": "object",
                                "properties": {
                                  "identification": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "identification"
                                ]
                              }
                            },
                            "required": [
                              "other"
                            ]
                          },
                          "currency": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "identification",
                          "currency",
                          "name"
                        ],
                        "description": "creditor account identification"
                      }
                    },
                    "required": [
                      "debtorAccount",
                      "creditorAccount"
                    ]
                  },
                  "relatedAgents": {
                    "type": "object",
                    "properties": {
                      "debtorAgent": {
                        "type": "object",
                        "properties": {
                          "financialInstitutionIdentification": {
                            "type": "object",
                            "properties": {
                              "bic": {
                                "type": "string",
                                "description": "BIC for account"
                              },
                              "clearingSystemMemberIdentification": {
                                "type": "object",
                                "properties": {
                                  "memberIdentification": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "memberIdentification"
                                ]
                              },
                              "name": {
                                "type": "string"
                              },
                              "postalAddress": {
                                "type": "object",
                                "properties": {
                                  "country": {
                                    "type": "string"
                                  },
                                  "addressLine": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "country",
                                  "addressLine"
                                ]
                              }
                            },
                            "required": [
                              "bic",
                              "clearingSystemMemberIdentification",
                              "name",
                              "postalAddress"
                            ]
                          }
                        },
                        "required": [
                          "financialInstitutionIdentification"
                        ],
                        "description": "deptor bank identification"
                      },
                      "creditorAgent": {
                        "type": "object",
                        "properties": {
                          "financialInstitutionIdentification": {
                            "type": "object",
                            "properties": {
                              "bic": {
                                "type": "string",
                                "description": "BIC for account"
                              },
                              "clearingSystemMemberIdentification": {
                                "type": "object",
                                "properties": {
                                  "memberIdentification": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "memberIdentification"
                                ]
                              },
                              "name": {
                                "type": "string"
                              },
                              "postalAddress": {
                                "type": "object",
                                "properties": {
                                  "country": {
                                    "type": "string"
                                  },
                                  "addressLine": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "country",
                                  "addressLine"
                                ]
                              }
                            },
                            "required": [
                              "bic",
                              "clearingSystemMemberIdentification",
                              "name",
                              "postalAddress"
                            ]
                          }
                        },
                        "required": [
                          "financialInstitutionIdentification"
                        ],
                        "description": "creditor bank identification"
                      }
                    }
                  },
                  "remittanceInformation": {
                    "type": "object",
                    "properties": {
                      "unstructured": {
                        "type": "string"
                      },
                      "structured": {
                        "type": "object",
                        "properties": {
                          "creditorReferenceInformation": {
                            "type": "object",
                            "properties": {
                              "reference": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    },
                    "required": [
                      "unstructured"
                    ],
                    "description": "additional information about payment"
                  },
                  "additionalTransactionInformation": {
                    "type": "string",
                    "description": "description, possibly additional information abouttransaction"
                  }
                },
                "required": [
                  "references",
                  "amountDetails",
                  "relatedParties",
                  "relatedAgents"
                ]
              }
            },
            "required": [
              "transactionDetails"
            ]
          }
        },
        "required": [
          "entryReference",
          "amount",
          "status",
          "creditDebitIndicator",
          "bookingDate",
          "valueDate",
          "bankTransactionCode",
          "entryDetails"
        ]
      }
    }
  },
  "required": [
    "transactions"
  ]
}
Headers
Content-Type: application/json
Body
{
  "errors": [
    {
      "error": "SORT_ERROR",
      "message": "Invalid sorting attribute: attribute."
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "error"
        ]
      }
    }
  },
  "required": [
    "errors"
  ]
}
Headers
Content-Type: application/json
Body
{
  "errors": [
    {
      "error": "ORDER_ERROR",
      "message": "Invalid ordering attribute: attribute."
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "error"
        ]
      }
    }
  },
  "required": [
    "errors"
  ]
}
Headers
Content-Type: application/json
Body
{
  "errors": [
    {
      "error": "PARAMETER_INVALID",
      "message": "Failed to parse date: Invalid number: date."
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "error"
        ]
      }
    }
  },
  "required": [
    "errors"
  ]
}
Headers
Content-Type: application/json
Body
{
  "errors": [
    {
      "error": "DT01",
      "scope": "fromDate",
      "message": "DATE_IN_FUTURE"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string"
          },
          "scope": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        },
        "required": [
          "error",
          "scope"
        ]
      }
    }
  },
  "required": [
    "errors"
  ]
}

Account Transactions
GET/openapi/accountInfo/v1/my/accounts/{id}/transactions{?fromDate,toDate,size,page,sort,order}

Introduction

Get a list of transactions on given account. Only realized transactions are returned. If no order is specified, transactions are sorted according to their valueDate in descending order (newest first).

Due to performance reasons, you can only retrieve 100 records per one request. If more than 100 records satisfies set filter, you only get first 100. To achieve reasonable response time use size 20 records per page.

Features

feature supported
paging yes
sorting yes
filtering yes
Sorting

You can sort and order results by these attributes:

sort attribute description order
valueDate date of transaction realization ASC/DESC
transactionType type of transaction ASC/DESC
value.amount transaction amount ASC/DESC

You can only specify one attribute for sorting! If no order for sort attribute is specified, transactions are sorted by chosen attribute descending.

Filtering

You can use following attributes for filtering:

filter attribute description
fromDate date in ISO 8601 format
toDate date in ISO 8601 format
Examples
  • get transactions on account with id=1234, sorted by valueDate descending
https://api.airbank.cz/openapi/accountInfo/v1/my/accounts/1234/transactions?sort=valueDate
  • get transactions on account with id=1234, sorted by valueDate ascending
https://api.airbank.cz/openapi/accountInfo/v1/my/accounts/1234/transactions?sort=valueDate&order=ASC
  • get transactions on account with id=1234 from 2.2.2018
https://api.airbank.cz/openapi/accountInfo/v1/my/accounts/1234/transactions?fromDate=2018-02-02
URI Parameters
HideShow
id
number (required) Example: 1234

internal account identifier

fromDate
string (optional) Example: 2018-02-06

filtering parameter

toDate
string (optional) Example: 2018-03-06

filtering parameter

size
number (optional) Example: 3

number of items per page

page
number (optional) Example: 0

page number to go (starts from 0)

sort
string (optional) Example: transactionType

sorting parameter

Choices: valueDate transactionType value.amount

order
string (optional) Example: ASC

ordering parameter

Choices: ASC DESC


Generated by aglio on 26 Oct 2018