Przejdź do zawartości

Odoo 19 e-faktury: ebInterface, ZUGFeRD i e-Rechnung.gv.at bezpłatnie dla społeczności

5 września 2026 przez
Odoo 19 e-faktury: ebInterface, ZUGFeRD i e-Rechnung.gv.at bezpłatnie dla społeczności
Alexander Biringer | Biricon IT Services GmbH

Faktury elektroniczne są częścią nowoczesnej księgowości

Cyfryzacja księgowości stale postępuje. Elektroniczne formaty faktur to od dawna coś więcej niż plik PDF wysyłany pocztą e-mail.

Prawdziwa faktura elektroniczna zawiera ustrukturyzowane dane, które mogą być automatycznie przetwarzane przez systemy księgowe i ERP.

Naszym nowym projektem open source dla Odoo 19 Community chcemy zająć się właśnie tym obszarem.

Opracowaliśmy kilka rozszerzeń, które udostępniamy społeczności Odoo bezpłatnie.

Projekt jest publicznie dostępny na GitHubie:

Odoo 19 Invoice E-Files na GitHubie

Skupiamy się przede wszystkim na Austrii, ale część rozwiązania jest interesująca także dla firm spoza Austrii.

Trzy moduły do faktur elektronicznych

Projekt składa się obecnie z trzech głównych komponentów:

  • ebInterface 6.1 dla Austrii
  • ZUGFeRD dla faktur elektronicznych
  • automatyczne przesyłanie do e-Rechnung.gv.at

W ten sposób łączymy różne wymagania dotyczące faktur elektronicznych w jednym projekcie open source dla Odoo 19 Community.

ebInterface 6.1 – austriacki format faktur

Jednym z głównych punktów naszych prac jest ebInterface 6.1.

ebInterface to austriacki standardowy format ustrukturyzowanych faktur elektronicznych.

Nasz moduł

l10n_at_ebinterface

generuje z faktury sprzedaży lub noty kredytowej w Odoo odpowiedni plik XML ebInterface 6.1.

Przy tym do struktury XML przenoszone są m.in. istotne informacje z faktury Odoo:

  • wystawca faktury
  • odbiorca faktury
  • pozycje faktury
  • podatki
  • informacje o płatności
  • dane rachunku bankowego
  • dane faktury

Wygenerowany plik XML jest przy tym bezpośrednio powiązany z fakturą.

Dlaczego opracowaliśmy do tego własny moduł?

Podczas prac stwierdziliśmy, że dla Odoo 19 Community nie jest obecnie dostępny odpowiedni moduł rdzenia Odoo ani moduł OCA dla austriackiego natywnego standardu ebInterface.

Właśnie tu chcieliśmy zacząć.

Zamiast opracowywać austriackie rozwiązanie wyłącznie dla własnej instalacji, wdrożyliśmy je jako samodzielny moduł open source.

Dzięki temu skorzystać może także reszta społeczności Odoo.

ZUGFeRD automatycznie przy każdej fakturze

Drugim głównym punktem naszego projektu jest ZUGFeRD.

ZUGFeRD łączy fakturę w formacie PDF z ustrukturyzowaną fakturą XML.

Wynikiem jest tak zwana faktura hybrydowa: dla człowieka faktura pozostaje czytelna jako PDF, a oprogramowanie może automatycznie analizować zawarte w niej ustrukturyzowane dane faktury.

Odoo 19 zasadniczo już oferuje obsługę ZUGFeRD, czyli CII.

W praktyce istnieje jednak kilka ograniczeń.

Nasz moduł

account_invoice_zugferd_ebinterface_auto

zajmuje się więc właśnie tym.

ZUGFeRD już nie tylko jako opcja

Chcieliśmy możliwie jak najbardziej zautomatyzowanego przebiegu.

Przy wysyłanej fakturze sprzedaży nie sprawdza się więc najpierw, czy dany klient został indywidualnie skonfigurowany do ZUGFeRD.

Zamiast tego ZUGFeRD jest stosowany automatycznie dla faktur sprzedaży i not kredytowych.

Dodatkowo wygenerowany XML ebInterface jest dołączany jako składnik faktury.

W ten sposób powstaje spójny proces:

Faktura Odoo → PDF → ustrukturyzowana e-faktura → wysyłka

bez konieczności wykonywania przez użytkownika dodatkowych kroków przy każdej fakturze.

Uzupełniamy przy tym także luki w Odoo 19 Community

Podczas wdrożenia natknęliśmy się na kilka osobliwości w implementacji Odoo 19.

Między innymi w eksporterze CII istnieją zależności, które poza określonymi instalacjami krajowymi mogą prowadzić do problemów.

Nasz moduł usuwa przy tym kilka z tych praktycznych ograniczeń.

Należą do nich m.in.:

  • brakujące pola dla okresów Deferred Revenue
  • ograniczenie konwersji PDF/A-3 do określonych krajów
  • brakujące lub niewprowadzone dane rachunku bankowego w istniejących fakturach

Dzięki temu ZUGFeRD ma być niezawodnie stosowany także przez firmy spoza pierwotnie przewidzianych konfiguracji krajowych.

e-Rechnung.gv.at – bezpośrednie przesyłanie do austriackiego państwa

Trzeci element jest szczególnie interesujący dla firm wystawiających faktury podmiotom publicznym.

Za pomocą

l10n_at_erechnung_gv_at

fakturę ebInterface można przesłać bezpośrednio do austriackiej usługi sieciowej e-Rechnung.gv.at.

W ten sposób samo wystawianie faktur staje się zautomatyzowanym procesem faktur elektronicznych.

Przebieg może wyglądać na przykład tak:

Utworzenie faktury w Odoo

↓

Wygenerowanie XML ebInterface

↓

Wysłanie faktury

↓

Automatyczne przesłanie ebInterface do e-Rechnung.gv.at

W ten sposób proces, który inaczej byłby ręczny, zostaje zintegrowany bezpośrednio w Odoo.

Automatyczne przesyłanie tylko dla potrzebnych klientów

Przesyłanie do e-Rechnung.gv.at nie jest włączane zbiorczo dla każdego klienta.

Zamiast tego można je włączyć u danego austriackiego klienta.

W tym celu wymagane dane, takie jak na przykład

  • numer dostawcy
  • grupa zakupowa / numer oddziału
  • odniesienie do zamówienia

są zapisywane u klienta.

Moduł sprawdza przy tym również, czy spełnione są warunki do aktywacji.

Tryb testowy i produkcyjny

Dla e-Rechnung.gv.at można wybrać między środowiskiem testowym a produkcyjnym.

Dane dostępowe do usługi sieciowej USP zapisuje się w ustawieniach Odoo.

Dzięki temu integrację można najpierw przygotować w środowisku testowym, zanim zostanie użyta do produkcyjnej wysyłki faktur.

Automatyzacja zamiast dodatkowej pracy

Naszym celem przy tworzeniu nie było dawanie księgowym kolejnych przycisków.

Wręcz przeciwnie.

Idea jest taka:

Jak najmniej pracy ręcznej.

Faktura jest tworzona w Odoo.

Potrzebne ustrukturyzowane formaty są generowane automatycznie.

Przy wysyłce odpowiednie pliki są dołączane automatycznie.

A u odpowiednio skonfigurowanych austriackich klientów faktura może być dodatkowo automatycznie przesłana do e-Rechnung.gv.at.

Właśnie ta automatyzacja stanowi różnicę między zwykłym eksportem plików a naprawdę zintegrowanym rozwiązaniem do e-faktur.

Jakość danych nie jest po prostu ukrywana

Ważną cechą naszej implementacji jest jednak także to, że:

Faktura elektroniczna może być tylko tak dobra, jak dane, z których jest generowana.

Dlatego nie próbujemy po cichu zastępować brakujących wymaganych danych dowolnymi wartościami.

Jeśli na przykład brakuje obowiązkowych informacji dla ZUGFeRD lub ebInterface, Odoo ma zwrócić na to uwagę użytkownika.

Należą do tego na przykład:

  • brak kraju u klienta
  • brak informacji podatkowych w pozycjach faktury
  • brak danych rachunku bankowego

Naszym zdaniem lepiej tak, niż wysyłać formalnie wygenerowaną, ale merytorycznie błędną fakturę elektroniczną.

Open source dla społeczności Odoo

Również ten projekt udostępniamy bezpłatnie jako open source.

Dlaczego?

Ponieważ sami korzystamy z oprogramowania open source.

Odoo Community stanowi doskonałą podstawę dla ERP, księgowości i procesów w firmie. Gdy w codziennej pracy brakuje nam jakiejś funkcji, opracowujemy ją sami.

A jeśli rozwiązanie może być interesujące także dla innych firm, udostępniamy je społeczności.

Dla nas to żywy open source.

Austriacki nacisk – ale nie tylko dla Austrii

Projekt ma wyraźnie austriacki charakter.

ebInterface i e-Rechnung.gv.at są interesujące przede wszystkim dla austriackich firm.

Obsługa ZUGFeRD jest natomiast istotna także dla firm spoza Austrii.

Projekt nie jest więc rozwiązaniem wyłącznie austriackim.

Właśnie połączenie ustrukturyzowanych danych faktury z automatycznie generowanym dokumentem PDF/A-3 może być interesujące także dla innych instalacji Odoo.

Dla Odoo 19 Community

Moduły zostały opracowane dla Odoo 19 Community.

Repozytorium zawiera obecnie:

  • l10n_at_ebinterface
  • account_invoice_zugferd_ebinterface_auto
  • l10n_at_erechnung_gv_at

Moduły są od siebie zależne, dzięki czemu w zależności od zastosowania wystarczy zainstalować tylko potrzebne komponenty.

Nasz wkład w społeczność

Nie postrzegamy tego projektu jako gotowego oprogramowania komercyjnego, lecz jako wkład w rozwój społeczności Odoo.

Być może ktoś potrzebuje tylko ebInterface.

Być może inna firma potrzebuje ZUGFeRD.

Być może firma musi regularnie wysyłać faktury podmiotom publicznym przez e-Rechnung.gv.at.

We wszystkich trzech przypadkach nasz projekt może stanowić podstawę.

A ponieważ kod źródłowy jest otwarty, każdy użytkownik może sprawdzić rozwiązanie, dostosować je i rozwijać dalej.

Open source oznacza: wspólnie stawać się lepszymi

Jesteśmy przekonani, że open source daje duże korzyści zwłaszcza w systemach ERP.

Firmy mają różne wymagania.

Rozwiązanie, które doskonale sprawdza się w jednej firmie, w innej może wymagać dostosowania.

Dzięki otwartemu kodowi źródłowemu jest to możliwe.

Dlatego cieszymy się z:

  • opinii
  • zgłoszeń błędów (Bug Reports)
  • propozycji ulepszeń
  • Pull Requests
  • kolejnych obsługiwanych przypadków użycia

Dobre rozwiązanie społecznościowe nie musi powstać już przy pierwszym commicie.

Powstaje dzięki dalszemu rozwojowi przez wielu użytkowników i programistów.

Korzystaj z projektu bezpłatnie

Cały kod źródłowy jest publicznie dostępny na GitHubie:

GitHub – Odoo 19 Invoice E-Files

Znajdują się tam także informacje o instalacji i dokumentacja poszczególnych modułów.

Do integracji austriackiej usługi sieciowej e-Rechnung.gv.at wymagana jest dodatkowo biblioteka Pythona Zeep.

Nasz wkład w otwarty świat Odoo

Tym projektem chcemy pokazać, że nawet mniejsze własne rozwiązania mogą stworzyć wartość dodaną dla całej społeczności.

Moduły opracowaliśmy pierwotnie, aby rozwiązać konkretne wymagania.

Teraz udostępniamy te rozwiązania bezpłatnie wszystkim użytkownikom Odoo 19 Community.

W ten sposób z indywidualnego rozwiązania może powstać rozwiązanie dla całej społeczności.

Odoo 19. Open source. Faktury elektroniczne. Austria. I bezpłatnie dla społeczności.

Właśnie w tym celu opublikowaliśmy ten projekt.

Wspólnie zamiast wielokrotnie tworzyć to samo.

Przejdź do projektu na GitHubie