Integrări
Comanda devine factură, factura ajunge în SPV. Fără export-import, fără copiat date de client, fără o a doua aplicație de deschis. Rambursarea devine storno.
Plugin gratuit: factură la comandă, trimitere în SPV, CUI la checkout, PDF în email, storno la rambursare.
Modul pe același contract API: hook pe schimbarea stării comenzii, CUI la adresă, coloană în comenzi.
Extensie: observer pe plata facturii, configurare în Stores → Configuration, coloană în grid.
Chei Bearer, OpenAPI 3.1, idempotență la reîncercări, coduri de eroare stabile. Pentru orice platformă sau ERP.
Ghid pentru ChatGPT Actions, Claude tool-use sau orice agent: llms.txt + exemple curl.
Shopify, OpenCart, Gomag sau un ERP intern — scrie-ne la [email protected]. API-ul acoperă deja tot fluxul.
WooCommerce
Pluginul leagă magazinul de contul tău ZUC.ro. Facturile se numerotează pe seria profilului de facturare ales, iar WooCommerce primește înapoi seria, numărul și indexul ANAF.
Licență GPL-2.0-or-later. Gratuit, fără limită de comenzi în plugin; limitele de facturi sunt cele ale planului ZUC.ro.
În WordPress: Module → Adaugă modul nou → Încarcă modul, alege zip-ul descărcat, apoi Activează. WooCommerce trebuie să fie deja activ.
Setări Facturi → API → Cheie nouă, presetul „E-commerce” (facturi + clienți + produse; fără ștergere de cont). Copiază cheia — se afișează o singură dată.
WooCommerce → Setări → ZUC e-Factura: lipește cheia, apasă Testează conexiunea (îți arată planul, mediul ANAF și dacă tokenul SPV e valid), Salvează, apoi alege profilul de facturare și statusul declanșator.
Cu mediul ANAF din contul ZUC.ro pe test, plasează o comandă și verifică factura în ZUC.ro. Când totul arată bine, comută mediul pe producție din Profil → Mediu ANAF. Pluginul nu are setare separată — folosește mediul activ al contului.
| Cheie API | Cheia din ZUC.ro. Butonul Testează conexiunea verifică planul, mediul ANAF și tokenul SPV. |
| Profil de facturare | Seria, adresa, IBAN-ul și logo-ul facturii vin din profil (lista se încarcă după ce salvezi cheia). |
| Emite factura la statusul | În procesare (plata confirmată), Finalizată sau Doar manual. |
| Trimite automat la ANAF | Imediat după emitere, factura pleacă în SPV. Dezactivat, o trimiți din pagina comenzii sau din ZUC.ro. |
| Storno automat când comanda devine | Rambursată, Rambursată sau Anulată, sau Niciodată. Rambursările parțiale primesc doar o notă pe comandă — stornoul parțial se face din ZUC.ro. |
| PDF în emailul comenzii | Factura la „Comandă în procesare / finalizată”, stornoul la „Comandă rambursată”. |
| Link în Contul meu | Clientul își descarcă factura (și stornoul) din lista comenzilor. |
| CUI obligatoriu pentru companii | Dacă clientul completează „Companie”, CUI-ul devine obligatoriu și se validează cifra de control. |
| Denumirea liniei de transport | Cum apare costul livrării pe factură (implicit „Transport”). |
Liniile comenzii (după discount), transportul și taxele devin linii de factură, cu cota de TVA calculată per linie. Clientul e recunoscut după CUI în lista ta din ZUC.ro (nu se creează dubluri); adresa din București devine SECTOR n / RO-B, cum cere ANAF. Fiecare comandă are o cheie de idempotență — o reîncercare nu emite a doua factură.
Rambursarea integrală emite factura storno (aceleași linii, cu minus). O factură are un singur storno; dacă l-ai emis deja din ZUC.ro, pluginul îl preia. Stornoul pleacă la ANAF doar dacă factura originală e în SPV.
Mesajul apare ca notă pe comandă și în meta box („Ultima eroare”). Erorile trecătoare (rețea, ANAF indisponibil) se reîncearcă automat, orar, de cel mult 5 ori. Cele care cer intervenție (limita planului, CUI invalid, XML respins de ANAF) nu se reîncearcă — corectezi și apeși din nou.
WordPress păstrează doar id-ul, seria/numărul și indexul ANAF pe comandă. PDF-urile se iau din ZUC.ro la cerere, nu se stochează în WordPress. Cheia API poate fi revocată oricând din ZUC.ro; presetul „E-commerce” nu poate șterge contul sau firma.
În ZUC.ro, pe seria profilului de facturare ales. Așa numerotarea rămâne continuă și dacă emiți facturi și din aplicație sau din API.
Comanda primește o notă cu mesajele validatorului ANAF, iar în meta box vezi „Ultima eroare”. De obicei e o adresă incompletă sau un județ lipsă: corectezi datele clientului în ZUC.ro sau în comandă și apeși „Trimite la ANAF” din nou.
API-ul (și deci pluginul) e inclus în planul Business. Poți testa integrarea pe mediul ANAF de test fără valoare fiscală.
Da. Persoanele fizice care nu completează CNP primesc identificatorul 0000000000000, convenția e-Factura pentru clienți neidentificați, iar factura trece validatorul ANAF.
Generează câte o cheie API pentru fiecare magazin (le poți revoca separat) și, dacă vrei serii diferite, câte un profil de facturare pentru fiecare.
API REST
Modulele de mai sus sunt clienți ai aceluiași API. Dacă ai un ERP, un magazin custom sau o platformă pe care n-o acoperim încă, îl folosești direct.
Idempotency-Key pe orice scriere: reîncercarea nu dublează facturaerror_code stabil (plan_limit_reached, anaf_validation_failed, already_sent…) — ramifici pe cod, nu pe textX-RateLimit-*# 1. Emite factura (client identificat după CUI, sau inline) curl -X POST https://zuc.ro/api/v1/invoices \ -H "Authorization: Bearer zuc_…" \ -H "Idempotency-Key: shop-order-1042" \ -H "Content-Type: application/json" \ -d '{ "supplier_id": 9, "customer_identifier": "RO14399840", "customer_name": "CLIENT DEMO SRL", "customer_street_name": "Str. Exemplu 1", "customer_city_name": "SECTOR2", "customer_country_subentity": "RO-B", "payment_method": "card", "items": [{ "name": "Tricou bumbac", "quantity": 2, "unit_price": 79.90, "vat_rate": 21, "unit_of_measure": "buc" }] }' # 2. Trimite la ANAF → index_incarcare # (a doua oară: 409 already_sent) curl -X POST https://zuc.ro/api/v1/invoices/141/send-anaf \ -H "Authorization: Bearer zuc_…" # 3. PDF pentru client curl -H "Authorization: Bearer zuc_…" \ https://zuc.ro/api/v1/invoices/141/pdf -o factura.pdf
Agenți AI
Același API, citit de mașini. Un agent poate căuta clientul, emite factura, valida XML-ul și — doar cu confirmarea ta — o poate trimite în SPV.
Fluxul comandă → factură → SPV, regulile (nu inventa CUI-uri, cere confirmare la trimitere), tabelul codurilor de eroare, exemple curl.
Indexul a tot ce e citibil de mașini pe zuc.ro. Dă-l unui agent ca punct de plecare.
Importă specificația direct în ChatGPT Actions sau generează tool-urile pentru Claude din ea.
Cont gratuit, mediul ANAF de test, pluginul instalat în 5 minute. Treci pe producție când ești mulțumit.
Creează Cont Gratuit