Skip to content
Developer

Event sign-up widget

Sign-ups for courses, events and single dates directly on your website, with products, required fields and payment.

The widget shows an event from vynst (inwendo ERP) with dates, location and prices, and accepts sign-ups. It asks exactly for the details you set up for the event, checks free places and the sign-up period, and opens the payment page if needed.

<div data-iw-event-signup
     data-iw-host="club.iw-erp.de"
     data-iw-event-id="523"></div>
<script src="https://club.iw-erp.de/frontend_assets/backend/iw_erp_web_ui/event-signup.js" async></script>

Shortcode: [iw-event-signup host="club.iw-erp.de" event-id="523"]

Which event

Attribute Meaning
data-iw-event-id ID or short name (slug) of the event. Short form: data-iw-event
data-iw-event-token token of a non-public event (starts with EBE)
data-iw-invite-token token of an invitation (starts with BEIV)
data-iw-booking-id offer only this one date
data-iw-selected-product preselect this product

Only enter tokens if you have them. Placeholders such as optional would be sent as a real token.

More options

Attribute Default Meaning
data-iw-redirect-payment on false: do not open the payment page automatically, only show the link
data-iw-success-payment-base-url payment page of vynst own address for the payment link. The payment token is appended.
data-iw-session-token empty session of a logged-in member. The member then signs up with their account.
data-iw-theme…, data-iw-text-… Styling and texts

Texts you change often: send (button), success (message afterwards), notYetOpen (sign-up not open yet), legal (note on the terms).

Set up in vynst

  • The event must be public and allow sign-ups via the website. Non-public events are released with data-iw-event-token.
  • Your website must be listed under CORS - Permitted origins. See Enable in vynst.
  • If Registration - Minimum app version (event_sign_up_allow_self_min_ui_version) is set, the widget must be at least this version. The widget reports itself as 2026090201. A higher value in vynst blocks sign-ups via the website.
  • For paid sign-ups, set up a payment provider.

Events

iw:event-signup:ready, :validated, :submitted, :payment-opened, :error and :link (click on a link in the widget). An example for Google Analytics:

document.querySelector('[data-iw-event-signup]')
  .addEventListener('iw:event-signup:submitted', () => {
    gtag('event', 'sign_up', { method: 'vynst' });
  });

API

The widget uses GET /api/event/base_event/{id}, POST /api/event/public/test_base_event_signup for the check, and POST /api/event/public/base_event_signup to sign up. If you want to build your own form, you will find them under Events.