Schema de date
Atributele paginii unui document
Toate câmpurile care apar sau se folosesc în pagina unui document, grupate pe secțiuni — cu sursa fiecăruia în Faza 1 (manual) și în Faza 2 (automatizat). Sursele: contract API tenant · interogări automate · operator · calculat de sistem.
API tenant vine cu documentul, prin contract
ANAF interogare automată
BNR interogare automată
Operator introdus / decis de om în Faza 1
Calculat aritmetică deterministă, needitabilă
Sistem generat de Iris
1 · Metadate document
8 câmpuriIdentitatea documentului în Iris și legătura cu sistemul tenantului.
| Câmp | Descriere | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Doc_ID | ID Iris — BN-2026-00003, secvență per tenant | Sistem | Sistem | da | toate |
| Source_Document_ID | ID-ul documentului în sistemul tenantului (Vertigo/Jedi) | API tenant | API tenant | da | toate |
| Doc_Tip | eFactură · factură PDF · bon · factură externă · factură emisă · extras de cont | API tenant | API tenant + triaj | da | toate |
| Doc_Sursa / Doc_Format | Canal + format fișier (XML, PDF, JPG, JSON) | API tenant | API tenant | da | toate |
| Doc_Data_Primirii | Când a intrat în Iris | Sistem | Sistem | da | toate |
| Doc_Numar | Numărul documentului (de pe document) | Operator | Castor / parser | da* | toate fără extras |
| Doc_Data | Data emiterii documentului | Operator | Castor / parser | da | toate |
| Doc_Status | primit · în lucru · în așteptare · finalizat · respins | Sistem | Sistem | da | toate |
2 · Date document — header
10 câmpuriTranscrise de operator din document în Faza 1; extrase de Castor / parserul XML-JSON în Faza 2.
| Câmp | Descriere | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Furnizor_Nume | Numele partenerului de pe document | Operator | Castor / parser | da | toate fără extras |
| Furnizor_Cod_Fiscal | CUI / cod fiscal partener — cheia interogării ANAF | Operator | Castor / parser | da* | toate fără extras · pe bon poate lipsi |
| Furnizor_Tara / Adresa | Țara și adresa partenerului | Operator | Castor / parser | opț. | toate fără extras |
| Client_Nume / Client_CUI | Cumpărătorul de pe document — comparat cu firma din context (verificare identitate: PRE-check) | Operator | Castor / parser + PRE-check | da | toate fără extras |
| Rol_Client | Beneficiar (cheltuială) sau Furnizor (venit — factură emisă) | Operator | derivat din tip doc | da | toate |
| Moneda | RON, EUR, USD… — declanșează cursul BNR | Operator | Castor / parser | da | toate |
| Mod_Plata | Cash, card, OP | Operator | Castor / parser | opț. | factură, bon |
| Data_Scadenta | Scadența plății | Operator | Castor / parser | opț. | facturi |
| Mentiuni_Factura | Mențiuni generale — regim TVA special, transport inclus, reverse charge | Operator | Castor / parser | opț. | facturi |
| CUI_pe_Bon | DA/NU — bonul are CUI-ul firmei tipărit | Operator | Castor | da | bon |
3 · Date document — per linie
10 câmpuriFiecare linie e o potențială tranzacție. Extrasul de cont are model propriu (operațiuni, nu linii) — formular TBD.
| Câmp | Descriere | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Linie_ID | Identificator unic + numărul liniei sursă din document | Sistem | Sistem | da | toate |
| Descriere_Linie | Descrierea produsului / serviciului — inputul principal al interpretării | Operator | Castor / parser | da | toate |
| Cantitate × Pret_Unitar | Bucăți și preț — pragul de mijloc fix se verifică pe valoarea per bucată | Operator | Castor / parser | da | toate fără extras |
| Unitate_Masura | buc, ore, kg, luni — ajută distincția bun vs serviciu | Operator | Castor / parser | opț. | facturi |
| Val_Neta | Valoarea fără TVA a liniei | Operator | Castor / parser | da | toate |
| Cota_TVA / Val_TVA_Factura | Cota și valoarea TVA de pe document — TVA 0% poate sugera regim special | Operator | Castor / parser | da | toate fără extras |
| Val_Totala | Net + TVA per linie | Calculat | Calculat | da | toate |
| Reducere | Discount pe linie — alocat proporțional înainte de grupare | Operator | Castor / parser | opț. | facturi |
| Mentiune_TVA_Linie | „scutit TVA", „taxare inversă" per linie | Operator | Castor / parser | opț. | facturi |
| Transaction_ID | Tranzacția în care a fost grupată linia — BN-2026-00003-T2 | Operator grupare | pas determinist Iris | da | toate |
4 · Context client
12 câmpuriVine prin API odată cu documentul; salvat ca snapshot imutabil (context_snapshot_id). Câmp lipsă = notat, nu blochează.
| Câmp | Descriere / la ce folosește | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Firma_Nume / Firma_CUI | Identitatea clientului final — comparată cu cumpărătorul de pe document | API tenant | API tenant | da | toate |
| Tip_Entitate | SRL / PFA — ramura de interpretare și forma notei | API tenant | API tenant | da | toate |
| Regim_Impozitare | Micro / profit / PFA — tratament fiscal | API tenant | API tenant | da | toate |
| Platitor_TVA / Cod_TVA_Activ / VIES | Statutul TVA al clientului — determină scenariul TVA (validarea G1: VIES invalid → flux manual) | API tenant | API tenant | da | toate |
| Asociati / Administratori | Liste de nume — detectează factura emisă pe persoană fizică în loc de firmă | API tenant | API tenant + PRE-check | opț. | toate fără extras |
| Regim_Auto | Fără / Mixt / 100% — setat de contabil în profil; regula R3 pentru grupa AUTO | profil | profil | opț.† | toate |
| Activitate_La_Sediu | DA / NU — regula R4 pentru grupa SEDIU | profil | profil | opț.† | toate |
| Mijloace_Fixe | Lista MF ale clientului — context pentru cheltuieli aferente unui MF existent | profil | profil | opț. | toate |
| CAEN_Principal / CAEN_Secundare | Domeniul de activitate — context de interpretare | API tenant | API tenant | opț. | toate |
| Nr_Salariati | Context firmă — plafoanele per salariat se verifică la tenant (Engine Contabil) | API tenant | API tenant | opț. | toate |
| Context_Snapshot_ID | Snapshotul imutabil al contextului la momentul procesării — auditabilitate | Sistem | Sistem | da | toate |
† dacă lipsește, regula R3/R4 nu poate precompleta — operatorul decide, lipsa se notează în audit.
5 · Interogări externe
7 câmpuriAutomate și în Faza 1 — deterministe, ieftine. Strategia de caching = clarificarea U (deschisă).
| Câmp | Descriere / la ce folosește | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Partener_Nume / Partener_Adr | Datele oficiale ale partenerului după CUI — validează transcrierea | ANAF | ANAF | da* | toate fără extras |
| Partener_Activ_Fiscal | DA / NU — partener inactiv = atenționare operator | ANAF | ANAF | da* | toate fără extras |
| Partener_TVA_Regim | Plătitor / neplătitor — intră în scenariul TVA | ANAF | ANAF | da* | toate fără extras |
| Partener_Cod_ViesTVA | Cod TVA intracomunitar valid — condiție pentru TVA-SERV / TVA-AIC | ANAF | ANAF | opț. | factură externă |
| Partener_Tara / Entitate | Țara și forma juridică — reguli de scenariu TVA și validarea G3 | ANAF / Operator | ANAF | da | toate fără extras |
| Curs_BNR | Cursul valutar la data documentului — facturi în valută | BNR | BNR | da la valută | factură externă |
| Val_Valuta | Valoarea originală în valută, păstrată alături de conversia în lei | Operator | Castor / parser | da la valută | factură externă |
6 · Interpretare · per tranzacție
5 câmpuriDeciziile de judecată. În Faza 2 le precompletează Larry, cu confidence — aceleași câmpuri, aceeași suprafață.
| Câmp | Descriere | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Categorie_Contabila | Din taxonomia globală (~50 categorii, 8 grupe) — cară TAC-ul și deductibilitatea default | Operator | Larry + confidence | da | toate |
| Folosinta_Firma | DA / NU — prima decizie de deductibilitate (R1: NU → 0%) | Operator | Larry + confidence | da | cheltuieli |
| Categorie_Explicatie / Folosinta_Explicatie | Raționamentul deciziei, în română | Operator la corecții | Larry | opț. | toate |
| Categorie_Confidence / Folosinta_Confidence | Scoruri 0–100 — nullable în Faza 1, se populează în Faza 2 | — | Larry | Faza 2 | toate |
| Status_Flux | Automat / Necesită_Verificare / Flux_Manual — în Faza 1 totul e manual | Sistem = manual | Larry / filtre n·x | da | toate |
7 · Decizii contabile · per tranzacție
12 câmpuriPrecompletate determinist din regulile Adam (R1–R4, scenarii TVA, prag MF) — operatorul confirmă. Aritmetica e automată.
| Câmp | Descriere | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Scenariu_TVA | NO-TVA · TVA-SERV · TVA-AIC_BUNURI · TVA-IMP_BUNURI | precompletat + Operator | Adam | da | cheltuieli |
| Ded_Ch% / Ded_TVA% | Procente de deductibilitate — din categorie + R1–R4 + profil client | precompletat + Operator | Adam | da | cheltuieli |
| Baza_ch | Baza cheltuielii — la NO-TVA include TVA-ul în cost | Calculat | Adam | da | toate |
| Baza_TVA | Baza TVA datorat — taxare inversă (D301); la import, editabil pe baza DVI | Calculat / Operator la import | Adam | la S2–S4 | factură externă |
| Val_ded_ch / Val_neded_ch | Baza × Ded_Ch% și restul | Calculat | Adam | da | cheltuieli |
| TVA_ded / TVA_neded | Valorile TVA deductibil / nedeductibil (relevant la plătitori — post-MVP Adam) | Calculat | Adam | opț. | cheltuieli |
| Amortizare / Luni | DA/NU + durata — doar marcaj; calculul lunar = Engine Contabil (tenant) | precompletat + Operator | Adam | la MF | mijloace fixe |
| TAC_Tranzactie / TAC_TVA | Codurile de tratament contabil — din categorie și scenariu | precompletat | Adam | da | SRL |
| Cont_Debit / Cont_Credit (+TVA) | Conturile notei — partidă dublă la SRL; la PFA: categorii generale, fără conturi (mapare TBD) | precompletat | Adam | SRL | SRL / PFA diferit |
| Flags[] | Atenționări: G1 VIES invalid · G2 extern >2.000 EUR · G3 bun extern special · prag MF · TVA pe factură la taxare inversă | Calculat | Adam | opț. | toate |
| Comentarii_Operator | Motivul oricărei modificări a precompletării — obligatoriu la corecție, intră în audit | Operator | Operator review | la corecții | toate |
| Recomandari_Fiscale | Oportunități semnalate, niciodată aplicate automat (ex: comodat auto) | — | Adam | Faza 2 | toate |
8 · Audit & versiuni
6 câmpuriWrite-once. Versionarea e obligatorie din prima zi — retroactiv se pierde trasabilitatea.
| Câmp | Descriere | Faza 1 | Faza 2 | Oblig. | Tipuri doc |
| Operator_ID / Timestamps | Cine a lucrat documentul, când a intrat/ieșit din fiecare status | Sistem | Sistem | da | toate |
| Audit_Trail[] | Fiecare modificare de câmp: cine, ce, valoare veche → nouă, când | Sistem | Sistem | da | toate |
| Ruleset_Version | Versiunea taxonomiei + regulilor active la procesare — stampilată pe notă | Sistem | Sistem | da | toate |
| Prompt_Version / Model_Versions | Nullable în Faza 1 — se populează când apare Larry | — | Sistem | Faza 2 | toate |
| Hash_Fisier | Amprenta digitală — deduplicare la ingestie, per tenant | Sistem | Sistem | da | toate |
| Dedup_Semantic_Match | Nr doc + dată + CUI + sumă → referință la documentul similar (posibil duplicat) | Calculat | Calculat | opț. | toate fără extras |