Eventonomy

Payment Gateways

Pro - Payment gateways require Eventonomy Pro.

Eventonomy Pro supports three ways to take payment: Stripe, PayPal, and your site's own checkout (WooCommerce). All are hosted-redirect: the buyer is sent away to pay and then returned to your site. There is no on-page card entry, so card data never touches your site.

Where they land on return depends on whether they were signed in - the order-confirmation card on their dashboard if they were, their own order page at /order/<token>/ if not. See Tickets & Checkout.

A method appears at checkout only when you have both configured it and switched it on. Having keys saved is not enough - that way, credentials pasted while testing never start taking real money by themselves.

You can offer more than one. When several are on, the buyer picks from a "Pay with" selector and the Active gateway setting is the default pre-selection; with only one, checkout goes straight to it.

Your site's own checkout is the exception: when it is on, it is the only method offered. It already provides whatever payment methods you set up in WooCommerce - commonly Stripe or PayPal - so listing those separately would ask the buyer to choose between a method and the checkout that contains it, and the money would land in a different place depending on which they picked.

Payment gateway selector in Settings with Stripe selected and API key field visible

What You Will Learn

  • Where to configure payment gateways
  • Step-by-step setup for Stripe, PayPal, and your site's own checkout
  • What a webhook URL is and why you need it
  • How the buyer picks a gateway when several are configured

Where to Configure Gateways

Go to Eventonomy → Settings → Money → Payments (Pro).

Note: This card is only visible when Pro is active. In the Free plan the card is not shown, and a paid-ticket event with no gateway configured shows an honest "Online ticket sales are not available for this event yet" notice instead of a dead Order button.

Under Offer at checkout, tick each method you want buyers to see. A method you have not configured yet cannot be ticked, and the row tells you what is missing. Then enter that method's credentials below and pick the Active gateway (the default selection buyers see).

Upgrading from an earlier version? Nothing changes for you. Any method that was already working stays switched on - the update turns on whatever your site was already using.

Stripe

Stripe processes payments with 0% platform fee from Eventonomy. Stripe charges its own standard processing fee.

Setup Steps

  1. Go to Stripe Dashboard → Developers → API keys.
  2. Copy your Secret key (starts with sk_live_ for production or sk_test_ for sandbox).
  3. Paste it into the Secret key field in Eventonomy → Settings → Money → Payments.
  4. Copy the Webhook URL shown in the same panel.
  5. In the Stripe Dashboard, go to Developers → Webhooks and click Add endpoint.
  6. Paste the Webhook URL and subscribe to these events:
    • checkout.session.completed and payment_intent.succeeded - to settle paid orders.
    • charge.refunded and charge.dispute.created - so a refund or lost dispute issued in the Stripe dashboard reconciles back into Eventonomy automatically (see Refunds).
  7. After creating the endpoint, Stripe shows a Signing secret (starts with whsec_). Copy it and paste it into the Webhook signing secret field in the same Eventonomy panel; Eventonomy uses it to verify that webhook calls genuinely come from Stripe.
  8. Save changes.

Sandbox Testing

Use a sk_test_ key to test without real charges. Stripe test cards are listed in the Stripe docs.

If a webhook is missed

If Stripe's webhook is delayed or missed and the buyer never returns to your site, Eventonomy Pro's hourly reconcile sweep re-checks stale-pending Stripe orders directly with Stripe and settles any that were actually paid, so a missed webhook never strands a paid order.


PayPal

PayPal uses REST API credentials from the PayPal Developer Dashboard. Like Stripe, it is a hosted-redirect gateway: the buyer approves the payment on PayPal and returns to your site to be confirmed.

Setup Steps

  1. Go to PayPal Developer Dashboard → Apps & Credentials.
  2. Toggle between Sandbox and Live to match the environment you want to set up.
  3. Open your app (or create one) and copy the Client ID and Secret.
  4. Paste them into the Client ID and Secret fields in Eventonomy → Settings → Money → Payments.
  5. If testing, check Use the PayPal sandbox (test) environment.
  6. Copy the Webhook URL shown in the panel.
  7. In the PayPal Developer Dashboard, add the Webhook URL to your app's Webhooks and subscribe to payment completion events.
  8. PayPal assigns the new webhook a Webhook ID. Copy it and paste it into the Webhook ID field in the Eventonomy panel. With the Webhook ID saved, Eventonomy verifies each webhook call's signature with PayPal directly; until you save one, webhook calls are gated by the HMAC token built into the Webhook URL instead.
  9. Save changes.

Note: Make sure the sandbox checkbox matches the credentials you entered. Sandbox credentials do not work in live mode and vice versa.


Your site's own checkout (WooCommerce)

Hands the order to your existing WooCommerce installation and uses whatever payment methods you have configured there. The buyer pays through WooCommerce and returns to their confirmation.

Buyers never see the word "WooCommerce". It is presented as paying on your site, because that is what it is from their side - WooCommerce is software you run, not a payment method they chose or recognise.

When this is on, it is the only method offered (see above). If you would rather offer Stripe or PayPal directly through Eventonomy, leave this one off and switch those on instead.

Requirements

  • WooCommerce must be installed and activated.
  • At least one WooCommerce payment method must be enabled.

Setup Steps

  1. Tick This site's own checkout (WooCommerce) under Offer at checkout.
  2. No API keys are needed here - WooCommerce holds those.
  3. Save changes. Any other method you had switched on stops being offered, since this one takes over.

Note: WooCommerce order records live in WooCommerce → Orders, but you can still refund a WooCommerce-paid Eventonomy order from Eventonomy → Attendees & Orders, and the Refund button drives wc_create_refund for you (see Refunds).


About Webhook URLs

Each gateway uses a webhook URL to confirm that a payment was completed server-side. Eventonomy generates a unique, HMAC-authenticated webhook URL for each gateway:

https://yoursite.com/wp-json/eventonomy/v1/payments/{gateway}/webhook?wht={token}

The wht parameter is an HMAC token derived from your site's secret keys. Stripe calls are verified with the Webhook signing secret (whsec_…) instead, and PayPal calls are verified natively once you save the Webhook ID; the wht token remains the gate for WooCommerce and for PayPal before a Webhook ID is saved. Paste this URL into your gateway dashboard so the gateway can call it when a payment (or refund) occurs.

How Buyers Pick a Gateway

  • One gateway configured → checkout routes to it automatically.
  • Several gateways configured → the RSVP block shows a "Pay with" selector, pre-selected to your Active gateway, and the buyer chooses.

Existing paid orders retain their original gateway's transaction IDs. Changing which gateways are configured does not affect already-settled orders.

What's Next?

Configure taxes, booking fees, and coupon codes.

Tax, Fees & Coupons →