# Payment differences: how this app handles them

> From the Zendrea manual for AI assistants, generated 2026-10-31 from the knowledge of Zendrea's built-in assistant. All topics: https://www.zendrea.ch/llms.txt; all of them in one file: https://www.zendrea.ch/llms-full.txt. Screen names are quoted in English, account numbers are those of the standard Swiss chart, and nothing here is tax or legal advice.

When a payment amount differs from the amount due (e.g. rounding on VAT), the app books a **two-line journal entry**:

**Line 1 — Main payment** (original amount due):
- Debit: Payable account (e.g. the creditor account)
- Credit: Bank (1020)

**Line 2 — Difference** (|paid − due|):
- Overpaid (paid > due): Debit **6900** (Rundungsdifferenzen Aufwand), Credit bank
- Underpaid (paid < due): Debit bank, Credit **6950** (Rundungsdifferenzen Ertrag)

**Account selection by flow:**
- VAT payments (a quarter's or semester's return) book **what is paid, never a difference**: the gap between the return and the books (the unavoidable rounding, or an error) stays on the VAT accounts until the year is settled on the VAT report: what the year's Jahresabstimmung asks is paid on its **correction row**, and whatever is then left is **cleared against P&L** with the Total row's button (6950 when more VAT was booked than paid, 6900 when more was paid; on the year's last day). VAT payments booked before this rule carry a 6900/6950 line; they stay as booked.
- Social Insurance payments (AHV, BVG, UVG, KTG) book **what is paid, never a difference**: a gap stays on the insurance's account until the year is settled on the Social Insurance report, where a correction bill is paid on the **correction row** and whatever is then left is **cleared against P&L** with the Total row's button (6950 when the books expected more than was billed, 6900 when more was paid; on the year's last day). AHV payments booked before this rule may carry a 6900/6950 line; they stay as booked.
- Invoice (receivable) payments: the user is prompted to **select a difference account**, and the default now switches by direction (a collection is incoming, so receiving MORE is the gain). Settlements book in the **base currency** (unless collected through the invoice currency's own bank account — see "Settling in the document currency" below): for a foreign-currency invoice the modal shows the invoice's **booked base value** as the amount due (that is what clears the receivable) plus the original document amount for reference, and the user enters the base amount the bank actually credited. Paid **less** than the base due on a base-currency invoice is typically a Skonto/Abzug: the modal then offers **"Als Skonto verbuchen"** — ticking it books the shortfall as a proper **Entgeltminderung** (net to **3800 Erlösminderungen** plus the output-VAT correction at the invoice's own rate(s); see the VAT paragraph below), and the modal shows the VAT portion ("davon MWST-Korrektur") before booking. Left unticked, the plain difference defaults to the **invoice's own revenue account** as before. On a **foreign-currency** invoice the shortfall is first of all a **realized currency loss** and defaults to **6949 Währungsverluste** (no Skonto option — the residual is an FX difference, not a discount). Paid **more** (a dunning fee, rounding, an FX gain) defaults to **6950** (or **6999 Währungsgewinne** for a foreign-currency invoice) — deliberately NOT the revenue account: difference lines carry no VAT, so crediting the extra to a taxable revenue account puts VAT-free turnover on an account whose other lines all carry VAT, and the account balance then no longer agrees with the VAT report's turnover.
- **Expense, asset-purchase, and Open Items payments support a difference too, with a currency-aware default.** The payment amount is editable; when it differs from the booked amount the modal requires a difference account and switches cost/gain by the sign. For a document booked in a **foreign currency** (a USD/EUR bill paid from the CHF bank moves a different CHF amount than it was booked at) the default is the dedicated FX pair — **6949 Währungsverluste** (loss) / **6999 Währungsgewinne** (gain); for base-currency documents it is the generic 6900/6950 pair. The payable line still clears the exact booked amount, so the Open Items sub-ledger and its reconciliation stay tied. A supplier early-payment discount is modeled on **expense and asset-purchase payments**: paying less than the booked amount offers **"Als Skonto verbuchen"**, which books the shortfall as an erhaltener Skonto (net to **4800 Erhaltene Skonti** plus the input-VAT correction — see the VAT paragraph below). **Open Items payments keep the plain difference line** (imported positions carry no reliable VAT composition), as does the quick-entry (Schnellerfassung) payment path. With bank statements imported (camt file), the Bank Account report's bank movements show an FX movement's **original-currency amount and the bank's applied exchange rate** under the booked amount — exactly the numbers to enter in the payment dialog.
- Net-salary payments settle the exact computed amount (no difference field) — except a salary **booked in a foreign currency**: its payment opens the difference flow against the payable's base book value, defaulting to the FX pair (6949/6999), so the realized currency difference is booked and the payable clears in base currency.

**Settling in the document currency (foreign-currency documents).** When the company holds a bank account in the document's currency, the payment dialog of a foreign-currency invoice, expense or asset bill also offers THAT account — the expense/asset dialogs pre-select it for a matching bill. Choosing it books the whole settlement **in the document currency**: the amount locks to the full document total, the currency account moves by exactly that foreign amount (keeping its balance reconstructible for the year-end valuation), the document still clears at its booked base value, and the realized currency difference books automatically to 6949/6999 at the payment-date rate — no difference account to pick and no Skonto (a discount or partial payment belongs on the base-currency path above). Funding such an account (buying EUR) is a normal Others entry in the foreign currency — debit the currency account, credit the base bank — where an optional **"Actual amount"** field records what the bank really charged for the movement instead of the market-rate conversion. With bank statements imported, the Bank Account report matches a currency account's statement rows against its bookings directly; on the base account, a converted credit whose original-currency amount equals exactly one open foreign-currency invoice is marked as that invoice's arrived payment — clicking the marker opens the payment dialog pre-filled from the bank row.

**VAT on differences.** A PLAIN difference line carries no VAT — correct for a VAT-free difference (a dunning fee is Schadenersatz, not steuerbar). A difference booked **as Skonto** does the Art. 41 MWSTG split automatically: the gross discount books as a net reduction (3800 granted / 4800 received) plus a VAT-correction line with a NEGATIVE VAT amount at the ORIGINAL document's rate(s) — proportionally across rates on a multi-VAT document — so the VAT return's tax AND turnover/deduction figures correct themselves in the period of the payment; the ledger shows the extra line(s) on the payment entry. Registered and Saldosteuersatz periods both book the full split (under saldo the tax base is revenue + output VAT, so both legs must move); a not-registered period books the net only. The Skonto option is NOT offered for foreign-currency documents (the residual is FX), Bezugsteuer/import bills (self-assessed tax has no gross to split), credit-covered payments, or Open Items payments — there, tell the user a manual correction entry is the way if a genuine Entgeltminderung occurred. Note also that changing the ACCOUNT on a booked difference changes nothing about VAT: in this app VAT sits on the LINE, not on the account (there are no Automatikkonten with a tax key, unlike Lexware/DATEV).

**Year-end currency valuation (Kursbewertung).** Realized differences are booked at settlement (above); UNREALIZED ones are handled once a year by the **"Currency valuation" button on the Balance Sheet report** (shown once the company uses a foreign currency: a foreign-currency bank account, or any booking in a foreign currency, imported ones included). It revalues foreign-currency bank balances and open foreign-currency receivables/payables at the closing rate — prefilled with the daily closing rate from the installation's official rate source, with a per-currency override field where the user can type the published **ESTV year-end rate (Jahresendkurs)** instead. Differences book to 6949/6999 in one valuation entry per year (re-running replaces it). Bank balances keep the new value; the open-item part is automatically **reversed on the first day of the next fiscal year**, so later payments still clear the booked amounts — this is the standard Swiss small-company treatment, and it requires the next fiscal year to already exist. The valuation reconstructs a foreign-currency bank account's balance **from its foreign-currency bookings** — so movements on that account should be booked in ITS currency (a EUR transfer onto the EUR account = an entry in EUR; the CHF paid is the converted base value). An **opening balance** counts as explained when it was saved with its foreign amount (see the opening-balances topic): the valuation then values the opening together with the flows. If part of the account's value comes from CHF-booked movements instead (a transfer or payment entered in CHF, or an opening balance saved without its foreign amount), the modal shows a **"mixed currency flows" warning naming the account and the unexplained CHF amount, and skips that account** rather than book a wrong difference — the remedy is to rebook those movements in the account's currency, or for an opening balance to enter the foreign amount + book value pair under Settings → Opening Balances. The app also REMINDS about this: a company that uses a foreign currency gets a **"Book the currency valuation" item in the deadlines panel** (bell icon) during the fiscal year's last month, due at the closing date, which turns into a green ✓ by itself the moment the valuation entry exists; and the **books health check** flags an already-ended year that still held foreign-currency positions at its closing date without a booked valuation. A company that has never booked in a foreign currency and holds no foreign-currency bank account sees neither.

**Key point for users:** small rounding differences are normal. On VAT and social contribution payments they wait on the payable account until the year's end, where the report's Total row clears them to P&L in one booking; on bills and invoices, and for realized currency differences on foreign-currency bills, the payment form books them to P&L at once. No manual journal entry is needed either way.
