Payments
You take over payments to accounts, persons and sections from a CSV file.
- Format
- CSV (comma or semicolon), UTF-8
- Access rights
- Write access to contacts (CRM)
- Example file
- zahlungen_beispiel_technisch.csv (download)
In short: Each row is a payment with amount, account, person and section. The file creates new payments. If a row matches an existing payment with the same account, person, date, amount, note and direction, it updates that payment.
What you need this for
Payments from your previous program should be available in vynst, so that accounts and persons have a complete payment history.
Before you start
- Rights: Write access for contacts (CRM). Administrator rights are not required here.
- Beforehand: Accounts, persons and sections should already be in vynst. Otherwise, unknown numbers lead to payments without a link.
- Uploading again: A file that was already imported does not book the payments twice. The existing payments are updated.
- Backup: Take an export before the import (Settings → Export (Einstellungen → Export)).
Prepare the file
- File name: The name must contain
.csv. - Header row: The first five columns appear in this order:
TRANSACTION_BRUTTO_VALUE,COMPANY_IDENTIFIER,PERSON_IDENTIFIER,UNIFIED_CATEGORY_IDENTIFIER,DATE. - Separator: Comma or semicolon. With a comma, the header row begins with
TRANSACTION_BRUTTO_VALUE,. - Amounts: Write amounts with a comma, for example
12,50. With the point as decimal separator and withoutPRICE_FORMAT, vynst reads12.50correctly. For amounts with a comma, setPRICE_FORMATtode. - Date:
2026-03-01or01.03.2026.
Columns
| Column | Required | Content | Example |
|---|---|---|---|
TRANSACTION_BRUTTO_VALUE |
yes | Amount of the payment (gross). | 12,50 |
COMPANY_IDENTIFIER |
yes | Account to which the payment belongs. Via the account number. | K-1001 |
PERSON_IDENTIFIER |
yes | Person to whom the payment belongs. | 1001 |
UNIFIED_CATEGORY_IDENTIFIER |
yes in the header row | Section of the payment. May be empty. | FB |
DATE |
yes | Date of the payment. | 01.03.2026 |
NOTE |
no | Description of the payment. | Jahresbeitrag 2026 |
PAYMENT_TYPE |
no | Name of the payment type, exactly as in vynst. | Lastschrift |
CURRENCY |
no | Currency. Default is €. |
€ |
INCOMING |
no | ja if it is an incoming payment. Otherwise nein. |
ja |
AUTO |
no | ja if the payment was generated automatically. |
nein |
PRICE_FORMAT |
no | de for amounts with a comma, en for a point. Default is en. |
de |
Example
TRANSACTION_BRUTTO_VALUE;COMPANY_IDENTIFIER;PERSON_IDENTIFIER;UNIFIED_CATEGORY_IDENTIFIER;DATE;NOTE;PAYMENT_TYPE;CURRENCY;INCOMING;AUTO;PRICE_FORMAT
12,50;K-1001;AFS_CSV_1001;FB;01.09.2026;Beitrag 09/2026;Lastschrift;€;ja;nein;de
8,00;K-1003;AFS_CSV_1003;TUR;15.09.2026;Kursgebühr 09/2026;Lastschrift;€;ja;nein;de
Example file: zahlungen_beispiel_technisch.csv with all columns.
How to proceed
- Create the file with the header row above.
- Settings → Import → Add (Einstellungen → Import → Hinzufügen), select the file.
- Check in the log how many rows were read.
Good to know
- Re-import: A row that matches an existing payment (same account, person, date, amount, note and direction) updates that payment. The log reports the number with
Info:. The import overwrites payment type, currency, automatic flag and section. Be careful with payments that you entered by hand and that look the same: they are updated too. - Identical rows in one file: Two identical rows in the same file create two payments. They are not treated as a duplicate.
- Changed details: If the amount, date, note or direction changes, the import creates a new payment.
- Rows without an amount, account or person are skipped without a message.
- If the account or the person is unknown, the payment is created without this link, without a message.
INCOMINGcontrols whether the payment is incoming. The sign of the amount does not determine it.
When something does not work
| Message in the log | Meaning | What to do |
|---|---|---|
Error: skipped empty line |
Empty row. | Nothing to do. |
Read: N rows |
Number of rows read. | Compare with your row count. |
Info: N payments were already imported and only updated |
This many rows matched an existing payment and only updated it. | Nothing to do. On a first import, check whether the payments were already recorded before. |
Error: less then one line |
No data row. | Check the file. |
FAILED: No matching processor found. |
The header row does not begin with the five columns in the correct order. | Check the header row. |
FAILED: An unexpected Error occurred. |
A date could not be read. The rows before it are already saved. | Check the date in the row named, and import only the remainder. |
See also
- Payments from the previous system
- General import guide