# Clerk + Brew

Start automatiseringen in Brew vanuit webhookevents van Clerk voor aanmeldingen van gebruikers, wijzigingen in organisaties, betaalde abonnementen en inschrijvingen op de wachtlijst.

Canonieke URL: https://brew.new/nl/browse/integrations/clerk

- Richting: Inkomend
- Koppelmethode: Webhookgeheim
- Eventtriggers voor authenticatie

## Live mogelijkheden

- **Eventtriggers**: Start automatiseringen in Brew vanuit 13 webhookevents van Clerk in de categorieën gebruiker, organisatie, facturering en wachtlijst.

## Maak van Clerk-events nuttige e-mails

Koppel Clerk om merkconforme e-mails te versturen wanneer iemand zich aanmeldt, lid wordt van een organisatie, een abonnement via Clerk Billing afsluit of zich inschrijft op je wachtlijst. Clerk ondertekent elke webhook, en Brew maakt van 13 eventtypen triggers voor automatiseringen.

Clerk blijft verantwoordelijk voor inloggen, organisaties en facturering. Brew luistert alleen naar events en kan geen gebruikers wijzigen, geen organisaties aanmaken en geen abonnementskosten in rekening brengen.


## Wat je kunt bouwen

- Welkomstmails: Clerk verstuurt user.created wanneer een nieuwe gebruiker zich aanmeldt. Naast de naam zijn ook username, imageUrl en lastSignInAt beschikbaar.
- Teamonboarding: organizationMembership.created bevat organizationName, organizationSlug en roleName van het nieuwe lid, of dat nu een uitnodiging heeft geaccepteerd of direct is toegevoegd. Bij een geaccepteerde uitnodiging verstuurt Clerk ook organizationInvitation.accepted, dus kies één trigger om twee welkomstmails te voorkomen.
- Opvolging van uitnodigingen: organizationInvitation.created, organizationInvitation.accepted en organizationInvitation.revoked gaan naar het uitgenodigde adres en bevatten roleName, status en expiresAt. Ze bevatten niet de naam van de organisatie, niet wie er heeft uitgenodigd en geen link om de uitnodiging te accepteren.
- Welkomstmails voor abonnees: subscription.created bevat planName, planSlug, planAmount, currency, periodStart en periodEnd.
- Herinneringen aan het einde van de proefperiode: Clerk verstuurt subscriptionItem.freeTrialEnding kort voordat een gratis proefperiode via Clerk Billing overgaat in een betaald abonnement, met planName, planAmount, currency en periodEnd.
- Meldingen over achterstallige betalingen: Clerk verstuurt subscriptionItem.pastDue wanneer een betaling voor een abonnementsitem uitblijft. Link naar je eigen factureringspagina.
- Opvolging na een opzegging of een afgebroken proefperiode: Clerk verstuurt subscriptionItem.canceled wanneer een item wordt opgezegd. subscriptionItem.abandoned betekent meestal dat een proefperiode is afgelopen zonder dat er een betaalmethode was vastgelegd.
- Bevestigingen voor de wachtlijst: Clerk verstuurt waitlistEntry.created zodra er een e-mailadres op je wachtlijst in Clerk komt.

## Organisatie-events hebben een bekende aanmaker nodig

organization.created bevat geen e-mailadres. Brew zoekt de gebruikers-ID van de aanmaker op tussen de identiteiten die het al eerder in Clerk-events op de huidige koppeling heeft gezien. Vindt Brew een echt e-mailadres, dan wordt het event verwerkt. Zo niet, dan legt Brew het event vast met een onopgeloste ontvanger, zonder een contact aan te maken of een automatisering te starten.

Abonneer je ook op user.created, zodat Brew de adressen van aanmakers leert kennen. Moet een e-mail iemand elke keer bereiken, gebruik dan organizationMembership.created; dat event bevat het adres van het lid.


## Clerk instellen in Brew

- Open Integraties, kies Clerk en klik op Webhook-URL genereren.
- Open in het Clerk Dashboard Webhooks en voeg een endpoint toe met de URL van Brew.
- Abonneer het endpoint op de 13 ondersteunde events in de groepen user, organization, organizationInvitation, organizationMembership, paymentAttempt, subscription, subscriptionItem en waitlistEntry, en maak het endpoint daarna aan.
- Toon het ondertekeningsgeheim van het endpoint (het begint met whsec_), plak het in Brew en klik op Koppelen. Brew verifieert elke levering volgens de specificatie van Standard Webhooks (Svix).
- Open in Clerk het tabblad Testing van het endpoint, kies user.created en klik op Send Example. De status in Brew verandert dan van “Wacht op testevent” in “Gekoppeld”. Zo’n voorbeeld verifieert alleen de webhook. Brew voegt geen contact toe en start geen automatisering.
- Bij het koppelen maakt Brew triggers aan voor alle 13 events. Er is geen schakelaar om events in of uit te schakelen.
- Maak een automatisering aan, selecteer het bijbehorende Clerk-event en verstuur een test zolang de automatisering nog de status Concept heeft. Alleen automatiseringen met de status Live worden uitgevoerd wanneer er een overeenkomend event binnenkomt.

## Ondersteunde Clerk-events

Brew ondersteunt de volgende 13 eventtypen:

- user.created
- organization.created
- organizationInvitation.created
- organizationInvitation.accepted
- organizationInvitation.revoked
- organizationMembership.created
- paymentAttempt.created
- subscription.created
- subscriptionItem.freeTrialEnding
- subscriptionItem.pastDue
- subscriptionItem.canceled
- subscriptionItem.abandoned
- waitlistEntry.created

## Contactsynchronisatie en personalisatie

Elk geverifieerd event met een echt e-mailadres maakt een contact in Brew aan of werkt het contact met dat e-mailadres bij, ongeacht of een automatisering het event gebruikt. Als die gegevens er zijn, vult Brew de voor- en achternaam en clerk_user_id.

user.created vult daarnaast clerk_username, clerk_image_url, clerk_signed_up_at en clerk_last_sign_in_at. Events over uitnodigingen en lidmaatschappen vullen clerk_organization_id, clerk_org_role en clerk_org_role_name. Uitnodigingen voegen daar clerk_org_invitation_status aan toe, lidmaatschappen clerk_organization_name en clerk_organization_slug.

Factureringsevents vullen clerk_subscription_status en clerk_plan_name, en sommige ook clerk_plan_slug, clerk_subscription_period_end of clerk_is_trialing. paymentAttempt.created vult clerk_last_payment_attempt_status en clerk_last_payment_attempt_at. waitlistEntry.created vult clerk_waitlist_status.

Gebruik voor personalisatietags het gedeclareerde payloadschema van het gekozen event. Elk event bevat email, firstName, lastName en createdAt. Andere velden, zoals planName, planAmount, roleName, organizationName en grandTotalFormatted, hangen af van het event. planAmount en grandTotalAmount staan in de kleinste munteenheid, dus 2000 staat voor $ 20,00 in USD. Tijdstempels zijn Unix-tijd in seconden.

ID’s van Clerk-objecten, zoals gebruikers-, organisatie- en abonnements-ID’s, zijn geen personalisatietags. De gebruikers-ID komt als clerk_user_id op het contact terecht.

Een Clerk-account betekent nog geen toestemming voor marketingmails. Leg toestemming vast bij de aanmelding en controleer die vóór promotionele verzendingen.


## Kan paymentAttempt.created een e-mail over een mislukte betaling versturen?

Niet betrouwbaar. Brew ontvangt alleen paymentAttempt.created, geen latere updates van die betaalpoging. Het veld status kan pending, paid of failed bevatten, maar een betaling die mislukt nadat de poging is aangemaakt, komt bij Brew binnen als niet-ondersteund event. Gebruik voor gemiste betalingen subscriptionItem.pastDue. Voor een totaalbedrag in de tekst van je e-mail bevat grandTotalFormatted een vooraf opgemaakte waarde, zoals $22.00.


## Waarom verschijnt er een event zonder dat er een e-mail wordt verstuurd?

Een event ontvangen en een e-mail versturen zijn aparte stappen. Controleer of een overeenkomende automatisering op Live staat en bekijk daarna de filters, de uitvoeringsgeschiedenis, of de ontvanger in aanmerking komt en of het verzenddomein in orde is. Een levering via Send Example verifieert de webhook, maar start nooit een automatisering, en een event organization.created zonder bekende aanmaker wordt vastgelegd als onopgelost.


## Limieten en problemen oplossen

- Brew kan geen gebruikers, organisaties of abonnementen in Clerk aanmaken of wijzigen.
- Alleen de 13 genoemde events starten automatiseringen. Andere Clerk-events, zoals updates en verwijderingen van gebruikers, worden vastgelegd als niet ondersteund.
- Meldt Clerk bij elke levering een 401, dan komt het ondertekeningsgeheim in Brew niet overeen met het geheim van het endpoint in Clerk. Toon het huidige geheim in Clerk en koppel opnieuw met dat geheim.
- Brew vereist dat het ondertekeningsgeheim begint met whsec_ en minstens 24 tekens lang is.
- Controleer de toestemming en het doel van elke e-mail. Clerk-gebruikers synchroniseren geeft je nog geen toestemming voor promotionele verzendingen.

## Bronnen en handleidingen

- [Handleiding voor Clerk](https://docs.brew.new/integrations/import/clerk)
- [Een automatisering bouwen](https://docs.brew.new/create-emails/build-an-automation)
- [Personalisatietags](https://docs.brew.new/create-emails/merge-tags)
- [Wat je met Brew kunt versturen](https://docs.brew.new/get-started/what-you-can-send)
- [Overzicht van webhooks in Clerk](https://clerk.com/docs/guides/development/webhooks/overview)

## Gerelateerd

- [Alle integraties](https://brew.new/nl/browse/integrations.md)
- [Account aanmaken](https://brew.new/nl/sign-up.md)
- Website: https://brew.new
