---
title: "List the bank accounts of the authenticated company."
method: GET
path: "/core/v1/company-bank-accounts"
tags: ["Finance"]
---

# List the bank accounts of the authenticated company.

`GET /core/v1/company-bank-accounts`

## Request

- Base URL: `https://api.klara.ch`
- URL: `https://api.klara.ch/core/v1/company-bank-accounts`
- Auth: one of:
  - API key in header `X-API-KEY`
  - HTTP bearer

Returns the bank accounts of the company resolved from the bearer JWT, optionally filtered by business <code>type</code>. The caller must hold the <code>FINANCE_BANK_ACCOUNT</code> permission on the target company. The result is sorted by Swiss-bank name then IBAN. This operation is idempotent and read-only — it can be safely retried.

## Query parameters

- `iban-number` string
- `type` 'AR' | 'AP' | 'HR'

## Response `200`

Bank accounts of the authenticated company.

- CompanyBankAccount[]
  - `id` integer: Internal database id of the bank account.
  - `companyId` integer: KLARA company id this bank account belongs to.
  - `shortName` string: User-defined short label for the bank account.
  - `ibanNumber` string: IBAN in pretty-printed form (groups of 4 characters).
  - `qrIbanNumber` string: QR-IBAN (only set when markedQrIban is true).
  - `currency` string: ISO-style currency code. Allowed values: CHF, CHW.
  - `wirAcceptanceRate` number: WIR acceptance percentage (0–100).
  - `markedHRPayment` boolean: Default account for salary / HR payments.
  - `markedARAccount` boolean: Default account for Accounts Receivable.
  - `markedAPAccount` boolean: Default account for Accounts Payable.
  - `markedPaymentSlip` boolean: ESR / red payment-slip enabled.
  - `markedQrInvoice` boolean: QR-invoice payment enabled.
  - `markedQrIban` boolean: QR-IBAN flow enabled.
  - `participantNumber` string: ESR participant number (only when markedPaymentSlip).
  - `customerIdentificationNumber` string: ESR customer identification number (only when markedPaymentSlip and not PostFinance).
  - `printParticipantNumber` boolean: Print the participant number on payment slips.
  - `printBankAddress` boolean: Print the bank address on payment slips.
  - `printBeneficiary` boolean: Print the beneficiary on payment slips.
  - `esrPrintingType` string: ESR printing type. Allowed values: INTEGRATE, SEPARATE.
  - `contractNumber` string: Bank contract number.
  - `batchBooking` string: Batch-booking preference. Allowed values: DEFAULT, ACTIVE, INACTIVE.
  - `debitAdvice` string: Debit-advice preference. Allowed values: DEFAULT, NO_ADVICE, SINGLE_ADVICE, ADVICE_WITHOUT_DETAILS, ADVICE_WITH_DETAIL.
  - `notMarkedSalaryPayments` boolean: When true, exclude this bank account from salary-payment runs.
  - `swissBank` object: Resolved Swiss-bank master-data record (name, address, BCNR). May have empty fields when the IBAN's clearing number does not match a known Swiss bank.
    - `id` integer: Internal Swiss-bank master-data id.
    - `group` string: Master-data group code.
    - `bankClearingNumber` string: Bank clearing number (BCNR).
    - `branchId` string: Branch identifier.
    - `newBankClearingNumber` string: Successor BCNR if the bank has been replaced.
    - `sicNumber` string: SIC member number.
    - `headOfficeNumber` string: Head-office BCNR.
    - `bankClearingType` string: Bank-clearing classification code.
    - `euroSic` string: SIC participation in EUR.
    - `language` string: Master-data language code.
    - `shortName` string: Bank short name.
    - `name` string: Bank legal name.
    - `address` string: Bank street address.
    - `postalAddress` string: Postal address (PO Box).
    - `place` string: City / locality.
    - `phone` string: Bank phone number.
    - `fax` string: Bank fax number.
    - `dailingCode` string: International dialling code.

## Other responses

- `401`: No Authorization header found or invalid token<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `403`: The current user is not allowed to access this company data<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `404`: Resource not found<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `429`: API rate limit exceeded<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `500`: Something went wrong on our side while processing the request. Please kindly contact our support.<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.

---

[API](https://skmtc.dev/klara/apis/klara-public-api.md) · [All operations](https://skmtc.dev/klara/apis/klara-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/klara/apis/klara-public-api/revisions/490b1a879fc2?raw)
