Skip to content

Integrations

What it plugs into, and what it needs

Some of these are load-bearing, some are optional, and one is honestly still a stub. Each is labelled so you know what you are depending on before the event, not during it.

Live layer

  • Socket.IO service

    Required

    The dedicated real-time process behind boards and pads. Tech Settings can point the whole organization at your own socket URL.

  • Redis

    Recommended

    Optional but recommended in production: runs the socket layer multi-instance and restores bout snapshots after a restart.

Money

  • Razorpay

    Optional

    Entry fees, squad payments, and plan checkout when keys are configured. Webhook signatures are verified with a timing-safe compare.

Messaging

  • SMTP

    Optional

    Invites, password help, and notification worker email. Without it, those flows report as unavailable rather than failing quietly.

  • SMS / WhatsApp

    Stub

    An outbox with provider stubs. Not marketed as a live channel — unconfigured sends are reported as skipped.

Your systems

  • Organization webhooks

    Optional

    Signed POSTs for entry.approved, payment.paid, and bout.completed, with a dry-run so you can validate before going live.

  • Data export

    Included

    Club results CSV and a warehouse export for federation reporting and downstream analytics.

Platform

  • Object storage

    Configurable

    Supabase Storage or local uploads for branding, certificates, profile images, and site assets, selected per deployment.

  • Sentry

    Optional

    Error and performance observability for the web app when a project DSN is provided.

  • Custom domains

    Configurable

    Subdomain tenancy or a mapped custom domain resolves straight to your tenant login and branding.

Webhooks

Three events, signed and replayable

Enough to keep a federation's own database or reporting stack in step without polling the API.

entry.approved

An athlete's entry was approved for an event.

payment.paid

An entry or squad fee was settled.

bout.completed

A bout finished, with result and method.

Payloads are signed and verified with a timing-safe comparison. Use the dry-run from the Rules panel to confirm your endpoint before you depend on it during an event.

Need it to talk to something specific?

Tell us what system holds your membership or results data. Webhooks and exports cover most cases, and we will tell you plainly if yours needs work.

  • Walk through a live bout on your own sport
  • See the control room with your mat layout
  • Review tenancy, roles, and audit before you commit