Tothom ho ha fet alguna vegada. Una comanda duplicada. Un test que va quedar pendent. Un client que va comprar per error. Obres WooCommerce, esborres la comanda i segueixes amb el teu dia.
Però hi ha una diferència important entre esborrar una comanda de prova i esborrar una comanda 'real' perquè alguna cosa ha fallat. Si ho fas una vegada, és un incident. Si ho fas cada setmana, és un patró. I aquest patró té un nom: falta d'integritat transaccional.
Per què esborrar comandes és perillós
Quan esborres una comanda a WooCommerce, el que fas és eliminar un registre d'una operació comercial. Si aquesta comanda ja ha viatjat a l'ERP — com a factura, com a sortida d'estoc, o com a assentament comptable — acabes de crear una incoherència entre sistemes que és molt difícil de rastrejar.
- Estoc fantasma. L'ERP va restar l'estoc quan va rebre la comanda. Si l'esborres a WooCommerce, l'estoc de la web es recupera, però l'ERP no ho sap. Ara tens xifres diferents.
- Forat comptable. Si es va generar una factura associada a la comanda i després l'esborres, queda una factura sense comanda. O una comanda sense factura. Els dos casos són un problema per auditoría.
- Pèrdua de traçabilitat. Amb VeriFactu, cada operació fiscal ha de ser traçable. Esborrar una comanda que va generar un document fiscal pot ser un incompliment normatiu.
- L'ERP no s'assabenta. La majoria de connectors no propaguen l'esborrament. L'ERP segueix amb la seva versió dels fets. Per sempre.
Què hauries de fer en comptes d'esborrar
La resposta correcta mai és esborrar. És cancel·lar. Una comanda cancel·lada segueix existint com a registre, però el teu sistema pot gestionar la reversió de forma controlada: reposar l'estoc, revertir l'assentament comptable, i emetre un abonament si cal.
El problema és que molts connectors estàndard no saben gestionar cancel·lacions correctament. Quan reben un canvi d'estat a 'cancelled', no fan res. O fan el contrari del que tocaria. Per això moltes empreses acaben optant per esborrar: perquè cancel·lar 'dóna més problemes'.
Això és exactament el símptoma d'una integració que no garanteix la integritat de les operacions.
Les 3 situacions on s'esborra (i no s'hauria de fer)
- Comanda duplicada: 'El client va comprar dues vegades, n'esborrem una'. → Solució real: idempotència. El sistema hauria de detectar i rebutjar el duplicat abans d'arribar a l'ERP.
- Comanda amb dades incorrectes: 'L'adreça estava malament, millor esborrar i fer-ne una de nova'. → Solució real: edició controlada amb propagació als dos sistemes.
- Comanda de test: 'Era una prova i l'hem d'esborrar'. → Solució real: entorn de staging. Si fas proves a producció, estàs afegint risc innecessàriament.
El cost real de la 'solució ràpida'
Cada comanda esborrada és temps invertit en detectar el problema, decidir què fer, i executar la correció manualment. Si ho fas una vegada al mes, sembla poc. Però si ho multipliques per 12 mesos, per 3 persones que intervenen (ecommerce manager, comptable, magatzem), i per l'impacte en dades corporatives, el cost real és molt més alt del que sembla.
I el pitjor: cada esborrament amaga el problema real. No el soluciona. El posposa fins que apareix amb més força — normalment durant un pic de vendes o una auditoria.
Probablement no tens diversos problemes
Si has llegat fins aquí probablement ja ho has vist: no és un fallo concret, és un patró. Quan l'ecommerce i l'ERP no comparteixen una única font de veritat, els problemes apareixen en llocs distints cada vegada.
WooCommerce i el teu ERP creuen ser la font de veritat al mateix temps. Quan ambdues conviuen sense control, apareixen incoherències. No és un bug puntual. És un problema d'integritat transaccional.