Issues the company's EUR IBAN. One IBAN per company: repeating the call returns the same one. The issue fee is debited from `accountId` (your active EUR account) — if it cannot cover the fee nothing is issued (`insufficient_issuance_funds`). Issuance is asynchronous. The response is `202` with `status` `pending` or `active`; poll `GET …/account` until it reads `active`. `failed` means the IBAN was not issued and the fee was not kept — you can try again. The owner is the legal company the IBAN is opened for. Text fields accept Latin letters, digits, spaces and `/ - ? : ( ) . ' +` (addresses also `,`), without leading or trailing spaces.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
companyId |
path | string (uuid) |
yes | Your company that Payca enabled for Virtual IBAN. |
Request body
application/json
· VirtualIbanIssueRequest
· required
| Field | Type | Required | Description |
|---|---|---|---|
accountId |
string (uuid) |
yes | Your active EUR account that pays the issue fee. |
owner |
object |
yes | The legal company the IBAN is opened for. |
Responses
| Status | Body | Description |
|---|---|---|
202 |
VirtualIban |
Issuance accepted; the IBAN may still be pending. |
400 |
VirtualIbanError |
The request was refused; `code` says why (see the Virtual IBAN section). |
401 |
— | Missing or invalid `x-client-id` / `x-client-secret` (no body). |
403 |
VirtualIbanError |
The request was refused; `code` says why (see the Virtual IBAN section). |
404 |
VirtualIbanError |
The request was refused; `code` says why (see the Virtual IBAN section). |
409 |
VirtualIbanError |
The request was refused; `code` says why (see the Virtual IBAN section). |
503 |
VirtualIbanError |
The request was refused; `code` says why (see the Virtual IBAN section). |
Specification
This page is generated from the OpenAPI specification, which remains the authoritative machine-readable source.