SeatLayer is a reserved-seating platform for products and organizers that need buyers to choose a real seat, table, booth, or a general-admission area inside a seated chart. A pure-GA event without a seating chart is not a supported target. One inventory core supports two deliberately separate products: Platform/SDK infrastructure and SeatLayer-managed ticketing.
For the relationship between inventory, audience access, pricing, and every SDK or API surface, read the SeatLayer product model.
Two objects power everything
Chart
The reusable venue document: rows, tables, booths, GA areas, sections, accessibility metadata, and pricing categories.
Event
One independent realtime inventory occurrence created from a published chart snapshot. Reuse one chart for many performances. An Event does not by itself imply a public page, checkout, order, or ticket.
Seat lifecycle
| Status | Meaning | Who changes it |
|---|---|---|
free |
Available to select | Expiry, release, or operator |
held |
Reserved for a short checkout window | Buyer SDK |
booked |
Permanently committed inventory | Your server or SeatLayer managed checkout |
not_for_sale |
Removed from sale | Organizer or operator |
The picker receives inventory updates in realtime, so buyers see a seat disappear before they can select stale inventory. A successful booking is all-or-nothing: conflicts return without partially booking the request.
Choose the product boundary first
SeatLayer Platform / Seating Infrastructure
Use this for a marketplace or ticketing platform that already owns its event catalogue and commerce. SeatLayer supplies workspaces, charts, event inventory, buyer SDKs, holds, idempotent booking, webhooks, inventory reports, and embedded Designer/Control room tools.
Your platform remains the sole owner of buyer accounts, checkout and payment,
commercial Orders, ticket/QR/PDF creation and delivery, email, refunds,
check-in, and customer support. bookingRef links your order to the SeatLayer
inventory booking; SeatLayer does not mirror that purchase into its hosted
fulfilment product.
SeatLayer Managed Ticketing
Use this when a direct organizer wants SeatLayer to run the end-to-end sale.
Managed Ticketing is request/staff-approved; the organization must have Hosted
Checkout (hosted_checkout) enabled before a managed Event can be sold. The
organizer creates a full event and connects an eligible Stripe or Razorpay
account. SeatLayer can then provide hosted checkout, Orders, tickets, QR/PDF
delivery, email, refunds, and Door/check-in through a Hosted Event Page, managed
embed, or Organizer Website. The connected provider controls its processing
fees, applicable taxes, and payout timing.
Commerce ownership is fixed for an Event. Changing between Platform/SDK and Managed Ticketing means reusing the Chart and creating a new Event with the intended product boundary.
In a Platform/SDK integration, what stays in your product
- Event catalogue and buyer identity.
- Commercial orders, payments, refunds, fees, and tax logic.
- Tickets, QR/barcodes, PDFs, email delivery, scanning, and support.
- The final decision to confirm a booking.
- Your own checkout UI and business rules.
What the shared SeatLayer inventory core provides
- A white-label Designer for authoring complex venues.
- Stable web SDKs for script tag, JavaScript, React, Vue, and Angular, plus supported production SDKs for React Native, iOS, Android, and Flutter.
- Realtime holds and inventory synchronization.
- Server APIs, signed inventory webhooks, an embeddable Control room, booking history, and inventory reporting.
Current Platform/SDK scope
An Event remains the base inventory boundary. Each Event has its own chart snapshot, availability, channels, and reports. For one fixed run of 2–8 compatible assigned-seat Events, Performance Groups add one coordinated hold and booking flow. For a renewable fixed Plan of 2–20 compatible Events, Fixed Renewable Seasons add same-seat holds and booking, incumbent Seat Rights, renewal offers, occurrence amendments, and operational reports. Reusing one Chart across independent Events alone does not create a Season or shared entitlement.
The current Platform/SDK release does not provide:
- partial or buyer-built Seasons, or arbitrary per-performance Plan overrides;
- arbitrary event baskets, buyer-selected date subsets, or partial status changes across a Performance Group;
- a first-class resale/listing state or buyer-to-buyer relisting workflow;
- organizer-defined custom inventory statuses;
- true partial-GA channel allocation or season-inherited channels; or
- cross-product aggregate reporting beyond the documented Performance Group and Season contracts.
unbook can return booked inventory to free, after which it may be sold in a
new ordinary booking. That is cancellation and re-sale of free inventory; it
is not the resale listing product described above. Payments, seller identity,
listing price, ownership transfer, and payouts remain in your system.
Build the full loop
Continue to the Quickstart to create a test event, embed the picker, and confirm a booking.
Inspect the server contract
Jump to the booking endpoint for request fields, responses, and conflict handling.
Open-source resources
SeatLayer SDK
Inspect the official JavaScript, React, Vue, and Angular packages in seatlayer/seatlayer-sdk.
SeatLayer for Flutter
Follow the Flutter seat-map guide, install
seatlayer, or inspect the source in
seatlayer/seatlayer-flutter.
SeatLayer for React Native
Build Expo, iOS, and Android applications with seatlayer/seatlayer-react-native.
SeatLayer iOS SDK
Evaluate the public Swift package source in seatlayer/seatlayer-ios.
SeatLayer Android SDK
Build native Kotlin applications with seatlayer/seatlayer-android.
SeatLayer AI Toolkit
Give a coding agent the portable integration skill, diagnostics, and verification workflow from seatlayer/seatlayer-ai-toolkit.
SeatLayer on GitHub
Discover all public SeatLayer repositories at github.com/seatlayer.
The SeatLayer platform and inventory service remain private. Public repositories contain supported SDKs, examples, and agent-integration tooling.