Artikelen over: Integraties & Koppelingen

Webhook toevoegen aan je betaalpagina of product

Het toevoegen van een Webhook aan je betaalpagina is heel eenvoudig en kan in een paar stappen worden gedaan:


Ga naar de betaalpagina waar je de Webhook wilt toevoegen.


  1. Klik op Na aankoop acties




  1. Klik op Actie toevoegen




  1. Kies voor Betaalpagina of Product
  2. Klik op Kies software
  3. Klik op Webhook
  4. Voeg je URL toe en
  5. Klik op Opslaan





Nu is je webhook actief. 🙌



Technische documentatie


Bouw je zelf de software die de webhook ontvangt? Hieronder vind je alle details om de integratie op te zetten.


Wanneer wordt de webhook verstuurd?


De webhook wordt verstuurd nadat de bestelling succesvol is betaald. Het versturen gebeurt via een wachtrij, dus meestal binnen enkele seconden na de betaling — niet noodzakelijk op exact hetzelfde moment.


Er wordt geen webhook verstuurd voor mislukte of openstaande betalingen.


Technische specificaties


Eigenschap

Waarde

HTTP-methode

POST

Content-Type

application/json

Header

kennis-api-version: 1

Verwachte response

HTTP-statuscode tussen 200 en 299

Authenticatie

Geen — de URL zelf is het geheim


Over authenticatie


We sturen geen handtekening of token mee. Behandel de webhook-URL daarom als een geheim: deel 'm niet publiekelijk en gebruik een URL die lastig te raden is (bijvoorbeeld met een willekeurige token in het pad).


Response


Stuur een HTTP-statuscode tussen 200 en 299 terug om aan te geven dat je de webhook correct hebt ontvangen. Bij andere statuscodes markeren wij de poging als mislukt.


Payload


De body die we versturen is een JSON-object met één veld data, waarin alle ordergegevens staan.


Voorbeeld


{
"data": {
"order_date": "2026-04-14T10:32:17.000Z",
"order_id": 227666,
"customer_email": "klant@voorbeeld.nl",
"customer_first_name": "Jan",
"customer_last_name": "de Vries",
"customer_phone_number": "+31612345678",
"newsletter_consent": 1,
"checkout_url": "https://jouwschool.kennis.shop/pay/voorbeeld-checkout",
"customer_address": {
"business_name": "Voorbeeld B.V.",
"country": "NL",
"address_line_1": "Hoofdstraat 1",
"address_line_2": "",
"city": "Amsterdam",
"postal_code": "1011AA",
"state": "",
"tax_id": "NL123456789B01"
},
"amount_total_incl_tax": 121.00,
"amount_total_ex_tax": 100.00,
"bought_products": [
{
"product_id": 42,
"product_name": "Cursus Fotografie",
"product_quantity": 1,
"product_unit_price": 121.00,
"product_total_incl_tax": 121.00,
"product_total_ex_tax": 100.00,
"event_date": "2026-05-20T09:00:00.000Z",
"event_end_date": "2026-05-20T17:00:00.000Z",
"event_location_type": "physical",
"event_location_name": "Studio Centraal",
"event_address": "Hoofdstraat 1, Amsterdam, 1011AA, NL"
}
]
}
}


Velden-overzicht


Hoofdvelden


Veld

Type

Uitleg

order_date

datetime (ISO 8601)

Tijdstip van betaling

order_id

getal

Uniek ordernummer

customer_email

tekst

E-mailadres van de klant

customer_first_name

tekst

Voornaam

customer_last_name

tekst

Achternaam

customer_phone_number

tekst

Telefoonnummer (indien ingevuld)

newsletter_consent

getal (0 of 1)

1 als de klant heeft aangevinkt dat je hem/haar mag benaderen voor nieuwsbrieven

checkout_url

tekst

URL van de betaalpagina waarop is besteld

amount_total_incl_tax

getal

Totaalbedrag inclusief btw, in euro's

amount_total_ex_tax

getal

Totaalbedrag exclusief btw, in euro's


Let op: bedragen worden in euro's verstuurd (bijv. 121.00), niet in centen.


customer_address


Veld

Type

Uitleg

business_name

tekst

Bedrijfsnaam (leeg bij particulier)

country

tekst

Land (ISO-code, bijv. NL)

address_line_1

tekst

Straat + huisnummer

address_line_2

tekst

Extra regel (bijv. appartementnummer)

city

tekst

Plaats

postal_code

tekst

Postcode

state

tekst

Provincie/staat (indien van toepassing)

tax_id

tekst

Btw-nummer (leeg bij particulier)


bought_products (array)


Eén item per gekocht product. Bevat per regel:


Veld

Type

Uitleg

product_id

getal

Uniek productnummer

product_name

tekst

Naam van het product

product_quantity

getal

Aantal

product_unit_price

getal

Prijs per stuk, in euro's

product_total_incl_tax

getal

Regeltotaal inclusief btw, in euro's

product_total_ex_tax

getal

Regeltotaal exclusief btw, in euro's

event_date

datetime of null

Startdatum van het event (alleen bij event-producten)

event_end_date

datetime of null

Einddatum van het event

event_location_type

tekst of null

Bijv. physical of online

event_location_name

tekst of null

Naam van de locatie

event_address

tekst of null

Volledig adres van de locatie (samengevoegd)


Meerdere webhooks op dezelfde betaalpagina


Je kunt meerdere webhooks instellen op één betaalpagina. Bij een bestelling krijgt elke ingestelde URL zijn eigen call met dezelfde payload.


Testen


Voordat je de webhook op je eigen systeem aansluit, kun je 'm eerst testen met een gratis tool als webhook.site. Plak de tijdelijke URL in het webhook-veld, plaats een testbestelling, en bekijk de payload die binnenkomt. Pas daarna stel je de definitieve URL in.


Veelgestelde vragen


Wordt de webhook opnieuw geprobeerd als mijn server niet reageert?
Als we geen 2xx-statuscode terugkrijgen, markeren we de poging als mislukt. Zorg dus dat je server beschikbaar is en snel een 2xx terugstuurt zodra je de data hebt ontvangen (je mag de verwerking daarna op de achtergrond doen).


Kan ik de webhook handmatig opnieuw laten versturen?
Neem hiervoor contact met ons op — we kunnen de webhook op basis van het ordernummer opnieuw aftrappen.


Welke versie gebruik ik?
Op dit moment is kennis-api-version: 1 de enige ondersteunde versie. Nieuwe velden binnen deze versie voegen we alleen toe — bestaande velden verwijderen of hernoemen we niet. Zo blijft je integratie werken.



Relevante Artikelen


Bijgewerkt op: 14/04/2026

Was dit artikel nuttig?

Deel uw feedback

Annuleer

Dankuwel!