Webhooks
Webhooks sturen een JSON-POST-verzoek naar je URL wanneer een gebruiker een geconfigureerde verzendactie voltooit. Je stelt ze per verzendknop in Manager in.
Een webhook inschakelen
- Open Manager → Configuraties → je product.
- Ga naar Inzending & tracking → Data Submissions.
- Selecteer of maak een inzendingsuitvoer (gekoppeld aan een template).
- Schakel op een verzendknop POST naar een URL in en voer de URL van je endpoint in.
- Sla het product op.
Je kunt een webhook combineren met PDF, e-mail en postMessage op dezelfde of verschillende knoppen.
Wanneer webhooks afgaan
Webhooks worden verstuurd vanuit de add-quote-API wanneer de gebruiker verzendt via een knop waarvoor de webhook is ingeschakeld. Er zijn twee paden:
Offertepad (contactformulier + PDF-/e-mailflow)
Maakt een offerterecord aan. Webhook-event:
{
"event": "quotation.created",
"source": "iconfigure",
"timestamp": "2026-06-17T12:00:00.000Z",
"data": {
"quotation_id": "uuid",
"quotation_number": 1234,
"pdf_url": "https://...",
"total_price": 1250.5,
"language": "NL",
"status": 0,
"created_at": "2026-06-17T12:00:00.000Z",
"customer": {
"first_name": "Jane",
"last_name": "Doe",
"email": "jane@example.com",
"phone": 612345678,
"address": {}
},
"extra_fields": {},
"company": {
"id": "company-uuid",
"name": "Your Company",
"email": "info@example.com"
},
"product_id": "product-uuid",
"dealer_id": null,
"dealer_product_id": null,
"items": []
}
}Winkelwagen-/contactloos pad
Gebruikt wanneer de knop geen PDF en geen e-mail heeft (alleen webhook en/of postMessage). Slaat het aanmaken van een offerte over. Webhook-event:
{
"event": "cart.action",
"source": "iconfigure",
"timestamp": "2026-06-17T12:00:00.000Z",
"data": {
"button_id": "button-internal-id",
"product_id": "product-uuid",
"dealer_id": null,
"dealer_product_id": null,
"language": "NL",
"extra_fields": {},
"items": []
}
}Verrijkte items-array
Elk item in data.items bevat herleide featurenamen en geselecteerde subfeatures:
{
"product_id": "uuid",
"product_name": "Table configurator",
"image": "https://.../temporary/.../screenshot.png",
"items": [
{
"repetitions": [
[
{
"ID": "material",
"feature_name": "Material",
"type": "single_selection",
"value": "oak",
"selected": {
"ID": "oak",
"name": "Oak",
"custom_properties": {}
}
}
]
]
}
]
}HTTP-details
| Eigenschap | Waarde |
|---|---|
| Methode | POST |
| Content-Type | application/json |
| Body | JSON-payload hierboven |
| Herhaalpogingen | Geen (fire-and-forget) |
| Dubbele URL's | Gededupliceerd per verzoek |
Je endpoint moet reageren met een 2xx-status. Mislukkingen worden server-side gelogd maar niet automatisch opnieuw geprobeerd.
Testen
- Maak een test-endpoint aan op webhook.site of een n8n-/Zapier-webhook.
- Plak de URL op een test-verzendknop.
- Voltooi een configuratorverzending.
- Bekijk de ontvangen JSON.
Oude webhooks
Producten zonder een moderne inzendingsuitvoer kunnen terugvallen op URL's uit de oude webhooks-tabel. Nieuwe integraties moeten in plaats daarvan Data Submissions-knoppen gebruiken.
Verder lezen
- postMessage — Browser-side alternatief voor iframe/inject
- Inzendingen & uitvoer — Configuratie in Manager