Open source oznacza dla nas: dzielenie się wiedzą i rozwiązaniami
Nie tworzymy oprogramowania wyłącznie na własne potrzeby – chcemy udostępniać społeczności rozwiązania, które mogą pomóc także innym użytkownikom Odoo.
Z tego powodu opublikowaliśmy nasze moduły importu bankowego dla Odoo 19 Community jako projekt open source.
Cały projekt jest dostępny bezpłatnie na GitHubie:
Odoo 19 Bank Statement Import na GitHubie
Nasz cel jest przy tym bardzo prosty:
Stworzyć działający i możliwie jak najprostszy sposób importowania wyciągów bankowych do Odoo 19 Community – bez konieczności korzystania z płatnego rozszerzenia.
Po co w ogóle własny projekt?
Odoo zasadniczo dysponuje szerokimi możliwościami w zakresie księgowości i przetwarzania operacji bankowych. Jednak właśnie przy imporcie wyciągów bankowych decydujące jest to, jakie formaty udostępnia dany bank.
W praktyce spotyka się m.in. takie formaty jak:
- CAMT.053
- CAMT.054
- OFX
- SWIFT MT940
Nie każdy z tych formatów jest jednakowo dostępny w każdej wersji Odoo.
Zwłaszcza przy przejściu na Odoo 19 zauważyliśmy luki, które mogą mieć istotne znaczenie dla istniejących instalacji.
Zamiast rozwiązywać te problemy wyłącznie dla własnej instalacji, postanowiliśmy więc udostępnić rozwiązanie publicznie i bezpłatnie.
Odoo 19 Community – import wyciągów bankowych
Nasze repozytorium opiera się na odpowiednich komponentach OCA dla Odoo 19 i uzupełnia je o funkcje potrzebne w praktycznym zastosowaniu.
Projekt zawiera m.in. podstawową infrastrukturę dla wyciągów bankowych i importu plików oraz parsery dla różnych formatów bankowych.
Można w ten sposób przetwarzać na przykład następujące formaty:
| Format | Wsparcie |
|---|---|
| CAMT.053 | Tak |
| CAMT.054 | Tak |
| OFX | Tak |
| OFX z przypisaniem ACCTID | Tak |
| SWIFT MT940 | Tak |
Dzięki temu projekt obejmuje dużą część klasycznych formatów wyciągów bankowych.
Obsługa OFX dla Odoo 19
Szczególnym punktem naszego projektu jest obsługa OFX.
OFX był dostępny w starszych wersjach Odoo/OCA, został jednak usunięty z gałęzi OCA 19.0. Nasz projekt ponownie łączy tę funkcję dla Odoo 19 z pozostałymi modułami importu.
Jest to szczególnie interesujące dla firm, których bank nadal oferuje pliki OFX do elektronicznego wyciągu z konta.
Nie chcieliśmy przy tym po prostu tworzyć zupełnie nowego, odizolowanego rozwiązania.
Zamiast tego wykorzystaliśmy istniejącą bazę open source i odpowiednio zestawiliśmy ją dla Odoo 19.
Dodatkowo: SWIFT MT940
Kolejną funkcją naszego projektu jest import SWIFT MT940.
MT940 to ugruntowany format elektronicznych wyciągów bankowych, który nadal jest stosowany, zwłaszcza w bankach i starszych integracjach bankowych.
Dla aktualnych wersji Odoo, zgodnie z dokumentacją naszego projektu, odpowiednie rozwiązanie OCA nie istnieje.
Dlatego opracowaliśmy w tym celu własny moduł:
account_statement_import_mt940
Dzięki temu pliki MT940 można również przetwarzać bezpośrednio w Odoo 19.
Budowa modułowa
Świadomie nie chcieliśmy tworzyć monolitycznego rozszerzenia.
Funkcje zostały podzielone na poszczególne moduły Odoo:
- account_statement_base
- account_statement_import_base
- account_statement_import_file
- account_statement_import_camt
- account_statement_import_camt54
- account_statement_import_ofx
- account_statement_import_ofx_by_acctid
- account_statement_import_mt940
Dzięki temu użytkownicy mogą zainstalować dokładnie te komponenty, których faktycznie potrzebują.
Jest to zgodne również z ideą open source: rozwiązanie nie powinno być niepotrzebnie skomplikowane tylko dlatego, że poszczególni użytkownicy mają różne wymagania.
Bezpłatnie dla Odoo Community
Być może najważniejsze:
Oprogramowanie jest dostępne bezpłatnie.
Opracowane przez nas rozszerzenia udostępniamy Odoo Community.
Za korzystanie z naszych rozszerzeń nie jest pobierana żadna opłata licencyjna.
Kod źródłowy jest publicznie dostępny na GitHubie i można go tam przeglądać, używać, dostosowywać i dalej rozwijać.
Projekt jest udostępniany na licencji AGPL-3, zgodnie z wykorzystaną bazą OCA.
Dlaczego to robimy?
Open source działa w dłuższej perspektywie tylko wtedy, gdy nie każdy wyłącznie bierze, ale też coś oddaje.
Odoo Community Association (OCA) kieruje się właśnie tą ideą i udostępnia jako open source liczne rozszerzenia do Odoo. Również w obszarze importu wyciągów bankowych istnieje obszerny zbiór modułów społeczności.
Chcemy dołożyć naszą cegiełkę.
Sami korzystamy z projektów open source.
Dlatego my również coś oddajemy.
Rozwój open source nie musi przy tym zawsze oznaczać ogromnego frameworka ani zupełnie nowego systemu ERP.
Czasem wystarczy niewielkie rozszerzenie, które rozwiązuje konkretny problem.
Jeśli to rozwiązanie zaoszczędzi później pracy dziesięciu, stu lub tysiącowi innych użytkowników Odoo, rozwój już się opłacił.
Dla Odoo Community – nie tylko dla naszej własnej instalacji
Ważnym punktem przy rozwoju było dla nas to, aby nie dopasowywać modułów wyłącznie do naszego własnego środowiska.
Chcemy, aby repozytorium było interesujące także dla innych instalacji Odoo 19 Community.
Dlatego moduły znajdują się razem w publicznie dostępnym repozytorium i mogą być używane niezależnie od naszej własnej instalacji Odoo.
Oczywiście bank może mieć różne specyficzne cechy w zależności od formatu eksportu. Dlatego cieszymy się również z opinii, zgłoszeń błędów i ulepszeń od społeczności.
Open source żyje dzięki zaangażowaniu
Projekt wyraźnie nie jest pomyślany jako rozwiązanie zamknięte i ukończone.
Jeśli ktoś znajdzie błąd, ma dodatkowy przypadek użycia lub chce wnieść ulepszenie, może bezpośrednio włączyć się w projekt.
To jedna z wielkich zalet open source:
Rozwiązanie nie musi zostawać przy swoim pierwotnym twórcy.
Użytkownik może zostać programistą.
Programista może wnieść ulepszenie.
A to ulepszenie jest potem znów dostępne dla wszystkich pozostałych.
Instalacja i kod źródłowy
Pełny kod źródłowy, struktura modułów oraz wskazówki dotyczące instalacji znajdują się na GitHubie:
GitHub – Odoo 19 Bank Statement Import
Do importu OFX i MT940 potrzebne są dodatkowo odpowiednie biblioteki Pythona. Konkretne zależności są również udokumentowane w repozytorium.
Nasz wkład w Odoo Community
Tym projektem chcemy dać mały sygnał:
Oprogramowanie nie musi być zawsze sprzedawane, aby jego rozwój miał wartość.
Czasem największa korzyść polega na tym, że rozwiązanie jest swobodnie dostępne i może być używane oraz rozwijane przez jak największą liczbę osób.
Oprogramowanie tworzymy przede wszystkim dlatego, że sami potrzebujemy rozwiązania.
Jeśli z tego powstanie użyteczne rozszerzenie dla innych użytkowników Odoo, chętnie udostępnimy je społeczności.
Właśnie dlatego opublikowaliśmy Odoo 19 Bank Statement Import Module.
Bezpłatnie. Open source. Dla społeczności Odoo.
Projekt na GitHubie
Przejdź do projektu na GitHubie: Odoo 19 Bank Statement Import
Cieszymy się z opinii, zgłoszeń (issues), propozycji ulepszeń i oczywiście także z wkładu społeczności.
Open source działa najlepiej, gdy pracujemy nad nim wspólnie.