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
| Name | Mandatory | Type | Description |
|---|---|---|---|
| account_number | + | string | Account number (20 digits) for which you request a statement |
| date_to | + | date | Statement end date. Example: 2023-06-01 |
| date_from | + | date | Statement start date. Example: 2023-06-01 |
The
date_fromanddate_tovalues must match.
Request example
curl -X POST \
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
| Name | Mandatory | Type | Description |
|---|---|---|---|
| status | + | string | Status. Options: error, ok |
| method | + | object | Method data |
| name | + | string | Method name account_statement |
| account_statement | + | object | Statement details |
| date_from | + | date | Statement start date |
| date_to | + | date | Statement end date |
| account_number | + | string | Account number (20 digits) for which the statement is generated |
| total_turnover | + | object | Information on funds movement |
| debet | + | int | Total debits over the period covered by the statement |
| credit | + | int | Total credits over the period covered by the statement |
| total_balance | + | object | Balance information |
| opening | + | int | Opening balance on the statement start date |
| closing | + | int | Closing balance on the statement end date |
| transactions | + | object | Information on transactions |
| amount | + | int | Top-up amount (non-negative values only) |
| base_amount | - | int | Transaction 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 | + | string | Transaction currency |
| payment_date | + | date | Transaction date |
| bank_system_id | + | string | Payment 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 | - | string | Transaction identifier. It is specified for payments sent via the API |
| session_id | - | string | Session identifier. It is specified for payments sent via the API |
| purpose | + | string | Payment purpose |
| counter_party | + | object | Counterparty details |
| kpp | - | string | Counterparty's KPP |
| inn | - | string | Counterparty's INN |
| name | + | string | Counterparty's name |
| account_number | + | string | Counterparty's account number |
| bank_code | + | string | Counterparty's bank BIK |
| type | + | string | Transaction 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"
}
}