Documentazione

Ordini verso Business Central

Il flusso ordini replica il modo in cui il tuo gestionale registra già gli ordini e-commerce: ordine di vendita intestato a un cliente di appoggio, dati reali dell’acquirente sul documento, spese di trasporto come riga conto, riferimento del negozio sul documento. Tutto configurabile da Impostazioni → Flussi → Ordini.

Il ciclo di vita di un ordine

  1. 1Il cliente ordina sul negozio: il modulo notifica la piattaforma in tempo reale (ordine visibile in dashboard con tutti i dati).
  2. 2Quando l’ordine entra nello stato trigger che hai scelto (es. “Pagamento accettato”), viene marcato pronto e inviato a Business Central come ordine di vendita.
  3. 3Il magazzino/gestionale lavora l’ordine; con la verifica di evadibilità la piattaforma rileva righe ridotte o rimosse.
  4. 4Se mancano righe e la gestione è attiva: l’ordine sul negozio viene riallineato e la differenza compensata con un buono o, se lo scegli, lasciando al cliente la scelta fra buono e rimborso (vedi sotto).
  5. 5Se non è evadibile nessuna riga e l’annullamento è attivo: l’ordine viene annullato sul negozio e il rimborso finisce nella pagina Rimborsi (vedi sotto).

Configurazione

ImpostazioneCosa fa
Stato triggerlo stato PrestaShop che fa partire l’invio (oppure “alla creazione”)
Cliente BC ordini webil No. cliente di appoggio su cui vengono creati gli ordini (es. il conto “corrispettivi e-commerce” già usato dall’amministrazione)
Ordini con richiesta fatturase l’ordine ha P.IVA/CF/SDI, la piattaforma cerca il cliente reale su BC (per P.IVA, poi email) e se non esiste lo crea con i dati fiscali
Conto CoGe trasportole spese di spedizione arrivano come riga conto CoGe (imponibile)
Conto CoGe scontigli sconti ordine come riga negativa (opzionale)
Dimensioni globali 1/2valori dimensione impostati su ogni ordine creato (es. il canale e-commerce)
Causali fattura/scontrinoil tipo operazione della localizzazione italiana; inviato quando il partner BC espone il campo via estensione
Campi da trasferirequali dei campi dello snapshot ordine trasferire (indirizzi, righe, totali, pagamento, vettore…)

Regole sui prezzi

  • I prezzi li governa il negozio: le righe arrivano con il prezzo PrestaShop (imponibile) e gli sconti automatici dei listini/accordi commerciali BC vengono azzerati.
  • Il documento è creato a prezzi IVA esclusa anche se il cliente BC ha “Prezzi IVA inclusa” attivo, così i totali coincidono con il negozio.
  • Il riferimento PrestaShop finisce nel Nr. documento esterno.

Verifica di evadibilità

La verifica confronta le righe dell’ordine su Business Central con lo snapshot originale e classifica l’ordine: evadibile (tutte le righe intatte), parzialmente evadibile (righe ridotte/rimosse) o non evadibile. Non è mai a intervalli di tempo — parte in due modi, a tua scelta:

Con l’API custom del gestionale la classificazione viene invece dai campi che il gestionale scrive su ogni riga (evadibile e quantità prelevata): finché la quantità prelevata è vuota su tutte le righe l’ordine resta in attesa del magazzino, perché “vuoto” significa “non ha ancora risposto” e non “non c’è”.

  • Manuale: pulsante “Verifica su BC” sulla pagina dell’ordine.
  • Webhook: Business Central (o il processo del magazzino) chiama l’URL dedicato quando l’ordine è stato lavorato — la verifica scatta in quell’istante.

Righe non disponibili: riallineo e compensazione

Quando il gestionale dichiara l’ordine parzialmente evadibile, con la gestione attiva (Flussi → Ordini → Righe non disponibili su BC) la piattaforma:

  • riallinea le quantità dell’ordine sul negozio a quelle confermate dal magazzino (lo stock non viene toccato: lo governa il sync);
  • calcola la differenza da restituire: il valore pagato, IVA inclusa, delle righe mancanti;
  • la compensa nel modo che hai scelto (vedi sotto);
  • aggiunge una nota di tracciabilità sull’ordine e invia l’evento iConnect Order Modified a Klaviyo, se il flusso marketing è attivo.
ModalitàCosa succede
Buono automaticoil modulo crea subito un buono monouso intestato al cliente, con scadenza configurabile (1–12 mesi); il codice arriva nell’evento Klaviyo
Sceglie il clienteil cliente riceve (dal tuo flow Klaviyo) un link personale e sceglie fra rimborso e buono entro i giorni che imposti; col buono lo crea il modulo, col rimborso l’ordine va nella pagina Rimborsi

In entrambi i casi la merce rimasta parte normalmente: la scelta riguarda i soldi, non la spedizione, e lo stato dell’ordine sul negozio non cambia. Alla scadenza del termine senza risposta non succede nulla da solo: l’ordine resta in elenco e lo chiude una persona.

Ordine per nulla evadibile: annullamento e rimborso

Se il gestionale non dichiara evadibile nessuna riga, con Flussi → Ordini → Ordine per nulla evadibile attivo la piattaforma:

  1. 1aspetta il tempo che hai impostato (anche “subito”), continuando a rileggere il gestionale: se la merce rientra, l’ordine torna in attesa da solo;
  2. 2porta l’ordine PrestaShop allo stato “annullato” che hai scelto;
  3. 3avvisa per email gli indirizzi indicati (anche più di uno, separati da virgola) con importo, metodo di pagamento e dati del cliente, e invia l’evento iConnect Order Cancelled a Klaviyo;
  4. 4mette l’ordine nella pagina Rimborsi.

Il rimborso non è automatico: lo esegue una persona con il metodo di pagamento usato dal cliente, poi preme “Segna rimborsato”, e l’ordine sul negozio passa allo stato “rimborsato” che hai scelto.

La pagina Rimborsi e il ruolo Contabilità

Dashboard → Rimborsi raccoglie i rimborsi da eseguire (ordini annullati e rimborsi scelti dai clienti), gli annullamenti in corso e lo storico dei rimborsi segnati, con chi li ha segnati e quando. Il numero nel menu indica quanti ne restano.

Da Impostazioni → Team puoi invitare una persona con il ruolo Contabilità: vede solo la pagina Rimborsi e può solo segnare i rimborsi eseguiti, senza accesso a ordini, configurazione e connessioni.

Requisiti del modulo

Il riallineo delle righe richiede il modulo v0.4 o successivo; le righe conto CoGe (trasporto/sconti) la v0.4.1+; il buono creato dopo la scelta del cliente la v0.5.0+.