CRMconnect Azuvio · Docs

Workflow: OmniSales Order Fulfillment

Modules involved: OmniSales · Warehouse (Delivery Notes, Packing Lists) · Innoship (230+ curiieri, 35 țări) · Couriers Direct (Cargus · FanCourier · Palex) · eTransport (ANAF) · Invoices · Returns
Who uses it: Operator comenzi, Operator Picking & Expediere, Depozit, Logistică, Financiar
Durata tipică: Ore – zile (de la comandă la livrare)

Overview

Fluxul complet de procesare a comenzilor primite din orice canal de vânzare (WooCommerce, Shopify, portal client, POS, manual): de la comanda nouă până la generarea AWB-ului de livrare și facturarea automată. Gestionat în principal de echipele de depozit și logistică.


Diagrama fluxului

[COMANDĂ OMNI]  ← WooCommerce / Shopify / Portal / Manual / POS
  │  status: Draft (0) → Processing (1) → Confirm (3)
  │  ↓ Confirmare comandă (manuală sau automată)
  │
[AVIZ DE LIVRARE (Goods Delivery Note)]
  │  status: ready_for_packing → packed
  │  creat automat din comandă confirmată
  │  ↓ Picking în depozit — selectezi produsele fizic
  │
[PACKING LIST]
  │  status: wh_ready_to_deliver → wh_in_transit → wh_delivered
  │  creat din avizul de livrare (total sau parțial)
  │  include dimensiuni colet: lungime, lățime, înălțime, greutate
  │  ↓ Aprobare packing list
  │
[AWB — alegi modalitatea]
  │
  ├── [INNOSHIP] — 230+ curiieri, 35 de țări (recomandat pentru volum mare sau internațional)
  │     │  API key + external ID configurate în /admin/innoship/settings
  │     │  Selectezi curierul și serviciul din lista completă
  │     │  AWB generat automat → tracking number returnat
  │     │  Batch print pentru toate AWB-urile zilei
  │     │  Tracking sync automat înapoi în WooCommerce/Shopify
  │
  └── [CURIERAT DIRECT] — Cargus / FanCourier / Palex (/admin/couriers)
        │  Credențiale API per curier + punct de ridicare configurat
        │  AWB generat direct fără intermediar
        │  Tracking în timp real din CRM
        │  Ideal: contracte directe, livrări naționale
  │
  ↓ AWB tipărit și lipit pe colet → Predare curier
  │
[ETRANSPORT ANAF] ← completat ÎNAINTE de plecare (dacă depășești pragul legal în România)
  │  /admin/etransport → declarație manuală
  │  Câmpuri: vehicul, rută, bunuri (cod NC, greutate, valoare), referință aviz
  │  Trimitere → UIT primit → transportul poate pleca
  │  Statuse: Netrimisă → În prelucrare → Validată (UIT activ) / Eroare
  │
[FACTURĂ]
  │  generată automat sau manual din comandă / aviz livrare
  │  status: Ciornă → Trimisă → Plătită
  │
[LIVRARE FINALIZATĂ]
  │  status comandă → Delivered (5)
  │  status packing list → wh_delivered

Pas cu pas

1. Comanda OmniSales — Intrarea comenzii

Unde: /admin/omni_sales/order_list

Surse de comenzi:

Sursă Cum ajunge în CRM
WooCommerce Sync automat (cron) sau manual — modul WooCommerce
Shopify Sync automat — modul Shopify
Portal client Clientul plasează comanda din portalul propriu
POS Operator introduce comanda la ghișeu
Manual Staff introduce comanda direct din /admin/omni_sales

Statusurile comenzii:

Cod Status Descriere
0 Draft Comandă nouă, neconfirmată
1 Processing În procesare — revizuire stoc și disponibilitate
2 Pending Payment Așteptare plată în avans
3 Confirmed Confirmată — se poate genera avizul de livrare
4 Shipping Preluată de curier
5 Delivered Livrată și finalizată
8 Cancelled Anulată
9 On Hold Suspendată temporar
14 Paid Plătită
15 Ready Pregătită pentru livrare

Aprobare comandă:
Comenzile pot necesita aprobare înainte de confirmare — approve_status: 0 (pending) → 1 (aprobat) → -1 (respins). Configurabil per canal de vânzare.

Câmpuri cheie pe comandă:

  • Client (id_contact) — legătura cu fișa clientului
  • Canal (channel_id) — sursa comenzii
  • Produse + cantități + prețuri
  • Adresă livrare
  • Mod de plată

2. Aviz de Livrare (Goods Delivery Note) — Pregătirea comenzii

Unde: /admin/warehouse/manage_delivery

Creare:

  • Automată: când comanda ajunge la status Confirmed (3) sau Shipping (4), sistemul creează automat avizul de livrare via omnisales_auto_create_goods_delivery_with_invoice()
  • Manuală: din comanda confirmată, buton Generează Aviz Livrare

Ce conține avizul:

  • Toate liniile de produse din comandă (cod, denumire, cantitate, preț)
  • Depozitul sursă
  • Adresa clientului (copiată din comandă)
  • Număr unic (prefix configurable + auto-increment)

Statusuri aviz:

Status Descriere
ready_for_packing Creat, await picking
packed Produsele au fost împachetate; packing list creat

Picking (colectarea produselor):
Operatorul de depozit preia avizul (fizic sau pe ecran) și colectează produsele marcate. Stocul nu se scade definitiv decât la finalizarea livrării sau la generarea facturii.


3. Packing List — Ambalare și pregătire colet

Unde: /admin/warehouse/manage_packing_list

Creare:

  • Din avizul de livrare aprobat — buton Crează Packing List
  • Suportă packing parțial (type_of_packing_list = 'partial'): dacă nu ai toate produsele în stoc, poți livra parțial și genera un al doilea packing list ulterior

Date obligatorii pentru packing list:

Câmp Note
Produse + cantități Copiate din aviz; ajustabile dacă livrare parțială
Greutate (kg) Obligatoriu pentru generarea AWB
Lungime / Lățime / Înălțime (cm) Dimensiuni colet — obligatorii pentru curier
Adresă livrare Copiată din comandă; editabilă
Serviciu curier Selectezi din lista Innoship (standard, express, etc.)

Statusuri packing list:

Status Descriere
wh_ready_to_deliver Creat, în așteptare AWB
wh_in_transit AWB generat, colet preluat de curier
wh_delivered Confirmat livrat

Aprobare packing list:
Dacă fluxul de aprobare e activ, managerul aprobă packing list-ul (approval = 1) înainte de generarea AWB.


4. AWB — Generarea documentului de transport

CRMConnect oferă două modalități de generare AWB, care pot fi folosite simultan în funcție de comandă:

Opțiunea A — Innoship (230+ curiieri, 35 de țări)

Unde: Buton Generează AWB din packing list → selectezi Innoship
sau direct din /admin/innoship/awb

Condiții prealabile:

  • innoship_api_key + innoship_external_id configurate la /admin/innoship/settings
  • Curier și serviciu selectate; dimensiuni + greutate completate; adresă validă

Ce se întâmplă la generare:

  1. CRM trimite request la API Innoship cu datele coletului
  2. Innoship returnează: număr AWB + cod tracking
  3. CRM creează înregistrare în wh_omni_shipments
  4. Status packing list → wh_in_transit; Status comandă → Shipping (4)
  5. AWB disponibil pentru printare (PDF A4 sau termic)
  6. Log creat în innoship_audit_log
  7. Tracking number trimis automat înapoi în WooCommerce/Shopify (dacă e canal OMS)

Curierii disponibili prin Innoship: FanCourier, Cargus, DPD, Sameday, GLS, DHL, TNT, FedEx și 220+ alții — livrare în 35 de țări.

Batch print: selectezi mai multe AWB-uri din lista Innoship → printezi toate dintr-un singur pas.

Opțiunea B — Curierat Direct: Cargus / FanCourier / Palex

Unde: Buton Generează AWB din packing list → selectezi curierul direct
sau din /admin/couriers

Configurare per curier (/admin/couriers/settings):

Curier Credențiale necesare
Cargus URL API + cheie abonament + utilizator/parolă + punct ridicare
FanCourier URL API + utilizator/parolă + ID client (workpointuri sincronizate automat)
Palex Credențiale API Palex + punct de ridicare

Rezultat: Număr AWB returnat, etichetă printabilă, tracking în timp real din CRM, audit log per apel API.

Când alegi Direct vs. Innoship:

Situație Recomandare
Contract direct cu un curier național Curierat Direct
Livrări internaționale (35+ țări) Innoship
Volum mare, comparare tarife automate Innoship
Batch print zilnic optimizat Innoship

4b. eTransport ANAF (România) — înainte de plecare

Obligatoriu dacă valoarea sau tipul transportului depășesc pragul legal.
Se completează manual — NU se generează automat din comandă sau aviz.

Unde: /admin/etransport → Add Declaration

Completezi înainte ca transportul să plece: vehicul, rută, bunuri (cod NC tarifar, greutate, valoare), referință aviz (opțional). La trimitere primești UIT — codul unic de transport pe care șoferul îl are la el.

Detalii complete: eTransport — Declarare ANAF

Alternativă directă — modulul Couriers:
Dacă ai contracte directe cu Cargus sau FanCourier (fără agregator), poți genera AWB-urile prin modulul Couriers (/admin/couriers) — configurezi API key-urile direct cu fiecare curier, fără intermediar.

Soluție Curierii suportați Când o folosești
Innoship Fan Courier, DPD, Cargus, Sameday, GLS, DHL, + alții Ai contract cu Innoship ca agregator
Couriers direct Cargus, FanCourier Ai contract direct; vrei integrare fără agregator

Tracking:
Din lista AWB (/admin/innoship/awb sau /admin/couriers/awb), statusul de livrare se actualizează automat prin sincronizarea periodică.


5. Factura — Cererea de plată

Unde: /admin/invoices

Generare:

Mod Când
Automată la confirmare Dacă e activată opțiunea create_invoice = on pe canal — factura se generează când comanda atinge status Shipping (4)
Automată la livrare Dacă e configurată generarea la status Delivered (5)
Manuală Din comanda confirmată, buton Crează Factură; sau din avizul de livrare

Legăturile create:

  • cart.number_invoiceinvoices.id
  • goods_delivery.invoice_idinvoices.id

Conținutul facturii:
Liniile se preiau din comandă: produse, cantități, prețuri, taxe. Adresa de facturare vine din profilul clientului sau din comandă.


6. Livrare finalizată și retur

Confirmarea livrării: Când Innoship confirmă livrarea (product_delivered):

  • Statusul packing list → wh_delivered
  • Statusul comenzii → Delivered (5)
  • Stocul e scăzut definitiv din depozit

Retur (dacă e cazul):

Câmp Note
Fereastra de retur Configurabilă (default 30 zile)
Tip retur manual, partially, fully
Tabel wh_order_returns — linked la original_order_id
Refund Dacă se aprobă returul, se generează rambursare în omni_refunds

Returul de la client → Aviz de Recepție Retur (/admin/warehouse/manage_order_return_receipt)


Ce se creează automat

Eveniment Se creează automat
Comandă sincronizată din WooCommerce/Shopify Comandă OmniSales cu client și produse
Comandă → status Confirmed Aviz de Livrare cu liniile comenzii
Packing list aprobat + AWB generat wh_omni_shipments, log Innoship, status → In Transit
Comandă → status Shipping (dacă create_invoice = on) Factură cu liniile comenzii
Livrare confirmată de Innoship Status comandă → Delivered, stoc scăzut

Puncte unde fluxul poate bloca

Problemă Cauză probabilă Soluție
Comanda nu apare din WooCommerce Sync cron nu rulează sau credențiale incorecte Verifică /admin/woocommerce/stores și cron
Avizul de livrare nu se generează automat Opțiunea auto-create dezactivată pe canal Activează din setările canalului de vânzare
Eroare la generarea AWB Adresă client inexistentă în baza Innoship Verifică ortografia localității; contactează Innoship
Dimensiuni/greutate lipsesc Câmpurile nu au fost completate în packing list Completează obligatoriu toate 4 câmpuri fizice
Stocul e 0 dar comanda e confirmată Stoc insuficient în depozit Verifică avizul de recepție pending sau fă ajustare de stoc
Factura nu se generează automat create_invoice dezactivat pe canal Activează din /admin/omni_sales/omni_sales_channel → Edit canal

Audit și rapoarte

  • Audit Sincronizări/admin/omni_sales/diary_sync — log sincronizări WooCommerce/Shopify
  • Innoship Audit Log/admin/innoship/audit — toate operațiunile AWB
  • Rapoarte OmniSales/admin/omni_sales/report — comenzi per canal, status, perioadă
  • Istoric Inventar/admin/warehouse/warehouse_history — mișcări de stoc

Module implicate — documentație detaliată

← Înapoi la Workflows

Tip

Configurați factura automată în setările WooCommerce și Shopify pentru a genera automat o factură CRM draft când o comandă atinge un anumit status — aceasta elimină crearea manuală a facturilor pentru fiecare comandă online.

Note

Verificați Auditul de Sincronizare al Canalelor zilnic pentru erori. O singură eroare de sincronizare nocturnă înseamnă că comenzile clienților nu sunt în sistem — echipa de fulfillment procesează alte lucrări în timp ce acele comenzi așteaptă fără ca nimeni să știe.