Integrazioni di spedizione in India: upload CSV vs API dei corrieri
Integrazioni di spedizione in India: decidi cosa automatizzare e cosa lasciare manuale confrontando gli upload CSV con le API dei corrieri, più una checklist pratica degli eventi di tracciamento.

Di cosa si tratta davvero: meno follow‑up sulle spedizioni
Quando il volume degli ordini è piccolo, gli aggiornamenti di spedizione si gestiscono con controlli veloci, un foglio di calcolo e un paio di messaggi al corriere. Con la crescita degli ordini, le piccole lacune si sommano: etichette create in ritardo, pickup mancati e tracciamento stagnante.
Lo schema è familiare: i clienti chiedono «Dov'è il mio ordine?». Il supporto chiede alle operazioni. Le operazioni controllano un portale. Qualcuno aggiorna manualmente uno stato che avrebbe dovuto aggiornarsi da solo.
Un'integrazione significa semplicemente che il tuo sistema può inviare dati di spedizione (indirizzo, peso, COD, valore fattura) e ricevere dati indietro (numero AWB, conferma pickup, scansioni di tracciamento, esiti di consegna) in modo affidabile. “Affidabile” conta perché deve funzionare ogni giorno, non solo quando qualcuno si ricorda di caricare un file.
Per questo questo confronto è importante:
- Un flusso di upload CSV è il punto di partenza. È facile iniziare, ma dipende dalle persone che ripetono gli stessi passaggi puntualmente.
- Una integrazione API completa con il corriere è la versione always‑on. Può creare spedizioni, recuperare scansioni di tracciamento e reagire alle eccezioni senza aspettare lavoro manuale.
La maggior parte dei team non vuole “più tecnologia”. Vogliono meno ritardi, meno modifiche manuali e un tracciamento di cui tutti possano fidarsi. Riduci i follow‑up (da clienti e team interni) e di solito riduci anche rimborsi, costi di ritentativo e ticket di supporto.
Dove il lavoro di spedizione va storto nelle operazioni reali
La maggior parte dei team inizia con una routine semplice: prenotare pickup, stampare etichette, incollare gli ID di tracciamento in un foglio e rispondere quando i clienti chiedono aggiornamenti. Funziona a basso volume, ma le crepe emergono rapidamente in India, specialmente quando gestisci più corrieri, COD e qualità dell'indirizzo incoerente.
I passaggi manuali non sembrano grandi da soli. Qualcuno sceglie un corriere, crea la spedizione, scarica le etichette e si assicura che il pacco giusto abbia la giusta airway bill (AWB). Poi qualcun altro aggiorna lo stato dell'ordine, condivide il tracking e controlla le prove di consegna per il COD.
I punti di fallimento più comuni sono:
- L'AWB sbagliata viene applicata al pacco sbagliato, causando perdita o reso.
- Vengono create spedizioni duplicate dopo un ritentativo o un errore di copia del foglio.
- Il tracciamento non si aggiorna in tempo, quindi il supporto non ha una risposta chiara e i clienti perdono fiducia.
- Il pickup non viene confermato, quindi gli ordini restano “pronti per la spedizione” mentre il corriere non ha nulla programmato.
- Gli importi o le commissioni COD non corrispondono, creando problemi di riconciliazione in seguito.
NDR significa Non‑Delivery Report. È quello che succede quando la consegna fallisce (indirizzo sbagliato, cliente non reperibile, rifiuto, problema di pagamento). L'NDR crea lavoro extra perché richiede decisioni: chiamare il cliente, aggiornare l'indirizzo, approvare un ritentativo o segnare per il reso.
Le operazioni sentono la pressione per prime. Il supporto riceve i messaggi arrabbiati. La finanza resta bloccata sulla riconciliazione COD. I clienti percepiscono il silenzio quando gli stati non cambiano.
Opzione A: il baseline dell'upload CSV (cosa ottieni e cosa no)
L'upload CSV è il punto di partenza per molte configurazioni di spedizione in India. Esporti un lotto di ordini pagati dal tuo store o ERP, li sistemi nel template del corriere o dell'aggregatore, poi carichi il file in una dashboard per generare AWB ed etichette.
Quello che ottieni è semplicità. Di solito non serve lavoro di engineering e puoi essere operativo in un giorno. Per volumi bassi o spedizioni prevedibili (stesso indirizzo di pickup, un set limitato di SKU, poche eccezioni), un CSV giornaliero può essere “sufficiente” e facile da insegnare.
Dove fallisce è tutto ciò che succede dopo l'upload. La maggior parte dei team finisce per fare la stessa pulizia ogni giorno: correggere righe fallite perché un pincode o il formato del telefono non corrispondono al template, ricaricare i file corretti, controllare duplicati accidentali e copiare‑incollare i numeri di tracciamento nel storefront.
Poi arriva la parte più caotica: inseguire le eccezioni (problemi di indirizzo, pagamenti, rischio RTO) tra email, chiamate e portali dei corrieri, e aggiornare lo stato in più posti perché la dashboard del corriere non è il tuo sistema di record.
Il costo nascosto è tempo e incoerenza. Diversi corrieri richiedono colonne e regole diverse, quindi “un CSV” si trasforma in più versioni con workaround di foglio di calcolo. E poiché gli aggiornamenti non sono in tempo reale, il supporto spesso scopre i ritardi solo quando un cliente si lamenta.
Opzione B: integrazione API completa con il corriere (cosa sblocca e cosa costa)
Un setup API completo significa che il tuo sistema e i sistemi del corriere comunicano direttamente. Invece di caricare file, invii automaticamente dettagli di ordine e indirizzo, ricevi un'etichetta e continui a recuperare aggiornamenti di tracciamento senza che nessuno debba controllare più portali. Di solito questo è il punto in cui la spedizione smette di essere un compito operativo quotidiano e diventa infrastruttura affidabile.
Cosa sblocca
La maggior parte dei team inizia un'integrazione API per tre azioni principali: booking, etichette e tracciamento. Le capacità tipiche includono creare una spedizione e ottenere un AWB all'istante, generare l'etichetta di spedizione e i dati fattura, richiedere un pickup (dove supportato) e recuperare le scansioni di tracciamento in near‑real time.
Una volta che hai queste basi, puoi anche gestire le eccezioni in modo più pulito, come problemi di indirizzo e aggiornamenti di stato NDR.
Il ritorno è semplice: spedizione più rapida, meno errori da copia‑incolla e aggiornamenti più chiari ai clienti. Se un ordine è pagato alle 14:00, il tuo sistema può prenotare automaticamente la spedizione, stampare l'etichetta e inviare il numero di tracciamento in pochi minuti, senza aspettare un export CSV e un nuovo upload.
Cosa costa
Le integrazioni API non sono “configura e dimentica”. Prevedi tempo per setup, testing e manutenzione continua.
Le fonti usuali di sforzo:
- Regole specifiche per corriere (copertura pincode, fasce di peso, limiti COD)
- Mismatch nei codici di stato (il “RTO initiated” di un corriere è il “return in transit” di un altro)
- Affidabilità dei webhook e logica di retry per eventi persi
- Formati etichette e requisiti documentali che cambiano nel tempo
- Sandbox che non rispecchiano pienamente la produzione
Se pianifichi queste idiosincrasie per tempo, il setup scala bene. Se non lo fai, rischi spedizioni prenotate ma non ritirate, o clienti che vedono stati confusi perché gli eventi di tracciamento non sono stati mappati correttamente.
Cosa automatizzare e cosa mantenere manuale (una divisione pratica)
Una regola semplice funziona: automatizza i compiti che accadono molte volte al giorno e che generano più lavoro di rifacimento quando qualcuno sbaglia.
In India, di solito significa booking, etichette e aggiornamenti di tracciamento. Un singolo errore di battitura o una scansione mancata può scatenare una catena di follow‑up.
I passaggi manuali hanno ancora un ruolo. Mantieni manuale ciò che ha basso volume, eccezioni frequenti o processi corriere troppo incoerenti per fidarti dell'automazione.
Una divisione pratica per flusso di lavoro:
- Automatizza prima: prenotazione spedizioni dal tuo sistema d'ordine, generazione e stampa etichette, pull di stati di tracciamento o webhook, avvisi NDR con coda interna e messaggi di conferma consegna per il team di supporto.
- Mantieni manuale (finché non hai volume): scegliere un corriere per casi edge, negoziare cambi pickup al telefono, approvare reattempt COD rischiosi e correzioni di indirizzo one‑off che richiedono giudizio.
Un semplice tavolo decisionale prima di costruire qualcosa:
| Fattore | Quando manuale va bene | Quando l'automazione ripaga |
|---|---|---|
| Volume giornaliero ordini | Sotto ~20/giorno | 50+/giorno o picchi frequenti |
| Numero di corrieri | 1 corriere | 2+ corrieri o switching frequente |
| Pressione SLA | Consegna 3‑5 giorni accettabile | Promesse same/next‑day, alte penali |
| Dimensione del team | Persona ops dedicata | Ruoli ops/support condivisi |
Un controllo semplice: se il tuo team tocca gli stessi dati due volte (copia‑incolla dall'ordine al portale del corriere e poi di nuovo in un foglio), quello è un forte candidato per l'automazione.
Checklist eventi di tracciamento: pickup, in‑transit, NDR, delivered
Se vuoi meno messaggi “dov'è il mio ordine?”, tratta il tracciamento come una timeline di eventi, non uno stato singolo. Questo conta in India, dove la stessa spedizione può rimbalzare tra hub, ritentativi e resi.
Cattura queste fasi così che il tuo team e i clienti vedano la stessa storia:
- Pickup: quando il pickup è programmato, se è stato tentato e l'esito finale (ritirato o fallito). Quando fallisce, conserva il motivo di fallimento del corriere così puoi agire senza chiamare il rider.
- In‑transit: la prima scansione (spesso l'inizio reale), le principali scansioni hub, flag di eccezione o ritardo e “out for delivery”. Questi sono i punti che scatenano la maggior parte delle domande del supporto.
- NDR (Non‑Delivery Report): quando viene aperto un NDR, il codice motivo, se il cliente è stato contattato e cosa succede dopo (reattempt pianificato o avvio del reso). Qui il tempo è spesso critico.
- Delivered (o no): ora di consegna e dettagli di prova di consegna quando disponibili (nome, firma, riferimento foto). Separare “consegna fallita” da “reso” è importante perché i clienti percepiscono risultati molto diversi.
Per ogni evento, conserva gli stessi campi core: timestamp, località (città e hub se disponibile), testo stato raw, stato normalizzato, codice motivo e riferimento corriere/AWB. Tenere sia i valori raw che normalizzati facilita audit e dispute con i corrieri.
Dati necessari prima di integrare (così non si rompe tutto dopo)
Molte integrazioni di spedizione falliscono per motivi banali: numeri di telefono mancanti, pesi incoerenti o nessuna decisione chiara su quale sistema “posseda” la verità. Prima di toccare un'API, definisci i dati minimi che avrai sempre per ogni ordine.
Inizia con una baseline che funzioni anche con CSV. Se non puoi esportare questi campi in modo affidabile, un'API farà solo accadere errori più velocemente:
- ID ordine (unico e mai riutilizzato)
- Indirizzo di consegna completo (nome, pincode, città, stato, riferimento se lo raccogli)
- Numero di telefono (formato validato) e email (opzionale)
- Articoli e info spedizione (SKU, quantità, peso netto, dimensioni se le hai)
- Dettagli di pagamento (importo COD, flag prepagato)
Poi definisci cosa ti aspetti di ricevere indietro dal corriere, perché questi diventano i tuoi “manici” per tutto il resto. Al minimo, memorizza ID spedizione, numero AWB, nome o codice corriere, riferimento etichetta e data o finestra di pickup.
Una decisione evita settimane di confusione: scegli una singola fonte di verità per lo stato della spedizione. Se il tuo team continua a controllare il portale del corriere e sovrascrive il tuo sistema, i clienti vedranno una cosa mentre il supporto ne dirà un'altra.
Un semplice piano di mapping che allinea tutti:
- Scegli gli stati interni che userai (per esempio: Created, Picked Up, In Transit, Out for Delivery, Delivered, NDR).
- Mappa ogni stato corriere in uno stato interno (anche se sembra meno dettagliato).
- Salva separatamente il testo stato raw del corriere per audit.
- Decidi quali eventi possono cambiare lo stato automaticamente e quali solo manualmente.
Se costruisci questo dentro uno strumento come Koder.ai, tratta questi campi e mapping come modelli di prima classe presto, così esportazioni, tracciamento e rollback non si rompono quando aggiungi un secondo corriere.
Passo‑passo: passare dal CSV all'API senza caos
Il percorso di upgrade più sicuro è una serie di piccoli cambi, non un unico grande cutover. Le operazioni devono continuare a spedire mentre l'integrazione si affina.
1) Blocca l'ambito prima di scrivere codice
Scegli i corrieri che userai davvero, poi conferma quali azioni ti servono ora vs dopo: booking spedizioni, tracciamento, gestione NDR e resi (RTO). Questo conta perché ogni corriere chiama gli stati in modo diverso ed espone campi differenti.
2) Integra prima il tracciamento (solo lettura)
Prima di automatizzare booking o creazione etichette, recupera gli eventi di tracciamento nel tuo sistema e mostralI accanto all'ordine. Questo è a basso rischio perché non cambia come i pacchi vengono creati.
Assicurati di poter recuperare eventi per AWB e gestisci i casi in cui l'AWB manca o è sbagliata.
3) Mappa gli stati, ma conserva la verità raw
Crea un piccolo modello di stato interno (pickup, in‑transit, NDR, delivered), poi mappa gli stati dei corrieri in esso. Salva anche ogni payload raw esattamente come ricevuto.
Quando un cliente dice “risulta consegnato ma non l'ho ricevuto”, i raw eventi aiutano il supporto a rispondere rapidamente.
4) Aggiungi l'automazione NDR con cautela
Automatizza le parti semplici prima: rileva NDR, assegnalo a una coda, notifica il cliente e imposta timer per le finestre di ritentativo.
Mantieni un override manuale per cambi indirizzo e casi speciali.
5) Solo dopo aggiungi booking, etichette e pianificazione pickup
Quando il tracciamento è stabile, aggiungi booking via API, generazione etichette e richieste di pickup. Rilascia per corriere, mantenendo la via CSV come fallback per alcune settimane.
Testa con scenari reali:
- Cambio indirizzo dopo NDR
- Ritentativo richiesto ma non effettuato
- RTO innescato e poi cancellato
- Consegna parziale o spedizione divisa
- Scansione di consegna senza OTP o dettagli POD
Errori comuni che causano ritardi e ticket di supporto
La maggior parte dei ticket di spedizione non sono solo “dov'è il mio ordine?”. Sono aspettative disallineate: il tuo sistema dice una cosa, il corriere un'altra e il cliente vede una terza.
Un tranello comune è assumere che il testo di stato sia uniforme. Lo stesso traguardo può apparire con frasi diverse tra zone, tipi di servizio o hub. Se fai mapping basandoti sul testo esatto invece di normalizzare in un tuo piccolo insieme di stati, la dashboard e i messaggi ai clienti si discostano.
Errori che generano ritardi e follow‑up extra:
- Salvare solo l'ultimo stato: sovrascrivere eventi fa perdere la timeline che spiega cosa è successo. Conserva la storia completa con timestamp e località.
- Trattare l'NDR come un unico stato: l'NDR è un processo. Ti servono motivo, azione intrapresa e data del prossimo tentativo.
- Nessuna gestione per eventi tardivi o fuori ordine: i corrieri possono inviare eventi in batch o in ordine strano. Senza riconciliazione e aggiornamenti sicuri, il tuo sistema può oscillare tra stati.
- Mancanza di logica di retry e gestione rate‑limit: le chiamate API falliscono. Se non ritenti in modo sicuro, perdi aggiornamenti. Se ritenti troppo aggressivamente, vieni rate‑limitato.
- Nessun piano operativo di fallback: decidi cosa succede quando l'API è giù. Puoi passare a CSV per un giorno, mettere in pausa le notifiche o segnalare ordini per revisione manuale?
Un esempio semplice: un cliente chiama dicendo che il pacco è “ritornato”. Il tuo sistema mostra solo “NDR”. Se avessi salvato il motivo NDR e la cronologia dei ritentativi, l'agente potrebbe rispondere in un messaggio invece di coinvolgere le operazioni.
Controlli rapidi prima di dichiarare l'integrazione “completa”
Prima di dichiarare successo, testa l'integrazione come la useranno ops e support in un giorno intenso. Un aggiornamento di stato del corriere che arriva in ritardo, o senza i dettagli giusti, crea lo stesso problema di nessun aggiornamento.
Esegui una prova "una spedizione, end‑to‑end" su almeno 10 ordini reali attraverso diversi pincode e tipi di pagamento (prepagato e COD). Scegli un ordine e cronometra quanto tempo serve per rispondere:
- Dove si trova ora?
- Cosa è successo prima?
- Cosa facciamo dopo?
Una checklist rapida che cattura la maggior parte dei gap:
- Prova pickup visibile rapidamente: vedi la conferma di pickup entro la finestra prevista e distingui tra “etichetta creata” e “ritirato fisicamente”.
- L'NDR è azionabile, non solo uno stato: conservi il codice motivo NDR più il passo successivo (reattempt, chiamata o RTO) e puoi modificare quella decisione.
- La timeline è facile da trovare: un agente può recuperare la storia completa di eventi per un AWB in meno di 30 secondi, compresi timestamp e scansioni di località.
- Consegnato corrisponde a soldi e resi: le spedizioni consegnate si riconciliano con i report di rimessa COD e i dati di reso/RTO, così la finanza non rincorre discrepanze a fine settimana.
- C'è un override manuale sicuro: puoi correggere un indirizzo, ripianificare una consegna o riassegnare a un altro corriere quando necessario, e ogni modifica manuale è loggata.
Se costruisci schermate interne per questo, mantieni la prima versione noiosa: una ricerca spedizione, una timeline pulita e due pulsanti (nota manuale e override).
Strumenti come Koder.ai possono aiutarti a prototipare rapidamente quella dashboard operativa e a esportare il codice sorgente quando sei pronto a possederlo. Se vuoi esplorarlo dopo, puoi trovarlo su koder.ai.
Esempio: un team D2C che scala da 20 a 150 ordini/giorno
Un brand D2C medio inizia con circa 20 ordini al giorno, spedendo soprattutto in una metropoli. Usano due partner corrieri. Il processo è semplice: esportano ordini, caricano un CSV due volte al giorno e poi copiano‑incollano i numeri di tracciamento nell'admin dello store.
A 150 ordini/giorno su tre corrieri, quella routine comincia a incrinarsi. I clienti chiedono “dov'è il mio pacco?” e il supporto deve controllare tre portali.
La parte peggiore sono gli NDR. Un tentativo di consegna fallisce, qualcuno del corriere telefona e il follow‑up diventa un thread WhatsApp. I ritentativi vengono persi e un piccolo ritardo si trasforma in cancellazioni e rimborsi.
Passano a un setup che sincronizza gli eventi automaticamente. Ora ogni aggiornamento di spedizione atterra in un unico posto e il team lavora da una sola coda invece che da screenshot di chat.
Cambiamenti quotidiani:
- Gli eventi di tracciamento si sincronizzano automaticamente con l'ordine (pickup, in‑transit, out for delivery, delivered).
- Gli NDR creano una coda visibile con un motivo (problema indirizzo, cliente non raggiungibile, problema di pagamento).
- Promemoria per i ritentativi scattano a orari prefissati, così nulla resta fermo per due giorni.
- Il support vede lo stato più recente senza accedere ai portali dei corrieri.
Non tutto è automatizzato. Continuano a cambiare manualmente i corrieri per PIN edge o problemi di capacità in stagione di picco. Quando un cliente chiama per correggere un indirizzo, un umano lo verifica prima che si attivi un nuovo tentativo.
Prossimi passi: scegli un ambito e costruisci una prima versione semplice
Decidi cosa ti serve nelle prime 2‑4 settimane. Il ritorno più grande solitamente viene da tracciamento affidabile e meno ticket “dov'è il mio ordine?”, non dal costruire ogni funzionalità il primo giorno.
Scegli un ambito iniziale che rispecchi il tuo dolore:
- Solo tracciamento: recupera eventi dal corriere e tieni clienti e support allineati.
- Booking + etichetta: crea spedizioni, genera etichette e memorizza AWB automaticamente.
- Booking + etichetta + pickup: aggiungi pianificazione pickup e conferma pickup, così ops non insegue i driver.
Prima di scrivere codice, blocca il linguaggio che userai internamente. Scrivi la tua checklist eventi (pickup, in‑transit, NDR, delivered) e mappa ogni stato corriere in uno dei tuoi stati. Se salti questo passo, finirai con cinque varianti di “in transit” e regole poco chiare su quando notificare un cliente, aprire un task NDR o segnare un ordine completo.
Rollout a fasi (e mantieni il tutto noioso)
Un rollout sicuro somiglia a: un corriere, una tratta (o un magazzino), poi espandi.
Esegui il nuovo flusso in parallelo con l'upload CSV per un breve periodo così ops può confrontare AWB, etichette e aggiornamenti di tracciamento. Mantieni un fallback semplice: se la chiamata API fallisce, crea un task per il booking manuale invece di bloccare la spedizione.
Costruisci velocemente senza chiuderti le vie d'uscita
Se vuoi muoverti in fretta, prototipa l'integrazione API corriere con Koder.ai: definisci la tabella di memorizzazione eventi, le regole di mapping degli stati e una piccola dashboard operativa (ricerca per ordine o AWB, ultimo evento, azione successiva). Quando si comporta come il tuo team si aspetta, esporta il codice sorgente e induriscilo con retry, logging e controlli di accesso.
Una buona prima versione non è “completa”. È un corriere che funziona end‑to‑end, con eventi puliti, proprietà chiara per l'NDR e una vista giornaliera che dice a ops cosa richiede attenzione ora.
Domande frequenti
When is a CSV upload workflow actually “good enough”?
Gli upload CSV vanno bene quando il volume è basso (ad esempio sotto ~20 ordini/giorno), usi un solo corriere e le eccezioni sono rare. Sono anche un buon fallback quando un'API è giù. Il rischio è che ogni passo mancato (upload in ritardo, template sbagliato, errori di copia‑incolla) si trasformi in follow‑up del supporto e spedizioni ritardate.
What’s the clearest sign we should move from CSV to a courier API?
Un'API corriere di solito ripaga quando fate 50+ ordini/giorno, usate 2+ corrieri o vedete frequenti NDR/rieducati. Ottieni booking e etichette più veloci, tracciamento quasi in tempo reale e meno aggiornamenti manuali. Il costo principale è l'implementazione e la manutenzione continua per gestire le idiosincrasie dei corrieri e il mapping degli stati.
What minimum order data should we standardize before integrating any courier?
Inizia con:
- ID ordine unico (mai riutilizzato)
- Indirizzo di consegna completo (nome, pincode, città, stato, riferimento se lo raccogli)
- Numero di telefono in formato validato
- Dettagli articolo/spedizione (SKU, quantità, peso; dimensioni se disponibili)
- Informazioni di pagamento (prepagato vs COD, importo COD)
Se questi campi sono incoerenti nelle esportazioni, un'API fallirà più velocemente e più spesso del CSV.
What shipping data should we always store back from the courier?
Salva almeno:
- Nome/codice del corriere
- ID spedizione del corriere (se fornito)
- Numero AWB
- Riferimento/metadati dell'etichetta
- Data/finestra di pickup (se richiedi pickup)
Questi diventano le tue “maniglie” per recuperare il tracciamento, riconciliare problemi e rispondere rapidamente al supporto.
Which tracking events matter most to reduce “Where is my order?” tickets?
Traccia una timeline, non un singolo stato:
- Pickup programmato/tentato/confermato (e motivo del fallimento)
- Scansioni in transito (prima scansione, scansioni hub, out for delivery, eccezioni)
- NDR aperto (codice motivo, azione intrapresa, prossimo tentativo/decisione di ritorno)
- Consegnato (ora e eventuali dettagli di prova)
Per ogni evento, conserva timestamp, località, testo stato raw, stato normalizzato, codice motivo e AWB.
How should we handle NDRs without creating more chaos?
Tratta l'NDR come un workflow:
- Cattura il codice motivo NDR e il momento in cui è stato aperto
- Metti la spedizione in una coda interna con un responsabile
- Registra la decisione (chiamare il cliente, correzione indirizzo, reattempt o reso)
- Tieni traccia della prossima data/ora di tentativo e degli esiti
Mantieni un override manuale per cambi d'indirizzo e ri‑tentativi COD rischiosi, così l'automazione non genera ripetizioni dannose.
How do we avoid confusing status mismatches across multiple couriers?
Definisci un piccolo insieme di stati interni (Created, Picked Up, In Transit, Out for Delivery, Delivered, NDR, Returned). Mappa ogni evento del corriere in uno di questi, ma conserva anche il testo raw del corriere separatamente. Non mappare solo per testo esatto—i corrieri variano per zona, tipo di servizio e wording degli hub.
What’s the safest way to migrate from CSV to an API integration?
Fallo in fasi:
- Recupera eventi di tracciamento nel tuo sistema (read‑only)
- Normalizza gli stati e conserva i payload raw per audit
- Aggiungi rilevazione NDR + coda + notifiche (con override manuale)
- Solo dopo, automatizza booking, etichette e richieste di pickup
Mantieni il CSV come fallback per alcune settimane così la spedizione non si blocca.
What reliability features should we build so tracking doesn’t go stale?
Progetta il sistema pensando ai guasti:
- Usa retry con backoff per errori temporanei
- Gestisci i rate limit (rallenta, non spammi richieste)
- Aspettati eventi tardivi o fuori ordine e riconcilia in modo sicuro
- Logga ogni richiesta/risposta e mantieni idempotenza per evitare spedizioni duplicate
- Definisci un piano operativo di fallback (booking manuale o CSV temporaneo)
Questo evita gap di tracciamento silenziosi che generano ticket di supporto.
How do we prevent wrong AWBs, duplicates, and other costly ops mistakes?
Usa salvaguardie sia nel processo sia nei dati:
- Genera e applica una chiave spedizione unica per ordine/collo
- Rendi il booking idempotente così retry non crea una seconda spedizione
- Workflow di stampa/scansione: verifica che l'AWB corrisponda al collo prima della partenza
- Blocca il riuso degli AWB e segnala automaticamente i duplicati
La maggior parte delle spedizioni “perdute” nasce da un disallineamento di ID, non da un problema del corriere.