Zašto u Bosni i Hercegovini, Crnoj Gori, Hrvatskoj i Srbiji nemamo nijednu OCA "Odoo" kvalitetnu lokalizaciju
English version of this article
Problem: Dupliciranje umjesto kolaboracije
Svaki Odoo implementator u Bosni i Hercegovini, Hrvatskoj i Srbiji suočava se sa istim izazovima:
- Dupliciranje osnovnih fiskalnih lokalizacija
- Pojedinačno održavanje usklađenosti sa propisima
- Trošenje vremena na commodity funkcije umjesto na inovacije za klijente
- Konkurencija na infrastrukturi umjesto na ekspertizi
Procjenjujemo da svaka firma troši 200-400 sati godišnje na redundantni razvoj.
Zašto Španija i Rumunija imaju, a mi nemamo?
Uspjesi: Španija i Rumunija
Kritična masa kompanija: Obe zemlje imaju veliki broj preduzeća koja koriste Odoo, što stvara prirodan podsticaj za zajednički razvoj. Španija posebno ima jak sektor malih i srednjih preduzeća koji su rano usvojili Odoo.
Jako tehničko obrazovanje: Obe zemlje imaju robustne tehničke univerzitete koji proizvode developere upoznate sa Python-om i open-source principima. Rumunija je posebno postala evropski tech hub.
Rani usvajači sa vizijom: Ključne kompanije ili pojedinci su rano zagovarali open-source lokalizaciju, postavljajući ton za kolaboraciju. U Španiji su kompanije poput Tecnativa i ACSONE postale glavni OCA kontributori.
Ekonomski podsticaji: Dijeljenje troškova lokalizacije između više implementatora ima ekonomski smisao. Ove zemlje su imale dovoljno implementatora da kolaboracija bude isplativa.
Jezička prednost: Španski jezik kao glavni svjetski jezik stvara spillover benefite - španske lokalizacije se mogu adaptirati za Latinsku Ameriku, povećavajući ROI na razvoj.
Izazovi u našem regionu
Fragmentacija tržišta: Manja tržišta sa manje Odoo implementacija znače manji podsticaj za razvoj zajednice. Individualnim kompanijama može biti lakše razvijati proprietary rješenja.
Konkurentski mindset: Na manjim tržištima, implementatori mogu vidjeti lokalizaciju kao konkurentsku prednost, umjesto kao zajedničku infrastrukturu. Ovo “zero-sum” razmišljanje inhibira kolaboraciju.
Nedostatak anchor kontributora: Bez velike kompanije ili organizacije koja predvodi i kontinuirano doprinosi, napori zajednice ne dobijaju momentum.
Ograničeni resursi: Manje implementacione kompanije možda nemaju resurse da doprinose open-source razvoju dok upravljaju klijentskim projektima.
Regulatorna složenost: Složeni ili često mijenjani propisi mogu obeshrabriti open-source razvoj, jer kompanije strahuju od odgovornosti ili preferiraju proprietary rješenja.
Tehnička realnost: Šta dijelimo, šta ne dijelimo
Dijelimo (zajednička infrastruktura):
- Osnovne fiskalne lokalizacije (porezni kodovi, fiskalne pozicije)
- Banking integracije (import izvoda, SEPA adaptacije)
- Regulatorni izvještaji (PDV, statistički izvještaji)
- Payment gateway integracije
Ne dijelimo (konkurentska prednost):
- Klijent-specifične customizacije
- Industry vertical rješenja
- Implementacione metodologije
- Odnosi sa klijentima
Ekonomika zajedničkog razvoja
Trenutno stanje: Svaka kompanija troši 400 sati/godišnje × 50 EUR/sat = 20.000 EUR na osnovnu lokalizaciju
Moguće stanje: 10 kompanija × 2.000 EUR godišnji doprinos = 20.000 EUR zajednički pool
Rezultat:
- Ista pokrivenost funkcionalnosti
- 90% manje individualnih troškova
- Viši kvalitet kroz peer review
- Brže implementiranje novih propisa
Prvi praktični korak: l10n_adriatic_banking
Umjesto priče, konkretna tehnika. Evo strukture modula koji svako treba i koji je politički neutralan:
Struktura modula
l10n_adriatic_banking/
├── __manifest__.py
├── README.rst
├── data/
│ ├── res.bank.csv # Podaci regionalnih banaka
│ └── account.journal.xml
├── models/
│ ├── res_bank.py
│ └── account_bank_statement_import.py
├── wizard/
│ └── mt940_parser_adriatic.py # Regionalni MT940 varijanti
├── tests/
│ ├── test_mt940_import.py
│ └── fixtures/
│ ├── sample_raiffeisen.mt940
│ ├── sample_unicredit.mt940
│ └── sample_intesa.mt940
Ključni tehnički detalji
Encoding challenge: Regionalne banke koriste različite encoding-e (Windows-1250, UTF-8, Latin-2). Parser mora rukovati sve varijante:
def _decode_regional(self, data):
"""Try multiple encodings common in the region"""
encodings = ['utf-8', 'windows-1250', 'iso-8859-2']
for encoding in encodings:
try:
return data.decode(encoding)
except UnicodeDecodeError:
continue
raise ValueError('Unable to decode file')
Bank-specific MT940 variants: Svaka banka ima svoje specifičnosti u MT940 formatu. Modul treba podržati sve glavne varijante.
Podaci banaka: Centralizovana baza podataka za sve regionalne banke (SWIFT, BIC, nacionalni kodovi).
Praktični akcioni plan
Faza 1: Mapiranje terena (1-3 mjeseca)
- Lista svih Odoo implementatora u BiH, Srbiji, Hrvatskoj
- Identifikacija ko već radi lokalizacije (čak i proprietary)
- Dokumentacija šta svi dupliciramo
- Pronalaženje zajedničkih potreba
Faza 2: Prvi zajednički modul (3-6 mjeseci)
- Izbor pravog prvog projekta (npr. banking integracija)
- Strukturiranje kolaboracije sa jasnim cost-sharing modelom
- Kreiranje infrastrukture (GitHub organizacija, komunikacioni kanali)
- Mjesečni video pozivi i transparentna dokumentacija
Faza 3: Izgradnja momentuma (6-12 mjeseci)
- Akademski pristup: Partnerstvo sa univerzitetima
- Enterprise pristup: Uključivanje community razvoja u proposal-e
- Regionalna integracija: Organizacija “Adriatic Odoo Day” događaja
Tehnički prioriteti modula
Immediate wins (potrebno svima odmah):
l10n_ba_hr_rs_base- Zajednički regionalni base modulaccount_banking_sepa_adriatic- Regionalne SEPA adaptacijel10n_ba_fiscal_printer- Integracije fiskalnih uređaja
Medium-term (kolaborativni potencijal):
hr_payroll_balkans- Base payroll pravila (customizacija po državi)stock_delivery_posta- Integracije regionalnih poštanskih servisaaccount_invoice_ubl_rs_hr_ba- e-Invoice implementacije
Prevazilaženje regionalnih izazova
Problem povjerenja
- Rješenje: Započeti sa kodom, ne sa obećanjima
- Doprinijeti nešto korisno unilateralno prvo
- Dokumentovati sve transparentno
- Koristiti OCA infrastrukturu za neutralnost
Problem konkurencije
- “Konkurišemo na kvalitetu implementacije, ne na osnovnoj usklađenosti”
- “Klijenti nas ne biraju zbog VAT kalkulacija, biraju nas zbog razumijevanja poslovanja”
- “Svaki sat koji ne trošimo na osnovnu lokalizaciju je sat za value-added usluge”
Problem resursa
- Aplicirati za EU fondove (Horizon Europe, IPA fondovi)
- Pozicionirati kao “digitalna infrastruktura za regionalne SME-ove”
- Partnerstvo sa dijaspora tech kompanijama
Trenutna strategija “bring.out” razvoja na open-source “Odoo” platformi:
Više o našoj trenutnoj strategiji razvoja možete pročitati u zasebnom blog postu: Trenutna strategija bring.out: “Odoo” open-source “iza zatvorenih vrata”
Poziv na akciju
Pozivamo sve Odoo implementatore iz regije:
- Pregledajte naš kod - https://github.com/bringout/odoo-bringout-l10n_ba
- Kontaktirajte nas - Hajde da razgovaramo o konkretnoj kolaboraciji
- Podijelite svoje potrebe - Šta vam nedostaje? Šta duplicirate?
- Pridružite se raspravi - Ovaj blog post je početak, ne kraj
Reference
Sadržaj kreiran uz pomoć Claude AI 🤖 prema Ernadovim uputama
Ernad Husremović bring.out doo Sarajevo hernad@bring.out.ba