Ga naar hoofdinhoud

Stripe-webhook instellen

Als je Stripe hebt verbonden via Connect with Stripe, leidt deze pagina je door de ene handmatige stap die Stripe daarna vereist: zelf een webhook-endpoint aanmaken in je eigen Stripe-dashboard, scherm voor scherm.


Voordat je begint​

  • Dit geldt alleen voor Connect with Stripe. Als je Stripe hebt verbonden door zelf je Geheime sleutel en Publiceerbare sleutel in te voeren (zie Betalingen — Stripe verbinden), registreert Agon de webhook automatisch voor je en heb je deze pagina niet nodig.
  • Waarom je dit zelf moet doen: Stripe staat een via OAuth ("Connect") verbonden account niet toe om automatisch webhook-endpoints te registreren — dat is een beperking aan de kant van Stripe, niet van Agon. Je hoeft dit maar één keer te doen.
  • Houd de webhook-URL van je studio bij de hand. Deze wordt getoond in Agon onder Instellingen → Facturering en ziet eruit als https://studio-<jouw-studio-id>.agon-studio.dev/api/billing/webhook — uniek voor jouw studio. Laat die pagina open in een ander venster of tabblad, zodat je hem in stap 7 kunt kopiëren.

Stappen​

  1. Open je Stripe-dashboard en ga naar Developers → Webhooks — of direct naar Workbench → Webhooks.

  2. Klik op Add destination.

    Stripe Workbench-webhookspagina met de knop Add destination

  3. Stripe opent een wizard Create an event destination met drie stappen: Select events → Choose destination type → Configure your destination.

  4. Kies bij Select events, onder Event destination scope, voor Your account — niet Connected accounts, dat is alleen voor platformen die events ontvangen van de Stripe-accounts van andere mensen. Jouw studio is dit account. Laat onder Payload style Snapshot geselecteerd staan — niet Thin; Agon heeft het volledige event-object nodig, niet alleen een id die achteraf opgehaald zou moeten worden. Laat API version op de door Stripe standaard voorgestelde waarde staan.

    Configure your event destination: Your account en Snapshot geselecteerd

  5. Gebruik nog steeds bij Select events het zoekveld Find event by name or description… — veel sneller dan de hele categorieboom doorbladeren — en vink precies deze 6 events aan, één voor één:

    • checkout.session.completed
    • customer.subscription.created
    • customer.subscription.updated
    • customer.subscription.deleted
    • invoice.paid
    • invoice.payment_failed

    Zoekveld voor events: Find event by name or description

    Klik op Continue zodra alle 6 zijn aangevinkt.

  6. Selecteer bij Choose destination type de optie Webhook endpoint — de eerste optie. De andere twee, Amazon EventBridge en Azure Event Grid, zijn bedoeld om events naar je eigen cloudinfrastructuur te routeren en zijn hier niet van toepassing. Klik op Continue.

    Choose destination type met Webhook endpoint geselecteerd

  7. Bij Configure your destination toont Stripe een overzicht van je keuzes (Events from: Your account, Payload style: Snapshot, Listening to: 6 events), gevolgd door drie velden:

    • Destination name — optioneel, elke naam werkt (bijvoorbeeld "Agon"). Dient alleen als eigen referentie in je Stripe-dashboard en heeft geen functioneel effect.
    • Endpoint URL — plak hier de webhook-URL van je studio vanaf Agons pagina Instellingen → Facturering, precies zoals getoond. Typ hem niet zelf over — één enkele typefout betekent dat Stripe je studio nooit kan bereiken.
    • Description — optioneel, mag leeg blijven.

    Klik op de knop om de bestemming aan te maken.

    Configure destination met de velden Destination name, Endpoint URL en Description

  8. Stripe toont nu een Signing secret voor je nieuwe bestemming, soms achter een "reveal"-knop die je eerst moet aanklikken. Kopieer deze.

  9. Ga in Agon naar Instellingen → Facturering en plak hem in het veld Webhook-geheim — hetzelfde veld dat wordt beschreven in Betalingen — Stripe verbinden, altijd zichtbaar op die pagina en niet verstopt achter een extra optie. Klik op Opslaan.


Wat als er iets misgaat?​

Ik weet niet of ik "Your account" of "Connected accounts" moet kiezen

Kies Your account. Jouw studio is het Stripe-account dat je instelt — Connected accounts geldt alleen als je een platform zou zijn dat events ontvangt van de afzonderlijke Stripe-accounts van andere mensen, wat hier niet het geval is.

Mijn betalingen tonen na deze instelling nog steeds In behandeling

Controleer of de Endpoint URL exact is geplakt, zonder extra tekens of ontbrekende delen, en of het Webhook-geheim opgeslagen in Instellingen → Facturering overeenkomt met het signing secret dat Stripe toont voor deze specifieke bestemming. Zie ook Betalingen — Wat als er iets misgaat?.

Ik moet later een event toevoegen of de URL wijzigen

Open de bestemming opnieuw via Workbench → Webhooks in je Stripe-dashboard en bewerk hem daar. Je hoeft alleen iets in Agon bij te werken als het signing secret ook verandert.


Gerelateerde pagina's​