Fremdwährungen in Odoo: Kurse und Bewertung
Kurz gesagt
In Odoo 20 buchen Sie Rechnungen und Zahlungen in Fremdwährung; Odoo führt jeden Betrag zusätzlich in der Hauptwährung. Kursdifferenzen bucht Odoo automatisch auf eigenen Konten in einem eigenen Journal; die Kursdifferenzbuchung entsteht beim Abgleich in einer anderen Währung. Die Zahlungsregistrierung erzeugt nur dann eine Journalbuchung, wenn an der Zahlungsmethode ein Zahlungskonto (englisch outstanding account) eingerichtet ist; diese Buchung geht zunächst gegen das ausstehende Konto. Offene Posten bewertet der Bericht Unrealized Currencies zum Stichtag neu; er gehört zur App Buchhaltung (Accounting), deren Zeile die offizielle Editionsübersicht nur in der Spalte Enterprise führt. Für die Steuer gilt in Deutschland § 16 Abs. 6 UStG, im Abschluss § 256a HGB.
Das Wichtigste
- Kurse pflegen Sie je Währung im Reiter Kurse; Einheit/Basis ist der Wert einer Fremdwährungseinheit in der Hauptwährung.
- Kursauswahl, belegt nur am öffentlichen Community-Zweig 20.0 (Modul base): Für einen Vorgang zieht Odoo den zuletzt vor dessen Datum erfassten Kurs heran, sonst den frühesten Kurs der Währung; die offizielle Dokumentation 20.0 beschreibt diese Auswahl nicht, für die Enterprise-Edition ist sie nicht belegt.
- Kursdifferenzen bucht Odoo automatisch auf eigenen Konten in einem eigenen Journal, das Sie im Abschnitt Standardkonten festlegen; die Kursdifferenzbuchung entsteht beim Abgleich in einer anderen Währung. Die Zahlungsregistrierung erzeugt nur dann eine Journalbuchung, wenn an der Zahlungsmethode ein Zahlungskonto (englisch outstanding account) eingerichtet ist, und diese Buchung geht zunächst gegen das ausstehende Konto.
- Ist die Einstellung Automatische Wechselkurse in Ihrer Installation vorhanden (sie erscheint nach dem Aktivieren einer zweiten Währung), bezieht sie die Kurse standardmäßig von den Webdiensten der Europäischen Zentralbank; fehlt sie, pflegen Sie die Kurse je Datum von Hand.
- Kursdifferenzbuchungen sehen Sie unter Buchhaltung > Prüfung > Buchungszeilen, gruppiert nach Sonstige.
- Deutschland: § 256a HGB verlangt den Devisenkassamittelkurs am Abschlussstichtag; bei Restlaufzeit bis zu einem Jahr entfallen zwei Bewertungsgrenzen.
In Odoo trägt jede Buchung den Betrag in der Fremdwährung und den Gegenwert in der Hauptwährung Ihrer Firma. Kursdifferenzen entstehen dadurch zweimal, beim Abgleich der Zahlung und am Abschlussstichtag.
Was Sie vorab brauchen
Vor der ersten Buchung in Fremdwährung sollten Sie sechs Dinge beisammen haben:
- die Hauptwährung Ihrer Firma (Hauptwährung, englisch Main Currency) und die Währung, in der Sie fakturieren;
- Schreibrechte auf die Buchhaltungseinstellungen; im öffentlichen Community-Zweig 20.0 steht der Abschnitt Standardkonten mit der Einstellung für Kursdifferenzen hinter dem Recht „Zeige vollständige Finanzbuchhaltung“ (Show Full Accounting Features), für die Enterprise-Edition ist diese Bindung mit öffentlichen Quellen nicht belegt;
- eine Kurszeile mit einem Datum vor jedem Tag, an dem Sie buchen (Kursauswahl im Community-Zweig 20.0: Schritt 3);
- ein Journal für Kursdifferenzen sowie ein Konto für Wechselkursgewinne und eines für Wechselkursverluste;
- optional an der Zahlungsmethode Ihres Bankjournals ein Zahlungskonto (englisch outstanding account), wenn schon die Zahlungsregistrierung eine Buchung erzeugen soll (Schritt 6);
- eine Absprache mit Ihrer Steuerberatung über den Kurs. In Deutschland sind Werte in fremder Währung für die Steuer mit den Monatsdurchschnittskursen umzurechnen, die das Bundesministerium der Finanzen bekanntgibt (§ 16 Abs. 6 Satz 1 UStG); für das OSS-Verfahren gilt Satz 4 mit dem EZB-Kurs des letzten Tages des Besteuerungszeitraums. In Österreich gilt § 20 Abs. 6 UStG 1994.
Schritt für Schritt: Fremdwährung einrichten und buchen
Schritt 1: Hauptwährung prüfen
Im Abschnitt Währungen der Buchhaltungseinstellungen steht das Feld Hauptwährung (Main Currency); Odoo setzt es beim Anlegen der Firma nach deren Land und lässt es dort ändern. Es ist die Währung Ihrer Bücher, nicht die Ihrer Rechnungen.
Schritt 2: Fremdwährung aktivieren
Unter Buchhaltung > Konfiguration > Währungen sehen Sie die Liste aller Währungen. Eine Währung wird erst nutzbar, wenn der Schalter Aktiv (Active) gesetzt ist. Sobald Sie eine zweite Währung aktivieren, erscheint in den Einstellungen zusätzlich die automatische Kursaktualisierung, sofern Ihre Installation diese Funktion enthält (Schritt 8).
Schritt 3: Kurs erfassen
Klicken Sie die Währung an und öffnen Sie den Reiter Kurse (Rates); eine Zeile trägt ein Datum. Die Kursspalten bedeuten:
| Feld | Bedeutung | Wert im Beispiel 1 Euro = 1,10 USD |
|---|---|---|
| Datum | Datum der Kurszeile; im öffentlichen Community-Zweig 20.0 (Modul base) verwendet Odoo für einen Vorgang den zuletzt davor erfassten Kurs, sonst den frühesten Kurs der Währung; die offizielle Dokumentation 20.0 beschreibt diese Auswahl nicht, für die Enterprise-Edition ist sie nicht belegt | 4. Mai |
| Firma | Unternehmen, für das die Zeile gilt; leer gilt für alle | leer lassen |
| Basiswährung | Währung, auf die sich der Kurs bezieht | Euro |
| Einheit/Basis (Unit/Base) | Wert einer Einheit der Fremdwährung in der Hauptwährung | 0,909091 |
| Basis/Einheit (Base/Unit) | Kurs von der Hauptwährung in die Fremdwährung | 1,10 |
Im öffentlichen Community-Zweig 20.0 des Moduls base sucht Odoo für einen Vorgang den zuletzt erfassten Kurs mit einem Datum vor dem Datum des Vorgangs; gibt es keinen früheren, greift der früheste Kurs der Währung, und ohne jede Kurszeile rechnet Odoo mit dem Faktor 1. Die offizielle Dokumentation 20.0 beschreibt diese Auswahl nicht und das Enterprise-Repository ist nicht öffentlich; für die Enterprise-Edition ist die Auswahl damit nicht belegt. Prüfen Sie deshalb nach dem Buchen, welcher Kurs in der Buchungszeile steht.
Schritt 4: Journal und Konten für Kursdifferenzen festlegen
Unter Buchhaltung > Konfiguration > Einstellungen, Abschnitt Standardkonten (Default Accounts), steht die Einstellung Kursdifferenzposten (Exchange difference entries). Im öffentlichen Community-Zweig 20.0 wird sie nur bei aktiver Mehrwährung angezeigt (Feld Mehrwährung); für die Enterprise-Edition ist diese Bedingung mit öffentlichen Quellen nicht belegt. Sie enthält drei Felder:
- Journal: das Journal für Kursdifferenzen (deutsch Währungsumrechnungsjournal);
- Gewinn: das Konto für Wechselkursgewinne;
- Verlust: das Konto für Wechselkursverluste.
Tragen Sie sie ein: Die Dokumentation beschreibt, dass Odoo die Kursdifferenz auf diesen Konten in diesem Journal erfasst (Abschnitt Exchange difference entries; wann die Buchung entsteht, steht in Schritt 6). Die Kontowahl beeinflusst den Ausweis in der Gewinn- und Verlustrechnung; stimmen Sie sie mit Ihrer Steuerberatung ab.
Schritt 5: Rechnung in Fremdwährung erstellen
Im Rechnungsformular wählen Sie die Währung im Feld Währung. Das Dokument zeigt die Beträge in der Fremdwährung, Odoo speichert daneben den Gegenwert in der Hauptwährung zu dem Kurs, den es für das Belegdatum heranzieht (Schritt 3; belegt für den Community-Zweig). Dasselbe gilt für Lieferantenrechnungen; wie Sie sie erfassen, steht unter Eingangsrechnungen erfassen.
Schritt 6: Zahlung registrieren
Öffnen Sie die Rechnung und klicken Sie auf Zahlung registrieren (Register Payment); bei Zahlungen aus dem Kontoauszug führt der Weg über die Bankabstimmung. Im Fenster wählen Sie im Feld Betrag die Währung der Zahlung. Ob schon die Registrierung eine Journalbuchung erzeugt, hängt von der Einrichtung ab: Nur wenn an der Zahlungsmethode des Journals ein Zahlungskonto (englisch outstanding account) hinterlegt ist, legt Odoo eine Buchung gegen dieses ausstehende Konto an; ohne Zahlungskonto erzeugt die Registrierung keine Journalbuchung. Die Kursdifferenz bucht Odoo automatisch, wenn in einer anderen Währung abgestimmt wird: Beim Abgleich der Banktransaktion entsteht die Buchung für den Kursgewinn oder -verlust und geht in das Journal aus Schritt 4 (Dokumentation 20.0, Payments, Abschnitt Registering payments from an invoice or bill). Die Forderung geht mit dem Rechnungsbetrag in Euro aus, der Bankeingang mit dem Kurs des Zahldatums ein.
Schritt 7: Bankkonto in Fremdwährung führen (optional)
Für ein Fremdwährungskonto legen Sie unter Buchhaltung > Konfiguration > Journale ein Bankjournal an und setzen dort die Währung; das Journal führt dann nur Geschäfte in dieser Währung. Die Dokumentation rät, das Feld Währung am Konto leer zu lassen. Bei Bankbuchungen gilt der Betrag in der Hauptwährung: Wählen Sie die Fremdwährung im Feld Fremdwährung und tragen Sie den Betrag in Ihrer Hauptwährung ein; Odoo rechnet ihn in das Feld Betrag in Währung um. Bei der Abstimmung zeigt Odoo den Fremdwährungsbetrag und den Betrag in der Hauptwährung.
Schritt 8: Automatische Kurse einschalten (optional)
Die Odoo-Dokumentation beschreibt die automatische Kursaktualisierung für Installationen, in denen diese Funktion verfügbar ist: Sobald Sie zum ersten Mal eine zweite Währung aktivieren, erscheint im Abschnitt Währungen der Einstellungen die Einstellung Automatische Wechselkurse (Automatic Currency Rates); das Symbol daneben aktualisiert die Kurse sofort. Intervall (Interval) steht auf Manuell, Täglich, Wöchentlich oder Monatlich; im Feld Dienst (Service) wählen Sie die Kursquelle. Standardmäßig nutzt Odoo die Webdienste der Europäischen Zentralbank, andere Dienste sind möglich (Dokumentation 20.0, Manage a bank account in a foreign currency). Fehlt die Einstellung in Ihrer Installation, pflegen Sie die Kurse von Hand (Schritt 3); prüfen Sie den Kurs danach in der Buchungszeile.
Eine Fremdwährungsrechnung mit Kursdifferenz gerechnet
Eine Firma mit Hauptwährung Euro stellt am 5. Mai über 10.000,00 USD Rechnung und erhält das Geld am 4. Juni; der Kurs fällt von 1 Euro = 1,10 USD auf 1 Euro = 1,05 USD, der Dollar wird also teurer. Die Zahlen sind erfunden.
| Vorgang | Betrag in USD | Kurs | Betrag in Euro |
|---|---|---|---|
| Rechnung 5. Mai | 10.000,00 | 1 Euro = 1,10 USD | 9.090,91 |
| Zahlung 4. Juni | 10.000,00 | 1 Euro = 1,05 USD | 9.523,81 |
| Kursdifferenz | entfällt | entfällt | 432,90 |
Vereinfacht wirtschaftlich dargestellt, alle Beträge in Euro; wie die Buchungszeilen im Einzelnen aussehen, hängt von Ihren Konten ab:
| Vorgang | Wirkung | Betrag in Euro |
|---|---|---|
| Rechnung 5. Mai | Forderung aus Lieferungen aus 10.000,00 USD | 9.090,91 |
| Zahlung 4. Juni | Bankeingang aus 10.000,00 USD | 9.523,81 |
| Kursdifferenz | Kursgewinn | 432,90 |
Odoo bucht die Rechnung und die Zahlung und erfasst die Kursdifferenz laut Dokumentation zusätzlich in eigenen Buchungen auf eigenen Konten in einem eigenen Journal: dem Journal und den Konten für Wechselkursgewinne und -verluste aus Schritt 4. Die Kursdifferenzbuchung entsteht beim Abgleich in einer anderen Währung (Dokumentation 20.0, Payments, Abschnitt Registering payments from an invoice or bill). Die Zahlungsregistrierung allein erzeugt nur dann eine Journalbuchung, wenn an der Zahlungsmethode ein Zahlungskonto eingerichtet ist; diese Buchung geht zunächst gegen dieses ausstehende Konto und ist nicht die Kursdifferenzbuchung (Schritt 6). Die Kursdifferenzbuchungen finden Sie unter Buchhaltung > Prüfung > Buchungszeilen, wenn Sie die Liste dort nach der Gruppe Sonstige gruppieren (in der englischen Oberfläche Group By > Miscellaneous).
Der Bankeingang von 9.523,81 Euro schließt die Forderung von 9.090,91 Euro und die Kursdifferenz von 432,90 Euro ab; die Forderung steht danach auf 0,00 Euro. Der Gewinn kommt allein aus dem Kurs. Läuft der Kurs umgekehrt, entsteht ein Kursverlust: Bei 1 Euro = 1,15 USD am 4. Juni brächte die Zahlung 8.695,65 Euro und die Differenz zur Forderung von 9.090,91 Euro wären 395,26 Euro Kursverlust.
Zum Abschlussstichtag entsteht die zweite Differenz. Der Bericht Unrealized Currencies unter Buchhaltung > Prüfung, Teil der Odoo-Buchhaltung, bewertet offene Fremdwährungsposten mit einem Kurs neu, den Sie im Bericht über die Schaltfläche Exchange Rates ändern. Die Spalte Anpassung (Adjustment) zeigt die Differenz; die Schaltfläche Adjustment Entry bucht sie gegen Journal, Aufwands- und Ertragskonto und bucht die Anpassung zum Rückbuchungsdatum (Reversal Date) automatisch zurück. Die App Buchhaltung führt die Editionsseite nur in der Spalte Enterprise.
Rechtlich ist das in Deutschland der Abschlussvorgang: Auf fremde Währung lautende Vermögensgegenstände und Verbindlichkeiten sind zum Devisenkassamittelkurs am Abschlussstichtag umzurechnen (§ 256a Satz 1 HGB); bei einer Restlaufzeit von einem Jahr oder weniger sind die Anschaffungskostenobergrenze (§ 253 Abs. 1 Satz 1 HGB) und das Realisationsgebot für Gewinne (§ 252 Abs. 1 Nr. 4 Halbsatz 2 HGB) nach § 256a Satz 2 HGB nicht anzuwenden. Ob Sie den Berichtswert übernehmen, klären Sie mit Ihrer Steuerberatung. In der Schweiz regelt Art. 958d Abs. 3 OR die Währung der Rechnungslegung und die Offenlegung der Umrechnungskurse im Anhang; erfolgt die Rechnungslegung nicht in Franken, ist für die Wertgrenze von 100 000 Franken nach Art. 958b Abs. 2 OR der Jahresdurchschnittskurs massgebend (Art. 958b Abs. 3 OR). In Österreich verlangt § 237 Abs. 1 Z 1 UGB im Anhang die Grundlagen für die Umrechnung in Euro, soweit den Posten Beträge zugrunde liegen, die auf eine andere Währung lauten oder ursprünglich gelautet haben.
So prüfen Sie das Ergebnis
- Die Forderung oder Verbindlichkeit steht nach dem Abgleich der Zahlung mit der Bankbuchung auf 0,00; ein Restbetrag deutet auf einen fehlenden Zahlungsabgleich hin.
- Nach dem Abgleich in einer anderen Währung steht die Kursdifferenz als eigene Buchung im Journal aus Schritt 4; Buchungszeilen finden Sie unter Buchhaltung > Prüfung > Buchungszeilen.
- Die getroffenen Konten sind das Konto für Wechselkursgewinne und das für Wechselkursverluste, nicht ein Sammelkonto.
- Beim Bankkonto in Fremdwährung stimmen in der Abstimmung beide Beträge, Hauptwährung und Kontowährung.
- Der Kurs, mit dem Sie rechnen, passt zu dem Kurs Ihrer Steuerberatung.
- Offene Posten vor dem Stichtag in der App Buchhaltung (Editionsübersicht: nur Enterprise): Bericht Unrealized Currencies öffnen und die Anpassung erst nach der Abstimmung buchen; nach dem Buchen der Anpassung steht die Spalte Anpassung (Adjustment) auf 0,00. Der weitere Ablauf steht unter Jahresabschluss in Odoo.
Wenn etwas nicht klappt
| Symptom | Ursache | Abhilfe |
|---|---|---|
| Es entsteht keine Kursdifferenz | Der Kurs am Zahldatum weicht nicht von dem der Rechnung ab, die Zahlung ist noch nicht mit der Bankbuchung abgeglichen, oder die Felder unter Kursdifferenzposten sind leer | Zahldatum und Kurs der Buchung prüfen, die Zahlung mit der Bankbuchung abgleichen (Schritt 6) und die Felder unter Kursdifferenzposten füllen (Schritt 4) |
| Die Fremdwährung fehlt in der Rechnung | Währung ist nicht aktiv | Unter Buchhaltung > Konfiguration > Währungen den Schalter Aktiv setzen |
| Der gerechnete Kurs passt nicht | Keine Kurszeile vor dem Belegdatum; im Community-Zweig 20.0 fiel Odoo dann auf den frühesten Kurs der Währung zurück | Kurszeile mit einem Datum vor dem Belegdatum anlegen und den Vorgang neu buchen |
| Der Bericht zeigt einen anderen Kurs | Der Bericht liest den Kurs aus der Währungskonfiguration | Kurs im Bericht ändern oder die Währungskurse anpassen |
| Die Einstellung Automatische Wechselkurse fehlt | Es ist noch keine zweite Währung aktiv, oder Ihre Installation enthält die automatische Aktualisierung nicht | Unter Buchhaltung > Konfiguration > Währungen eine zweite Währung aktivieren (Schritt 2); bleibt die Einstellung danach aus, pflegen Sie die Kurse von Hand (Schritt 3) |
Wann Sie Hilfe holen sollten
Bei der Wahl des Kurses für die Steuer entscheidet nicht die Software, sondern die Vorschrift: in Deutschland § 16 Abs. 6 UStG, in Österreich § 20 Abs. 6 UStG 1994. Wer in Österreich in anderer Währung als Euro fakturiert, muss den Steuerbetrag zusätzlich in Euro in der Rechnung angeben (§ 11 Abs. 1 Z 3 lit. f UStG 1994); steht der Eurobetrag im Zeitpunkt der Rechnungsausstellung noch nicht fest, genügt statt des Eurobetrags die nachvollziehbare Angabe der Umrechnungsmethode nach § 20 Abs. 6 UStG 1994. In der Schweiz regelt Art. 958d Abs. 3 OR die Währung der Rechnungslegung und die Offenlegung der Umrechnungskurse; für die Einfuhrsteuer sind Preis- und Wertangaben in ausländischer Währung nach dem am letzten Börsentag vor Entstehung der Einfuhrsteuerschuld notierten Devisenkurs (Verkauf) umzurechnen (Art. 54 Abs. 5 MWSTG). Für den Jahresabschluss mit offenen Fremdwährungsposten holen Sie Ihre Steuerberatung oder Treuhand dazu.