Specificații · roboți SAGA

Specificații roboți

Fiecare robot are tabul lui. Contextul general (viziune, cadru tehnic) e pe pagina de prezentare.

SAGA Desktop
SAGA Web
Arhivă

Onboarding client

Robotul configurează un nou client (SRL) în SAGA Desktop, pornind de la datele deja existente în BONO, și apoi face legătura cu SAGA Web.

Date de intrare

Toate valorile vin din atributele clientului din BONO.

Câmp în SAGAAtribut BONONecesar
DenumireBONOclient_denumireObligatoriu
Cod fiscal (fără RO)BONOclient_CUIObligatoriu
Nr. Reg. ComerțuluiBONOclient_JObligatoriu
Cod CAEN principalBONOclient_CAEN_PrimObligatoriu
Capital socialBONOclient_capitalSocialObligatoriu
Localitate / Județ / AdresăBONOclient_Oras · _Judet · _AdresaObligatoriu
Cont 1 (IBAN)BONOclient_IBANObligatoriu
Impozit (micro / profit)BONOclient_impozitObligatoriu
Mod plată TVABONOclient_TVAObligatoriu
Luna / An începereBONOclient_lunaInfiintare · _anInfiintareObligatoriu

Pașii robotului

1

Deschide Configurare societăți

Din bara de meniu, deschide Administrare → Configurare societăți.

Meniu
Administrare → Configurare societăți
2

Adaugă o societate nouă

Apasă Adaug.

Se creează o linie nouă, cu cod generat automat.

3

Completează datele de identificare și salvează

Completează Denumire (BONOclient_denumire), Cod fiscal fără prefixul RO (BONOclient_CUI) și Nr. Reg. Comerțului (BONOclient_J).

Lasă Blocat debifat.

Apasă Salvez.

Configurare societati
Linia nouă completată
Atenție · cod fiscal
Dacă apare „Cod fiscal incorect. Continuam?”, robotul apasă No și semnalează cererea pentru verificare. Nu apasă Yes.
Avertisment CUI
„Cod fiscal incorect. Continuam?”
4

Completează panoul din dreapta

Selectează Tip contabilitate „Societăți comerciale”.

Completează Cod CAEN (BONOclient_CAEN_Prim) și Capital social (BONOclient_capitalSocial).

Panou dreapta
Tip contabilitate, Cod CAEN, Capital social
5

Completează adresa

Pe tab-ul Sediu social, completează Localitatea (BONOclient_Oras), Județul (BONOclient_Judet), Strada și Numărul (BONOclient_Adresa).

Sediu social
Tab Sediu social
6

Completează contul bancar

La Cont 1, completează IBAN-ul principal (BONOclient_IBAN) și denumirea băncii (BONOclient_banca).

7

Setează regimul de impozitare și TVA

Pe tab-ul Informații generale, bifează impozit pe venit dacă firma e microîntreprindere, altfel lasă debifat (BONOclient_impozit).

Setează TVA „Neplătitor” (BONOclient_TVA).

Păstrează FIFO și „Fără casă de marcat”.

Informatii generale
Impozit, TVA, FIFO, casă de marcat
8

Rulează preluarea de date

Setează luna și anul de începere (BONOclient_lunaInfiintare, BONOclient_anInfiintare).

Lasă soldurile 0 și apasă Validez.

Meniul firmei se activează.

Preluare date
Fereastra Preluare date contabile
9

Configurează planul de conturi

Deschide planul de conturi.

Adaugă conturile contabile: 5121.01 (Cont RON principal), 5124.01 (Cont EUR) și 5124.02 (Cont USD).

Meniu plan de conturi
Meniul Plan de conturi
Fereastra plan de conturi
Plan de conturi — conturile adăugate (5121.01, 5124.01, 5124.02)
Notă
De verificat dacă baza de date se poate actualiza cu o listă cu planul de conturi.
10

Adaugă seriile de facturi

Deschide Administrare → Numere și serii.

Selectează din listă „Factura de ieșire” și apasă Adaugă.

Completează primul număr și ultimul număr, apoi apasă Salvez.

Se pot adăuga oricâte serii preluate din facturare.

Numere si serii - meniu
Administrare → Numere și serii
Serii si numere documente
Factura de ieșire — primul și ultimul număr, apoi Salvez
11

Urcă firma pe SAGA Web

Deschide Administrare → Întreținere BD și mergi pe tab-ul WEB.

Încarcă fișierul .RSA și completează emailul și parola.

Apasă Validare conexiune, apoi Yes la transfer.

La „Conectare reușită”, firma e pe SAGA Web.

Tab WEB
Tab WEB — .RSA, email, parolă
Transfer
Dialog de transfer (Yes / No)
Conectare reusita
„Conectare reușită”
Pas manual
Parola și fișierul .RSA se introduc manual, din motive de securitate.

Logare SAGA Desktop

Robot de sine stătător: pornește SAGA Desktop și deschide sesiunea de lucru pe firma țintă. Este precondiția comună a tuturor roboților care operează pe SAGA Desktop — rulează o dată, la începutul lanțului, apoi predă controlul robotului următor.

Date de intrare

ParametruDescriere
Firma țintăDenumirea firmei SAGA pe care se lucrează (ex. „BONO FINTECH TEST SAGA SRL”).
Data de lucruData sesiunii — câmpul Data din ecranul de logare.
E-mailContul de conectare la WEB.
ParolăParola contului. Mod de stocare și furnizare către robot — de clarificat (securitate).

Flux pas cu pas

1

Pornește SAGA Desktop

Se lansează aplicația; apare ecranul de logare cu lista firmelor.

2

Selectează firma țintă

Robotul caută firma în listă după denumirea exactă și o selectează.

Logare
Ecran de logare — selectarea firmei și datele de conectare
3

Completează data, e-mailul și parola

Se completează câmpul Data și, în panoul „Date conectare la WEB”, e-mailul și parola.

4

Apasă Accept și verifică deschiderea sesiunii

Fereastra principală SAGA se deschide, cu denumirea firmei în bara de titlu. Robotul confirmă sesiunea și predă controlul robotului următor.

Gestionarea erorilor

Criterii de acceptanță

Import furnizori noi

SAGA Desktop · pornind de la un fișier CSV, robotul introduce automat furnizori noi în nomenclatorul firmei, reproducând procedura manuală din SAGA.

Arhivat
Robotul nu mai este de actualitate — importul se face acum pe SAGA Web, prin Import XML-uri, iar partenerii noi (furnizori / clienți) se creează automat la importul facturilor. Specificația rămâne pentru istoric.

Fișier de intrare (CSV) — structură

PozițieAntet CSVCâmp SAGAObservații
1DenumireDenumire furnizorObligatoriu. Denumirea completă; fără virgule.
2COD_FISCALCod fiscal / CNPLa furnizori externi poate fi în format pe care SAGA îl semnalează ca „incorect” (ex. 3206488LH).
3AdresaAdresăAdresa completă; fără virgule.
4LOCALITATELocalitateLocalitate sau sector (ex. BUCURESTI SECTOR 3). Gol pentru externi.
5JudetJudețEx. Bucuresti. Gol pentru externi.
6TaraȚarăCod țară ISO (RO, IE).
7IBANCont bancar (IBAN)Opțional; IBAN fără spații.
8BancaBancăDenumirea băncii. Opțional.
9EmailE-mailAdresa de e-mail a furnizorului. Opțional.

Format (conform fișierului de import): CSV separat prin virgulă, fără ghilimele (niciun câmp nu conține virgulă); encoding UTF-8, recomandat fără BOM; terminator de linie CRLF; primul rând = antet cu denumirile exacte de coloană. Structura este identică cu cea de la importul de clienți. Fișier: Import_furnizori_<luna>.csv (exemplu observat: 1.Import_furnizori_iunie.csv).

Descarcă fișierul model1.Import_furnizori_iunie.csv · exemplu real de fișier de import (iunie)

Flux pas cu pas

Precondiție
Sesiune SAGA Desktop deschisă pe firma țintă — robotul Logare SAGA Desktop a rulat în prealabil (vezi tabul dedicat).
1

Meniu Fișiere → Furnizori

Din meniul Fișiere se alege Furnizori (F11).

Meniu Furnizori
Meniul Fișiere — Furnizori (F11)
2

Butonul de import din fișiere

În fereastra Furnizori se apasă butonul de import din bara de instrumente.

Buton import
Fereastra Furnizori — butonul de import
3

Selectarea fișierului CSV

Se deschide „Import terți din fișiere”. Butonul […] la câmpul Fișier; în dialog se alege tipul „Fișiere CSV” și fișierul.

Dialog CSV
Dialog de selectare fișier — „Fișiere CSV”
4

Verificarea mapării coloanelor și Import

Fiecare coloană trebuie populată automat și cu denumirea corectă (Denumire, COD_FISCAL, Adresa, LOCALITATE, Judet, Tara, IBAN, Banca, Email). Robotul verifică maparea, apoi apasă Import.

Mapare coloane
Maparea coloanelor, apoi butonul Import
5

Confirmarea avertizărilor de cod fiscal

La furnizorii externi apar două avertizări consecutive. Robotul apasă Yes la ambele; mesajele se tratează în buclă, fără a presupune un număr fix de pop-up-uri.

Avertizare 1
Avertizarea 1 — „Cod fiscal/CNP incorect”
Avertizare 2
Avertizarea 2 — „…declarațiile 394 și 406”
6

Finalizare

Importul se termină fără mesaj de final. Robotul detectează finalizarea (revenirea la lista de furnizori) și generează raportul de rulare.

Reguli de validare a fișierului (pre-import)

RegulăLa nerespectare
Fișier existent și ne-golOprire cu eroare; nu se deschide SAGA.
Antet prezent, 9 coloane în ordinea așteptatăOprire / semnalare; maparea ar fi greșită.
Denumire completată pe fiecare rândRând marcat ca eroare (sări sau oprește — de decis).
Rânduri duplicate (același cod fiscal)Avertizare în raport; politică de decis.

Gestionarea erorilor

Criterii de acceptanță

Import clienți noi

SAGA Desktop · pornind de la un fișier CSV, robotul introduce automat clienți noi în nomenclatorul firmei. Fluxul este simetric cu importul de furnizori — același mecanism SAGA „Import terți din fișiere”, dar pe modulul Fișiere → Clienți.

Arhivat
Robotul nu mai este de actualitate — importul se face acum pe SAGA Web, prin Import XML-uri, iar partenerii noi (furnizori / clienți) se creează automat la importul facturilor. Specificația rămâne pentru istoric.

Fișier de intrare (CSV) — structură

PozițieAntet CSVCâmp SAGAObservații
1DenumireDenumire clientDenumirea completă, inclusiv forma juridică (S.R.L., SRL, PFA, INC, LTD, LLC). Fără virgule.
2COD_FISCALCod fiscal / CNPCUI cu prefix RO pentru plătitorii de TVA; cod VIES cu prefix (ex. EU372045196). La clienți externi SAGA îl poate semnala ca „incorect”.
3AdresaAdresăAdresa completă; fără virgule.
4LOCALITATELocalitateLocalitate sau sector (ex. SECTOR3, Bacau).
5JudetJudețEx. Bucuresti. Gol pentru străini.
6TaraȚarăDenumirea țării (ex. Romania).
7IBANCont bancar (IBAN)IBAN fără spații.
8BancaBancăDenumirea băncii.
9EmailE-mailAdresa de e-mail a clientului.

Format (conform „PRD Import SAGA — specificația fișierelor”): CSV separat prin virgulă, fără ghilimele (niciun câmp nu conține virgulă); encoding UTF-8, recomandat fără BOM; terminator de linie CRLF; primul rând = antet cu denumirile exacte de coloană. Fișier: Import_clienti_<luna>.csv.

Descarcă fișierul model4.Import_clienti.csv · exemplu real de fișier de import

Flux pas cu pas

Precondiție
Sesiune SAGA Desktop deschisă pe firma țintă — robotul Logare SAGA Desktop a rulat în prealabil (vezi tabul dedicat).
1

Meniu Fișiere → Clienți

Din meniul Fișiere se alege Clienți (F12).

Meniu Clienti
Meniul Fișiere — Clienți (F12)
2

Butonul de import din fișiere

În fereastra Clienți se apasă butonul de import din bara de instrumente (aceeași poziție ca în fereastra Furnizori).

Buton import
Fereastra Clienți — butonul de import
3

Selectarea fișierului CSV

Se deschide „Import terți din fișiere”. Butonul […] la câmpul Fișier; în dialog se alege tipul „Fișiere CSV” și fișierul.

Import terti din fisiere
Fereastra „Import terți din fișiere” — butonul […]
Dialog CSV
Dialog de selectare fișier — „Fișiere CSV”
4

Verificarea mapării coloanelor și Import

Fiecare coloană trebuie populată automat și cu denumirea corectă (Denumire, COD_FISCAL, Adresa, LOCALITATE, Judet, Tara, IBAN, Banca, Email). Robotul verifică maparea, apoi apasă Import.

Mapare coloane
Maparea coloanelor, apoi butonul Import
5

Confirmarea avertizării de cod fiscal

La clienții externi, SAGA afișează o singură avertizare de cod fiscal (spre deosebire de furnizori, unde apar două). Robotul apasă Yes; avertizarea poate apărea pentru fiecare client extern în parte — se tratează în buclă.

Avertizare cod fiscal
„Cod fiscal/CNP incorect. Continuam?” — robotul apasă Yes
6

Finalizare

Importul se termină fără mesaj de final. Robotul detectează finalizarea (revenirea la lista de clienți) și generează raportul de rulare.

Reguli de validare a fișierului (pre-import)

RegulăLa nerespectare
Fișier existent și ne-golOprire cu eroare; nu se deschide SAGA.
Antet prezent, coloanele în ordinea așteptatăOprire / semnalare; maparea ar fi greșită.
Denumire completată pe fiecare rândRând marcat ca eroare (sări sau oprește — de decis).
Rânduri duplicate (același cod fiscal)Avertizare în raport; politică de decis.

Gestionarea erorilor

Criterii de acceptanță

Import facturi intrări RO

SAGA Desktop · pornind de la un fișier CSV, robotul importă facturi de intrare de la furnizori interni (RO) în modulul Operații → Intrări. Facturile importate apar nevalidate (pictograma „lacăt”) — validarea rămâne în sarcina robotului de validare de pe SAGA Web.

Arhivat
Robotul nu mai este de actualitate — importul se face acum pe SAGA Web, prin Import XML-uri, iar partenerii noi (furnizori / clienți) se creează automat la importul facturilor. Specificația rămâne pentru istoric.
Dependență · ordinea rulării
Facturile referă furnizori prin denumire și cod fiscal. Furnizorii trebuie să existe deja în nomenclator — robotul de import furnizori rulează înainte. Ordinea recomandată: furnizori → facturi → validare (SAGA Web).

Fișier de intrare (CSV) — structură

PozițieAntet CSVCâmp SAGAObservații
1TIPCod tip documentGol = factură fiscală (e-factura); B = bon fiscal fără CUI; C = bon fiscal cu CUI.
2FURNIZORFurnizor (nomenclator)Trebuie să existe în Fișiere → Furnizori. Ex. IKEA ROMANIA.
3COD_FISCALCod fiscal furnizorCUI cu prefix RO pentru plătitorii de TVA.
4NR_INTRARENr. documentEx. 15, „FDB26 25405137”, TC41.
5DATAData documentuluiFormat zz.ll.aaaa (ex. 24.03.2026); în intervalul de lucru SAGA.
6DENUMIREDenumire articol / serviciuDescrierea liniei (ex. „Cheltuieli de protocol”, „Servicii telecomunicatii”).
7CONTCont contabilCont de cheltuială (ex. 6231, 626, 628, 604) — trebuie să existe în planul de conturi.
8UMUnitate de măsurăEx. SERV, LUNI, BUC.
9P_TVAProcent TVACota TVA din factură (ex. 21); 0 pentru neplătitori.
10CANTITATECantitateEx. 1.
11PRETPreț / valoareSeparator zecimal punct (ex. 233.25).

Format (conform „PRD Import SAGA — specificația fișierelor”): CSV separat prin virgulă, fără ghilimele; encoding UTF-8, recomandat fără BOM; terminator de linie CRLF; primul rând = antet cu denumirile exacte de coloană; separator zecimal punct. Un rând = o linie de factură; la facturile cu mai multe linii, informațiile din coloanele 1–5 se repetă identic pe fiecare linie. Fișier: Import_facturi_bonuri_<luna>.csv (fereastra SAGA acceptă XLS, CSV, TXT, DBF și XLSX).

Descarcă fișierul model2.Import_facturi_bonuri_iunie.csv · exemplu real de fișier de import (iunie)

Flux pas cu pas

Precondiție
Sesiune SAGA Desktop deschisă pe firma țintă — robotul Logare SAGA Desktop a rulat în prealabil (vezi tabul dedicat).
1

Meniu Operații → Intrări

Din meniul Operații se alege Intrări (F3). Intervalul de lucru trebuie să acopere datele facturilor din fișier.

Meniu Intrari
Meniul Operații — Intrări (F3)
2

Butonul de import — „Import alte tipuri de fișiere”

În fereastra Intrări (facturi & bonuri de casa & avize) se dă click dreapta pe butonul de import din bara de instrumente și se alege „Import alte tipuri de fișiere”.

Buton import
Fereastra Intrări — butonul de import (click dreapta)
Lista intrari
Lista Intrări — facturile importate apar nevalidate (pictograma „lacăt”)
3

Selectarea fișierului CSV

Se deschide fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX” (tab Import fisier). Butonul […] la câmpul Fișier; în dialog se navighează la locația fișierului și se alege tipul „Fișiere CSV”.

Fereastra import
Fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX”
Locatie fisier
Dialog de selectare fișier — locația fișierului de import
Tip fisier
Dialog de selectare fișier — tipul „Fișiere CSV”
4

Verificarea mapării coloanelor și Import

Fiecare coloană trebuie populată automat și cu denumirea corectă (TIP, FURNIZOR, COD_FISCAL, NR_INTRARE, DATA, DENUMIRE, CONT, UM, P_TVA, CANTITATE, PRET), inclusiv cele accesibile prin derulare orizontală. Robotul verifică maparea, apoi apasă Import.

Mapare coloane
Maparea coloanelor, apoi butonul Import
5

Finalizare

Importul se termină fără mesaj de final. Robotul detectează finalizarea (apariția facturilor noi în lista Intrări), verifică prin numărare că facturile au fost create și generează raportul de rulare.

Post-import: facturile apar nevalidate (lacăt). Validarea se face separat, cu robotul de validare existent pe SAGA Web.

Mesaje SAGA · politică inițială
Pe acest flux nu sunt documentate pop-up-uri. Regula: robotul nu apasă automat pe mesaje necunoscute — capturează textul, raportează și tratează rândul ca eroare. Candidați de inventariat la testare: furnizor inexistent, dată în afara intervalului, document duplicat, cont inexistent.

Reguli de validare a fișierului (pre-import)

RegulăLa nerespectare
Antet CSV exact coloanele așteptate, în ordinea fixăOprire cu eroare clară; nu se apasă Import.
FURNIZOR + COD_FISCAL nevide pe fiecare rândRândul se raportează ca eroare.
COD_FISCAL există în nomenclatorul de furnizoriSemnalare înainte de import (dacă e fezabil); altfel tratare la eroare SAGA.
DATA validă (ZZ.LL.AAAA), în intervalul de lucruRândul se raportează ca eroare.
CONT valid (există în planul de conturi)Semnalare; nu se ghicește contul.
Fără duplicate în fișier (NR_INTRARE + COD_FISCAL)Semnalare; se importă o singură dată sau se oprește (de decis).

Gestionarea erorilor

Criterii de acceptanță

Import facturi intrări valută

SAGA Desktop · pornind de la un fișier CSV, robotul importă facturi de intrare în valută (furnizori externi) în modulul Operații → Intrări - valuta. Facturile importate apar nevalidate (pictograma „lacăt”) — validarea rămâne în sarcina robotului de validare de pe SAGA Web.

Arhivat
Robotul nu mai este de actualitate — importul se face acum pe SAGA Web, prin Import XML-uri, iar partenerii noi (furnizori / clienți) se creează automat la importul facturilor. Specificația rămâne pentru istoric.
Dependență · ordinea rulării
Facturile referă furnizori prin denumire și cod fiscal. Furnizorii externi trebuie să existe deja în nomenclator — robotul de import furnizori rulează înainte. Ordinea recomandată: furnizori → facturi → validare (SAGA Web).

Fișier de intrare (CSV) — structură

PozițieAntet CSVCâmp SAGAObservații
1FURNIZORFurnizor (nomenclator)Denumirea furnizorului extern (ex. ADOBE SYSTEMS SOFTWARE IRELAND LTD).
2COD_FISCALCod fiscal furnizorCod fiscal extern (ex. 6364992H, EU528377759).
3NR_INTRARENr. documentEx. 3405060684.
4DATAData documentuluiFormat zz.ll.aaaa; în intervalul de lucru SAGA.
5MONEDAMonedăCod valută (ex. EUR, USD).
6DENUMIREDenumire articol / serviciuDescrierea liniei (ex. „Prestari servicii”).
7CONTCont contabilEx. 471, 628 — trebuie să existe în planul de conturi.
8INF_SUPLMInformații suplimentareText liber (ex. perioada de serviciu). Fără virgule; atenție la liniuțe „–” (en-dash).
9TIPCod tip„T” = taxare inversă (folosit la facturile externe); gol dacă fără TVA.
10UMUnitate de măsurăEx. SERV.
11P_TVAProcent TVAEx. 21.
12CANTITATECantitateEx. 1.
13PRETPreț / valoareÎn valuta din MONEDA (ex. 1200); separator zecimal punct.

Format (conform „PRD Import SAGA — specificația fișierelor”): CSV separat prin virgulă, fără ghilimele; encoding UTF-8, recomandat fără BOM; terminator de linie CRLF; primul rând = antet cu denumirile exacte de coloană. Un rând = o linie de factură; la facturile cu mai multe linii, informațiile din coloanele 1–5 se repetă identic pe fiecare linie. Fișier: Import_facturi_externe_<luna>.csv (exemplu observat: 3.Import_facturi_externe_iunie.csv).

Descarcă fișierul model3.Import_facturi_externe_iunie.csv · exemplu real de fișier de import (iunie)

Flux pas cu pas

Precondiție
Sesiune SAGA Desktop deschisă pe firma țintă — robotul Logare SAGA Desktop a rulat în prealabil (vezi tabul dedicat).
1

Meniu Operații → Intrări - valuta

Din meniul Operații se alege Intrări - valuta. Intervalul de lucru trebuie să acopere datele facturilor din fișier.

Meniu Intrari valuta
Meniul Operații — Intrări - valuta
2

Butonul de import — „Import alte tipuri de fișiere”

În fereastra Intrari - valuta (Importuri) se dă click dreapta pe butonul de import din bara de instrumente și se alege „Import alte tipuri de fișiere” (ca la facturile RO).

Buton import
Fereastra Intrari - valuta (Importuri) — butonul de import
3

Selectarea fișierului CSV

Se deschide fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX” (tab Import fisier). Butonul […] la câmpul Fișier; în dialog se navighează la locația fișierului și se alege tipul „Fișiere CSV”.

Fereastra import
Fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX” — butonul […]
Dialog selectare
Dialog de selectare fișier — locația și tipul „Fișiere CSV”
4

Verificarea mapării coloanelor și Import

Fiecare coloană trebuie populată automat și cu denumirea corectă (FURNIZOR, COD_FISCAL, NR_INTRARE, DATA, MONEDA, DENUMIRE, CONT, INF_SUPLM, TIP, UM, P_TVA, CANTITATE, PRET), inclusiv cele accesibile prin derulare orizontală. Robotul verifică maparea, apoi apasă Import.

Mapare coloane
Maparea coloanelor 1–13, apoi butonul Import
5

Poziții tarifare — facturile din afara UE

Pas suplimentar față de importul de facturi RO: după apăsarea butonului Import, pentru facturile din afara UE, SAGA cere ca înainte de adăugarea liniilor în factură să fie apăsat butonul Poziții tarifare… — acesta declanșează adăugarea liniilor în factură. Robotul apasă butonul pentru fiecare factură din afara UE.

Pozitii tarifare
Fereastra Intrari - valuta — butonul „Poziții tarifare…”
6

Finalizare

Importul se termină fără mesaj de final. Robotul detectează finalizarea (apariția facturilor noi în lista Intrari - valuta), verifică prin numărare că facturile au fost create și generează raportul de rulare.

Post-import: facturile apar nevalidate (lacăt). Validarea se face separat, cu robotul de validare de pe SAGA Web.

Mesaje SAGA · politică inițială
Pe acest flux nu sunt documentate pop-up-uri. Regula: robotul nu apasă automat pe mesaje necunoscute — capturează textul, raportează și tratează rândul ca eroare. Candidați de inventariat la testare: furnizor inexistent, dată în afara intervalului, document duplicat, cont inexistent, monedă necunoscută.

Reguli de validare a fișierului (pre-import)

RegulăLa nerespectare
Antet CSV exact cele 13 coloane, în ordinea fixăOprire cu eroare clară; nu se apasă Import.
FURNIZOR + COD_FISCAL nevide pe fiecare rândRândul se raportează ca eroare.
COD_FISCAL există în nomenclatorul de furnizoriSemnalare înainte de import (dacă e fezabil); altfel tratare la eroare SAGA.
DATA validă (zz.ll.aaaa), în intervalul de lucruRândul se raportează ca eroare.
MONEDA cod valută valid (EUR, USD, …)Rândul se raportează ca eroare.
CONT valid (există în planul de conturi)Semnalare; nu se ghicește contul.
INF_SUPLM fără virgule și fără en-dash „–”Normalizare automată sau semnalare.
Fără duplicate în fișier (NR_INTRARE + COD_FISCAL)Semnalare; se importă o singură dată sau se oprește (de decis).

Gestionarea erorilor

Criterii de acceptanță

Import facturi ieșiri RO

SAGA Desktop · pornind de la un fișier CSV, robotul importă facturile emise în România (venituri) în modulul Operații → Ieșiri. Facturile importate apar nevalidate (pictograma „lacăt”) — validarea rămâne în sarcina robotului de validare de pe SAGA Web.

Arhivat
Robotul nu mai este de actualitate — importul se face acum pe SAGA Web, prin Import XML-uri, iar partenerii noi (furnizori / clienți) se creează automat la importul facturilor. Specificația rămâne pentru istoric.
Dependență · ordinea rulării
Facturile referă clienți prin denumire și cod fiscal. Clienții trebuie să existe deja în nomenclator — robotul de import clienți rulează înainte. Ordinea recomandată: clienți → facturi ieșiri → validare (SAGA Web).

Fișier de intrare (CSV) — structură

PozițieAntet CSVCâmp SAGAObservații
1CLIENTClient (nomenclator)Denumirea clientului — trebuie să existe în Fișiere → Clienți.
2COD_FISCALCod fiscal clientCUI cu prefix RO (ex. RO6719367).
3NR_IESIRENr. factură emisăEx. EPRS796556996.
4DATAData facturiiFormat zz.ll.aaaa; în intervalul de lucru SAGA.
5DENUMIREDenumire articol / serviciuDescrierea liniei (ex. „Servicii”).
6CONTCont contabilCont de venit (ex. 704) — trebuie să existe în planul de conturi.
7UMUnitate de măsurăEx. buc.
8P_TVAProcent TVA0 sau gol (neplătitori — cazul clienților Bono, MVP).
9CantitateCantitateEx. 1.
10PretPreț / valoareEx. 1500; separator zecimal punct.

Format (conform „PRD Import SAGA — specificația fișierelor”): CSV separat prin virgulă, fără ghilimele; encoding UTF-8, recomandat fără BOM; terminator de linie CRLF; primul rând = antet cu denumirile exacte de coloană. Un rând = o linie de factură. Fișier: Import_facturi_venituri_RO_<luna>.csv (exemplu observat: 5.Import_facturi_venituri_RO_iunie.csv).

Descarcă fișierul model5.Import_facturi_venituri_RO_iunie.csv · exemplu real de fișier de import (iunie)

Flux pas cu pas

Precondiție
Sesiune SAGA Desktop deschisă pe firma țintă — robotul Logare SAGA Desktop a rulat în prealabil (vezi tabul dedicat).
1

Meniu Operații → Ieșiri

Din meniul Operații se alege Ieșiri (F4). Intervalul de lucru trebuie să acopere datele facturilor din fișier.

Meniu Iesiri
Meniul Operații — Ieșiri (F4)
2

Butonul de import — „Import alte tipuri de fișiere”

În fereastra Ieșiri (facturi & bonuri de casa & avize) se dă click dreapta pe butonul de import din bara de instrumente și se alege „Import alte tipuri de fișiere” (ca la facturile de intrare).

Buton import
Fereastra Ieșiri — butonul de import (click dreapta)
3

Selectarea fișierului CSV

Se deschide fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX” (tab Import fisier). Butonul […] la câmpul Fișier; în dialog se navighează la locația fișierului și se alege tipul „Fișiere CSV”.

Fereastra import
Fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX” — butonul […]
Dialog selectare
Dialog de selectare fișier — locația și tipul „Fișiere CSV”
4

Verificarea mapării coloanelor și Import

Fiecare coloană trebuie populată automat și cu denumirea corectă (CLIENT, COD_FISCAL, NR_IESIRE, DATA, DENUMIRE, CONT, UM, P_TVA, Cantitate, Pret). Robotul verifică maparea, apoi apasă Import.

Mapare coloane
Maparea coloanelor 1–10, apoi butonul Import
5

Finalizare

Importul se termină fără mesaj de final. Robotul detectează finalizarea (apariția facturilor noi în lista Ieșiri), verifică prin numărare că facturile au fost create și generează raportul de rulare.

Post-import: facturile apar nevalidate (lacăt). Validarea se face separat, cu robotul de validare de pe SAGA Web.

Mesaje SAGA · politică inițială
Pe acest flux nu sunt documentate pop-up-uri. Regula: robotul nu apasă automat pe mesaje necunoscute — capturează textul, raportează și tratează rândul ca eroare. Candidați de inventariat la testare: client inexistent, dată în afara intervalului, document duplicat, cont inexistent.

Reguli de validare a fișierului (pre-import)

RegulăLa nerespectare
Antet CSV exact cele 10 coloane, în ordinea fixăOprire cu eroare clară; nu se apasă Import.
CLIENT + COD_FISCAL nevide pe fiecare rândRândul se raportează ca eroare.
COD_FISCAL există în nomenclatorul de cliențiSemnalare înainte de import (dacă e fezabil); altfel tratare la eroare SAGA.
DATA validă (zz.ll.aaaa), în intervalul de lucruRândul se raportează ca eroare.
CONT valid (există în planul de conturi)Semnalare; nu se ghicește contul.
NR_IESIRE conform seriilor de facturare ale firmeiSemnalare ca avertisment în raport.
Fără duplicate în fișier (NR_IESIRE + COD_FISCAL)Semnalare; se importă o singură dată sau se oprește (de decis).

Gestionarea erorilor

Criterii de acceptanță

Import facturi ieșiri valută

SAGA Desktop · pornind de la un fișier CSV, robotul importă facturile emise în valută (clienți externi) în modulul Operații → Ieșiri - valuta. Facturile importate apar nevalidate (pictograma „lacăt”) — validarea rămâne în sarcina robotului de validare de pe SAGA Web.

Arhivat
Robotul nu mai este de actualitate — importul se face acum pe SAGA Web, prin Import XML-uri, iar partenerii noi (furnizori / clienți) se creează automat la importul facturilor. Specificația rămâne pentru istoric.
Dependență · ordinea rulării
Facturile referă clienți prin denumire și cod fiscal. Clienții externi trebuie să existe deja în nomenclator — robotul de import clienți rulează înainte. Ordinea recomandată: clienți → facturi ieșiri valută → validare (SAGA Web).

Fișier de intrare (CSV) — structură

PozițieAntet CSVCâmp SAGAObservații
1CLIENTClient (nomenclator)Denumirea clientului extern (ex. ACME SOLUTIONS GMBH) — trebuie să existe în Fișiere → Clienți.
2COD_FISCALCod fiscal clientCod fiscal extern (ex. DE811234567, EIN 91-1234567, SE5566778899).
3NR_IESIRENr. factură emisăEx. EXT796557201.
4DATAData facturiiFormat zz.ll.aaaa; în intervalul de lucru SAGA.
5MONEDAMonedăCod valută (ex. EUR, USD).
6DENUMIREDenumire articol / serviciuDescrierea liniei (ex. „Servicii software”, „Servicii dezvoltare web”).
7CONTCont contabilCont de venit (ex. 704) — trebuie să existe în planul de conturi.
8INF_SUPLMInformații suplimentareText liber (ex. perioada de serviciu). Fără virgule; atenție la liniuțe „–” (en-dash).
9TIPCod tip„T” = taxare inversă (facturi externe).
10UMUnitate de măsurăEx. SERV.
11P_TVAProcent TVAEx. 0.
12CantitateCantitateEx. 1.
13PretPreț / valoareÎn valuta din MONEDA (ex. 4500); separator zecimal punct.

Format (aceleași reguli generale ca în „PRD Import SAGA — specificația fișierelor”): CSV separat prin virgulă, fără ghilimele; encoding UTF-8, recomandat fără BOM; terminator de linie CRLF; primul rând = antet cu denumirile exacte de coloană. Un rând = o linie de factură; la facturile cu mai multe linii, informațiile din coloanele 1–5 se repetă identic pe fiecare linie. Fișier: Import_facturi_iesiri_valuta_<luna>.csv (exemplu observat: Import_facturi_iesiri_valuta_iunie.csv). Structura este simetrică cu fișierul de facturi externe de intrare, cu CLIENT / NR_IESIRE în loc de FURNIZOR / NR_INTRARE.

Descarcă fișierul modelImport_facturi_iesiri_valuta_iunie.csv · exemplu real de fișier de import (iunie)

Flux pas cu pas

Precondiție
Sesiune SAGA Desktop deschisă pe firma țintă — robotul Logare SAGA Desktop a rulat în prealabil (vezi tabul dedicat).
1

Meniu Operații → Ieșiri - valuta

Din meniul Operații se alege Ieșiri - valuta. Intervalul de lucru trebuie să acopere datele facturilor din fișier.

Meniu Iesiri valuta
Meniul Operații — Ieșiri - valuta
2

Butonul de import — „Import alte tipuri de fișiere”

În fereastra Iesiri - valuta (Exporturi) se dă click dreapta pe butonul de import din bara de instrumente și se alege „Import alte tipuri de fișiere” (ca la celelalte importuri de facturi).

Buton import
Fereastra Iesiri - valuta (Exporturi) — butonul de import (click dreapta)
3

Selectarea fișierului CSV

Se deschide fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX” (tab Import fisier). Butonul […] la câmpul Fișier; în dialog se navighează la locația fișierului și se alege tipul „Fișiere CSV”.

Fereastra import
Fereastra „Import din fisiere XLS, CSV, TXT, DBF si XLSX” — butonul […]
Dialog selectare
Dialog de selectare fișier — locația și tipul „Fișiere CSV”
4

Verificarea mapării coloanelor și Import

Fiecare coloană trebuie populată automat și cu denumirea corectă (CLIENT, COD_FISCAL, NR_IESIRE, DATA, MONEDA, DENUMIRE, CONT, INF_SUPLM, TIP, UM, P_TVA, Cantitate, Pret), inclusiv cele accesibile prin derulare orizontală. Robotul verifică maparea, apoi apasă Import.

Mapare coloane
Maparea coloanelor 1–13, apoi butonul Import
5

Finalizare

Importul se termină fără mesaj de final. Robotul detectează finalizarea (apariția facturilor noi în lista Iesiri - valuta), verifică prin numărare că facturile au fost create — cu valoarea în valută, cursul și valoarea în lei calculate — și generează raportul de rulare.

Post-import: facturile apar nevalidate (lacăt). Validarea se face separat, cu robotul de validare de pe SAGA Web.

Rezultat import
Lista Iesiri - valuta după import — facturile nevalidate, cu valori în valută și în lei
Mesaje SAGA · politică inițială
Pe acest flux nu sunt documentate pop-up-uri. Regula: robotul nu apasă automat pe mesaje necunoscute — capturează textul, raportează și tratează rândul ca eroare. Candidați de inventariat la testare: client inexistent, dată în afara intervalului, document duplicat, cont inexistent, monedă necunoscută.

Reguli de validare a fișierului (pre-import)

RegulăLa nerespectare
Antet CSV exact cele 13 coloane, în ordinea fixăOprire cu eroare clară; nu se apasă Import.
CLIENT + COD_FISCAL nevide pe fiecare rândRândul se raportează ca eroare.
COD_FISCAL există în nomenclatorul de cliențiSemnalare înainte de import (dacă e fezabil); altfel tratare la eroare SAGA.
DATA validă (zz.ll.aaaa), în intervalul de lucruRândul se raportează ca eroare.
MONEDA cod valută valid (EUR, USD, …)Rândul se raportează ca eroare.
CONT valid (există în planul de conturi)Semnalare; nu se ghicește contul.
INF_SUPLM fără virgule și fără en-dash „–”Normalizare automată sau semnalare.
Fără duplicate în fișier (NR_IESIRE + COD_FISCAL)Semnalare; se importă o singură dată sau se oprește (de decis).

Gestionarea erorilor

Criterii de acceptanță

Import imobilizări (mijloace fixe)

SAGA Desktop · pornind de la un fișier CSV, robotul importă mijloacele fixe în modulul Operații → Imobilizări (Lista imobilizărilor). Pe baza codului de clasă, SAGA completează automat durata, tipul de amortizare și conturile.

Relația cu ceilalți roboți
Acest robot populează registrul mijloacelor fixe pe SAGA Desktop. Este diferit de robotul de Înregistrare imobilizări (SAGA Web, planificat), care completează imobilizările la validarea facturilor de intrare.

Fișier de intrare (CSV) — structură

PozițieAntet CSVCâmp SAGAObservații
1NR_INVNr. inventarNumărul de inventar al mijlocului fix (ex. MF0001).
2DENUMIREDenumireDenumirea mijlocului fix (ex. „LAPTOP DELL PRECISION”, „AUTOTURISM DACIA DUSTER”).
3DATAData intrăriiFormat zz.ll.aaaa (ex. 05.06.2026).
4CLASACod clasăCodul din catalogul claselor de mijloace fixe (ex. 2.2.9., 3.1.1., 2.3.2.1.1.). Determină conturile și durata de amortizare.
5VALOAREValoare intrareSeparator zecimal punct (ex. 8500, 98500.50).

Format (aceleași reguli generale ca în „PRD Import SAGA — specificația fișierelor”): CSV separat prin virgulă, fără ghilimele; encoding UTF-8, recomandat fără BOM; terminator de linie CRLF; primul rând = antet cu denumirile exacte de coloană. Fișier: Import_imobilizari_<luna>.csv (exemplu observat: IMPORT_IMOBILIZARI_IUNIE.CSV).

Completare automată din clasă
Pe baza codului de clasă, SAGA completează automat: durata de amortizare (luni), tipul de amortizare (Liniară) și conturile — ex. clasa 2.2.9. → cont 2132 / amortizare 2813; clasa 3.1.1. → cont 214 / amortizare 2814; clasa 2.3.2.1.1. → cont 2133 / amortizare 2813. Robotul nu completează aceste câmpuri — doar verifică prezența lor după import.

Flux pas cu pas

Precondiție
Sesiune SAGA Desktop deschisă pe firma țintă — robotul Logare SAGA Desktop a rulat în prealabil (vezi tabul dedicat).
1

Meniu Operații → Imobilizări

Din meniul Operații se alege Imobilizări. Intervalul de lucru trebuie să acopere datele de intrare din fișier.

Meniu Imobilizari
Meniul Operații — Imobilizări
2

Butonul de import din fereastra Imobilizări

Pe tab-ul Lista imobilizărilor se apasă butonul de import din bara de instrumente. Se deschide fereastra „Import imobilizari din fisiere”.

Buton import
Fereastra Imobilizări — butonul de import
3

Selectarea fișierului CSV

Butonul […] la câmpul Fișier; în dialog se navighează la locația fișierului și se alege tipul „Fișiere CSV”.

Dialog selectare
Dialog de selectare fișier — locația și tipul „Fișiere CSV”
4

Verificarea mapării coloanelor și Import

Fiecare coloană trebuie populată automat și cu denumirea corectă (NR_INV, DENUMIRE, DATA, CLASA, VALOARE). Robotul verifică maparea, apoi apasă Import.

Mapare coloane
Fereastra „Import imobilizari din fisiere” — maparea coloanelor 1–5, apoi Import
5

Finalizare

Importul se termină fără mesaj de final. Robotul detectează finalizarea (apariția mijloacelor fixe noi în Lista imobilizărilor), verifică prin numărare că activele au fost create — cu clasa, durata, tipul de amortizare și conturile completate automat — și generează raportul de rulare.

Rezultat import
Lista imobilizărilor după import — MF0001–MF0004, cu durata, amortizarea și conturile completate din clasă
Mesaje SAGA · politică inițială
Pe acest flux nu sunt documentate pop-up-uri. Regula: robotul nu apasă automat pe mesaje necunoscute — capturează textul, raportează și tratează rândul ca eroare. Candidați de inventariat la testare: număr de inventar duplicat, clasă inexistentă în catalog, dată în afara intervalului.

Reguli de validare a fișierului (pre-import)

RegulăLa nerespectare
Antet CSV exact cele 5 coloane, în ordinea fixăOprire cu eroare clară; nu se apasă Import.
NR_INV + DENUMIRE nevide pe fiecare rândRândul se raportează ca eroare.
NR_INV unic (în fișier și față de lista existentă)Semnalare; se importă o singură dată sau se oprește (de decis).
DATA validă (zz.ll.aaaa), în intervalul de lucruRândul se raportează ca eroare.
CLASA există în catalogul claselor de mijloace fixeSemnalare; nu se ghicește clasa.
VALOARE numerică, separator zecimal punctRândul se raportează ca eroare.

Gestionarea erorilor

Criterii de acceptanță

Închidere încasări și plăți cu facturile

SAGA Desktop · robotul parcurge Jurnalul de bancă și închide automat încasările cu facturile de ieșire, respectiv plățile cu facturile de intrare, folosind o cascadă de reguli de potrivire — de la cea mai sigură (referința facturii din explicația plății) la ultima soluție (FIFO). Rulează pe Desktop deoarece facturile în EUR nu apar în jurnalul de bancă din SAGA Web.

Precondiții · ordinea rulării
Sesiune SAGA Desktop deschisă pe firma țintă (robotul Logare SAGA Desktop). Rulează la finalul lanțului lunar: după importul facturilor (intrări/ieșiri, RON/valută), importul încasărilor și plăților și validarea facturilor — toate documentele trebuie să fie deja în SAGA.

Date de intrare

ParametruDescriere
Firma țintăFirma SAGA pe care se lucrează.
Interval de lucruPerioada pentru care se închid tranzacțiile (ex. 01.03.2026 – 31.03.2026) — parametru unic pentru scanare și închidere.
Mod de rulareSimulare (dry-run): parcurge tot, calculează potrivirile și produce raportul, fără să salveze nimic (la final apasă Renunț). Live: salvează închiderile. Recomandat: simulare → verificarea raportului → live.

Flux pas cu pas

1

Meniu Operații → Jurnal de bancă

Din meniul Operații se alege Jurnal de bancă (F6).

Meniu Jurnal de banca
Meniul Operații — Jurnal de bancă (F6)
2

Parcurgerea zilelor cu mișcări

Robotul parcurge zilele din extrasul de cont (secțiunea de zile a jurnalului). Zilele din afara intervalului se ignoră explicit, chiar dacă SAGA le afișează.

Jurnal de banca - zile
Jurnal de bancă — zilele din extras (cont bancar 5121.01), cu încasările și plățile fiecărei zile
3

Identificarea tranzacțiilor de închis

Pentru fiecare zi, robotul citește tranzacțiile zilei și le identifică pe cele neînchise — SAGA le afișează cu roșu. Clasificare: încasare de la client = linia cu contul de client (începe cu 411) și banca pe debit; plată către furnizor = linia cu contul de furnizor (începe cu 401) și banca pe credit. Liniile roșii care nu se încadrează în aceste tipare se raportează ca nestandard, fără acțiune; liniile negre (deja închise sau fără legătură cu facturi, ex. comisioane bancare) se sar.

Atenție · rândul selectat
Dacă ești poziționat pe linia cu nota contabilă, aceasta nu se mai vede roșie — rândul selectat își schimbă culoarea de afișare. Robotul trebuie să evalueze culoarea liniilor înainte de a se poziționa pe ele.
Tranzactiile zilei
Tranzacțiile zilei — încasarea neînchisă apare cu roșu; prima linie, selectată, nu își arată culoarea
4

Deschiderea tranzacției și citirea facturilor deschise

Robotul selectează tranzacția, apasă Modific și deschide panoul cu facturile partenerului (butonul Detalii), unde SAGA listează facturile deschise: număr, dată, total, neachitat. Panoul afișează și suma de închis („De încasat” / „De achitat”) și „Suma rămasă”. Dacă partenerul nu are facturi deschise, robotul apasă Renunț și raportează tranzacția (FĂRĂ FACTURI).

Modific si Detalii
Tranzacțiile zilei — butoanele Modific și Detalii
Facturile deschise
Tranzacția în editare — facturile deschise ale partenerului, cu De încasat și Suma rămasă
5

Potrivirea plății cu facturile — cascada de reguli

Robotul aplică regulile în ordine, de la cea mai sigură la ultima soluție; prima regulă care produce o potrivire decide închiderea (vezi tabelul de mai jos). Toate comparațiile de sume sunt exacte, la bănuț — nu există prag de toleranță.

Închiderea efectivă: factura acoperită integral se bifează Integral; factura acoperită parțial primește suma în câmpul Achitat. La final, „Suma rămasă” trebuie să fie 0.00. Panoul are și un buton FIFO nativ al SAGA — poate fi folosit de robot la regula 5, în locul bifării manuale (de confirmat la implementare).

Inchidere integrala
Închidere integrală — bifa Integral, Suma rămasă 0.00
Inchidere partiala
Închidere parțială — suma introdusă în câmpul Achitat, Suma rămasă 0.00
6

Salvarea și verificarea

În modul live, robotul apasă Salvez și așteaptă revenirea în modul de vizualizare (confirmarea salvării). În simulare apasă Renunț — nimic nu se modifică. La orice eroare în timpul editării, robotul apasă Renunț, ca tranzacția să nu rămână blocată în editare.

Salvez
Salvez — după închidere, linia devine neagră, iar explicația se completează automat cu numărul facturii
7

Raport final

La final, robotul produce raportul de rulare (CSV): fiecare tranzacție procesată, cu regula de potrivire folosită, facturile închise (integral/parțial) și statusul — inclusiv excepțiile. Raportul e instrumentul de audit: închiderile pe FIFO și cazurile nestandard sunt evidențiate distinct, pentru verificare.

Cascada de potrivire (în ordine)

#RegulăCondițieAcțiune
1Referință în explicațieDin explicația plății se extrag candidați de număr de factură (normalizați: fără spații, majuscule) și se potrivesc cu facturile deschise ale partenerului. Suma trebuie să corespundă exact facturilor referite.Integral pe facturile referite; dacă suma acoperă parțial ultima factură referită — parțial pe aceasta.
2Sumă exactă, factură unicăFără referință; exact o factură deschisă cu Neachitat egal cu suma plății. Dacă două facturi au aceeași sumă — ambiguu, se trece la regula următoare.Integral pe factura respectivă.
3Combinație de facturiSuma plății = suma exactă a unei combinații de 2–3 facturi deschise (plată multiplă). O singură combinație posibilă; altfel ambiguu.Integral pe toate facturile din combinație.
4Plată parțială țintităSuma mai mică decât orice factură deschisă și: explicația referă o factură anume, sau partenerul are o singură factură deschisă.Parțial (suma în câmpul Achitat) pe factura identificată. Plățile parțiale succesive se acumulează natural — factura reapare cu Neachitat diminuat.
5FIFO — ultima soluțieNicio regulă de mai sus nu a produs o potrivire.Facturile sortate crescător după dată; Integral cât acoperă suma, parțial pe prima factură care depășește restul. Închiderile FIFO se marchează distinct în raport, pentru audit.
Fără prag de toleranță
Contabilitatea se înregistrează la bănuț: nicio diferență de sumă, oricât de mică (comisioane, rotunjiri), nu se „iartă” automat. O plată de 99.99 pe o factură de 100.00 nu trece de regulile 1–4 pe potrivire integrală — ajunge la regula 5 (FIFO, închidere parțială) și apare evidențiată în raport.

Reguli de procesare

SituațieComportament
Tranzacție neagră (închisă sau fără facturi asociate)Se sare; nu se numără la excepții.
Tranzacție roșie, conturi nestandard (nu 401/411)Se raportează ca NESTANDARD; nicio acțiune.
Partener fără facturi deschiseRenunț + raportare FĂRĂ FACTURI.
Re-rulare pe aceeași perioadăIdempotentă — tranzacțiile închise devin negre și se sar natural; nu există dublă închidere.
Simulare (dry-run)Identică cu rularea live până la salvare; se apasă Renunț, raportul arată ce s-ar fi închis și pe ce regulă.

Gestionarea erorilor

Raportul de rulare

Prototip existent · pe SAGA Web
Închiderea a fost deja prototipată și funcționează pe SAGA Web — jurnal_banca_complet.py, pornit prin RUN_jurnal_banca_complet.bat; pe SAGA Desktop se reface aceeași logică pe ecranele echivalente. Regulile de lucru validate în prototip se preiau: liniile de închis se recunosc în jurnal după conturile evidențiate cu roșu; jurnalul se parcurge pe zile → tranzacții → facturile partenerului; închiderea unei facturi se face cu Modific, bifa Integral sau suma în câmpul Achitat, apoi Salvez (sau Renunț).
Descarcă prototipuljurnal_banca_complet.py · scriptul prototip — jurnal de bancă (scanare + reconciliere)
Descarcă prototipulRUN_jurnal_banca_complet.bat · fișierul de pornire a prototipului

Criterii de acceptanță

Logare SAGA Web

Robot de sine stătător: deschide browserul, se autentifică pe SAGA Web (web3.sagasoft.ro) și deschide sesiunea de lucru pe firma țintă. Este precondiția comună a tuturor roboților care operează pe SAGA Web — rulează o dată, la începutul lanțului, apoi lasă sesiunea deschisă pentru roboții următori. Există deja un prototip funcțional care face întreaga logare — el este baza acestei specificații.

Date de intrare

ParametruDescriere
Firma țintăDenumirea firmei din lista SAGA Web (ex. „BONO FINTECH - TEST SAGA S.R.L.”). Căutarea se face după denumire — trebuie să identifice firma în mod unic.
E-mailContul de conectare SAGA Web.
ParolăParola contului. În prototip, credențialele se citesc dintr-un fișier de configurare în text simplu (config_v2.txt) — mod de stocare securizat de clarificat.
Data de lucruData sesiunii — câmpul de dată de lângă butonul Conectare (implicit data curentă).

Flux pas cu pas

1

Pornește browserul

Se deschide un browser Chrome dedicat robotului, pregătit să rămână deschis și după ce logarea se termină — sesiunea lui este refolosită de ceilalți roboți SAGA Web (validare facturi, jurnal bancă), care nu se mai loghează din nou.

2

Navighează la SAGA Web

Se deschide web3.sagasoft.ro; apare ecranul de logare cu câmpurile Email și Parola.

Logare SAGA Web
Ecranul de logare SAGA Web — Email, Parola, Autentificare
3

Completează credențialele și apasă Autentificare

Robotul completează e-mailul și parola și apasă butonul Autentificare.

4

Selectează firma țintă

După autentificare apare pagina de selecție a firmei. Robotul caută firma țintă în listă după denumire și dă click pe rândul ei; rândul selectat se evidențiază.

Selecție firmă SAGA Web
Pagina de selecție a firmei — lista firmelor cu cod fiscal, căutare, data de lucru și butonul Conectare
5

Verifică data de lucru și apasă Conectare

Se verifică data de lucru din câmpul de lângă butonul Conectare, apoi se apasă Conectare — se deschide sesiunea de lucru pe firma aleasă.

6

Predă controlul roboților următori

Sesiunea rămâne deschisă, iar robotul următor se conectează la ea. Browserul nu se închide cât timp mai rulează roboți SAGA Web; la finalul lanțului se închide manual sau de ultimul robot.

Prototip existent
Există deja un script funcțional care face întreaga logare — login_si_selectie_firma.py, pornit prin RUN_LOGIN.bat. Ce avem nevoie de la robot: logarea se face o singură dată, la începutul lanțului, iar sesiunea deschisă este refolosită de toți ceilalți roboți SAGA Web din aceeași rulare.
Descarcă prototipullogin_si_selectie_firma.py · scriptul prototip — logare și selecția firmei
Descarcă prototipulRUN_LOGIN.bat · fișierul de pornire a prototipului

Gestionarea erorilor

Criterii de acceptanță

Import XML-uri

SAGA Web (web3.sagasoft.ro) · robotul încarcă toate fișierele XML ale lunii în modulul Diverse → Import date: facturi primite, facturi emise, încasări și plăți. Un singur robot pentru toate tipurile de documente — include și înlocuiește fostul robot de Import încasări și plăți.

Precondiție
Firma trebuie să fie transferată și pe SAGA Web (pasul 11 din Onboarding client — Urcă firma pe SAGA Web) și sesiune SAGA Web autentificată pe firma țintă — robotul Logare SAGA Web a rulat în prealabil (vezi tabul dedicat).
Relația cu ceilalți roboți
După acest import rulează roboții de Validare facturi (documentele importate apar nevalidate) și Închiderea încasărilor și plăților cu facturile.
Structura fișierelor · de completat
Specificațiile documentelor încărcate (structura fișierelor XML pentru facturi primite, facturi emise, încasări și plăți) se adaugă separat.

Tipuri de fișiere și mesajele de confirmare

Tip documentFișier (exemplu observat)Destinație detectatăMesaj la import
Facturi primiteF_50884558_THD24110_05.08.2026.xmlFacturi„Importul a fost realizat cu succes.” — fără număr de înregistrări.
Facturi emiseF_50884558_BNF26101_10.08.2026.xmlFacturi„Importul a fost realizat cu succes.” — fără număr de înregistrări.
ÎncasăriI_31.08.2026.xmlIncasari„S-au importat N înregistrări.”
PlățiP_31.08.2026.xmlPlati„S-au importat N înregistrări.”

Numele fișierelor din tabel sunt modele descărcabile — exemple reale din testarea din august. La facturile primite, ordinea în care se importă fișierele nu are importanță (verificat în testare).

Flux pas cu pas

1

Setarea intervalului de lucru

Din bara de meniu se deschide Interval și se completează data de început și data de final, astfel încât perioada să acopere datele tuturor documentelor din fișiere, apoi se închide dropdown-ul.

Interval de lucru
Dropdown-ul Interval din bara de meniu — data de început și data de final
2

Meniu Diverse → Import date

Din meniul Diverse se alege Import date.

Meniul Diverse - Import date
Meniul Diverse → Import date
3

Adaugă fișierele XML — toate deodată

Se apasă + Adauga fisiere XML și, în dialogul de selectare (tip XML File), se aleg toate fișierele lunii deodată: facturi primite, facturi emise, încasări, plăți.

Dialog selectare fisiere
Diverse → Import date și dialogul de selectare — se pot alege mai multe fișiere XML deodată
4

Verificarea destinațiilor detectate

Fișierele apar în listă cu destinația detectată automat din conținut (Facturi / Incasari / Plati) și starea „Neimportat”. Robotul verifică destinația fiecărui rând înainte de a continua.

Lista fisiere cu destinatii
Fișierele adăugate — destinația detectată automat și starea „Neimportat”
5

Import, fișier cu fișier

Pentru fiecare fișier din listă, robotul execută:

  • a. Selectează rândul fișierului în listă (click pe rând).
  • b. Apasă butonul Import.
Butonul Import
Selectarea unui fișier din listă și butonul Import
  • c. Așteaptă mesajul de confirmare: la facturi — „Importul a fost realizat cu succes.” (fără număr de înregistrări); la încasări și plăți — „S-au importat N înregistrări.” — reține N și îl compară cu numărul de linii din fișier.
  • d. Apasă OK pe mesaj.
Mesaj facturi
Confirmarea la facturi — „Importul a fost realizat cu succes.”
Mesaj incasari
Confirmarea la încasări / plăți — „S-au importat N înregistrări.”
  • e. Verifică starea rândului — trece în Importat (verde).
Toate importate
La final, toate fișierele au starea „Importat”
6

Repetă până la final

Pasul 5 se repetă pentru fiecare fișier din listă, până când toate au starea „Importat”.

Gestionarea erorilor

Criterii de acceptanță

Validare facturi intrări RO

SAGA Web · robotul parcurge lista Intrări și validează, una câte una, toate facturile nevalidate din perioada de lucru. Există deja un prototip funcțional care face întreaga validare — el este baza acestei specificații.

Precondiție
Sesiune SAGA Web autentificată pe firma țintă — robotul Logare SAGA Web a rulat în prealabil (vezi tabul dedicat).
Relația cu ceilalți roboți
Rulează după roboții de import — facturile importate apar în listă ca nevalidate (lacăt deschis). La facturile cu imobilizări, validarea declanșează fluxul de înregistrare imobilizări — robot separat (planificat); prezenta specificație acoperă doar confirmarea popup-ului.

Date de intrare

ParametruDescriere
Firma țintăFirma SAGA Web pe care se lucrează (sesiunea autentificată).
Interval de lucruPerioada pentru care se validează facturile (ex. 01.03.2026 – 31.03.2026).
Excel imobilizări (opțional)Folosit de fluxul de imobilizări (robot separat) pentru potrivirea activelor pe facturi.

Flux pas cu pas

1

Meniu Operații → Intrări

În SAGA Web, din meniul Operații se alege Intrări (ALT+3).

Meniu Operatii web
Meniul Operații (SAGA Web) — Intrări (ALT+3)
2

Setarea intervalului de lucru

Din bara de meniu se deschide Interval și se completează data de început și data de final a perioadei, apoi se închide dropdown-ul. Lista se filtrează pe perioada aleasă.

3

Identificarea facturilor nevalidate

Robotul parcurge rândurile listei și identifică starea fiecărei facturi după pictograma de lacăt: lacăt deschis = nevalidată, lacăt închis (roșu) = validată. Rândurile fără număr de document se ignoră; facturile deja validate se sar.

Lista Intrari web
Lista Intrări (SAGA Web) — facturi validate (lacăt roșu) și nevalidate (lacăt deschis)
4

Validarea fiecărei facturi nevalidate

Robotul selectează factura (click pe rând), așteaptă încărcarea liniilor și apasă butonul Validez.

Factura nevalidata + Validez
Factura selectată (lacăt deschis) — butonul Validez
5

Tratarea popup-ului de imobilizări

Dacă factura conține imobilizări, SAGA afișează popup-ul „Înregistrăm imobilizarea?”. Robotul apasă DA, iar înregistrarea propriu-zisă a imobilizării continuă cu fluxul dedicat (robot separat). Dacă popup-ul nu apare în câteva secunde, robotul merge mai departe.

6

Verificare și rezumat

După validare, lacătul facturii devine roșu (închis), iar butonul Validez se dezactivează (rămâne activ Devalidez). La final, robotul numără facturile și generează rezumatul: total facturi, validate în această rulare, sărite (deja validate), nevalidate rămase.

Factura validata
După validare — lacăt roșu, Validez dezactivat
Prototip existent
Există deja un script funcțional care face întreaga validare — validare_masiva.py, pornit prin RUN_VALIDARE_MASIVA.bat.
Descarcă prototipulvalidare_masiva.py · scriptul prototip — validare facturi intrări RO
Descarcă prototipulRUN_VALIDARE_MASIVA.bat · fișierul de pornire a prototipului

Reguli de procesare

RegulăComportament
Factură deja validată (lacăt închis)Se sare; se contorizează la „sărite”.
Rând fără număr de documentSe ignoră (nu e factură).
Numărul de facturi nu e presupus fixLista se recitește la fiecare iterație; oprire controlată dacă rândul dispare.
Popup imobilizăriSe apasă DA; se predă fluxului de imobilizări; factura se contorizează separat.
Re-rulare pe aceeași perioadăIdempotentă — facturile validate anterior se sar, nimic nu se dublează.

Gestionarea erorilor

Criterii de acceptanță

Validare facturi intrări valută

SAGA Web · robotul parcurge lista Intrări - valuta și validează, una câte una, toate facturile externe nevalidate din perioada de lucru. Există deja un prototip funcțional care face întreaga validare — el este baza acestei specificații. Fluxul este simetric cu validarea facturilor intrări RO.

Precondiție
Sesiune SAGA Web autentificată pe firma țintă — robotul Logare SAGA Web a rulat în prealabil (vezi tabul dedicat).
Diferență față de validarea RO · imobilizări
La facturile externe (în valută), de regulă nu există imobilizări. Dacă popup-ul „Înregistrăm imobilizarea?” apare totuși, robotul apasă NU — nu se înregistrează imobilizarea. Fallback de siguranță: dacă butonul NU nu e disponibil, apasă DA și închide formularul cu Renunț (ALT+R).

Date de intrare

ParametruDescriere
Firma țintăFirma SAGA Web pe care se lucrează (sesiunea autentificată).
Interval de lucruPerioada pentru care se validează facturile (ex. 01.03.2026 – 31.03.2026).

Flux pas cu pas

1

Meniu Operații → Intrări - valuta

În SAGA Web, din meniul Operații se alege Intrări - valuta (facturile externe).

Meniu Operatii web
Meniul Operații (SAGA Web) — Intrări - valuta
2

Setarea intervalului de lucru

Din bara de meniu se deschide Interval și se completează data de început și data de final a perioadei, apoi se închide dropdown-ul. Lista se filtrează pe perioada aleasă.

3

Identificarea facturilor nevalidate

Robotul parcurge rândurile listei și identifică starea fiecărei facturi după pictograma de lacăt: lacăt deschis = nevalidată, lacăt închis (roșu) = validată. Rândurile fără număr de document se ignoră; facturile deja validate se sar.

Lista Intrari valuta web
Lista Intrări - valuta — facturi validate (lacăt roșu) și nevalidate (lacăt deschis)
4

Validarea fiecărei facturi nevalidate

Robotul selectează factura (click pe rând), așteaptă încărcarea liniilor și apasă butonul Validez.

Factura nevalidata + Validez
Factura externă selectată (lacăt deschis) — butonul Validez
5

Tratarea popup-ului de imobilizări (caz neașteptat)

Dacă apare popup-ul „Înregistrăm imobilizarea?”, robotul apasă NU — la facturile externe nu se înregistrează imobilizări. Fallback: DA urmat de Renunț (ALT+R). Apariția popup-ului se consemnează în raport.

6

Verificare și rezumat

După validare, lacătul facturii devine roșu (închis), iar butonul Validez se dezactivează (rămâne activ Devalidez). La final, robotul numără facturile și generează rezumatul: total facturi externe, validate în această rulare, sărite (deja validate), nevalidate rămase.

Factura validata
După validare — lacăt roșu, Validez dezactivat
Prototip existent
Există deja un script funcțional care face întreaga validare — validare_masiva_valuta.py, pornit prin RUN_VALIDARE_MASIVA_VALUTA.bat.
Descarcă prototipulvalidare_masiva_valuta.py · scriptul prototip — validare facturi intrări valută
Descarcă prototipulRUN_VALIDARE_MASIVA_VALUTA.bat · fișierul de pornire a prototipului

Reguli de procesare

RegulăComportament
Factură deja validată (lacăt închis)Se sare; se contorizează la „sărite”.
Rând fără număr de documentSe ignoră (nu e factură).
Numărul de facturi nu e presupus fixLista se recitește la fiecare iterație; oprire controlată dacă rândul dispare.
Popup imobilizăriSe apasă NU (fallback: DA + Renunț ALT+R); apariția se raportează.
Re-rulare pe aceeași perioadăIdempotentă — facturile validate anterior se sar, nimic nu se dublează.

Gestionarea erorilor

Criterii de acceptanță

Validare facturi ieșiri RO

SAGA Web · robotul parcurge lista Ieșiri și validează, una câte una, toate facturile emise nevalidate din perioada de lucru. Există deja un prototip funcțional care face întreaga validare — el este baza acestei specificații. Fluxul este simetric cu validarea facturilor de intrare.

Precondiție
Sesiune SAGA Web autentificată pe firma țintă — robotul Logare SAGA Web a rulat în prealabil (vezi tabul dedicat).
Fără popup-uri
La facturile emise (Ieșiri) nu apar popup-uri suplimentare la validare — nici cel de imobilizări. Dacă apare totuși un mesaj, robotul nu apasă automat; capturează textul și raportează.

Date de intrare

ParametruDescriere
Firma țintăFirma SAGA Web pe care se lucrează (sesiunea autentificată).
Interval de lucruPerioada pentru care se validează facturile (ex. 01.03.2026 – 31.03.2026).

Flux pas cu pas

1

Meniu Operații → Ieșiri

În SAGA Web, din meniul Operații se alege Ieșiri (ALT+4) — facturile emise.

Meniu Operatii web
Meniul Operații (SAGA Web) — Ieșiri (ALT+4)
2

Setarea intervalului de lucru

Din bara de meniu se deschide Interval și se completează data de început și data de final a perioadei, apoi se închide dropdown-ul. Lista se filtrează pe perioada aleasă.

3

Identificarea facturilor nevalidate

Robotul parcurge rândurile listei și identifică starea fiecărei facturi după pictograma de lacăt: lacăt deschis = nevalidată, lacăt închis (roșu) = validată. Rândurile fără număr de document se ignoră; facturile deja validate se sar.

Lista Iesiri web
Lista Ieșiri (SAGA Web) — facturi validate (lacăt roșu) și nevalidate (lacăt deschis)
4

Validarea fiecărei facturi nevalidate

Robotul selectează factura (click pe rând), așteaptă încărcarea liniilor și apasă butonul Validez.

Factura nevalidata + Validez
Factura emisă selectată (lacăt deschis) — butonul Validez
5

Verificare și rezumat

După validare, lacătul facturii devine roșu (închis), iar butonul Validez se dezactivează (rămâne activ Devalidez). La final, robotul numără facturile și generează rezumatul: total facturi emise, validate în această rulare, sărite (deja validate), nevalidate rămase.

Factura validata
După validare — lacăt roșu, Validez dezactivat
Prototip existent
Există deja un script funcțional care face întreaga validare — validare_masiva_iesiri.py, pornit prin RUN_VALIDARE_MASIVA_IESIRI.bat.
Descarcă prototipulvalidare_masiva_iesiri.py · scriptul prototip — validare facturi ieșiri RO
Descarcă prototipulRUN_VALIDARE_MASIVA_IESIRI.bat · fișierul de pornire a prototipului

Reguli de procesare

RegulăComportament
Factură deja validată (lacăt închis)Se sare; se contorizează la „sărite”.
Rând fără număr de documentSe ignoră (nu e factură).
Numărul de facturi nu e presupus fixLista se recitește la fiecare iterație; oprire controlată dacă rândul dispare.
Re-rulare pe aceeași perioadăIdempotentă — facturile validate anterior se sar, nimic nu se dublează.

Gestionarea erorilor

Criterii de acceptanță

Validare facturi ieșiri valută

SAGA Web · robotul parcurge lista Ieșiri - valuta (Exporturi) și validează, una câte una, toate facturile emise în valută nevalidate din perioada de lucru. Fluxul este identic cu validarea facturilor ieșiri RO — se schimbă doar modulul țintă; prototipul de la ieșirile RO se parametrizează pe acest modul.

Precondiție
Sesiune SAGA Web autentificată pe firma țintă — robotul Logare SAGA Web a rulat în prealabil (vezi tabul dedicat).
Fără popup-uri
Ca la ieșirile RO, nu apar popup-uri suplimentare la validare. Dacă apare totuși un mesaj, robotul nu apasă automat; capturează textul și raportează.

Date de intrare

ParametruDescriere
Firma țintăFirma SAGA Web pe care se lucrează (sesiunea autentificată).
Interval de lucruPerioada pentru care se validează facturile (ex. 01.03.2026 – 31.03.2026).

Flux pas cu pas

1

Meniu Operații → Ieșiri - valuta

În SAGA Web, din meniul Operații se alege Ieșiri - valuta (facturile emise în valută).

Meniu Operatii web
Meniul Operații (SAGA Web) — Ieșiri - valuta
2

Setarea intervalului de lucru

Din bara de meniu se deschide Interval și se completează data de început și data de final a perioadei, apoi se închide dropdown-ul. Lista se filtrează pe perioada aleasă.

3

Identificarea facturilor nevalidate

Robotul parcurge rândurile listei și identifică starea fiecărei facturi după pictograma de lacăt: lacăt deschis = nevalidată, lacăt închis (roșu) = validată. Rândurile fără număr de document se ignoră; facturile deja validate se sar.

Lista Iesiri valuta web
Lista Ieșiri - valuta — facturi nevalidate (lacăt deschis), cu valută, curs și valori în lei
4

Validarea fiecărei facturi nevalidate

Robotul selectează factura (click pe rând), așteaptă încărcarea liniilor și apasă butonul Validez.

Factura nevalidata + Validez
Factura externă selectată (lacăt deschis) — butonul Validez
5

Verificare și rezumat

După validare, lacătul facturii devine roșu (închis), iar butonul Validez se dezactivează (rămâne activ Devalidez). La final, robotul numără facturile și generează rezumatul: total facturi, validate în această rulare, sărite (deja validate), nevalidate rămase.

Factura validata
După validare — lacăt roșu, Validez dezactivat
Prototip prin analogie
Pentru acest modul nu există încă un script dedicat — implementarea se face prin analogie cu prototipul de la ieșirile RO (validare_masiva_iesiri.py, pornit prin RUN_VALIDARE_MASIVA_IESIRI.bat), parametrizat pe modulul de valută. Diferențele față de ieșirile RO sunt de confirmat la implementare.
Descarcă prototipulvalidare_masiva_iesiri.py · scriptul prototip de la ieșirile RO (comun)
Descarcă prototipulRUN_VALIDARE_MASIVA_IESIRI.bat · fișierul de pornire a prototipului (comun)

Reguli de procesare

RegulăComportament
Factură deja validată (lacăt închis)Se sare; se contorizează la „sărite”.
Rând fără număr de documentSe ignoră (nu e factură).
Numărul de facturi nu e presupus fixLista se recitește la fiecare iterație; oprire controlată dacă rândul dispare.
Re-rulare pe aceeași perioadăIdempotentă — facturile validate anterior se sar, nimic nu se dublează.

Gestionarea erorilor

Criterii de acceptanță

Document intern Bono · PRD Roboți SAGA · v2.2 draft · 21 aug 2026 · pagina 2/2 — specificații