· 4 min · TextMeFlow Team

WhatsApp-bevestiging versturen bij een WordPress-contactformulier

Een bezoeker vult een contactformulier in op je WordPress-site en krijgt daarna... een automatische e-mail, die in het spamfilter belandt of gewoon nooit gelezen wordt. Ondertussen weet je zelf ook pas dat er een nieuwe aanvraag is als je toevallig je mailbox opent. Een WhatsApp-bevestiging — naar de bezoeker, naar jezelf, of allebei — wordt wél binnen enkele seconden gelezen. Dit artikel laat zien hoe je dat aan een WordPress-formulier koppelt, zonder dat je iets aan Meta hoeft aan te vragen of een aparte app hoeft te bouwen.

Het principe: formulier-plugin roept jouw code aan, jouw code roept TextMeFlow aan

De meeste WordPress-formulierplugins (Contact Form 7, WPForms, Gravity Forms) bieden een "action hook" die afgaat zodra een formulier succesvol wordt ingediend. Jij hangt daar één functie aan die een WhatsApp-bericht verstuurt via de TextMeFlow API — een simpele POST-request, net als vanuit gewone PHP-code. Er is geen Meta Business-verificatie nodig: je koppelt je WhatsApp-nummer via een QR-scan en bent klaar.

Contact Form 7: wpcf7_mail_sent-hook

Contact Form 7 vuurt de hook wpcf7_mail_sent af nadat een formulier succesvol is verwerkt. Voeg dit toe aan het functions.php-bestand van je (child-)theme of aan een klein custom plugin-bestand:

add_action('wpcf7_mail_sent', function ($contact_form) {
    $submission = WPCF7_Submission::get_instance();
    if (!$submission) {
        return;
    }
    $data = $submission->get_posted_data();

    $phone = $data['tel-eigenaar'] ?? '+32472932208'; // jouw eigen nummer
    $naam  = $data['your-name'] ?? 'iemand';

    wp_remote_post('https://api.textmeflow.eu/v1/messages', [
        'headers' => [
            'Content-Type'  => 'application/json',
            'Authorization' => 'Bearer ' . getenv('TEXTMEFLOW_API_KEY'),
        ],
        'body' => json_encode([
            'to'   => $phone,
            'text' => "Nieuwe contactaanvraag van {$naam} via de website.",
        ]),
        'timeout' => 5,
    ]);
});

Gebruik wp_remote_post() in plaats van curl of file_get_contents() — dat is de WordPress-standaard, werkt met de ingebouwde HTTP-laag en respecteert eventuele proxy-instellingen van de hosting. Zet de API-key in een omgevingsvariabele of wp-config.php-constante, nooit hardcoded in een bestand dat in git terechtkomt.

Gravity Forms en WPForms: vergelijkbaar patroon

Gravity Forms heeft de hook gform_after_submission, WPForms heeft wpforms_process_complete — beide geven je de ingevulde velden als array mee, op dezelfde manier als het Contact Form 7-voorbeeld hierboven. Het enige dat verandert is hoe je het telefoonnummer en de naam uit de aangeleverde data haalt; de wp_remote_post()-call naar /v1/messages blijft identiek.

Stuur naar de bezoeker, niet alleen naar jezelf

Een interne melding is nuttig, maar een directe bevestiging naar de bezoeker zelf ("Bedankt voor je aanvraag, we nemen binnen 1 werkdag contact op") verhoogt het vertrouwen en verlaagt het aantal "heb je mijn bericht wel ontvangen?"-telefoontjes. Voorwaarde: de bezoeker moet zelf een geldig, door hemzelf ingevoerd telefoonnummer hebben opgegeven in het formulier — stuur nooit ongevraagd naar een nummer dat je uit een andere bron hebt.

Let op het formaat: TextMeFlow accepteert alleen E.164 (+32472932208), geen 0472932208 of nummers met spaties of streepjes. Een simpele normalisatie vóór de API-call voorkomt een hoop mislukte sends:

function normaliseer_telefoonnummer(string $nummer): string {
    $nummer = preg_replace('/[^0-9+]/', '', $nummer);
    if (str_starts_with($nummer, '0')) {
        $nummer = '+32' . substr($nummer, 1); // pas landcode aan naar je markt
    }
    return $nummer;
}

Wat als het formulier veel verkeer krijgt

Bij een contactformulier dat sporadisch wordt ingevuld is er niets bijzonders aan de hand. Verwacht je pieken — bijvoorbeeld na een advertentiecampagne — hou dan rekening met de rate limits van je plan: het Free-plan staat 20 berichten per uur toe, Starter 60. Bekijk je huidige limieten en verbruik in /docs/api en overweeg een upgrade als een formulier structureel meer volume genereert dan je huidige plan toelaat.

Aan de slag

Je hebt geen Meta Business-account, geen goedkeuringsproces en geen aparte server nodig — alleen een WordPress-site, een formulierplugin die je al gebruikt, en een TextMeFlow-account. Test de koppeling eerst op je eigen telefoonnummer voor je hem live zet voor bezoekers.

Start gratis op TextMeFlow → — 50 berichten per maand, geen verloopdatum, geen creditcard nodig.

Zelf WhatsApp-berichten versturen via API?

Gratis voor altijd tot 50 berichten/maand. QR scannen en binnen 5 minuten verstuur je je eerste bericht.

Gratis voor altijd