Skip to content
TAS Running Events Registration
← All projects
nextjssupabasenodejs2026

TAS Running Events Registration

Multi-event running event registration platform for Total Active Sports (totalactivesports.net). Supports custom drag-and-drop registration forms per event, SSLCommerz payments, Amazon SES emails, ADNsms SMS, and a role-based admin/organizer dashboard.

Form Designer

Each event has a custom registration form built using the drag-and-drop Form Designer at /admin/events/[id]/form.

Available field types: Text, Email, Phone, Number, Textarea, Dropdown, Radio Group, Checkbox Group, Date Picker, File Upload

Three fixed fields are always collected on every registration form (not part of the designer):

  • Full Name

  • Email Address

  • Phone Number

Custom field responses are stored as JSONB in registrations.form_data, keyed by FormField.id.


Payment Flow (SSLCommerz)

  1. Participant submits form → POST /api/payment/initiate creates a pending registration

  2. Client redirects to SSLCommerz gateway

  3. After payment → SSLCommerz POSTs IPN to POST /api/payment/callback

  4. IPN webhook validates server-to-server, calls next_registration_id(), confirms registration

  5. Email + SMS notifications fire non-blocking after confirmation

The IPN webhook is the only place payment status changes to confirmed. Never trust redirect URL parameters.