Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

INTO SEF status

Odoo modul za srpski SEF (Sistem elektronskih faktura, efaktura.mfin.gov.rs) koji proširuje zvanični l10n_rs_edi funkcijama koje u praksi nedostaju.

Odoo module for the Serbian SEF e-invoicing system, extending the official l10n_rs_edi with features missing in day-to-day accounting work in Serbia. UI strings are in Serbian.

Funkcije

  • Sinhronizacija statusa izlaznih faktura sa SEF-a (cron + ručno dugme), uključujući CIR status
  • Povlačenje ulaznih faktura sa SEF-a (automatski poslednja 3 dana + wizard za proizvoljan period), import XML koverte u draft account.move
  • Prihvatanje / odbijanje ulaznih faktura direktno iz Odoo-a
  • Otkazivanje i storniranje izlaznih faktura na SEF-u
  • Avansni računi (tip 386) i konačni račun sa vezanim avansima, scenario koji standardno slanje ne pokriva

Zahtevi

  • Odoo 19 (verzija modula 19.0.x)
  • Instaliran zvanični l10n_rs_edi (Serbia eFaktura lokalizacija)
  • SEF API ključ upisan u podešavanjima kompanije (polje l10n_rs_edi_api_key); modul sam bira produkcioni ili demo SEF endpoint

Instalacija

  1. Kopirati folder into_sef u Odoo addons putanju
  2. Update Apps List, pa instalirati "INTO SEF status"
  3. Cron poslovi "INTO: SEF status sync" i "INTO: SEF povuci ulazne" se aktiviraju automatski

⚠️ Poznata zamka SEF API-ja: /ids seče široke opsege datuma

SEF POST /purchase-invoice/ids (i po svemu sudeći i sales-invoice/ids) prećutno iseče rezultate kad je opseg datuma širok: upit od ~70 dana vrati samo ID-jeve iz poslednjih ~30 dana, uz HTTP 200 i bez ikakvog upozorenja. Uočeno u produkciji 12.08.2026 — iz mesečnog paketa je "nestalo" 20 ulaznih faktura i primetila ih je tek knjigovođa.

The SEF /ids endpoints silently truncate results for wide date ranges (~70-day query returned only the last ~30 days, HTTP 200, no warning). Discovered in production on 2026-08-12.

Od verzije 19.0.4.1.0 modul zato svaki opseg obrađuje u prozorima od najviše 7 dana, a prozor koji vrati 25+ ID-jeva automatski deli na pola (adaptivna bisekcija). Ako i pojedinačan dan vrati 25+, upisuje se warning u log radi ručne provere na portalu.

Ako pišete sopstveni klijent za SEF API: nikad ne verujte jednom širokom /ids pozivu — koristite male prozore i proverite kompletnost prema nezavisnom izvoru (SEF portal, sopstvena evidencija).

Od verzije 19.0.4.2.0 modul uz to nenametljivo prati zvaničnu stranicu "SEF ažuriranja i verzije": pri svakom povlačenju (wizard ili cron) uporedi najnoviju objavljenu verziju SEF-a sa poslednjom viđenom (ir.config_parameter into_sef.last_seen_sef_version) i, ako se promenila, upiše warning u log i prikaže sticky obaveštenje u wizardu — podsetnik da pročitate "Detalji nove verzije" i proverite kompletnost, jer SEF ume nedokumentovano da promeni ponašanje API-ja. Provera nikad ne blokira rad (svaka greška se samo debug-loguje).

Napomene

  • Modul komunicira isključivo sa zvaničnim SEF javnim API-jem (/api/publicApi/...)
  • Avansni računi se šalju posebnim dugmetom "Pošalji avansni (SEF)", ne standardnim eFaktura tokom; modul blokira pogrešan kanal da ne ode nepotpun XML
  • Testirano u produkciji na Odoo 19 u Srbiji

Licenca / Autor

LGPL-3 · INTO

About

Odoo 19 modul za srpski SEF (eFaktura): status sync, ulazne fakture, avansni racuni tip 386. Prosirenje l10n_rs_edi.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages