Configuration
The practice
| Setting | What it does |
|---|---|
| Beraternummer / Mandantennummer | Identify the practice and client in the header. Env-parseable. |
| Diktatkürzel | Two characters naming whoever prepared the batch. |
| Herkunftskennzeichen | Two characters identifying the system the batch came from. RE is conventional for an external system. |
| Exportiert von | Blank uses the name of whoever runs the export. |
| Wirtschaftsjahr | The month and day the fiscal year starts. Decides the year the postings land in. |
| Sachkontenlänge | 4–8. Debtor accounts are this plus one. |
| Format version | 13 (125 columns) or 12 (121 columns). Ask the practice if an import is refused. |
| Zeichensatz | Windows-1252, like DATEV's own exports, or UTF-8 with a BOM. |
| Festschreibung | Marks the postings final so DATEV will not allow them to be edited after import. |
What gets exported
Order statuses — leave everything unchecked to export every completed order.
Belegdatum — the order date or the payment date. This is also the date the export period filters on, so a batch labelled March does not quietly contain a February order paid in March.
Belegfeld 1 — the order reference, order number, short number or ID. DATEV allows 36 characters from a restricted set; anything else is dropped rather than substituted, because a replacement character would change the document number your accountant matches on.
Buchungstext — an object template rendered against the order, trimmed to 60 characters.
Tax treatment
Sitzland is the country the shop supplies from; blank uses the Commerce store's location address.
Reverse charge treats an EU order carrying a valid VAT ID for its own country as a tax-free intra-community supply. The number comes from the address's Organization Tax ID, which is where Craft 5 keeps it. It is checked for shape, never against VIES: a checkout must not depend on a foreign service being up.
One Stop Shop books EU distance sales to the destination country's own account. It is off by default because a shop that has not registered for OSS should keep charging home VAT. Switching it on without mapping accounts for the countries you actually sell to is reported as a problem before anything can reach a file.
Accounts
Each revenue account has a BU-Schlüssel field beside it. Leave it empty when the account is an Automatikkonto — 8400, 8300, 4400 and 4300 all carry their own tax rate, and passing a BU key alongside one is a conflict rather than a belt-and-braces measure.
| SKR03 | SKR04 | |
|---|---|---|
| Revenue, standard rate | 8400 | 4400 |
| Revenue, reduced rate | 8300 | 4300 |
| Intra-community supply | 8125 | 4125 |
| Export | 8120 | 4120 |
| Discounts granted | 8700 | 4700 |
| Gateway fees | 4970 | 6855 |
| Money (Geldtransit) | 1360 | 1460 |
Rundungsdifferenzen is deliberately blank. Leave it that way and any order whose postings do not add up to its total is refused; fill it in and differences within the tolerance are booked there instead.
Mapping rules
Rules beat the accounts above. Match a SKU (BOOK-* works), a product type, a category
or a shipping method, and send it to an account of its own. First match wins, so put the
specific rules first.
Payments
Post payments books each successful transaction against the money account mapped for its gateway. A Geldtransit account (1360 / 1460) is the usual choice, because the money is on its way from the gateway rather than in the bank.
Gateway fees are booked only when the gateway recorded one on the transaction. Nothing is estimated.
Refunds post the money movement and — unless you turn it off — reverse the revenue the way a credit note does. Posting only the money leaves the debtor account permanently out of balance.
Behaviour
Never export an order twice leaves an order that is already in a batch out of the next one. Deleting a batch releases its orders again.
Rundungstoleranz is how far the postings may fall from the order total before the export refuses. Two cents is the default, and it only applies when a rounding account is set.