Overview
A payment processor (or gateway) is the external service that authorises and captures electronic payments on your behalf. Before you can accept online payments, you need to connect at least one payment gateway and configure it for the channels where you want to accept payments. The platform supports over 25 payment gateways. Each gateway connects using credentials from your gateway account, and can be enabled separately for the ticket shop and box office. The gateway you choose affects which payment methods are available to your customers — some gateways offer only standard card payments, while others support local payment methods, in-person terminals, or mobile wallets.Connecting a Gateway
To connect a payment gateway:- Navigate to Settings > Payment
- Find the gateway you want to connect in the Payment gateways section
- Click the gateway to open its settings
- Enter your gateway credentials (API keys, merchant IDs, or other details specific to the gateway)
- Click Save — credentials are validated before being stored
Gateway credentials are encrypted before being stored. If you need to disconnect a gateway, you can revoke its credentials from the same settings panel.
Enabling a Gateway per Channel
After connecting a gateway, you choose where it’s available:| Toggle | Effect |
|---|---|
| Enable in box office | Makes this gateway available for box office sales |
| Enable in shop | Makes this gateway available for ticket shop sales |
Setting a Primary Gateway
When multiple gateways are enabled for the same channel, you need to designate one as the primary gateway. The primary gateway is the default used for processing payments in that channel. Primary gateways are set independently for each channel:- Shop Primary — the default gateway for ticket shop transactions
- Box Office Primary — the default gateway for box office transactions
A gateway must be enabled for a channel before it can be set as the primary for that channel.
Payment Mode (Live vs Demo)
Each company has a payment mode that controls whether transactions use live or test credentials:| Mode | Behaviour |
|---|---|
| Live | Real payments are processed. Money is exchanged. |
| Demo | No money is exchanged. Use test card numbers from your gateway’s documentation. |
How Gateways Process Payments
Not all gateways work the same way. The platform handles four distinct integration patterns, each providing a different checkout experience:- Embedded form
- Redirect
- Form POST
- Server-side API
The payment form appears directly within your checkout page. The customer enters their card details without leaving your site. The form is rendered by the gateway’s JavaScript SDK, so card details are transmitted securely to the gateway without touching your servers.Gateways using this approach: Stripe, Adyen, Nuvei, OnvoThis is the smoothest customer experience — no redirects, no page changes. Stripe’s Payment Element also supports wallets (Apple Pay, Google Pay) and local payment methods within the same embedded form.
Supported Gateways
The following sections detail each supported gateway, grouped by connection method. Each entry covers the credentials required, any special capabilities, and where the gateway operates.OAuth-Connected Gateways
These gateways connect via an authorisation flow — you click a connect button and sign in to your gateway account rather than manually entering API keys.Stripe
Stripe
Stripe is the most feature-rich gateway integration on the platform. It uses Stripe’s Payment Element for an embedded checkout experience and supports the widest range of payment capabilities.Connection: Click Connect with Stripe to authorise via Stripe Connect. Your Stripe account ID and publishable key are stored automatically.Capabilities:
Additional payment methods available via Stripe:Stripe supports a growing list of local and alternative payment methods that can be enabled from the gateway settings. These include Klarna, Afterpay/Clearpay, Affirm, iDEAL, Bancontact, EPS, Przelewy24 (P24), GrabPay, FPX, Alipay, WeChat Pay, Cash App, and Swish. Each method is currency-restricted — the platform automatically shows only the methods that match the customer’s order currency.
| Feature | Details |
|---|---|
| Card payments | Embedded payment form (Stripe Payment Element) |
| Apple Pay & Google Pay | Supported automatically when your domain is registered — the wallet buttons appear within the payment form |
| MOTO payments | Enable the MOTO toggle in gateway settings. Allows box office staff to manually enter card details provided over the phone or by mail. Requires MOTO to be enabled on your Stripe account. |
| Terminal payments | Enable the Terminal toggle. Supports physical card readers (e.g. BBPOS WisePOS E) for in-person tap/insert payments. Staff can register, connect, and manage card readers from the box office. |
| Saved cards | Customers can save their card for future checkouts. Saved cards are stored securely by Stripe and shown to returning customers at checkout. |
| Local payment methods | Additional payment methods can be enabled per gateway — for example, OXXO (Mexico, MXN only). OXXO generates a voucher the customer pays at a convenience store, with a configurable expiry of 1–7 days. |
| Stripe Link | Stripe’s quick-checkout feature that auto-fills saved payment details for returning customers |
| Installments | Supports Mexican card installments (meses sin intereses) where available |
| Interac | Canadian Interac payments supported on terminals when the Interac toggle is enabled |
| Webhooks | Payment confirmation is received via webhooks. Webhooks are configured automatically at the platform level. |
Apple Pay and Google Pay require your shop domain to be registered with Stripe. The platform handles this automatically on first payment, but custom domains may need the Apple Pay domain verification file to be accessible at
/.well-known/apple-developer-merchantid-domain-association.PayPal
PayPal
PayPal connects via OAuth and provides a PayPal checkout button that customers click to pay through their PayPal account or enter card details on PayPal’s hosted pages.Connection: Click the Authorize button to connect your PayPal account. Your merchant email and account details are stored automatically.Settings:
| Setting | Description |
|---|---|
| Button colour | Choose the PayPal button colour: gold, blue, black, silver, or white |
| Button shape | Choose the button shape: rectangular or pill |
| Advanced integration | Toggle between basic and advanced PayPal integration modes |
PayPal supports two product types: Express Checkout and PayPal Commerce Platform (PPCP). The product type is determined during the OAuth connection and affects which features are available.
SumUp
SumUp
SumUp connects via OAuth and provides online card payment processing. It’s a straightforward gateway suitable for simple card payment needs.Connection: Click the authorise button to connect your SumUp account.Settings:
| Setting | Description |
|---|---|
| Show zipcode | Whether to collect the customer’s postal code during checkout |
Manually Configured Gateways
These gateways require you to enter API credentials directly. Most provide separate fields for test and live credentials.Adyen
Adyen
Adyen uses an embedded checkout form (Drop-in component) and requires webhook configuration for payment confirmation.Credentials (test and live):
Capabilities:
| Field | Description |
|---|---|
| API key | Your Adyen API key from the Adyen dashboard |
| Merchant account | Your Adyen merchant account name |
| Client key | Domain-specific client key for front-end validation |
| HMAC key | Used for webhook signature verification |
| Order reference prefix | Optional prefix added to payment references for reconciliation |
| Live URL prefix | (Live only) Your live endpoint prefix from Adyen |
- MOTO payments (enable the MOTO toggle)
- Webhook-based payment confirmation — the gateway settings display the webhook URL you need to configure in your Adyen dashboard
Adyen requires you to manually configure webhooks in your Adyen dashboard. The webhook URL is displayed in the gateway settings modal — copy this URL and add it as a Standard webhook in Adyen.
Revolut
Revolut
Revolut uses a redirect-based payment flow — customers are redirected to Revolut’s hosted payment page to complete their payment.Credentials (test and live):
Capabilities:
| Field | Description |
|---|---|
| Public key | Your Revolut public API key |
| Secret key | Your Revolut secret API key |
- Webhook-based payment confirmation
- Webhook management directly from the gateway settings (view, delete, and restore registered webhooks)
Worldpay
Worldpay
Worldpay redirects customers to a hosted payment page. It supports separate credential sets for standard (ecommerce) and MOTO transactions.Credentials (test and live, for both ECOM and MOTO):
Settings:
| Field | Description |
|---|---|
| Username | Your Worldpay API username |
| Password | Your Worldpay API password |
| Installation ID | Your Worldpay installation identifier |
| Merchant code | Your Worldpay merchant code |
| Setting | Description |
|---|---|
| MOTO enabled | Enables mail order / telephone order payments with separate MOTO credentials |
| Proceed when authorised | Controls payment authorisation handling behaviour |
Nuvei
Nuvei
Nuvei uses an embedded checkout form and supports Google Pay. It requires minimal configuration.Credentials (test and live):
Settings:
Capabilities:
| Field | Description |
|---|---|
| Merchant site ID | Your Nuvei merchant site identifier |
| Setting | Description |
|---|---|
| Statement descriptor | Text that appears on cardholder statements (max 25 characters) |
- Google Pay support
- Webhook-based payment confirmation
- MOTO payments (enabled automatically)
Authorize.NET
Authorize.NET
QuickPay
QuickPay
QuickPay redirects customers to a hosted payment page for card entry.Credentials (test and live):
| Field | Description |
|---|---|
| API key | Your QuickPay API key |
Tap
Tap
Tap processes payments via server-side API calls and is commonly used in the Middle East.Credentials (test and live):
Settings:
| Field | Description |
|---|---|
| Secret API key | Your Tap secret API key |
| Publishable API key | Your Tap publishable API key |
| Setting | Description |
|---|---|
| Transaction mode | Choose between Charge (immediate capture) or Authorize (capture later) |
| Allow currency conversion | Whether Tap should convert currencies automatically |
SimplePay
SimplePay
SimplePay is a Hungarian payment gateway that redirects customers to a hosted payment page. It supports multiple currencies with separate credentials per currency.Credentials (per currency — HUF, EUR, USD, and SZEP):
Capabilities:
| Field | Description |
|---|---|
| Merchant ID | Your SimplePay merchant identifier for this currency |
| Secret key | Your SimplePay secret key for this currency |
- SZEP card support (Hungarian employee benefit cards) — only available for HUF currency transactions
Each currency requires its own merchant ID and secret key pair. If you only accept payments in one currency, you only need to configure credentials for that currency.
Ryft
Ryft
Ryft connects via an email-based account linking flow and uses webhooks for payment confirmation.Configuration:
Settings:
| Field | Description |
|---|---|
| The email address associated with your Ryft account. The platform links your sub-account automatically. |
| Setting | Description |
|---|---|
| Billing address collection | Choose from: none, minimum, or full billing address collection |
Curlec
Curlec
Curlec (powered by Razorpay) processes payments via server-side API calls with support for platform/marketplace payment models.Configuration (test and live):
| Field | Description |
|---|---|
| Funds held by | Choose whether funds are held by the Platform or the Merchant |
| Account ID | (If Merchant selected) Your Curlec/Razorpay account identifier |
Hyperpay
Hyperpay
Hyperpay supports multiple currencies with per-currency entity configurations. It’s commonly used in the Middle East and North Africa.Configuration (per currency):
Capabilities:
| Field | Description |
|---|---|
| Access token | Your Hyperpay access token for this currency |
| Entities | One or more payment entities, each with an entity ID, label, and card brand channels (Visa, Mastercard, Apple Pay, Google Pay) |
- Apple Pay and Google Pay (configurable per entity)
- Multiple entities per currency for routing payments to different merchant accounts
Hyperpay requires separate configuration for each currency you accept. Within each currency, you can configure multiple entities to support different card brands or payment channels.
M-Pesa
M-Pesa
M-Pesa is a mobile money payment method used primarily in East Africa (Kenya). Customers receive a push notification on their phone to authorise the payment.Credentials (test and live):
The customer enters their M-Pesa phone number at checkout and receives a push notification to confirm the payment on their device.
| Field | Description |
|---|---|
| Service provider code | Your M-Pesa service provider code |
| Public key | Your M-Pesa public key |
| API key | Your M-Pesa API key |
| Security credential | Your M-Pesa security credential |
| Initiator credential | Your M-Pesa initiator credential |
DPO Pay
DPO Pay
DPO Pay (formerly 3G Direct Pay) redirects customers to a hosted payment page. It’s used across Africa and the Middle East.Credentials (test and live):
| Field | Description |
|---|---|
| Company token | Your DPO Pay company token |
| Service type | Your DPO Pay service type identifier |
| Base URL | The DPO Pay API base URL |
| Pay endpoint | The DPO Pay payment endpoint URL |
Onvo
Onvo
Onvo uses an embedded payment form via its JavaScript SDK.Credentials (test and live):
| Field | Description |
|---|---|
| Base URL | The Onvo API base URL (e.g. https://api.onvopay.com) |
| SDK URL | The Onvo SDK URL (e.g. https://sdk.onvopay.com/sdk.js) |
| Public key | Your Onvo public key |
| Secret key | Your Onvo secret key |
Barclays ePDQ
Barclays ePDQ
Barclays ePDQ uses a form POST approach — an encrypted form is submitted to the Barclays payment endpoint.Credentials (test and live):
| Field | Description |
|---|---|
| PSPID | Your Barclays ePDQ payment service provider ID |
| SHA-IN passphrase | Used to sign outgoing payment requests |
| SHA-OUT passphrase | Used to verify incoming payment responses |
| User ID | Your Barclays ePDQ user ID |
| Password | Your Barclays ePDQ password |
PayTabs
PayTabs
PayTabs redirects customers to a hosted payment page. It requires the customer’s billing address at checkout.Credentials (test and live):
| Field | Description |
|---|---|
| Profile ID | Your PayTabs profile identifier |
| Server key | Your PayTabs server key |
| Client key | Your PayTabs client key |
Pay Retailers
Pay Retailers
Pay Retailers uses a form POST approach and supports a variety of local payment methods across Latin America, including cash payments, online bank transfers, and credit cards. It requires the customer’s billing address at checkout.Credentials (test and live):
| Field | Description |
|---|---|
| Commerce ID | Your Pay Retailers commerce identifier |
| API key | Your Pay Retailers API key |
Netpay
Netpay
Netpay processes payments via server-side API calls with 3D Secure support. It is a Mexico-based gateway and requires the customer’s billing address and phone number at checkout.Credentials (test and live):
| Field | Description |
|---|---|
| API key | Your Netpay API key |
| Secret key | Your Netpay secret key |
| Store ID | Your Netpay store identifier |
Transbank
Transbank
Transbank (Webpay Plus) is a Chile-specific gateway that uses a form POST approach via the Webpay SDK.Credentials:
- Test mode: Test credentials are automatically configured — no manual entry needed
- Live mode: Enter your Commerce code and API key
PowerTranz
PowerTranz
PowerTranz (First Atlantic Commerce) processes payments via server-side API calls with 3D Secure 2.0 support. It is commonly used in the Caribbean.Credentials (test and live):
| Field | Description |
|---|---|
| Merchant ID | Your PowerTranz merchant identifier |
| Processing password | Your PowerTranz processing password |
| Gateway key | (Optional) Additional security key |
Bloomin
Bloomin
Bloomin uses a form POST approach with optional 3D Secure support. It requires the customer’s billing address at checkout.Credentials (test and live):
| Field | Description |
|---|---|
| Merchant ID | Your Bloomin merchant identifier |
| Terminal ID | Your Bloomin terminal identifier |
| Secret key | Your Bloomin secret key |
Banorte
Banorte
Banorte uses a form POST approach and is a Mexico-based gateway. It requires the customer’s billing address at checkout.Credentials (test and live):
| Field | Description |
|---|---|
| Merchant ID | Your Banorte merchant identifier |
| Terminal ID | Your Banorte terminal identifier |
| User | Your Banorte API username |
| Password | Your Banorte API password |
Billing Address and Phone Requirements
Some gateways require customer billing information at checkout. When you enable one of these gateways, the relevant fields are automatically added to the checkout flow.| Requirement | Gateways |
|---|---|
| Billing address required | PayTabs, Pay Retailers, Bloomin, Banorte, Nuvei |
| Billing address and phone number required | Netpay |
Ryft also supports billing address collection but makes it configurable — you can choose none, minimum, or full address collection from the gateway settings.
Special Gateway Capabilities
MOTO Payments
Mail Order / Telephone Order (MOTO) payments allow box office staff to process card payments by manually entering card details provided over the phone or by mail. Staff enter the card number, expiry date, and CVV directly into the box office checkout. MOTO is supported by:- Stripe — enable the MOTO toggle in gateway settings
- Adyen — enable the MOTO toggle in gateway settings
- Worldpay — requires separate MOTO credentials (username, password, installation ID, and merchant code)
- Nuvei — MOTO is enabled automatically
MOTO capability may need to be enabled on your gateway account before it can be used. Contact your payment gateway provider to confirm MOTO is available on your account.
Terminal Payments
Physical card terminal integration allows customers to tap or insert their card at a connected terminal device for in-person payments. Currently, only Stripe supports terminal payments through Stripe Terminal. To set up terminal payments:- Enable the Terminal toggle in your Stripe gateway settings
- From the box office, select or register your card reader device
- Wait for the reader to connect and any firmware updates to apply
- Process payments by selecting the terminal payment method at checkout
In demo mode, you can use a simulated card reader for testing. Enter a Stripe Terminal test card number to simulate different payment outcomes.
Apple Pay and Google Pay
Apple Pay and Google Pay are supported through Stripe and appear as wallet payment options within the embedded payment form when available. Customers using a supported device and browser see the wallet buttons alongside the standard card entry fields. Hyperpay also supports Apple Pay and Google Pay, configured per entity within the gateway settings. Your shop domain must be registered for wallet payments to work. The platform handles Stripe domain registration automatically. For Apple Pay specifically, the domain verification file must be accessible at/.well-known/apple-developer-merchantid-domain-association — this is served automatically for standard setups, but custom domains may need additional configuration. You can upload a custom Apple Pay verification certificate from Settings > Payment under Apple Pay domains.
Local Payment Methods
Several gateways support region-specific payment methods beyond standard cards:| Gateway | Local methods | Region |
|---|---|---|
| Stripe | OXXO, Klarna, Afterpay/Clearpay, Affirm, iDEAL, Bancontact, EPS, P24, GrabPay, FPX, Alipay, WeChat Pay, Cash App, Swish | Global (currency-dependent) |
| Pay Retailers | Cash payments, online bank transfers | Latin America |
| M-Pesa | Mobile money transfer | East Africa |
| SimplePay | SZEP cards (employee benefit) | Hungary |
OXXO payments are asynchronous — the customer receives a voucher to pay at a convenience store. The order moves to Awaiting local payment status until the payment is confirmed via webhook. The voucher expiry can be configured from 1 to 7 days (default: 3 days).
Saved Cards
Stripe is currently the only gateway that supports saved cards. When a customer checks the Save this card for future checkouts option during payment, their card details are securely stored by Stripe. On subsequent checkouts, the customer sees their saved cards and can select one rather than re-entering card details. Saved cards are stored per customer. The platform creates a Stripe Customer object for each customer who saves a card, linking their saved payment methods to their account.Platform-Managed Gateways
In some configurations, your account manager may manage gateway credentials on your behalf. When this is the case:- The account manager connects the gateway at the platform level
- Your company uses the platform credentials for processing
- You may not see credential fields or payment mode toggles in your settings
Troubleshooting
Common issues when configuring gateways:| Problem | Likely cause |
|---|---|
| Credentials rejected when saving | Invalid API key, merchant ID, or secret. Double-check values from your gateway dashboard. |
| Gateway enabled but payments fail | Payment mode mismatch — live credentials in demo mode (or vice versa). |
| Gateway not appearing in checkout | Gateway is connected but not enabled for the relevant channel (shop or box office). |
| Billing address errors at checkout | A gateway that requires billing address is enabled but the checkout form is not collecting it. This is handled automatically, but custom checkout implementations may need updating. |
| Wallet payments (Apple/Google Pay) not appearing | Domain not registered — this usually resolves automatically on first payment attempt. Check that the Apple Pay verification file is accessible for custom domains. |
| MOTO option not available in box office | MOTO toggle not enabled in gateway settings, or MOTO not enabled on your gateway account. |
| Terminal reader not connecting | Ensure the reader is powered on, connected to the internet, and up to date with firmware. Try reconnecting from the box office. |
