Een webshop die geld ontvangt, wordt vroeg of laat uitgeprobeerd. Niet door je klanten, maar door iemand die eens wil kijken hoe ver hij komt. Dus dachten we: laten we dat zelf eerst doen. Een grote bug hunt, voor de winkel openging.
Geen paar klikjes, maar alles. De echte code van het afrekenen, de betalingen, het voorschot, de kortingscodes en het dashboard, losgelaten op een eigen testdatabase. Met Mollie en de mails nagebootst, zodat er niets echt vertrok. Drie testrondes, samen meer dan zestig controles, en veel daarvan zoals een kwaadwillige bezoeker het zou doen.
Wat we vonden
Sommige dingen waren eigenlijk bijna grappig. Bijna.
- Je kon een springkasteel vastzetten tot 2099, voor de prijs van één dag, contant te betalen. Daarna was het voor niemand anders meer te huur. Tot 2099.
- Een levering in Amsterdam werd aanvaard, voor nul euro.
- Je kon een miljard klapstoelen bestellen. Voor 1,2 miljard euro. Overboeken stond aan, dus waarom niet.
- Een naam van 200.000 tekens belandde zo op de factuur. Veel succes met dat te printen.
- Viel de wifi even weg en drukte je opnieuw op bevestigen, dan had je twee bestellingen, met twee bestelbonnen en twee mails.
En dan waren er de minder grappige: gaten waarmee iemand gegevens kon zien die niet van hem waren. Die stonden bovenaan de lijst, en waren als eerste dicht.
Wat we deden
Alles. 31 punten, in vijf blokken, in drie dagen. De belangrijkste regel die eruit kwam: de server rekent alles zelf. De prijs, het aantal dagen, de leveringskost, de zone. Wat de browser meestuurt, telt niet. Klopt iets niet met wat de klant zag, dan wordt er niets geboekt.
Daarnaast: remmen op inloggen, op het raden van kortingscodes en op het afrekenen. Een controle tegen robots. Zwaar versleutelde wachtwoorden. Een account pas na een klik in een mail. En elke tabel in de database afgeschermd.
Waarom we dit vertellen
Omdat het eerlijk is. Elke software heeft gaten. Het verschil is of je ze zelf vindt, of dat iemand anders het voor je doet. Wij vonden ze zelf, en zetten ze dicht voor er één klant was.
Amsterdam blijft trouwens buiten de leveringszone. Sorry, Amsterdam.