Easy Tickets & Events
Every feature, grouped by the job it does
158 things the app does, from selling a ticket to scanning it at the door. Rows with their own page go deep on the mechanism. The rest point at the guide that already answers them.
All of it is on every plan, the Free one included. Plans differ only in how many tickets you issue in a rolling 30-day cycle, from 20 on Free to 2,500 on Business. There is no per-ticket fee, and tickets sell through your own Shopify checkout. See the four plans and prices.
Selling tickets through your own checkout
Events are Shopify products and tickets are Shopify variants, so the money never leaves your store.
Your cart, your checkout, your taxes, your payouts. Nothing is hosted on a separate ticketing account.
Free for 20 tickets a cycle, then 29, 89 or 149 USD a month for 500, 1,500 or 2,500, with no per-ticket fee and a custom plan above that.
A percentage code made in the event, created as a Shopify discount so it works in the normal checkout.
Show the code in a banner you design, with your own colours, border and dates.
A flat opt-in fee the buyer ticks in the popup or on the product page, with your own label and picture. You still do the refunding in Shopify.
A “Download PDF ticket” button right after checkout and on the order status page, switched on for every new event.
Type Get tickets or Book a place. Leave it blank and your theme keeps its own wording.
A block that swaps your theme's variant picker for cards, a dropdown or pills, with each price and a count once ten or fewer are left.
A plus and minus control decides how many attendee forms appear, and one tick books every ticket under a single name.
Your theme's own Buy now is hidden so it cannot skip the form. Switch on a replacement that opens the popup first.
Refresh the page, open your theme's cart drawer, stay put with a confirmation, or go straight to the cart page.
Reserved seating and seat maps
Draw the room once, and shoppers pick their own seats on your product page.
- Reserved seatingFeature page
Sell seats from a map, so the shopper picks their own seats and pays in your normal Shopify checkout.
- Seat map editorFeature page
Draw rows, round and rectangular tables, standing areas and a stage, up to 5,000 places on one map.
- Price areasFeature page
Colour groups of seats and sell each area through one or more ticket types, such as Adult and Child in the stalls.
- The shopper picks their own seatsFeature page
The buy button reads “Choose seats” and opens a map where the shopper clicks seats and names each guest.
- Seats held while they payFeature page
Chosen seats are held for 20 minutes by default, anywhere from 5 to 30, while the shopper checks out.
- The seat on every ticketFeature page
The seat prints on the ticket email, the PDF and the ticket page, and shows on the guest list and the door scanner.
Mark wheelchair spaces, companion seats and restricted views, and the shopper sees them marked on the map.
Take seats out of sale for one date, or set seats aside behind a private code only your guests have.
On a map of tables, sell each table in one click with a ticket for every seat at it.
Recurring events, time slots and the date picker
A timetable that generates itself, with every sitting holding its own seats.
- Time slots and timed entryFeature page
Several start times inside one day, each its own sitting, sold from a picker on the product page.
- Date and time picker on the product pageFeature page
A calendar, a date list or a dropdown of every upcoming date, with the buy button locked until one is picked.
A single date and time, an optional end time, a venue or online, with its own ticket types.
Daily, weekly on the days you tick, or monthly, generated forward to the last date you set.
For a schedule that follows no rule: choose the dates and the times off a calendar.
- One product for the whole seriesFeature page
A general-admission series sells every date from one product page, while a reserved-seating series gets a product per date.
- Capacity per dateFeature page
Every sitting can carry its own seat count, per ticket type or as one pool.
Give a single sitting its own time or venue and the rest of the series keeps following the schedule.
Drop one sitting without touching the series, put it back later, or copy its setup into a new date.
One event across a date range, with the entrance limit raised for a weekend pass.
Paste any meeting link, or let a connected Zoom account make the meeting, and the join link reaches every ticket and email.
Show an event with a “Tickets available soon” button before sales open, or pause sales while the page stays up.
Start a new event prefilled from an existing one, carrying templates, questions and tags.
Get a finished event out of the list, or take one off the storefront.
Sell an open pass or a voucher with no date on it, knowing the event type is fixed, so a date cannot be added later.
Private labels that drive the admin filter and the tag pills on your events page.
Class packs and passes
Sell a pack of classes once, and let customers book each one with their pass.
- Class packsFeature page
Sell a pack of 1 to 1,000 classes as one Shopify product, with an expiry you set.
- Book classes with a passFeature page
Customers book each class from their “My class passes” page or the Class passes block, one credit per ticket.
- Cancel and get the credit backFeature page
A customer who cancels before your cutoff, 24 hours by default, gets the credit back on their pass.
Change the credits left or the expiry date of any pass from the Class packs page.
Free events and registration
Take sign-ups for a free event without a cart or a checkout.
- Free registration and RSVPFeature page
The buy button reads “Get your free ticket”, and the guest confirms their spot and gets the ticket by email with no checkout.
- Register a group in one goFeature page
One sign-up can register up to 10 guests, or as many as your per-order limit allows up to 50, each with their own ticket.
- A review step and a cooldownFeature page
Guests confirm their details before the ticket is made, and one email can register once per date every 10 minutes.
Your storefront and the events page
Theme blocks that put the event, the date picker and the ticket count where you want them.
Switch on the Easy Tickets Popup embed in your theme, then place any of twelve blocks where you want them.
One block that lists every event with search, sort, date and tag filters, a featured banner and a past-events filter.
Sixteen colour, corner and font controls, the calendar palette included, plus the field order and widths.
The same designer in waitlist mode, for the heading, the description, the success screen and the button text.
A two-line snippet lists your events on any website, each linking back to its product page.
How many are left in your own wording, as a total, per ticket type, or per date on a series.
Blocks that print the date, the venue and a map link wherever you place them.
A searchable list of every customer-facing phrase, each with a box for your own words, per language.
An Expired Events block shows your own words and a link to what is coming up once the date has passed.
A plain hosted list of upcoming events, reachable through your own domain.
Three optional blocks let you position the add-on picker, the delivery choice and the promo banner instead of letting the app place them.
A store-wide switch prints the key facts on one-time event pages without adding a theme block at all.
A 24-hour or 12-hour clock, and day/month/year or month/day/year, across the admin, the storefront, the emails, the PDF and the door.
Ticket types, capacity and fair sales
Every tier is a real Shopify variant, so stock, discounts and POS treat it like any other product.
General, VIP, member, child - any number of tiers, each with its own price, stock and check-in rules.
Cap the tickets in one order with a checkout rule you switch on once, and the POS Sell tickets tile applies the same cap.
- Shared inventory poolFeature page
One pool of seats behind every ticket type, so a VIP sale lowers what is left for general.
A group size of four mints four separate QR tickets from one unit sold.
The number comes from the app's own count of live tickets, so a cancelled seat comes straight back.
If a variant is deleted the app spots it, warns you, and offers a one-click repair against your live variants.
Change the printed ticket number format, and for advanced cases what the QR encodes.
Point ticket stock at the Shopify location your POS device expects.
Auto-name every ticket variant's SKU from a pattern, applied when the event is created.
A pass or a voucher can stop working a set number of days after it is issued. Leave it blank and tickets never expire.
When every ticket type with a stock number sells its last ticket, an Event Sold Out trigger fires in Shopify Flow.
Add-ons, bundles and group tickets
Extras that sell beside the ticket and tables that split into individual seats.
T-shirt, parking, meal or drink, each group with its own choices, prices and stock, picked per attendee or per order.
- Add-on caps per dateFeature page
Twenty dinners on Friday and eight on Sunday is one setting, not two events.
Upload or pick an image per choice from your Shopify Files, and it shows on the cart line and at checkout.
Connect an existing store product, like a T-shirt in three sizes, and its variants become add-on choices.
Switch it on and a shopper booking several tickets under one name still picks the add-ons for each ticket.
Sell a table of ten as one item, and the buyer hands out a claim link per seat so each guest claims their own QR.
Two switches decide whether a promo code also covers the extras and the refund-protection fee.
Waitlist and sell-outs
What the buy button becomes when the last seat goes.
- Waitlist for sold-out eventsFeature page
When every ticket type is sold out, the button becomes “Join the Waitlist” and people leave their name and email.
- Waitlist per dateFeature page
On a series the queue is kept per sitting, so people wait for the time they actually wanted.
A freed seat emails the oldest person waiting, one email per seat, and Notify on a row emails someone by hand.
The email that goes out when seats come back, in a design you control.
Attendee data and the guest list
A name per ticket rather than per order, and a list you can search, filter, print and export.
A themed popup asks each ticket holder for their name, email and phone before the ticket goes in the cart.
Your own questions as text, email or phone boxes, required or optional, answered for every ticket in the popup.
Pull the buyer's name from the Shopify order, or ask for every ticket holder before add to cart.
Turn a phone field on for one event and decide whether it is required.
Add refund protection, the created date, the discount code and one column per custom question to the guest list.
Export the Orders view to CSV, one row per booking.
Search by name, email, ticket code or order number, and narrow a series to one sitting.
Export what you are looking at, filters and search carried, with every custom answer, in your own language.
One row per booking, and a click opens every seat in it with its check-in state.
A print-only page: one line per booking with party size, a tick box and a blank table column.
For someone who paid at the door, on the phone or by transfer, with the option to send their ticket straight away.
Fix names, contact details, language and answers in one dialog, and the ticket type on tickets you added by hand.
Copy a transfer link from the guest list and send it to the ticket holder, and the new person gets a fresh ticket while the old QR stops working.
- Move a ticket to another dateFeature page
Switch someone to another sitting of the same series. The QR code survives the move, so the link already in their inbox still works.
- Waiting for a dateFeature page
Take a ticket off its sitting, free the seat, keep the ticket, and assign a date later.
- Customers change their own dateFeature page
Switch it on and ticket holders move themselves from their ticket page, up to your cutoff and three times each.
Every change to a ticket, from moves and transfers to check-ins and emails, with who made it where the app knows.
Private notes on one ticket or a whole order that customers never see.
One seat goes back on sale and the waitlist is told. No money moves.
A Shopify refund marks the matching tickets refunded, frees the seats, returns the ticket credits and emails the waitlist.
And the app names what really happened rather than showing a blank confirmation.
Check-in and the door
Any phone, no app store, no Shopify login for the person holding it.
- QR ticket scanner on any phoneFeature page
Open a link, add it to the home screen, scan with the camera. Unlimited devices.
Staff type a short code to open the scanner, and it stays open for a twelve-hour shift. No Shopify login.
Two lists on the scanner: who has not arrived and who has, with check-in and undo on the row.
One button emails the scanner link and the PIN to the phone that will do the scanning.
Per ticket type: any time, from the day the event starts, or between a start and an end you set.
How many times one ticket may be scanned - once, or enough for an in-and-out night.
For a cracked screen, a printed ticket or a flat battery.
Type the number and every ticket on that order comes up, with a Check in all button.
One tap reverses a scan, and the reversal is recorded rather than erased.
The scanner shows checked in against expected, and every scan also brings in what the other phones scanned.
On a date with 2,000 tickets or more, the scanner switches to a lighter view with a name and email search.
A roster row from a booking of two or more says so, with the order number, so staff know the rest of the party is coming.
One switch stops every scanner, phone and till, for events where you do not check anyone in.
Copy the scanner link and message it to your door staff. It is PIN-protected, so the link on its own is not access.
The scanner reads your admin language, with all six languages built into the page.
Manage check-in on the order page checks guests in from the Shopify admin, and the ticket history names the staff member.
Box office and Shopify POS
Sell at the till and scan at the door with the hardware your staff already hold.
The “Sell tickets” tile lists your events, dates and ticket types, and a buyer who gives an email gets the same tickets.
A Check In tile with the POS camera or a search box, using the same rules as the phone scanner.
The till asks the same add-on questions your store asks, once for the sale or per ticket.
Open a ticket line in the POS cart and type a name, email and phone per ticket before taking payment.
Open any POS order to see its tickets, send, resend, print or check them in.
Paper tickets from the POS Tickets modal, with a QR that scans exactly like the emailed one.
Walk-up buyers can add refund protection the same way online buyers can, asked once per sale.
Staff signed into POS with a PIN open the Check In tile with the event's check-in PIN.
After a POS sale the screen shows the tickets appearing, whether they were emailed, and a button straight into check-in.
Emails, PDF tickets and the ticket page
Seven editors for what a buyer sees, and six ready-made designs to start from.
The moment the order is paid, every ticket holder gets a branded email with their code and their event.
The confirmation, reminder, follow-up and waitlist emails, the PDF ticket, the ticket page and the popup each have their own editor.
Classic, Cinema, Workshop, Festival, Conference and Sports restyle the four emails, the PDF and the ticket page in one go.
Reorder and switch off the blocks, set the logo, accent, fonts and colours, and send yourself a real test.
A clean digital preset, or a physical stub with a tear-off, a gold-on-black look and an ADMIT ONE header.
Its own page with the QR, the details, a map link, add to calendar, the PDF and the check-in status.
Each block gets its own font, size, weight, alignment and colours, plus a page background and header bar.
Switch it on to email everyone from an hour to a week before, in your own words and design.
Switch it on for a thank-you, a review ask or a link to the next date, a set number of hours after it ends.
Individual delivery, everything to the buyer, or let the buyer choose in the popup or on the product page.
A code editor with live preview and a click-to-copy variable list, for six of the seven surfaces.
Rich text, an image or a two-column row - a sponsor logo, a map, a house-rules note.
The ticket holder corrects their own name and email from their ticket page.
Google, Outlook and a download that opens in Apple Calendar and everything else.
The logo you set once in Settings appears on the emails, the PDF and the ticket page unless a template sets its own.
One switch attaches the PDF as well as linking to it, and the app warns you that attachments hurt deliverability.
Type an address and send the real thing through the real mailer before a single customer sees it.
Type the name customers see as the sender, since a blank field sends as Easy Tickets; customer replies do not come to your inbox.
The QR is served as a real hosted image rather than pasted inline, because Gmail and Outlook strip inline images.
Languages
Your admin in your language, and every shopper served in theirs.
The popup, emails, tickets, PDF and ticket page follow the language each shopper shops in.
A Languages tab on each event and a Translate button in every editor hold the translations you type yourself.
The admin speaks English, Spanish, French, German, Portuguese or Danish, whichever you pick in Settings.
Integrations and automation
Five Shopify Flow triggers and the marketing tools you already pay for.
Ticket Purchased, Attendee Checked In, Ticket Moved, Event Sold Out and Waitlist Signup, with no code.
Every ticket buyer becomes a profile with an Ordered Ticket event, and check-ins, refunds, moves and waitlist sign-ups arrive as events too.
Ticket buyers are added to an audience and tagged with the event name.
Server-to-server credentials once, then every online event gets its own meeting.
If an order does not reach the app when it is placed, the app sweeps recent orders and mints the tickets that were missed.
Running the business
The screens you open after the tickets have sold.
An estimated revenue figure, orders, attendees, the split by ticket type, recent attendees and the upcoming dates, per event.
Tickets and orders over time, an estimated ticket value, the check-in rate, arrival times and booking sources, with an Export CSV button.
Filter, switch between active and archived, and act on many events at once.
A guided list that deep-links into the theme editor and notices for itself when the theme work is done.
How many tickets you have used this cycle, a progress bar, and the exact date the allowance resets.
A “Need help?” button on every screen sends your message to a real person, and the reply comes back by email.
- Everything runs on its own in the background
Ticket emails, reminders, follow-ups and waitlist emails go out from a queue that retries by itself, with nothing for you to set up.
Something you need that is not on this list? Email support@upsellshark.com and say what you are running. Most of what is here started as a merchant asking for it.