AhaSend

AhaSend voor Drupal 2.0

Mark Kraakman
Mark Kraakman
Productupdate
Op deze pagina

Stuurt je Drupal-site wachtwoordresets, orderbevestigingen, Webform-inzendingen of accountmeldingen? Dan wil je twee dingen van je e-mail: dat hij aankomt, en dat je kunt laten zien dát hij aankwam. Versie 2.0 van de AhaSend-module is daarvoor gebouwd. Het is een volledige herbouw op AhaSend API v2, hij werkt als transport voor de Symfony Mailer-module, en hij brengt de drie dingen mee waar steeds om gevraagd werd: een sandbox-modus, ondertekende webhooks en een berichtenlog in Drupal zelf.

Wat de module doet

De module stuurt alle e-mail van Drupal via AhaSend. Omdat hij een transport is voor Symfony Mailer, gaat elke mail die Drupal maakt dezelfde kant op: core-mail, Webform, Commerce, contactformulieren, alles wat het mailsysteem gebruikt. Geen tweede route om te onderhouden en niets aan te passen in je eigen modules.

Symfony Mailer 1.x en 2.x (Mailer Plus) worden allebei ondersteund. HTML en platte tekst, met To, Cc, Bcc, Reply-To, bijlagen en inline afbeeldingen. Werkt op Drupal 10.6 en 11.

Wat is er nieuw in 2.0

API v2

De module praat nu via API v2 met AhaSend. Concreet: je configureert hem met een API-sleutel en je Account ID, allebei te vinden onder API credentials in het AhaSend-dashboard. API v2 is dezelfde API als achter onze SDK's en de CLI, dus wat je in de Drupal-module ziet klopt met wat je overal anders ziet.

Sandbox-modus

In sandbox-modus draai je het hele verzendproces zonder dat er iets bezorgd wordt. AhaSend accepteert en verwerkt de berichten, maar er gaat geen mail de deur uit. Handig op staging, tijdens een migratie, of als je wilt checken dat een Webform echt een mail afvuurt voordat echte mensen hem krijgen. Zet hem uit in de transportinstellingen als je live gaat. Lees er hier meer over: https://ahasend.com/docs/send-api/sandbox

Ondertekende webhooks

AhaSend kan je Drupal-site aanroepen zodra er iets met een bericht gebeurt: afgeleverd, gebounced, geopend, geklikt, onderdrukt en meer. Het webhook-endpoint in de module controleert bij elk verzoek de handtekening, zodat alleen events die echt van AhaSend komen worden geaccepteerd. Die events vullen het berichtenlog hieronder, en je kunt er in je eigen code op reageren, bijvoorbeeld bij een bounce of een klik.

Berichtenlog

Onder Rapporten vind je nu een berichtenlog: elke mail die de site via AhaSend heeft verstuurd, met de volledige bezorgtijdlijn. Zegt iemand "ik heb die mail nooit gekregen", dan open je het log, zoek je het bericht op en zie je of hij is afgeleverd, uitgesteld of gebounced, en waarom. Je hoeft niet meer naar het AhaSend-dashboard om een supportvraag over je eigen site te beantwoorden.

Aan de slag

Installeer de module met Composer:

composer require 'drupal/ahasend:^2.0@alpha'

Zet hem aan, kies AhaSend als transport in Symfony Mailer en vul je API-sleutel en Account ID in. Je hebt een AhaSend-account nodig met een geverifieerd verzenddomein. Het gratis abonnement bevat 1.000 e-mails per maand.

Voor webhooks maak je in het AhaSend-dashboard een webhook aan die naar je site wijst en plak je het signing secret in de module-instellingen, zodat Drupal de binnenkomende events kan controleren.

Upgraden vanaf 1.x

Versie 1.x wordt niet meer ondersteund en er is geen upgradepad. Verwijder 1.x eerst, installeer daarna 2.0 en stel hem opnieuw in. Het zijn maar een paar instellingen, dus dat is in een paar minuten gedaan.

Waarom Drupal-mail via AhaSend

AhaSend is een Europese provider voor transactionele e-mail. Alle infrastructuur draait in de EER, er is een verwerkersovereenkomst die je kunt laten ondertekenen, en het instellen van je afzender werkt zoals bij elke andere integratie: domein één keer verifiëren met DKIM, SPF en DMARC en klaar. Afleverbaarheid is waar wij onze dagen mee vullen, zodat jouw reset-mails in de inbox landen en niet in de spam.

De module wordt onderhouden door het AhaSend-team op drupal.org. Bugs en wensen kun je kwijt in de issue queue.

Begin gratis met AhaSend →