Eventonomy

← All guides

Guide

Sell Event Tickets on WordPress Without Per-Ticket Fees

The best way to sell event tickets on WordPress without paying per-ticket fees: your own site, your own Stripe or PayPal, and no platform cut on any sale.

The best way to sell event tickets on WordPress without paying per-ticket fees is to sell them from your own site, through your own payment account, with a ticketing plugin that does not take a cut. With Eventonomy Pro, buyers pay through your Stripe, PayPal or WooCommerce checkout, the money lands with you, and we charge no per-user fee, no per-ticket platform fee and no commission.

You will still pay your payment processor’s own charge for handling each payment. That is the one cost that does not go away, and we cover it plainly below. If Eventbrite fees are eating into your ticket sales, the rest of this guide shows how the money moves, how to set up each part, and what does and does not come with you when you move.

Where does the money go when I sell tickets on my own site?

On a hosted ticketing platform, the buyer pays the platform, the platform takes its fee, and the rest is paid out to you on a schedule. The platform sits between you and your buyers, and it holds the money in the meantime.

On your own site the path is shorter. The buyer picks tickets on your event page, is sent to a payment page to pay, and the payment goes to the Stripe or PayPal account that you connected. Eventonomy never holds the money and does not sit in the middle of it. Eventonomy takes a 0% platform fee on Stripe payments: Stripe charges its own standard processing fee, and nothing is added on top by us.

Here is what that means in practice:

  • No per-user fee. Eventonomy is a plugin on your own WordPress site. It does not charge for how many people use it.
  • No per-ticket platform fee. Selling 20 tickets or 2,000 costs the same as far as we are concerned.
  • No commission. We do not take a share of your sales.
  • Hosted-redirect checkout. Buyers are sent away to pay and then returned to your site, so card details never touch your site.

The trade is real, and we would rather say it than hide it. A hosted platform is one bill and one login. A plugin on your own site means you install it, host it and keep it updated. If you already run a WordPress site, that cost is mostly one you already carry.

What do I still pay?

You pay your payment processor. Stripe, PayPal and the gateways inside WooCommerce each charge their own fee for processing a payment. Those charges are set by them, they are the same whichever ticketing software you use, and Eventonomy does not add to them or take any of them.

If you already run a WooCommerce store, our WooCommerce event registration guide walks through that route step by step.

We are not going to quote percentages here. Processor rates differ by country, by card type and by your account, and they change. Look at your own processor’s pricing page, then work out your cost on your own numbers.

If you want an honest comparison with Eventbrite, take your last year of paid tickets and work out two totals. One is what Eventbrite’s own pricing page implies for your ticket prices and volume. The other is your processor’s charge plus the Pro licence and your hosting. Include your own time. Which side comes out ahead depends on how many tickets you sell and at what price, and for a small one-off event it may well be Eventbrite. Our Eventonomy vs Eventbrite comparison walks through that exercise.

Pro is a flat yearly licence, from $99 a year. It does not change with the number of tickets you sell.

Which payment method should I use: Stripe, PayPal or WooCommerce checkout?

Eventonomy Pro supports three, and all three are hosted-redirect. You can switch on more than one, and when you do, buyers see a “Pay with” selector.

MethodHow it worksSetup
StripeBuyers pay on Stripe Checkout.Paste your Stripe secret key, add the webhook URL in your Stripe dashboard, and paste back the signing secret.
PayPalBuyers approve the payment on PayPal and return to your site.Paste your PayPal Client ID and Secret, add the webhook URL, and paste back the Webhook ID.
This site’s own checkout (WooCommerce)The order is handed to your WooCommerce install, which uses the payment methods you set up there.Tick the option. No keys are needed in Eventonomy because WooCommerce holds them.

A method only shows to buyers when you have both configured it and switched it on. Pasting keys while you test does not start taking real money by itself. You can test Stripe with a test key and PayPal with its sandbox option before you go live.

Our advice on choosing:

  • If you want the simplest route and your buyers are happy with cards, start with Stripe.
  • If a share of your audience prefers PayPal, switch it on as well.
  • If you already sell other things through WooCommerce and want everything in one set of orders, use the WooCommerce option. It is the only method offered when it is on, because it already contains whatever payment methods you set up there.

The full steps, including the Stripe webhook events to subscribe to, are in the Payment Gateways documentation. We do not ship other gateways: Pro takes payment through Stripe, PayPal and the WooCommerce bridge.

Can I use WooCommerce for event registration?

Yes. If you searched for “WooCommerce event registration”, this is the part for you, and it is a Pro option.

Eventonomy is an events plugin that stands on its own, so it does not need WooCommerce. But if you already run WooCommerce, you can tell Eventonomy to use it for payment. Under Eventonomy, Settings, Payments, tick This site’s own checkout (WooCommerce) under “Offer at checkout”.

Here is what happens when you do:

  1. The buyer picks tickets in the RSVP block on your event page.
  2. Eventonomy passes the order to WooCommerce, and the buyer pays through whichever payment methods you have enabled there.
  3. The buyer returns to a confirmation with their tickets. Buyers never see the word “WooCommerce”; from their side they are paying on your site.
  4. The order record lives in WooCommerce, under WooCommerce, Orders, and you can still issue a refund from Eventonomy’s Attendees & Orders screen. The Refund button does the WooCommerce refund for you.

Two requirements apply: WooCommerce must be installed and active, and at least one WooCommerce payment method must be enabled. Remember too that when this option is on, it is the only method offered, so any Stripe or PayPal switched on directly in Eventonomy stops being shown. If you would rather offer Stripe or PayPal straight from Eventonomy, leave the WooCommerce option off.

Registration still follows the event’s own settings. The event must be set to “People register here” for orders to be accepted.

How do I set up ticket types, tiers and early-bird pricing?

Tickets are set up in the event editor, in the Tickets panel. Click Add ticket, then give it a name, a type, a price, a quantity and an optional sales window. An event can hold up to 100 ticket types.

There are three ticket types:

  • Free. A $0 ticket. Registration completes straight away, and this works in the free plugin.
  • Paid. A fixed price. You can define paid tickets on the free plugin so your data is ready, but buyers cannot check out until Pro is active.
  • Donation. The buyer enters an amount. The free plugin shows the pledge without charging it. With Pro it is a full charge.

A few settings do most of the work:

  • Quantity. The maximum number of that ticket type. Zero means unlimited. When every ticket type is sold out, or the event capacity is used up, the event counts as full.
  • Sales start and sales end. A ticket sells only inside its window. Before it opens, the ticket shows its opening date. After it closes, it shows “Sales ended”. An order placed outside the window is refused, even if the buyer left an old page open.
  • Copy tickets from another event. If you run similar events, copy the ticket rows from one you already built, then edit them.
  • Currency. One currency for the whole site, set under Settings, Payments. There is no per-ticket currency.

Early-bird pricing

With Pro, each paid ticket can carry an early-bird price and an early-bird ends time. While the window is open, buyers are charged the early-bird price, and the event page shows the normal price struck through with the date the offer ends. When the time passes, the price returns to normal without you editing the event.

Two rules are worth knowing. Early-bird pricing applies only to paid tickets. And it is only ever a discount: the buyer is charged the lower of the early-bird price and the normal price, so an early-bird price set higher than normal is ignored.

If you want to run tiers in the more usual way, one ticket type per round, you can combine a sales window on each type. Open “Early bird” now and close it on a set date, then open “General admission” the next day. We wrote a longer piece on this in early-bird ticket pricing on WordPress.

How do tax, fees and coupons work?

All three are Pro features, and all three apply to every paid order. They appear in a live itemized summary at checkout, so the buyer sees each line before paying.

Tax. Turn on “Apply tax to orders”, set a rate and a label such as VAT or GST, and choose whether your ticket prices already include tax. The rate applies site-wide. There is no per-event or per-ticket setting in the admin; a developer can vary the rate by event or venue with a filter. Donations are left out of tax by default.

Booking fee. This is a service charge that you can add on top of the ticket price, as a percentage of the subtotal or a flat amount per order, with a label of your choosing. You decide who pays it. “Buyer pays” adds it to the total. “Organizer absorbs” records the fee on the order without adding it to the charge. This fee is your own: it is for you to set, and it is separate from your processor’s charge. If you do not want one, leave it off.

Coupons. Create them from Settings, Payments, under Coupons. A coupon can be a percentage or a fixed amount, with a usage limit, start and end dates, a minimum subtotal, and an optional restriction to one event or one ticket type. A coupon with a usage limit claims its use the moment the order is created, so two people cannot both spend the last use. If a buyer abandons the checkout, the use is given back after an hour.

The order of calculation is the same every time, and it is recalculated on the server when the buyer is charged, so a changed price in the browser cannot lower the amount taken:

  1. Subtotal, with any early-bird price already applied.
  2. Coupon discount.
  3. Booking fee on the discounted amount.
  4. Tax.
  5. Total.

More detail is in Tax, Fees & Coupons.

How do refunds work?

Refunds are a Pro feature. In Eventonomy, Attendees & Orders, each paid order has a Refund button. Click it, confirm the prompt, and the order is refunded through the gateway that took the payment.

When an order is refunded:

  • The seat goes back on sale.
  • The attendee’s ticket stops working, so a scan at the door is refused.
  • Any coupon use held by that order is released.
  • The buyer is emailed about what happened.

Ticket holders can also ask you to cancel and refund. Asking moves no money and frees no seat; the tickets stay valid until you approve or decline. You see open requests under a Refund requested filter and answer them from the order row.

There is one limit to plan around. Eventonomy refunds the whole order. It does not issue partial refunds. If you need to return part of a payment, do it in your gateway’s own dashboard. Eventonomy records the change, the order stays paid and the tickets stay valid.

Cancelling an event does not refund anyone automatically. It emails everyone who was going, and you refund each paid order yourself. You can also set refund and cancellation policy text under Settings, Payments, and it appears on the checkout confirmation, the order page, the emails and the PDF invoice.

What happens when a paid event sells out?

When an event is full and Waitlist when full is on under Settings, Registration, the ticket picker is replaced with a waitlist form. A signed-in visitor sees one button. A visitor who is not signed in gives a name and an email.

A waitlisted person has no ticket and no order, so nothing is charged. They do not count against capacity, and they cannot be checked in at the door until you change their status.

Here is the part that differs from a free event, and it changed in 1.9.0. On a free RSVP event, the oldest person on the waitlist is promoted automatically when someone cancels. A paid event does not do that, on purpose, because a paid seat should come with a paid ticket and an automatic promotion would admit someone without charging them.

Instead, when a seat opens up, because someone cancelled, an order was refunded or an unpaid checkout expired, everyone on the waitlist is emailed with a Buy your ticket button. The first person to complete checkout gets the seat. Nobody is reserved a place and there is no countdown. That email is classed as essential, so it reaches people even if they unsubscribed from other notification mail.

If you would rather choose who gets in, you can message the people you want from the roster, or give a waitlisted person a comp ticket with Add attendee. The details are in Waitlist for Sold-Out Paid Events, and our post on event waitlists for sold-out events covers the thinking behind it. For free events, see the RSVP and waitlist guide.

How do I check people in at the door?

Check-in is a Pro feature. Every ticket carries a QR code. At the door, the event’s organizer or a site Administrator scans it with any phone camera and the attendee is checked in. There is no app to install.

A few behaviours to know:

  • A second scan of the same ticket shows “Already checked in” and does not count twice.
  • A refunded or cancelled ticket is refused.
  • If an attendee scans their own code, nothing happens. They see a neutral “present this at the door” page, because only authorised staff can check people in.
  • Each seat is its own ticket, so three seats means three separate QR codes.

For hardware readers or a backup when a ticket will not scan, the check-in block lets staff search by name or email, or scan with a USB reader. On the free plugin there is no scanner, but the attendee list exports to CSV, which works as a printed sign-in sheet. See the Check-in Scanner documentation, or our event check-in guide.

What can I move over from Eventbrite, and what stays behind?

Be clear about this before you promise anything to your audience.

What moves. Pro includes an Eventbrite import. You paste a private token from your Eventbrite account, and it reads your events. You can connect the site as a whole, or let each member connect their own account. It scans first and counts what it finds before you import, it does not import the same event twice on later runs, and it can keep syncing hourly, daily, weekly or monthly. Without Pro, you can rebuild events by hand or load them from a CSV file with the free importer, which has a preview and an undo.

What does not move. The import brings events, not buyers. Attendee lists and tickets already sold stay in Eventbrite. Export your attendee list from there and keep the file. Sold tickets do not move.

How we suggest you switch:

  1. Set up payments first and make a test purchase before you announce anything.
  2. Build one upcoming event as a copy of your best seller and compare the buyer’s journey with the one you have today.
  3. Decide whether guests need accounts. The default creates one automatically, and the buyer can untick it. You can change this under Settings, Registration, “Do attendees need an account?”.
  4. Keep selling on Eventbrite for events that are already on sale. Move one new event, watch it, then move the rest.
  5. Check the event page and checkout on a 390 pixel phone.

Plenty of organizers run both for a season. They keep listing on Eventbrite for discovery and send their regular audience to their own site. If strangers finding a public one-off event is what you rely on, the marketplace is what you are paying for, and staying makes sense. Our Eventbrite alternatives page lays out the other paths.

What is free and what needs Pro?

The free plugin gives you the events themselves: event pages, free tickets, RSVPs with capacity and a free-event waitlist, reminders a day and an hour before, CSV exports and a CSV importer. You can define paid tickets and donation tickets there, but buyers cannot pay until Pro is active. In that case the event page shows an honest notice that online ticket sales are not available yet, instead of a dead Order button.

Pro is what turns the site into a place that takes money:

  • Paid checkout through Stripe, PayPal or your WooCommerce checkout
  • Tax, booking fees and coupons
  • Early-bird pricing
  • Refunds, including requests from ticket holders
  • QR check-in
  • The Eventbrite import

Pro is from $99 a year, a flat licence with no cut of your sales. The side-by-side list is on the Free vs Pro page, and the ticketing features are laid out on the event tickets page.

If you sell tickets only now and then, or you have no wish to run a site, a hosted platform may suit you better. If tickets are a regular part of what you do, and the fees are a regular part of what hurts, selling from your own site is worth the afternoon it takes to set up.

Questions

What is the best way to sell event tickets on WordPress without paying per-ticket fees?

Sell them from your own site with a ticketing plugin that connects to your own payment account. With Eventonomy Pro, buyers pay through Stripe, PayPal or your WooCommerce checkout, the money goes to your account, and Eventonomy takes no per-ticket platform fee, no per-user fee and no commission. You still pay your payment processor's own charge.

Do I still pay any fees?

Yes, the ones your payment processor charges for handling a card or PayPal payment. Those belong to Stripe, PayPal or whichever gateway you use, and they are the same whatever ticketing software sits on top. Eventonomy adds nothing to them. Pro itself is a flat yearly licence, from $99 a year.

Can I use WooCommerce for event registration?

Yes, with Pro. Switch on the site's own checkout option and Eventonomy hands the order to your existing WooCommerce install, which uses whichever payment methods you set up there. WooCommerce must be active with at least one payment method enabled. When it is on, it is the only method buyers are offered.

Can I run early-bird pricing and discount codes?

With Pro, yes. Each paid ticket can carry an early-bird price and an end time, and the price returns to normal on its own when that time passes. Coupons can be a percentage or a fixed amount, with usage limits, dates, a minimum subtotal, and a restriction to one event or ticket type.

What happens to the waitlist when a paid event sells out?

People can join a waitlist instead of being turned away. When a seat opens up, everyone on the waitlist gets an email with a Buy your ticket button, and the first person to complete checkout gets the seat. Nobody is promoted automatically, because a paid seat needs a paid ticket.

Can I move my Eventbrite events to my own site?

Your events can move; your buyers cannot. Pro includes an Eventbrite import that reads your events with a private token. Attendee lists and tickets already sold stay in Eventbrite, so export them there and keep the file. Without Pro you can rebuild events by hand or load them from a CSV file.

Can I take refunds?

With Pro, you can refund a whole order from the Attendees & Orders screen. The seat goes back on sale and the ticket stops working at the door. Eventonomy does not issue partial refunds; for those, use your gateway's own dashboard.

What is free and what needs Pro?

The free plugin covers events, free tickets, RSVPs, capacity, waitlists, reminders and CSV exports. Taking payment needs Pro: paid checkout, gateways, tax, fees, coupons, early-bird pricing, refunds and QR check-in.

Keep reading

Run events on a site you own.

The free plugin handles events, RSVPs and recurring dates without a subscription.

What Eventonomy does Free vs Pro

What customers say on Trustpilot

I was using an excellent plugin created…

I was using an excellent plugin created by Wbcom Designs and had both an error and discovered a slight bug in one aspect of the plugin. After creating a support ticket - I got a super-quick response and discovered the error was on my part and was fixed right away. Regarding the bug - I was thanked…

Edward BonthroneUS