# Ticketverkoop koppelen aan je bestaande website (met code­voorbeelden) — MijnEvent

  [Home](https://mijnevent.app/nl) / [Blog voor evenementorganisatoren](https://mijnevent.app/nl/blog) / Ticketverkoop koppelen aan je bestaande website (met code­voorbeelden)   integratie developers website embed api 

# Ticketverkoop koppelen aan je bestaande website (met code­voorbeelden)

 Zet MijnEvent als drop-in ticketverkoop op je eigen site: één scriptregel voor de widget, vier templates in je eigen huisstijl die meteen ook je eventpagina's sturen, en een ondertekend leden-token voor ledenprijzen. Inclusief PHP-voorbeeld.

 [Jasper Koers](https://mijnevent.app/nl/auteur/jasper-koers) · 26 maart 2026 · 4 min leestijd 

        In het kort

- Met één scriptregel en een div plaats je de MijnEvent-ticketwidget op je eigen site; de widget past zijn hoogte automatisch aan.
- Via een ondertekend, kortlevend JWT (HS256) geeft je server per aankoop door dat iemand lid is, zodat MijnEvent automatisch de ledenprijs of gratis toegang toekent.
- Er wordt niets gesynchroniseerd: je eigen ledenadministratie blijft de bron van waarheid en de ledenstatus klopt op het koopmoment.
- Is een token ongeldig of verlopen, dan wordt de bezoeker gewoon als betalende externe behandeld — er breekt niets.
- In Huisstijl → Embed-studio kies je één keer template, hoekafronding en knopstijl; die keuze stuurt de widget, je publieke eventpagina's én je module-etalages, zonder dat de embedcode verandert.

  Heb je al een website voor je vereniging, sportclub of organisatie? Dan hoef je je bezoekers niet weg te sturen om tickets te kopen. MijnEvent draait als drop-in op je eigen site: je plakt één scriptregel en een `div`, en de ticketwidget verschijnt — inclusief checkout, zonder dat de bezoeker je site verlaat. Het krachtigste onderdeel is de **ledenkoppeling**: omdat het lid al is ingelogd op jóuw website, kan die website per aankoop een ondertekend token meegeven dat zegt "dit is een lid". MijnEvent kent dan automatisch de ledenprijs of gratis toegang toe, terwijl externen het normale tarief betalen. Er wordt niets gesynchroniseerd of gekopieerd — je ledenadministratie blijft de bron van waarheid en de status klopt altijd op het koopmoment. Hieronder laten we zien hoe je het toepast, met een werkend codevoorbeeld voor ontwikkelaars. De stap-voor-stap-insteluitleg voor beheerders staat in het kennisbankartikel [Leden gratis, externen betalen](/nl/blog/leden-gratis-externen-betalen).

# 1. De widget op je site (aanbevolen: de script-embed)

In je beheer onder **Integraties** staat de embedcode klaar. De aanbevolen variant is één scriptregel plus één `div` — de widget meet zijn eigen hoogte en past de iframe automatisch aan, dus je hoeft geen vaste hoogte te gokken:

```html

```

Je kunt meerdere events op één pagina zetten door meerdere `div`'s te plaatsen. Er is ook een eenvoudige `iframe`-variant, maar die vereist dat je de hoogte zelf vastzet (bij lange ticketlijsten of de checkout-stap wordt de inhoud dan afgeknipt) — gebruik die alleen als je geen script mag plaatsen.

# 2. De vormgeving: de embed-studio

De ticketshop hoort bij je event te passen, niet andersom. In **Huisstijl → Embed-studio** kies je organisatie-breed hoe de widget eruitziet, met een live preview van de échte widget:

- **Template**: *Klassiek* (de vertrouwde lijst), *Hero* (grote sfeerfoto met je logo en de eventtitel over de foto), *Compact* (minimaal, voor sidebars en smalle plekken) of *Stappen* (stapsgewijs afrekenen met voortgangsindicatie: tickets → gegevens → overzicht → betalen).
- **Thema**: licht, donker of automatisch (volgt de systeemvoorkeur van de bezoeker). Voor het donkere thema kun je een aparte lichte logovariant uploaden.
- **Huisstijl-opties**: je logo tonen, hoekafronding (strak/zacht/rond), knopstijl (gevuld of outline — de tekstkleur op de knop wordt automatisch contrastveilig gekozen), een transparante achtergrond zodat de widget opgaat in je site, en volle breedte.

Je huisstijlkleuren en lettertypen uit **Huisstijl** werken overal in door — ook in de succes- en foutmeldingen en zelfs de confetti. De embedcode zelf verandert niet: instellingen opslaan is genoeg, elke bestaande embed rendert direct in de nieuwe stijl.

## Eén keuze stuurt je hele bezoekerskant

Wat je hier kiest, geldt niet alleen voor de widget op je eigen site. Dezelfde template en hetzelfde thema sturen ook je **publieke eventpagina's** op je MijnEvent-subdomein en je **module-etalages** — verhuur, shop, food, cursussen, lidmaatschappen, doneren en de rest. Kies je *Hero*, dan krijgt je eventpagina dezelfde grote sfeerkop als je widget; kies je *Compact*, dan wordt overal strakker en smaller gewerkt. Je hoeft dus niet per oppervlak opnieuw te kiezen, en een bezoeker die van je eigen site naar je eventpagina doorklikt ziet niet ineens een ander product.

De preview in de studio wisselt daarom mee: je kunt de widget, een echte eventpagina of een module-etalage als voorbeeld kiezen, inclusief kleuren die je nog niet hebt opgeslagen.

## De verkoper staat er duidelijk bij

Onder de widget en onder je publieke pagina's staat een korte verkoper-disclaimer: *"Je koopt hier tickets van {jouw organisatie} — niet van MijnEvent"*, met je wettelijke verkopergegevens (e-mail, telefoon, adres, KVK en btw-nummer) erbij. MijnEvent faciliteert het platform en de betaling; jij blijft de verkoper en verantwoordelijk voor het event, annuleringen en restituties. De formulering past zich aan het verkoopvlak aan — huren, bestellen, boeken of doneren in plaats van kopen. Je hoeft er niets voor te doen; het staat er automatisch, ook binnen de embed op je eigen site.

# 3. Een ledenprijs of besloten ticketsoort

Bij een ticketsoort stel je in het beheer twee dingen in:

- **Toegang**: *Openbaar* of *Alleen voor leden* (besloten ticketsoorten zijn verborgen voor het publiek).
- **Ledenprijs**: leeg (leden betalen normaal), `0` (gratis voor leden) of een lager bedrag (ledenkorting).

# 4. Het leden-token (voor ontwikkelaars)

Wanneer een ingelogd lid op je site tickets koopt, ondertekent je **server** een kortlevend [JWT](https://jwt.io) met de geheime sleutel uit **Integraties**. Het is een gewone HS256-token; je hebt er geen library voor nodig:

```php
