Odoo im Handwerksbetrieb: Angebot, Einsatz und Rechnung
Kurz gesagt
Ein Handwerksbetrieb führt die Kette in Odoo 20.0 in vier Schritten: Angebot und Auftrag im Verkauf, Einsätze als Schichten der Planung, Stunden und Material am Auftrag, Rechnung aus dem Auftrag. Planung, Außendienst und Abonnements führt der Editionsvergleich nur in Enterprise. In Deutschland ermäßigt § 35a Abs. 3 EStG die Einkommensteuer des privaten Kunden um 20 Prozent der Arbeitskosten für Renovierungs-, Erhaltungs- und Modernisierungsleistungen in seinem Haushalt, höchstens um 1.200 Euro; die Rechnung muss den Arbeitsanteil deshalb getrennt ausweisen.
Das Wichtigste
- Angebot und Auftrag führt die App Verkauf; Abschnittsvorlagen und Angebotsvorlagen ordnen die Leistungen.
- Einsätze sind Schichten der Planung; die App Außendienst ist seit Version 20 darin aufgegangen.
- Zeit und Material erreichen die Rechnung über einen Auftrag: Ohne verknüpften Auftrag legt Odoo beim Erfassen von Material an der Schicht selbst einen Verkaufsauftrag an; die Zeit rechnet es ohne Auftrag nur ab, wenn am Mitarbeitenden ein Service to Bill hinterlegt ist, und legt dann beim Abschluss der Schicht einen Auftrag mit diesem Service an. Die Abrechnung nach Aufwand setzt zusätzlich die Apps Projekt und Zeiterfassung voraus, ein als abrechenbar (Billable) geführtes Projekt mit aktivierter Zeiterfassung und einen Mitarbeitenden als Ressource an der Schicht; abgerechnet wird die Allocated Time der Schicht, die Odoo bei Sign In und Complete fortschreibt.
- Planung, Außendienst und Abonnements führt der Editionsvergleich nur in Enterprise (Stand 17. Oktober 2026).
- Die im Artikel genannten Branchenpakete aus odoo/industry stehen unter OEEL-1 und setzen ein Enterprise-Abonnement voraus.
- In Deutschland begünstigt § 35a EStG nur Handwerkerleistungen zur Renovierung, Erhaltung und Modernisierung im Haushalt des privaten Kunden und davon nur die Arbeitskosten; nötig sind eine Rechnung und die Zahlung auf das Konto des Betriebs.
Auf die Anfrage folgt ein Aufmaß, auf das Angebot der Auftrag, dann der Termin beim Kunden, Material aus dem Fahrzeug und am Ende die Rechnung. In Odoo 20.0 verteilt sich diese Kette auf Verkauf, Projekte, Zeiterfassung, Planung und Rechnungsstellung; die Planung trägt die Einsatzplanung, in der der frühere Außendienst seit Version 20 aufgegangen ist.
Worauf es im Handwerksbetrieb ankommt
Ein Handwerksbetrieb verkauft als Festpreis für ein beschriebenes Werk, als Aufwand aus Stunden und Material oder als Mischung aus beidem; dazu kommen Wartungsverträge mit wiederkehrender Rechnung. Den Unterschied hängt Odoo 20.0 an den Produktdatensatz: Die Abrechnungspolitik legt fest, ob bestellte Mengen, gelieferte Mengen oder erfasste Stunden abgerechnet werden.
Für acht Gewerke führt Odoo ein Branchenpaket (siehe unten). Ein solches Paket ist eingerichtete Konfiguration auf den Standard-Apps und ersetzt keine App; welches Verhalten es hinzufügt, steht nicht in der Nutzerdokumentation 20.0. Sein Manifest nennt die Lizenz OEEL-1 — Software darunter läuft laut Lizenzseite nur mit gültigem Enterprise-Abonnement — und die Module, von denen es abhängt, etwa planning_field_service_sale_stock und web_studio.
Die Kette von Angebot bis Rechnung
Die Spalte Edition folgt dem Editionsvergleich (17. Oktober 2026).
| Station | App | Was Odoo führt | Edition |
|---|---|---|---|
| Angebot | Verkauf (Sales) | Angebot mit Abschnitten und Vorlagen | Community und Enterprise |
| Auftrag | Verkauf | Bestätigung zum Verkaufsauftrag, Abrechnungspolitik | Community und Enterprise |
| Einsatz | Planung (Planning), darin der Außendienst (Field Service) | Schicht mit Kunde, Auftrag, Ressource und Arbeitsblatt | nur Enterprise |
| Stunden | Zeiterfassung (Timesheets) | Zeit auf Aufgabe und Projekt; abgerechnet nach Aufwand wird die Allocated Time der Schicht, wenn die Apps Projekt und Zeiterfassung installiert sind, das Projekt als abrechenbar (Billable) geführt ist, die Zeiterfassung darin aktiviert ist und ein Mitarbeitender als Ressource an der Schicht steht | Community und Enterprise; Rasteransicht, Zeitstopper, Erinnerungen und Validierung der Zeiterfassung nur Enterprise |
| Material | Lager (Inventory), Planung mit Außendienst | Produkte an der Schicht, Übertrag in den Auftrag | Lager in beiden; Erfassung an der Schicht nur Enterprise |
| Rechnung | Rechnungsstellung (Invoicing) | Entwurf aus dem Verkaufsauftrag | Community und Enterprise |
| Wartung | Abonnements (Subscriptions) | wiederkehrende Rechnung nach Aboplan | nur Enterprise |
- Angebot erstellenVorlagen ordnen die Leistungen
- Auftrag bestätigenAbrechnungspolitik, Plan Services und Rolle am Serviceprodukt
- Einsatz planenTo Plan am Auftrag, dann Schicht zuweisen und veröffentlichen
- Vor Ort erfassenSign In, Arbeitsblatt, Stunden und Material an der Schicht
- AbschließenComplete setzt Ende und Allocated Time
- Rechnung stellenEntwurf aus dem Verkaufsauftrag; Arbeitsanteil getrennt ausweisen
Planung und Außendienst setzen Enterprise voraus.
Quelle: Odoo 20.0 Dokumentation, Planning, Field service, Sales und Invoicing
Verknüpft wird die Kette über den Verkaufsauftrag. Am Serviceprodukt setzen Sie Plan Services und eine Rolle; der bestätigte Auftrag zeigt To Plan, im Plan weisen Sie die Schicht einer Ressource mit dieser Rolle zu. Erfasste Stunden erreichen die Rechnung, wenn ein Auftrag mit der Schicht verknüpft ist oder am Mitarbeitenden ein Service to Bill hinterlegt ist. Für die Abrechnung nach Aufwand müssen zusätzlich die Apps Projekt und Zeiterfassung installiert sein, das Projekt als abrechenbar (Billable) geführt, die Zeiterfassung darin aktiviert und mindestens ein Mitarbeitender als Ressource an der Schicht stehen; abgerechnet wird dann die Allocated Time der Schicht, die Odoo bei Sign In und Complete fortschreibt. Material an der Schicht überträgt Odoo in den verknüpften Auftrag, ohne verknüpften Auftrag legt es einen neuen an. Fehlt der Auftrag und ist am Mitarbeitenden ein Service to Bill hinterlegt, entsteht beim Abschluss der Schicht ein Verkaufsauftrag mit diesem Service, und die aufgewendete Zeit wird darüber abgerechnet; ohne Service to Bill entsteht aus der Zeit kein Beleg. Den Ablauf beschreibt Außendienst mit Odoo, die Abrechnungspolitik Angebot in Odoo erstellen.
Welches Gewerk welches Paket nutzt
Die Seite Alle Branchen führt die acht Gewerke dieses Abschnitts mit ihren deutschen Bezeichnungen; im Repository odoo/industry, Branch 20.0, liegt zu jedem ein Paket, dessen Manifest Lizenz und Abhängigkeiten nennt. Die Tabelle gibt beides als Auszug wieder. Welche Vorlagen, Produkte und Abläufe ein Paket mitbringt, steht nicht in der Nutzerdokumentation 20.0. Prüfen Sie den Inhalt in einer Testdatenbank.
| Gewerk | Paket (deutsche Bezeichnung, Modul) | Manifest im Branch 20.0 |
|---|---|---|
| Reparatur- und Wartungsdienst | Handwerksdienstleistungen (handyman) | OEEL-1; planning_field_service_sale_stock, web_studio |
| Elektroinstallation | Elektriker (electrician) | OEEL-1; planning_field_service_sale_timesheet, web_studio |
| Heizung, Lüftung, Klima | HLK-Dienstleistungen (hvac_services) | OEEL-1; planning_field_service_sale_worksheet, sale_subscription |
| Garten- und Landschaftsbau | Gartenarbeit (gardening) | OEEL-1; planning_field_service_sale_worksheet, knowledge |
| Gebäudereinigung | Reinigungsdienstleistungen (cleaning_services) | OEEL-1; planning_field_service_sale_timesheet, crm_sale_subscription |
| Tischlerei und Möbelbau | Schreiner (carpenter) | OEEL-1; sale_mrp, sale_timesheet |
| Metallbau | Metallbauer (metal_fabricator) | OEEL-1; project_mrp, sale_crm |
| Photovoltaik | Solarenergiesysteme (solar_installation) | OEEL-1; helpdesk_planning_field_service, web_studio |
Mehrere Manifeste hängen an Modulen der Planung und an Studio (web_studio), die der Editionsvergleich nur in Enterprise führt; OEEL-1 verlangt ohnehin ein Enterprise-Abonnement.
Wo Aufmaß und Leistungsverzeichnis außerhalb bleiben
Der Dokumentationsindex 20.0 führt keinen Abschnitt zum Aufmaß: Die gemessene Menge tragen Sie als Menge der Auftragsposition ein. Ein Arbeitsblatt dokumentiert die ausgeführte Arbeit und kann Anweisungen, Prüflisten und Textfelder aufnehmen; abgerechnet wird die Menge der Auftragsposition.
Der Index führt auch keinen Abschnitt zum Austausch eines Leistungsverzeichnisses. Positionen entstehen aus der Angebotsvorlage oder über die Importvorlage für Produkte; eine fremde Datei mit Ordnungszahlen und Mengen ordnen Sie Zeile für Zeile zu, und die Nummer des Aufmaßblatts gehört an die Position.
Eine Angebotsvorlage nimmt im Feld Quote calculator eine Tabellenkalkulation auf; die führt der Editionsvergleich nur in Enterprise.
Was die Rechnung in Deutschland verlangt
- Arbeitskosten getrennt ausweisen (§ 35a EStG). Sie ermäßigt die tarifliche Einkommensteuer des privaten Kunden um 20 Prozent der Aufwendungen für Handwerkerleistungen zur Renovierung, Erhaltung und Modernisierung, höchstens um 1.200 Euro, und nur für Arbeitskosten (§ 35a Abs. 3 Satz 1, Abs. 5 Satz 2 EStG). Sie gilt nur in einem Haushalt in der EU oder im EWR (Abs. 4 Satz 1), nicht bei Betriebsausgaben oder Werbungskosten (Abs. 5 Satz 1) und nicht bei zinsverbilligtem Darlehen oder steuerfreiem Zuschuss (Abs. 3 Satz 2); nötig sind eine Rechnung und die Zahlung auf das Konto des Betriebs (Abs. 5 Satz 3).
- Rechnung ohne Verlangen des Kunden (§ 14 UStG). Bei einer steuerpflichtigen Werklieferung oder sonstigen Leistung im Zusammenhang mit einem Grundstück stellen Sie die Rechnung innerhalb von sechs Monaten aus, auch wenn der Empfänger kein Unternehmer ist; ausgenommen sind Umsätze, die nach § 4 Nummer 8 bis 29 UStG steuerfrei sind (§ 14 Abs. 2 Satz 2 Nr. 3 UStG).
- Steuerschuld des Empfängers bei Bauleistungen und Gebäudereinigung (§ 13b UStG). Ist Ihr Kunde ein Unternehmer, der nachhaltig Bauleistungen erbringt, schuldet er die Umsatzsteuer (§ 13b Abs. 2 Nr. 4, Abs. 5 Satz 2 UStG); davon ist bei gültiger, auf längstens drei Jahre befristeter Bescheinigung des Finanzamts auszugehen. Beim Reinigen von Gebäuden und Gebäudeteilen (Abs. 2 Nr. 8) genügt, dass er nachhaltig solche Reinigungsleistungen erbringt (Abs. 5 Satz 5); gegenüber einer Privatperson bleibt der Betrieb Steuerschuldner (Bauleistungen in Odoo).
- Steuerabzug des Auftraggebers (§ 48 EStG). Bei einer Bauleistung an einen Unternehmer im Sinne des § 2 UStG oder an eine juristische Person des öffentlichen Rechts behält der Leistungsempfänger 15 Prozent des Entgelts zuzüglich Umsatzsteuer ein (§ 48 Abs. 1 Satz 1, Abs. 3 EStG). Ein Steuerabzug muss nicht vorgenommen werden, wenn Sie dem Leistungsempfänger eine im Zeitpunkt der Gegenleistung gültige Freistellungsbescheinigung nach § 48b Abs. 1 Satz 1 vorlegen — sie genügt für sich, auch oberhalb der Betragsgrenzen — oder wenn die Gegenleistung im laufenden Kalenderjahr voraussichtlich 5.000 Euro nicht übersteigt, bei einem Leistungsempfänger mit ausschließlich steuerfreien Umsätzen nach § 4 Nr. 12 Satz 1 UStG 15.000 Euro (Abs. 2 Satz 1); für die Ermittlung sind die Bauleistungen für denselben Leistungsempfänger zusammenzurechnen (Abs. 2 Satz 2). Vermietet der Leistungsempfänger Wohnungen, gilt der Abzug für Bauleistungen an diesen Wohnungen nicht, wenn er insgesamt nicht mehr als zwei Wohnungen vermietet (Abs. 1 Satz 2).
Ausstellen müssen Sie eine E-Rechnung, wenn Ihr Kunde ein anderer Unternehmer ist, die Leistung für dessen Unternehmen bestimmt ist, beide im Inland oder in einem der in § 1 Abs. 3 UStG bezeichneten Gebiete ansässig sind und der Umsatz nicht nach § 4 Nr. 8 bis 29 UStG steuerfrei ist (§ 14 Abs. 2 Satz 2 Nr. 1 UStG); seine Zustimmung braucht es dafür nicht, wohl aber für ein anderes elektronisches Format (§ 14 Abs. 1 Satz 5 UStG). Für eine Rechnung über einen Kleinbetrag bleibt die sonstige Rechnung zulässig: Eine Rechnung, deren Gesamtbetrag 250 Euro nicht übersteigt und die die Angaben nach § 33 Satz 1 UStDV trägt, dürfen Sie abweichend von § 14 Abs. 2 Satz 2 UStG immer als sonstige Rechnung im Sinne des § 14 Abs. 1 Satz 4 UStG übermitteln, also auf Papier oder in einem anderen elektronischen Format (§ 33 Satz 4 UStDV); für Leistungen im Sinne der §§ 3c, 6a und 13b UStG gilt diese Ausnahme nicht (§ 33 Satz 3 UStDV). Anders beim Kleinunternehmer: Eine Rechnung über einen nach § 19 Abs. 1 UStG steuerfreien Umsatz mit den Angaben nach § 34a Satz 1 UStDV dürfen Sie abweichend von § 14 Abs. 2 Satz 2 UStG immer als sonstige Rechnung im Sinne des § 14 Abs. 1 Satz 4 UStG übermitteln, also auf Papier oder in einem anderen elektronischen Format (§ 34a UStDV letzter Satz). § 27 Abs. 38 Nr. 1 UStG lässt für Umsätze nach dem 31. Dezember 2024 und vor dem 1. Januar 2027 bis zum 31. Dezember 2026 Papier ohne Zustimmung zu, ein anderes elektronisches Format nur mit Zustimmung des Empfängers (E-Rechnung in Deutschland). In Österreich und in der Schweiz kommen die jeweiligen Lokalisierungen hinzu.
Typische Fehler
- Der Einsatz hängt an keinem Auftrag des Kunden. Material an der Schicht legt dann einen neuen Verkaufsauftrag an, und die Zeit wird nur abgerechnet, wenn am Mitarbeitenden ein Service to Bill hinterlegt ist; dann entsteht beim Abschluss der Schicht ein Auftrag über dessen Service. Fehlt dieser Service, bleibt die erfasste Zeit ohne Rechnung.
- Die Apps Projekt und Zeiterfassung fehlen, das Projekt ist nicht als abrechenbar (Billable) geführt oder die Zeiterfassung ist darin nicht aktiviert. Die Allocated Time der Schicht entsteht bei Sign In und Complete trotzdem, aber der Auftrag rechnet sie dann nicht ab, und die Rechnung nach Aufwand bleibt leer (Zeiterfassung in Odoo).
- Der Lohn steckt in einer Mischposition mit Material. Der private Kunde kann den Arbeitsanteil nach § 35a Abs. 5 Satz 2 EStG dann nicht ansetzen.
- Material steht als Freitextzeile statt als Produkt; dann fehlt die Bestandsbewegung im Lager.
- Die Einsatzplanung wird in der Community-Edition geplant. Planung und Außendienst stehen nur in der Enterprise-Spalte (Community oder Enterprise).
So gehen Sie vor
- Listen Sie Ihre Leistungen nach Abrechnungsart auf: Festpreis, Aufwand, Mischung, wiederkehrende Wartung.
- Legen Sie je Leistung ein Produkt mit Abrechnungspolitik an, bei Aufwand zusätzlich Plan Services mit Rolle und ein Projekt, das als abrechenbar (Billable) geführt ist und in dem die Zeiterfassung aktiviert ist; prüfen Sie die Abrechnung an einem Musterauftrag (Angebot in Odoo erstellen).
- Bauen Sie zwei Angebotsvorlagen und trennen Sie Lohn und Material in getrennte Positionen.
- Hinterlegen Sie an jedem Mitarbeitenden, der Einsätze fährt, im Mitarbeiterformular unter Einstellungen den Service to Bill (Planung ‣ Konfiguration ‣ Mitarbeitende), damit ein Einsatz ohne verknüpften Auftrag nicht ohne Rechnung bleibt.
- Prüfen Sie Aufmaß und Leistungsverzeichnis vor der Auftragsbestätigung gegen die Positionen und notieren Sie die Nummer des Aufmaßblatts an der Position.
- Klären Sie je Kunde den Steuerweg: Privatperson, Unternehmer mit Bescheinigung nach § 13b Abs. 5 Satz 2 UStG (Reinigung: Satz 5) oder Auftraggeber mit Abzug nach § 48 EStG. Den Vergleich mit dem Bauhauptgewerbe führt Odoo für Bauunternehmen, die Paketfamilie Odoo-Branchenpakete.