Payment Settings
Payment Settings
Selling tickets requires a payment provider, a currency, and clear rules for refunds and stock management. The Payment Settings panel connects your gateway accounts and controls the financial behavior of your ticketing system.
Navigate to Events > Settings > Payments to configure these options.
Payment Provider
The Payment provider dropdown determines how ticket purchases are processed:
- Native — Tickets Please handles checkout directly. Supports Stripe and PayPal. Tickets are stored as
tec_tc_ticketposts with order data intec_tc_orderposts. - WooCommerce — Tickets sync as WooCommerce products. Purchases flow through the WC cart and checkout. Use this if you already have WooCommerce configured with your preferred gateway. When selected, ticket products are created automatically and kept in sync with your ticket settings.
Switching providers after you have existing orders is not recommended. Choose your provider before selling tickets.
Currency
Three settings control how prices display:
- Currency — A 3-letter ISO 4217 code. Default:
USD. Common values:EUR,GBP,CAD,AUD. - Currency position — Choose Before (e.g., $25.00) or After (e.g., 25.00 EUR) the amount.
Currency settings affect display only. Your payment gateway determines which currencies it actually accepts. Verify that your Stripe or PayPal account supports your chosen currency.
Stripe Configuration
Four settings connect your Stripe account:
- Stripe live key — Your publishable live API key (starts with
pk_live_). Used for real transactions. - Stripe test key — Your publishable test API key (starts with
pk_test_). Used when test mode is active. - Stripe test mode — Checkbox. When enabled, all transactions use the test key. No real charges are made. Enable this during setup and disable it when you are ready to accept real payments.
Find your API keys in the Stripe Dashboard under Developers > API keys.
Keep your secret keys secure. Tickets Please only stores publishable keys in the settings panel. Secret keys are configured server-side via your wp-config.php or environment variables.
PayPal Configuration
Two settings connect your PayPal account:
- PayPal client ID — Your REST API client ID from the PayPal Developer Dashboard.
- PayPal sandbox — Checkbox. When enabled, transactions process against PayPal’s sandbox environment. Use this for testing.
PayPal and Stripe can both be configured simultaneously. The buyer chooses their preferred method at checkout.
Refund Window
The Refund window in days field sets how many days after purchase a buyer can request a refund. Default: 30.
- Set to
0to disable buyer-initiated refunds entirely. - Administrators can always process manual refunds regardless of this window.
- The refund window is calculated from the order completion date, not the event date.
Refund requests submitted within the window appear under Events > Refund Requests for admin review.
Stock Management
Two settings control when ticket inventory decreases:
-
Stock decrease timing — Choose when available capacity is reduced:
- Pending — Capacity decreases as soon as the order is placed (before payment confirms). Prevents overselling but holds inventory during payment processing.
- Completed — Capacity decreases only after payment is confirmed. Risk of overselling if multiple buyers check out simultaneously, but no phantom holds on inventory.
-
Low stock threshold — Default:
10. When a ticket’s remaining capacity drops to this number, a low stock alert email is sent to the site administrator. Set to0to disable low stock alerts.
Stock management in Tickets Please operates at the ticket level, not through WooCommerce’s built-in stock system. This applies even when using the WooCommerce payment provider.
Common Questions
Can I use Stripe and PayPal at the same time? Yes. Configure both and buyers will see both options at checkout. Each transaction processes through whichever gateway the buyer selects.
What happens if I switch from Native to WooCommerce provider? Existing orders created under the Native provider remain accessible. New ticket purchases will flow through WooCommerce checkout. Ticket products are created in WooCommerce automatically.
Does the refund window apply to RSVP events? No. RSVP events are free and do not involve payment. Attendees can cancel their RSVP at any time.
Why did I get two low stock alerts for the same ticket? Alerts use a transient-based debounce that prevents duplicate notifications for the same ticket within one hour. If you received two alerts more than an hour apart, the ticket’s capacity changed between alerts.
Can I set different refund windows per event or ticket?
Not from the settings panel. The refund window applies globally. Use the tickets_please_cart_hold_time filter for cart hold customization, but the refund window itself is a single global value.
Is PCI compliance handled by the plugin? Tickets Please never stores credit card numbers. Payment data goes directly to Stripe or PayPal via their client-side SDKs. Your server never sees raw card details.
What does “stock decrease timing” mean when using WooCommerce? Even with WooCommerce as the provider, Tickets Please manages ticket capacity independently. WooCommerce stock management is disabled for ticket products to avoid conflicts.
Next Steps
- Integration Settings — Configure Google Maps API keys and Gravity Forms for attendee data collection.
- Stock Alerts — Understand how low stock and sold-out notifications work.
- Hooks Reference — Use
tickets_please_order_completedandtickets_please_refund_processedto trigger custom logic.