Sin impuesto Con impuesto

Archiviare gli ordini vecchi in PrestaShop: un back office veloce senza perdere fatture

Con gli anni le tabelle degli ordini crescono e il back office si trascina. Cancellare non è un'opzione, archiviare sì. Spieghiamo cosa si sposta, cosa va conservato e quali precauzioni evitano di rompere la numerazione.

Equipo Rekire
Updated: 11/10/2026 41
Archiviare gli ordini vecchi in PrestaShop: un back office veloce senza perdere fatture
Share:

Apri «Ordini» nel back office e ci mette un po'. Filtri per cliente e ci mette ancora di più. Il negozio vende da anni, e ogni ordine ha lasciato righe in una ventina di tabelle: righe d'ordine, storico degli stati, pagamenti, fatture, spedizioni, messaggi, il carrello da cui è nato. Nessuna di queste righe se ne va da sola.

La tentazione è cancellare gli ordini vecchi. Non farlo: hai obblighi di conservazione, e un ordine cancellato a mano in PrestaShop lascia righe orfane in altre tabelle. Quello che puoi fare è archiviare.

Perché diventa lento

L'elenco degli ordini di PrestaShop non interroga una sola tabella. Per disegnare ogni riga unisce l'ordine con il cliente, l'indirizzo, il paese, lo stato attuale e la valuta, e per filtrare e ordinare deve scorrere molte righe. Con decine o centinaia di migliaia di ordini, ogni ricerca lavora su tutto lo storico anche se tu vuoi vedere solo quelli di questa settimana.

Ne risentono anche altre schermate: la scheda del cliente, le statistiche, alcuni moduli che calcolano dati sullo storico degli ordini e le esportazioni.

Prima di archiviare, misura. Non tutta la lentezza del back office viene dagli ordini. Tabelle di connessioni, visitatori o carrelli abbandonati che nessuno pulisce, indici mancanti o un hosting scarso di risorse danno sintomi simili. Se il problema è lì, archiviare gli ordini non lo risolverà.

Archiviare non è cancellare

Archiviare significa togliere gli ordini vecchi dalle tabelle attive e conservarli completi in altre tabelle, da cui si possono consultare e, se serve, ripristinare. La differenza rispetto a cancellare è totale:

  • L'ordine continua a esistere con tutti i suoi dati: righe, importi, imposte, fatture, note di credito, pagamenti e messaggi.
  • Puoi cercarlo e vederlo quando lo chiedono un cliente o il tuo commercialista.
  • Puoi ripristinarlo con lo stesso numero se torna a servire nell'operatività quotidiana.

La normativa commerciale e quella fiscale ti obbligano a conservare fatture e documentazione per anni. Archiviare è compatibile con questo; cancellare no.

Cosa deve viaggiare con ogni ordine

Un ordine in PrestaShop non è una riga. Se sposti solo la tabella degli ordini, il resto resta appeso. Come minimo devono andare insieme:

  • L'ordine e le sue righe.
  • Lo storico degli stati.
  • Fatture, documenti di trasporto, pagamenti e note di credito.
  • I resi e le loro righe.
  • Corriere e tracciamento.
  • Il carrello da cui è nato e i suoi prodotti.
  • I messaggi dell'ordine.

E deve avvenire come una transazione: o si sposta l'ordine intero, o non si sposta nulla. Un'archiviazione che fallisce a metà e lascia mezzo ordine da ogni parte è peggio che non archiviare.

Le trappole della numerazione

Questo è il dettaglio che dà più problemi. PrestaShop calcola il numero successivo di ordine, di fattura e di documento di trasporto a partire da quelli presenti nelle tabelle. Se archivi proprio l'ordine che ha l'ultimo numero di fattura, PrestaShop può «non vederlo» e ripetere il numero nella fattura successiva. Una fattura duplicata è un problema fiscale serio.

Regole prudenti:

  1. Non archiviare mai l'ordine che ha l'ultimo numero di ordine, di fattura o di documento di trasporto.
  2. Impedire che un ordine nuovo riceva il numero di uno archiviato.
  3. Se usi serie o numerazioni proprie con un altro modulo, verifica su una copia come calcola il numero successivo prima di archiviare.

Quali ordini archiviare

Il criterio abituale è l'anzianità, ma conviene affinarlo:

  • Anzianità minima. Sei mesi o un anno sono un punto di partenza ragionevole; dipende dal tuo termine per i resi e dalla garanzia.
  • Stati. Solo ordini chiusi: consegnati, annullati, rimborsati. Un ordine in attesa di pagamento o in fase di reso non si archivia.
  • Movimenti recenti. Se un ordine vecchio ha avuto da poco un cambio di stato (una nota di credito tardiva, una garanzia), meglio aspettare.
  • Ordini divisi. Se un carrello ha generato più ordini, si archiviano tutti insieme o nessuno.

Cosa cambia per te e per il cliente

Un ordine archiviato esce dalle tabelle del core, quindi:

  • Smette di contare nelle statistiche del core di PrestaShop.
  • Non compare nello storico di «Il mio account» del cliente finché non lo ripristini; conviene avvisarlo con un testo che i suoi ordini vecchi sono archiviati e che può richiederli.
  • I moduli che calcolano dati sullo storico (fidelizzazione, segmenti, raccomandazioni) smetteranno di vederlo. Controlla quali usi.

Come farlo con criterio

  1. Backup completo del database prima della prima archiviazione.
  2. Simulazione: conta i candidati e le righe che verrebbero spostate, senza spostare nulla.
  3. Lotti piccoli all'inizio, e verifica l'elenco dell'archivio e un ripristino.
  4. Automatizza con un'attività pianificata e un report via email di ogni esecuzione.
  5. Lascia bloccata la cancellazione definitiva. Se un giorno si cancella qualcosa dall'archivio, che richieda di sbloccarla di proposito e un permesso specifico.

Una nota sulle versioni: se il tuo negozio è ancora su una 1.7 delle prime o su una 1.6, l'archiviazione alleggerisce il back office, ma non sostituisce l'aggiornamento. PrestaShop 8 e 9 con un PHP attuale rendono meglio anche sulle stesse query. Se devi migrare, archiviare prima riduce il volume di dati da trasferire e da provare.

Domande frequenti

Posso ancora emettere una nota di credito su un ordine archiviato? Non direttamente: prima lo ripristini, emetti la nota di credito normalmente e, se vuoi, torna nell'archivio al passaggio successivo. Per questo conviene che l'anzianità minima superi il tuo termine per i resi e la garanzia.

Archiviare libera spazio su disco? Sposta righe da alcune tabelle ad altre, quindi la dimensione totale del database non cala. Quello che migliora è la velocità delle query sulle tabelle attive. Ottimizzare le tabelle dopo ogni esecuzione aiuta a recuperare parte dello spazio lasciato dai vuoti.

E il mio commercialista può ancora chiedere fatture vecchie? Sì. Le fatture restano conservate con l'ordine archiviato e si possono consultare o ripristinare quando servono.

Come risolverlo in PrestaShop

RKR Order Archive toglie gli ordini vecchi dalle tabelle attive e li conserva completi, con le loro 20 tabelle (righe, storico, fatture, pagamenti, resi, note di credito, carrello e messaggi), in un archivio con elenco, ricerca e filtri. Scegli anzianità, stati, negozio, importo minimo e dimensione di ogni passaggio, e puoi escludere gli ordini con movimenti recenti. Include modalità simulazione, cron con token proprio, report via email e ripristino esatto con lo stesso numero. Ogni operazione è una transazione, non archivia l'ordine con l'ultimo numero di fattura, documento di trasporto od ordine, aspetta che gli ordini divisi si possano archiviare insieme e tiene bloccata per impostazione predefinita la cancellazione definitiva.

Caricamento...
Consenso sui cookie
Torna all'inizio