Skip to content
Developer

Bank statement CAMT as CSV

You import bank statements in CAMT CSV format, for example from Sparkasse.

Format
CSV (semicolon or comma), UTF-8
Access rights
Administrator, write access to payments
Example file
camt_beispiel_technisch.csv (download)

In short: Upload the CSV export of your account from online banking. vynst takes over the transactions and then assigns them to invoices, direct debits and accounts.

What you need this for

Bank transactions should arrive in vynst so that direct debits and payments can be assigned without typing them in by hand.

Before you start

  • Rights: Administrator with write access for payments.
  • Format: The export must be in the CAMT CSV format of the bank. The header row must match the columns in this list (see below). Another CSV format falls under “Bank transactions as CSV” (Bankumsätze als CSV).

Prepare the file

  • Change nothing: Upload the file exactly as the bank provides it. The header row must match the export exactly.
  • File name: The name must contain .csv.
  • Separator: Semicolon, as in the Sparkasse export. Comma only for an export with commas.
  • Date: as in the export, for example 01.03.2026.
  • Amounts: as in the export, for example 1.234,56.

Columns

The header row of the export is recognised completely. These columns are read for the import:

Column Required Content
Auftragskonto yes The row is skipped if this is missing.
Buchungstag yes Date of the booking.
Kontonummer/IBAN yes IBAN of the counterparty.
Betrag yes Amount of the booking.
Beguenstigter/Zahlungspflichtiger yes Name of the counterparty.
Verwendungszweck no Name of the booking. If it is missing, the name of the counterparty appears there.
Buchungstext no Internal description.
Mandatsreferenz no SEPA mandate.
Kundenreferenz (End-to-End) no Identifier for duplicate checking.
Sammlerreferenz no Collective reference.
Waehrung no Currency.

The header row must also contain all other columns of the export, even if they are not read: Valutadatum, Glaeubiger ID, Lastschrift Ursprungsbetrag, Auslagenersatz Ruecklastschrift, BIC (SWIFT-Code) and Info.

Example

Auftragskonto;Buchungstag;Valutadatum;Buchungstext;Verwendungszweck;Glaeubiger ID;Mandatsreferenz;Kundenreferenz (End-to-End);Sammlerreferenz;Lastschrift Ursprungsbetrag;Auslagenersatz Ruecklastschrift;Beguenstigter/Zahlungspflichtiger;Kontonummer/IBAN;BIC (SWIFT-Code);Betrag;Waehrung;Info
DE89370400440532013000;01.09.2026;01.09.2026;LASTSCHRIFT;Beitrag 09/2026 Hartmann;DE98ZZZ09999999999;M-1001;E2E-2026-0001;;;;Familie Hartmann;DE02120300000000202051;;12,50;EUR;Gebucht
DE89370400440532013000;03.09.2026;03.09.2026;GUTSCHRIFT;Spende Sommerfest 2026;;;E2E-2026-0002;SAMMEL-2026-09;;;Max Mustermann;DE44500105175407324931;;25,00;EUR;Gebucht

Example file: camt_beispiel_technisch.csv with all columns of the export.

How to proceed

  1. Download the CSV from online banking.
  2. Billing → Bank imports → Add (Abrechnung → Bank-Importe → Hinzufügen), select the file.
  3. Check the log.
  4. The assignment then runs in the background.

Good to know

  • vynst recognises bookings that have already been imported and skips them. Overlapping periods are not a problem.
  • Each file creates a new group in the list of bank imports.

When something does not work

Message in the log Meaning What to do
Error: skipped missing Auftragskonto or Buchungstag Row without account or date. LINE-DATA appears below it. Check the row in the export.
Error: skipped missing IBAN or Betrag Row without IBAN or amount. Check the row.
Error: skipped missing Zahlungspflichtiger Row without the name of the counterparty. Check the row.
Error: skipped duplicate The booking already exists. Nothing to do.
Error: skipped empty line Empty row. Nothing to do.
Error: less then one line No data row. Check the export.
FAILED: No matching processor found. Header row does not match the CAMT CSV format. Upload the bank’s export unchanged.

See also