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 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

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: 721af394d5a7aefd0e91f5390abc4d7e20fb2b5784b091fef621f3c61b7abb4b' \
-d '{
"date_from": "2023-06-01",
"date_to": "2023-06-01",
"account_number": "40702810600200000014"
}

Response parameters

NameMandatoryTypeDescription
status+stringStatus. Options: error, ok
name+stringMethod name (account_statement)
account_statement+AccountStatementStatement 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+TotalTurnoverInformation 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+TotalBalanceBalance information
  opening+intOpening balance on the statement start date
  closing+intClosing balance on the statement end date
transactions+TransactionsInformation 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+CounterPartyCounterparty 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": "5aa0e1fe-3ccb-4e0e-ba4e-018649f81983",
"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"
}
}