Skip to main content

Account statements

You can get bank statements for your settlement or escrow account opened in rubles. Statements can only be generated for a day.

To get a statement, use the report/account_statement method.

Request parameters

NameMandatoryTypeDescription
X-PARTNER-PROJECT+stringProject identifier. Get it from your Bank 131 manager
X-PARTNER-SIGN+stringRequest signature
date_from+dateStatement start date. Example: 2023-06-01
date_to+dateStatement end date. Example: 2023-06-01
account_number+stringAccount number (20 digits) for which you request a statement

The date_from and date_to values must match.

Request example
curl -X GET \
https://demo.bank131.ru/api/v1/report/account_statement \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"date_from": "2023-06-01",
"date_to": "2023-06-01",
"account_number": "40702810600200000014"
}'

Response parameters

NameMandatoryTypeDescription
status+stringStatus. Options: error, ok
method+objectMethod data
  name+stringMethod name account_statement
  account_statement+objectStatement details
    date_from+dateStatement start date
    date_to+dateStatement end date
    account_number+stringAccount number (20 digits) for which the statement is generated
    total_turnover+objectInformation on funds movement
      debet+intTotal debits over the period covered by the statement
      credit+intTotal credits over the period covered by the statement
    total_balance+objectBalance information
      opening+intOpening balance on the statement start date
      closing+intClosing balance on the statement end date
    transactions+objectInformation on transactions
      amount+intTop-up amount (non-negative values only)
      base_amount-intTransaction amount in the currency. Should be filled out only for transactions in currencies other than Russian rubles. When using the base currency (RUB), the parameter is optional
      currency+stringTransaction currency
      payment_date+dateTransaction date
      bank_system_id+stringPayment identifier. It is specified for all kinds of payments:
- for payments sent via the API
- for transfers from another bank
- for payments made through online banking
      transaction_id-stringTransaction identifier. It is specified for payments sent via the API
      session_id-stringSession identifier. It is specified for payments sent via the API
      purpose+stringPayment purpose
      counter_party+objectCounterparty details
        kpp-stringCounterparty's KPP
        inn-stringCounterparty's INN
        name+stringCounterparty's name
        account_number+stringCounterparty's account number
        bank_code+stringCounterparty's bank BIK
      type+stringTransaction type. Possible values: credit (for replenishment operations), debet (for write-off operations) values
Successful response example
{
"status": "ok",
"method": {
"name": "account_statement",
"account_statement": {
"date_from": "2022-11-12T18:19:32.487+0000",
"date_to": "2022-11-13T18:19:32.487+0000",
"account_number": "40703810500000000025",
"total_turnover": {
"debet": 0,
"debet_base": null,
"credit": 100,
"credit_base": null
},
"total_balance": {
"opening": 0,
"opening_base": null,
"closing": 100,
"closing_base": null
},
"transactions": [
{
"amount": 10000,
"base_amount": null,
"currency": "RUB",
"payment_date": "2022-11-13",
"bank_system_id": "2080040097819020",
"transaction_id": "c7b923ec-844f-4d98-ad02-795d62fe1989",
"session_id": "ps_3230",
"purpose": "Account replenishment",
"counter_party": {
"kpp": "165501001",
"inn": "1655415696",
"name": "Fee for money transfer processing services",
"account_number": "70606810600004710401",
"bank_code": "049205131"
},
"type": "credit"
}
]
}
}
}
Unsuccessful response examples
date_from does not match date_to
{
"status": "error",
"error": {
"description": "Invalid input request parameters: (max interval is 1 day)",
"code": "invalid_request"
}
}
date_from is greater than date_to
{
"status": "error",
"error": {
"description": "Invalid input request parameters: (date_to must be greater than date_from); (max interval is 1 day)",
"code": "invalid_request"
}
}
Invalid date in date_from
{
"status": "error",
"error": {
"description": "Invalid value in date_from",
"code": "invalid_request"
}
}
Invalid date in date_to
{
"status": "error",
"error": {
"description": "Invalid value in date_to",
"code": "invalid_request"
}
}
Invalid JSON format
{
"status": "error",
"error": {
"description": "Invalid request",
"code": "invalid_request"
}
}
Internal error

This response is returned in the following cases:

  • the account number is specified incorrectly
  • the specified account does not exist
  • the specified account does not belong to the user who initiated the request
{
"status": "error",
"error": {
"description": "Internal error",
"code": "internal_error"
}
}