Magento orders verwijderen

[intro]De Magento webshop is bijna klaar. Nog een paar testen en je kunt aan de slag. Je wilt tijdens het testen ook kijken of het bestelsysteem goed functioneert en dus voer je een paar orders  en klantnamen in om betalingen, verwerking en de afhandeling te testen. Als de webshop straks live staat wil je deze informatie er niet meer bij hebben staan, het vervuild immers de data.[/intro]

Een eigenaardige eigenschap van Magento is echter dat je geen orders kunt verwijderen. Administratief goed verantwoord maar ook erg onpraktisch in de opstartfase. In dit artikel beschrijf ik hoe je toch orders kunt verwijderen.

Waarom je geen orders in Magento kunt verwijderen

Orders verwijderen vanuit de backend is niet mogelijk in Magento. En nee, ze zijn het zeker niet vergeten. Wat is dan de reden dat dit niet kan? Simpel. Financiële partijen (zoals de Belastingdienst) gaan er vanuit dat ordernummers (en factuurnummers) altijd oplopen en dat er geen ruimte zit tussen de ordernummers. Zo wordt fraude voorkomen. Magento gaat er vanuit dat, wanneer een bedrag teruggestort moet worden, er een creditfactuur aangemaakt wordt. Op deze manier zorg je ervoor dat de nummering van de transacties altijd kloppend is.

Waarom je wel een order wilt verwijderen uit Magento

Logisch, de testdata zijn niet meer nodig bij de livegang van de webshop en ze vervuilen de cijfers. Door de testdata beginnen ordernummers niet bij nummer 1 (hierdoor klopt alsnog de reeks van ordernummers niet) en de rapportages worden vervuild. Hierdoor krijg je incorrecte cijfers, tabellen en grafieken. Niet handig dus en daarom moeten de testdata uit Magento.

Hoe je deze data toch kan verwijderen

Plugins
Met behulp van plugins is het mogelijk om orders uit Magento te verwijderen. Wij raden deze plugins aan: Yireo DeleteAnyOrder en Seamless Delete Order.

Het nadeel van deze plugins is dat ze alleen orders uit Magento verwijderen en dat de database voor een deel nog steeds vervuilt blijft en de nummering nog steeds begint waar je met je testorders bent gebleven.

Database
Voor degene die wat meer technische kennis heeft en het aan durft, is er ook een kleine snippet beschikbaar die alle test data verwijdert en de order gerelateerde database tabellen weer reset. Dit is de ‘schoonste’ manier om je testorders te verwijderen. Het is wel een oplossing die enige technische kennis vereist en er zitten ook risico’s aan verbonden. Maak dus wel even een database backup voordat je dit gaat proberen.