Conectează WooCommerce la e-Factura ANAF

Fiecare comandă finalizată devine o e-factură CIUS-RO depusă în SPV ANAF — fără încărcări manuale și fără să alergi după termenul de 5 zile lucrătoare.

WordPress 6.5+
WooCommerce 7.0+
PHP 7.4+
CIUS-RO / UBL 2.1

Deocamdată instalare manuală: listarea în directorul WordPress.org este încă în verificare, iar pagina va indica acolo imediat ce devine live.

Trei valori de care are nevoie pluginul

Tenant ID

Adresa de e-mail a contului tău Autoanaf. Comenzile trimise de plugin ajung în acel tenant, așa că scrie-o exact — o greșeală de tastare creează un tenant nou, gol, iar comenzile nu vor apărea niciodată în panoul tău.


Secretul webhook-ului

Orice șir lung și aleatoriu, ales de tine. Pluginul semnează fiecare trimitere cu el (HMAC-SHA256) și îl trimite în URL, așa că tratează-l ca pe o parolă. Generează unul:


CIF / TVA al firmei

CIF-ul firmei care emite factura, autorizat pentru e-Factura în SPV ANAF — același pe care îl folosești când trimiți facturi manual.

Configurare

1
Creează-ți contul

Înregistrează-te cu adresa de e-mail pe care o vrei ca Tenant ID și confirmă-o — adresa este atât contul de autentificare, cât și tenantul către care trimite pluginul comenzile.

2
Instalează pluginul

Descarcă arhiva de mai sus, apoi în WordPress mergi la Plugins → Add New → Upload Plugin → Install Now → Activate. La instalare nu îți cere nimic.

3
Generează secretul webhook-ului

Rulează comanda de mai sus (sau folosește managerul tău de parole) și păstrează șirul — îl lipești în plugin la pasul următor.

openssl rand -base64 32
4
Completează setările

Settings → Autoanaf: Tenant ID, secretul webhook-ului, numele emitentului, CIF-ul emitentului, strada, orașul, țara și — pentru un emitent român — județul. ANAF respinge o e-factură a cărei parte română nu are subdiviziune de țară.

5
Salvează și verifică starea

Panoul afișează Active după ce toate câmpurile obligatorii sunt completate. Până atunci pluginul refuză să trimită comenzi, ca nimic configurat pe jumătate să nu ajungă la ANAF.

6
Trimite o comandă de test

Finalizează o comandă și urmărește-o cum apare la Facturi, împreună cu statutul ANAF; comanda primește în WooCommerce un marcaj de trimitere.

Ce se întâmplă, de fapt

Pentru fiecare comandă ajunsă în starea „completed”, pluginul trimite comanda WooCommerce — semnată cu secretul tău — către tenantul tău Autoanaf, cu datele emitentului în query string:

https://core.autoanaf.ro/v1/webhooks/woocommerce/tu@exemplu.ro?secret=<your-secret>&issuerName=<company>&issuerVat=RO12345678&issuerCity=<city>&issuerCountry=RO&issuerCounty=RO-NT

Autoanaf o transformă în EN 16931 / CIUS-RO UBL și o depune în SPV. Dacă ANAF este indisponibil sau limitează numărul de cereri, comanda rămâne într-o coadă de reîncercări în loc să se piardă.


Cumpărători firme

Un câmp „CIF firmă” în checkout validează CIF-ul cumpărătorului (checksum RO) și călătorește cu comanda, astfel încât facturile B2B să conțină CIF-ul cumpărătorului în loc să fie respinse de ANAF.

Dacă ceva pare în neregulă

Panoul afișează Not configured: un câmp obligatoriu este gol — de obicei județul, pentru un emitent român. Salvarea unei configurații RO fără județ este refuzată intenționat.

Comenzile se finalizează, dar nu apare nicio factură: Tenant ID-ul este greșit (o greșeală de tastare creează un tenant nou) sau magazinul nu poate ajunge la core.autoanaf.ro. Comanda păstrează un marcaj de eroare și se reîncearcă.

Factura a fost creată, dar ANAF a respins-o: deschide-o în panou — acolo sunt codurile de respingere din SPV și XML-ul, iar factura poate fi corectată și retrimisă.

Nu ești sigur de unde vine o valoare? Fișierul readme.txt al pluginului documentează fiecare setare, iar contact@autoanaf.ro răspunde.