# Bank details

Bank accounts attached to a requisite: settlement account, BIK, correspondent account, SWIFT, IBAN. Without a bank detail you cannot issue a payment invoice.

Bitrix24 API: `crm.requisite.bankdetail.*`
Scope: `crm`

## Operations

- [Create bank detail](./bank-details/create.md) — `POST /v1/bank-details`
- [List bank details](./bank-details/list.md) — `GET /v1/bank-details`
- [Get bank detail](./bank-details/get.md) — `GET /v1/bank-details/:id`
- [Update bank detail](./bank-details/update.md) — `PATCH /v1/bank-details/:id`
- [Delete bank detail](./bank-details/delete.md) — `DELETE /v1/bank-details/:id`
- [Search bank details](./bank-details/search.md) — `POST /v1/bank-details/search`
- [Bank detail fields](./bank-details/fields.md) — `GET /v1/bank-details/fields`

## Key fields

| Field | Description |
|------|---------|
| `entityId` | ID of the requisite that owns the bank detail (from `GET /v1/requisites`) |
| `name` | Name of the bank detail |
| `rqBik` | Bank BIK |
| `rqAccNum` | Settlement account |
| `rqCorAccNum` | Correspondent account |
| `rqSwift` / `rqIban` | International account details |

Full field list — [`GET /v1/bank-details/fields`](./bank-details/fields.md).

## What you need to know before you start

1. **A bank detail is attached to a requisite.** On creation, `entityId` (the requisite ID from `GET /v1/requisites`) and `name` are required.
2. **`entityTypeId` is optional, but is not returned on read.** This is the owner field: pass `8` (requisite) on creation to attach the record to a requisite; it is absent from the `GET` response.
3. **Fields are returned in camelCase.** Russian account details are `rqBik`, `rqAccNum`, `rqCorAccNum`, `rqAccCurrency`; international ones are `rqSwift`, `rqIban`. For records without a country specified, `countryId` comes back as `0`.

## Related entities

| Entity | Endpoint | Purpose |
|----------|----------|-----------|
| Requisites | `GET /v1/requisites` | Owner of the bank detail. The bank detail's `entityId` is the requisite's `id`. |
| Requisite presets | `GET /v1/requisite-presets` | Field-set template of the owner requisite. |
| Requisite links | `POST /v1/requisite-links` | Attaches a requisite and a bank detail to an invoice or a quote. |

## Typical scenario

1. Find the company requisite: [`GET /v1/requisites?filter[entityTypeId]=4&filter[entityId]=15`](./requisites/list.md).
2. Create a bank detail on it: [`POST /v1/bank-details`](./bank-details/create.md) with `entityTypeId: 8` and the requisite's `entityId`.
3. Use the bank detail's `id` when issuing an invoice or in a [requisite link](./requisite-links.md).

## Limits

| Limit | Value |
|-------|----------|
| Maximum records per request | 5000 (`limit ≤ 5000`) |
| Auto-pagination | enabled when `limit > 50` |
| `offset` on large selections | `limit ≤ 500` recommended when `offset ≥ 2500` |
| Batch requests | up to 50 operations in [`POST /v1/batch`](/docs/batch) |
| Rate limit | shared across the Vibe API — see [Limits and optimization](/docs/optimization) |

## See also

- [Entity API](/docs/entity-api)
- [Filtering syntax](/docs/filtering)
- [Batch](/docs/batch)
- [Entity reference](/docs/entities-index)
