About joyneus
joyneus is a lightweight ticketing platform: create events, define ticket types, and sell—fast. This page is your high-level overview of how the system fits together.
Introduction
With joyneus you can spin up events in minutes, add multiple ticket tiers (prices, capacities, sales windows), and accept payments via Stripe Checkout. Organizations let teams manage multiple events and switch contexts quickly.
Dates, time zone (US only), capacity, visibility, and status.
Set price (in cents), per-type capacity, and sales windows.
Stripe Checkout → create order → issue tickets.
Quick start (≈ 5 minutes)
- Sign up / log in and make sure you’re in the correct Organization.
- Create an Event (title, schedule, U.S. time zone, capacity).
- Add at least one Ticket Type (price in cents, capacity, sales window).
- Set event Status to Published and toggle Public if you want a public page.
- Share the public URL (
/e/:short_code) and start selling.
Core concepts
Organizations
The top-level container for users and events. Users can belong to many; a “current organization” scopes what you see and do. Switching orgs is available in the header.
Events
Title, description, schedule, U.S. time zone, capacity, visibility, and status. Each event has a unique
short code for its public page (/e/:short_code).
Ticket Types
A ticket tier (e.g., “General Admission” / “VIP”) with its own price, capacity, and optional sales window. An event must have at least one active ticket type with capacity to be valid.
Orders
A purchase composed of one or more line items (ticket type + quantity). Orders are created after successful payment and must match the event’s organization & currency.
Tickets
Issued per quantity on paid orders, linked to a ticket type. Tickets are not created until payment succeeds.
Payments & Stripe
joyneus uses Stripe Checkout. In the short term, funds can be routed to your platform account; in the medium term, you’ll onboard via Stripe Connect so organizations can receive payouts directly.
- Public page posts line items; server validates capacities & availability before creating a Checkout Session.
- On webhook confirmation (payment_intent.succeeded), the app creates a paid order and issues tickets.
- Refunds/cancellations update order/ticket statuses accordingly.
Product values
Simplicity
Clear flows and defaults. Complexity is added only when it meaningfully helps organizers sell more easily.
Transparency
Prices, fees, and ticket availability should always be obvious to both organizers and buyers.
Privacy & Security
We collect only what’s needed to fulfill orders. Payments are handled securely by Stripe.