Dubbel klikken op verzenden: voorkom dubbele aanvragen
7 november 2026 · 6 min leestijd · Marketing Scan
In dit artikel
Waar een dubbele aanvraag vandaan komt
Een dubbele aanvraag heeft meestal één van vier oorzaken. Ten eerste een tweede klik terwijl de eerste nog wordt verwerkt. Ten tweede de Enter-toets, die het formulier ook verstuurt, vlak na een klik. Ten derde het herladen van de pagina na verzending, waarbij de browser kan voorstellen de gegevens opnieuw te versturen. Ten vierde een automatische herhaling in je eigen keten, bijvoorbeeld een koppeling die een mislukte levering opnieuw probeert.
Het gemeenschappelijke is vaak onduidelijke feedback. De tutorial over toegankelijke formulieren raadt aan gebruikers te laten weten dat een taak gelukt is, of wat er misging. Als je formulier traag reageert en niets toont, ligt een tweede klik voor de hand. De bron zegt niets over dubbele verzendingen zelf. Het is een inzicht dat je zelf moet toetsen op je eigen formulier.
Testomgeving en markeringen voorbereiden
Voor je test bepaal je waar een verzonden aanvraag overal terechtkomt: een database, een mailbox, een CRM, een melding in een chatkanaal, een bevestigingsmail naar de klant. Elk van die plaatsen kan los van de andere dubbel gaan. Een tweede klik kan bijvoorbeeld één record maar twee e-mails opleveren, of omgekeerd.
Test bij voorkeur in een aparte testomgeving of met een testbestemming, zodat geen echte klant of betaling geraakt wordt. Let erop dat een timeout of foutmelding kan optreden nadat de aanvraag al succesvol is opgeslagen; een bezoeker die dan opnieuw verstuurt, maakt een dubbele aanvraag. Spreek met je team af dat de komende testronde geen echte opvolging nodig heeft. Gebruik een testadres dat je zelf beheert en geef elke poging een unieke markering in het berichtveld, zoals 'TEST-A1', 'TEST-A2' en zo verder. Zonder markering weet je achteraf niet welke record bij welke poging hoort. De cursus over formulieren van web.dev bevat een onderdeel over het testen en analyseren van formulieren. Lees dat als aanvulling, want de exacte aanpak hangt af van je technologie.
De testprocedure in zes stappen
- Vul het formulier in met markering A1 en klik één keer. Noteer wat je ziet en wat je ontvangt. Dit is je referentie.
- Herhaal met markering A2 en klik zo snel mogelijk twee keer op de knop.
- Herhaal met A3 en druk twee keer op Enter in een tekstveld.
- Verstuur A4 normaal en herlaad dan de bevestigingspagina. Merk op of de browser een waarschuwing over opnieuw verzenden toont en wat er gebeurt als je die bevestigt.
- Verstuur A5 en ga met de terugknop naar het formulier. Klik opnieuw op verzenden zonder iets te wijzigen.
- Herhaal A2 met een vertraagde verbinding, bijvoorbeeld via de netwerkbeperking in de ontwikkelaarstools van je browser, om een trage server na te bootsen.
Bewaar per poging een korte notitie: wat de bezoeker zag en op welk moment. Telkens wanneer je in je systemen een markering twee keer vindt, heb je een reproduceerbaar probleem.
Bevestigingen vergelijken met unieke records
Daarna vergelijk je wat de bezoeker te zien kreeg met wat er in je systemen staat. Gebruik dit schema.
| Test | Verwacht bij een goed beveiligd formulier | Wat een afwijking aanwijst |
|---|---|---|
| A1 enkele klik | Eén bevestiging, één record per bestemming | Het probleem zit waarschijnlijk niet bij de gebruiker maar in je keten; controleer dit verder |
| A2 dubbele klik | Eén record, één bevestiging | Geen bescherming tegen tweede klik |
| A3 dubbele Enter | Eén record | Enter wordt niet door dezelfde logica afgehandeld als de knop |
| A4 herladen | Geen nieuw record | Bevestigingspagina is rechtstreeks gekoppeld aan de verzending |
| A5 terug en opnieuw | Beslissing nodig: blokkeren of begrijpelijk afhandelen | Geen herkenning van een reeds verzonden formulier |
Tel per markering de bevestigingen (scherm en e-mail) en de records. Verschillen tussen die twee tellingen wijzen op een bestemming die los van de andere dubbel verwerkt.
Beslisregels voor herstel
Begin bij de server. Volgens de uitleg over validatie van formulieren bij MDN is validatie aan de clientzijde een eerste controle voor het gebruiksgemak, maar geen uitputtende beveiliging, omdat ze eenvoudig te omzeilen is. Hetzelfde geldt voor een knop die zichzelf uitschakelt: handig voor de bezoeker, maar geen garantie dat de server maar één keer verwerkt.
- Test A2 of A3 dubbel? Laat je ontwikkelaar of leverancier onderzoeken of elke weergave van het formulier een eenmalige verzendsleutel kan krijgen, zodat de server een tweede aanvraag met dezelfde sleutel herkent.
- Test A4 dubbel? Overweeg dat het formulier na verzending doorverwijst naar een aparte bevestigingspagina, zodat herladen niets opnieuw verstuurt.
- Alleen de e-mail is dubbel? Zoek in de koppeling die de mail opstelt, niet in het formulier.
- Dubbele records staan al in je CRM? Voeg niet blind samen. Vergelijk inhoud, tijdstip en contactgegevens, bewaar het meest volledige record (vaak, maar niet altijd het oudste) en noteer wat je schrapte.
Een bezoeker die bewust twee verschillende aanvragen doet met hetzelfde e-mailadres, mag niet verdwijnen. Maak je regel dus niet te breed.
Controle na wijziging en grenzen
Voer na elke aanpassing dezelfde zes testen opnieuw uit met nieuwe markeringen en vergelijk opnieuw bevestigingen en records. Test ook op een telefoon en op een ander browsertype, omdat het gedrag van knoppen en toetsen kan verschillen. Houd de dagen daarna je echte aanvragen in het oog op onverwachte duplicaten, maar baseer je conclusie op wat je zelf meet, niet op een verwachte uitkomst.
Deze gids bewijst niets over jouw specifieke technologie. De bronnen leggen basisprincipes uit over validatie, feedback en testen, geen ingebouwde oplossing tegen dubbel verzenden. Wil je eerst zien welke openbare signalen je website over formulieren en opvolging toont, bekijk ze dan via Marketing Scan. Een publieke scan kan niet nagaan of je formulier dubbele verzendingen tegenhoudt. Daarvoor heb je je eigen test nodig.
Veelgestelde vragen.
Volstaat het om de verzendknop uit te schakelen na de eerste klik?
Het helpt, maar het bewijst niet dat de server maar één keer verwerkt. De Enter-toets, een herlaadactie of een automatische herhaling in je keten kunnen nog steeds een tweede aanvraag opleveren. Test daarom ook met A3, A4 en A5 en controleer de records.
Hoe weet ik of twee records echt dubbel zijn?
Vergelijk tijdstip, volledige inhoud en contactgegevens. Identieke inhoud met enkele seconden verschil wijst op een dubbele verzending. Zelfde e-mailadres met een andere vraag kan een legitieme tweede aanvraag zijn.
Waarom krijg ik twee e-mails maar maar één record?
Dan zit de dubbele verwerking waarschijnlijk in de koppeling die de mail opstelt of verstuurt, niet in de opslag. Controleer of de mail door een tweede trigger of een automatische herhaling wordt gestart. Vergelijk de tijdstippen van beide e-mails met het record.
Moet ik mijn bezoekers waarschuwen bij herladen na verzending?
Dat is een keuze per formulier. Een duidelijke bevestigingspagina die niet opnieuw verstuurt bij herladen voorkomt het probleem beter dan een waarschuwing. Test na je aanpassing of herladen daadwerkelijk geen nieuw record geeft.
Bronnen bij dit artikel
Hoe werkt een marketing scan? Meetmethode en grenzen
Van advies naar actie voor jouw website
Maak een gratis account voor één website. Controleer zes kenmerken van je homepage en bekijk maximaal drie bevindingen.
Herhaal de check handmatig één keer per zeven dagen. Voor volledige audits en automatische opvolging is uitgebreide toegang nodig.
Maak je gratis account