=== Tickera – Sell Tickets & Manage Events ===
Contributors: tickera, freemius
Tags: sell tickets, ticket sales, tickets, manage events, event registration
Requires at least: 4.1
Tested up to: 6.9
Stable tag: 3.5.6.5
Requires PHP: 5.6
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Sell tickets, manage events, and handle event registration on your site — PDF tickets, QR/Barcode check-in, and seamless ticket sales for WordPress.

== Description ==

**Tickera** lets you **sell tickets** on WordPress, manage **event registration**, and run **ticket sales** end-to-end on your own domain. Create an **event**, add **tickets**, deliver **PDF tickets** with QR/Barcodes, and check in attendees at the door. You keep the revenue - no middleman fees taken by Tickera.

For ticket scanning, use integrated **[Barcode readers](https://tickera.com/tickera-documentation/barcode-reader/ "Tickera Barcode Reader Add-on")**. If you want mobile check-in on phones, our **premium** **[Checkinera apps](https://tickera.com/checkinera-app/ "Checkinera apps")** for iOS/Android enable blazing-fast scanning - **even offline** after sync. There’s also a **[Checkinera web app](https://tickera.com/checkinera-web/ "Checkinera web app")** that turns any modern browser into a fully-fledged check-in desk.
---

### ✅ Key features
- 🎟️ Sell event tickets on your site - you keep the revenue
- 🗂️ Manage events in WordPress — create, edit, duplicate, set dates/capacity, and control ticket types
- 🧾 PDF tickets with embedded QR/Barcode for fast entry
- 🧍 Event registration with buyer and attendee fields
- 💸 Ticket sales tools: multiple ticket types, limits, discount codes, fees, taxes
- 🚀 Fast check-in with barcode readers, Checkinera mobile apps (premium), or the web app
- 🧩 Works with most WordPress themes
- 🧪 Developer-friendly (actions and filters for customization)
- 🏷️ White-label ready
- 🕸️ Multisite support

━━━━━━━━━━━━━━━━

> _“These guys offer a whole different level of service… give them a go!”_ — [James Farmer, WPMU DEV](https://wpmudev.com/)

━━━━━━━━━━━━━━━━

#### Manage events & event registration
Create and update events in WordPress, then capture event registration details for each attendee.

---

### 🧠 How it works
1. Choose your payment gateway.
2. Create an **event** and add one or more **ticket types** (e.g., Standard, VIP).
3. Share your **ticket sales** page and take orders.
4. Buyers receive **PDF tickets** with **QR/Barcodes**.
5. At the venue, **check in** attendees with scanners, the **Checkinera** apps (premium), or the **web app**.

---

### 🎬 Video
[youtube https://www.youtube.com/watch?v=BPFpzi4kGFQ]

---

### 💳 Payments
**Tickera plugin comes with** **[2Checkout](https://www.2checkout.com/referral?r=95d26f72d1 "2Checkout payment gateway")**, **Custom Offline Payments**, and **Free Orders** as built-in payment gateways.

**Need more options?** Get **[Tickera Premium](http://tickera.com/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=premium "WordPress Event Ticketing system")** for gateways like:
- **[Mollie](http://tickera.com/addons/mollie-payment-gateway/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=mollie "Mollie payment gateway for Tickera")** (iDeal, Credit Card, Bancontact/Mister Cash, SOFORT, Overbooking, Bitcoin, PayPal, paysafecard, AcceptEmail)
- PayPal Standard • PayPal PRO • 2Checkout • Stripe • Paymill • Authorize.net • PIN Payments • Vogue Pay • iPay88 • PayGate • OptimalPayments/Netbanx • Braintree • PayUMoney • PayTabs • White Payments • PayU Latam • Komoju • plus Custom Offline Payments & Free Orders.
---

### 🛒 WooCommerce compatible
Already on WooCommerce? Sell **tickets** as WooCommerce products while Tickera handles e-ticket delivery and check-in. Learn more about **[Bridge for WooCommerce](https://tickera.com/addons/bridge-for-woocommerce/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=bridge-for-woocommerce "Sell event tickets with WooCommerce and Tickera")** (**premium add-on**).
---

### 🪑 Seating & 🧾 forms (premium add-ons)
- 🪑 **Assigned seating** with **[Seating Charts](https://tickera.com/addons/seating-charts/ "Seating Charts")** - build seat maps; let buyers pick seats at checkout.
- 🧾 **Custom attendee fields** and exports with **[Custom Forms](http://tickera.com/addons/custom-forms/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=custom-forms "Custom Forms add-on")**.
- 💼 **Take a cut** on multisite/marketplaces with **[Stripe Connect](http://tickera.com/addons/stripe-connect/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=stripe-connect "Stripe Connect")**.

For more, see the complete catalog: **[All Tickera add-ons](http://tickera.com/tickera-events-add-ons/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=addons "Tickera Add-ons and Extensions")**.

---

━━━━━━━━━━━━━━━━

> _“In my opinion Tickera is the best ticket management solution available today on WordPress”_ - Anton Kozlov
━━━━━━━━━━━━━━━━

### 📚 Documentation
- **Getting started & setup:** https://tickera.com/documentation-category/tickera/
- **Checkinera apps (iOS/Android):** https://tickera.com/checkinera-app/
- **Checkinera web app:** https://tickera.com/checkinera-web/
- **Bridge for WooCommerce:** https://tickera.com/addons/bridge-for-woocommerce/
- **Seating Charts:** https://tickera.com/addons/seating-charts/
- **Custom Forms:** http://tickera.com/addons/custom-forms/

Need help? Browse full docs: **https://tickera.com/documentation-category/tickera/**

---

### 🚀 Premium demo
Want to try everything (including premium add-ons)?
👉 **[Request a demo access](https://tickera.com/playground-request/ "Tickera Demo Request")**

---

### 🧰 Use cases
- **Ticket sales** for concerts, conferences, festivals, theatres, meetups, comedy shows
- **Sports events** (football matches, basketball, volleyball, tournaments, races)
- **Event registration** for workshops, classes, seminars, trainings, hackathons
- **Attractions & venues** (zoos, museums, galleries, exhibitions, theme/adventure parks)
- **Tours & experiences** (city tours, boat/ferry tours, winery/brewery tours, campus open days)
- **Community & non-profit** (church events, charity fundraisers, school/university events)
- **Nightlife & hospitality** (clubs, DJ nights, VIP lists, table/service packages)
- **Seasonal & holiday events** (markets, fairs, fireworks nights, Halloween/NYE)
- **Corporate & product** (launches, networking, town halls, partner events)
- **Education & webinars** (online events with attendee data collection)
- **Theatre & cinema** (screenings, premieres; seat selection via Seating Charts add-on)
- **On-site logistics** (entry lanes, staff/crew passes, vendor passes)
- **Parking passes** for events (sell/scan parking **tickets** to manage capacity)
- **Multi-activity days** (festival day passes, stage/area access levels)
- **Timed entry windows** (staggered arrivals, capacity control at the door)
- **Sell tickets** online and scan **tickets** on-site via QR/Barcode (readers, Checkinera apps, or web app)
- **Event registration** with per-**attendee** data (forms, exports)

━━━━━━━━━━━━━━━━

> _“Cannot recommend Tickera highly enough”_ - DJ Andy Ward
━━━━━━━━━━━━━━━━
---

== Frequently Asked Questions ==

= How do I sell tickets on WordPress with Tickera? =
Create an event, add ticket types, publish, and share the purchase link. **Tickets** are delivered as **PDF tickets** with QR/Barcode for fast entry.

= Can I run ticket sales with WooCommerce? =
Yes. **Ticket sales** with WooCommerce are available via the **premium** add-on **[Bridge for WooCommerce](https://tickera.com/addons/bridge-for-woocommerce/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=bridge-for-woocommerce "Sell event tickets with WooCommerce and Tickera")**, which lets you sell **tickets** as WooCommerce products.

= Can I check in tickets with phones and work offline? =
Yes. Use the **Checkinera** (iOS/Android) **premium apps** for mobile scanning with **offline** support after the initial sync, or use barcode readers / the Checkinera web app.
- Mobile apps: https://tickera.com/checkinera-app/
- Web app: https://tickera.com/checkinera-web/
- Barcode readers: https://tickera.com/tickera-documentation/barcode-reader/

= Do you support assigned seating and seat selection? =
Yes. Assigned seating is available via the **premium** **[Seating Charts](https://tickera.com/addons/seating-charts/ "Seating Charts")** add-on.

= Which payment gateways come with Tickera? =
**Tickera plugin comes with** **[2Checkout](https://www.2checkout.com/referral?r=95d26f72d1 "2Checkout payment gateway")**, **Custom Offline Payments**, and **Free Orders** as built-in payment gateways. Additional gateways are available in **[Tickera Premium](http://tickera.com/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=premium "WordPress Event Ticketing system")**.
---

== Installation ==

= To install =
* Download the Tickera plugin file.
* Unzip the file into a folder on your hard drive.
* Upload the /tickera/ folder to the /wp-content/plugins/ folder on your site.
* Visit your Dashboard → Plugins and activate it there.

= To set up and configure Tickera =
You can find **[setup instructions here](http://tickera.com/documentation-category/tickera/?utm_source=wordpress.org&utm_medium=plugin-page&utm_campaign=documentation "Tickera plugin installation and usage help")**.

---

== External services ==
* **Freemius** manages upgrades to the premium license and handles premium licensing. Privacy policy: https://freemius.com/privacy/
* **TCPDF** handles the rendering process of tickets, QR codes, and barcodes. Privacy policy: https://tcpdf.org/about/
* **Google Map API** (maps.googleapis.com) renders the ticket template’s map element. Privacy policy: https://policies.google.com/privacy?hl=en-US
* **Freegeoip.net** collects customer geolocation information (e.g., City, ZIP) to pre-fill checkout payment forms. Privacy policy: https://freegeoip.live/privay-policy.html
* **2Checkout** makes it possible to accept payments via the 2Checkout payment gateway. Privacy policy: https://www.2checkout.com/legal/privacy/
* **Tickera** is used for pulling the list of add-ons offered in the Add-ons area of the plugin. Privacy policy: https://tickera.com/privacy/

== Changelog ==

= 3.5.6.5 18/12/2025 =
* Security patch for Broken Access Control Vulnerability.
* Additional sanitization and escaping across the plugin files.

= 3.5.6.4 09/12/2025 =
* New "tc_bypass_hide_event_after_expiration" hook to bypass the Event's "hide event after expiration" logic. Argument(s): Boolean (Default: false), Event ID
* Fixed amount (per order) created in the previous versions of Tickera stopped working unless re-saved. [Fixed]
* Clearing out PHP Notice: map_meta_cap was called incorrectly.

= 3.5.6.3 25/11/2025 =
* Applied the "Hide event after expiration" option to individual event pages, ensuring expired events are hidden across both listings and single event views.
* Unable to bulk trash Woocommerce > Orders while HPOS is active. [Fixed]
* Security patch to fix a Broken Access Control Vulnerability on logged-in users.
* Additional updates for Woocommerce High-Performance Order Storage Integration.

= 3.5.6.2 27/10/2025 =
* PHP fatal error when one or both of the administrator and staff roles do not exist. [Fixed]
* "Ticket Orders" column in Dashboard > Users for Tickera Standalone.

= 3.5.6.1 12/10/2025 =
* Uncaught Error: Class "Tickera\stdClass" not found in class.virtualpage.php. [Fixed]

= 3.5.6.0 08/10/2025 =
* Removed the initial maximum value limit of 9999 from the Custom Form Number Field.
* "Show tickets automatically" and "Hide event after expiration" are being disabled when changing the event status via Tickera > Events > Active Column > Toggle switch.
* Tickera menu missing in staff role. [Fixed]
* Disable event duplicate action in staff role.
* Adjustment on the admin script to address undefined javascript functions due to caching mechanism.
* New "tc_admin_script_allowed_pages" filter hook. Argument: $pages array
* Backend keyboard navigation improvement. Tickera > Settings
* Backend keyboard navigation improvement. Tickera > Ticket Templates

= 3.5.5.9 29/08/2025 =
* Fixed missing cart quantity field 

= 3.5.5.8 25/08/2025 =
* Inclusion of trashed tickets in Tickera > Settings > Delete Info > Bulk Delete Tickets process.
* New "tc_after_bulk_delete_ticket_order" action hook. Argument: $order_id
* New "tc_round_cart_total_value" filter hook to allow developers to disable rounding up of cart total values.
* Namespacing refinements.
* Cleared PHP Deprecated Notice related to quantity selector.
* Translation strings for "Order Status" in Attendees & Tickets page.
* Additional updates for Woocommerce High-Performance Order Storage Integration.
* Additional security patch for Barcode Reader. Tickera > Barcode Reader.
* Stripe Payment Gateway "Invalid Integer" error. [Fixed]
* Adjustment on Tickera gutenberg blocks styles.
* Keyboard navigation improvements

= 3.5.5.7 23/06/2025 =
* Persistent error code when a ticket code contains a slash "/" during check-in. [Fixed]
* Cleared PHP Notice related to the _load_textdomain_just_in_time function.
* New "tc_ticket_order_history_list_by_user_email" filter hook to list "Users > Ticket Order History" by user's email address.

= 3.5.5.6 05/05/2025 =
* New "tc_client_order_completed_email_subject" filter hook. Arguments: $subject
* New "tc_attendee_order_completed_email_subject" filter hook. Arguments: $subject
* New "tc_admin_order_completed_email_subject" filter hook. Arguments: $subject
* New "tc_client_order_placed_email_subject" filter hook. Arguments: $subject
* New "tc_admin_order_placed_email_subject" filter hook. Arguments: $subject
* New "tc_admin_order_refunded_email_subject" filter hook. Arguments: $subject
* "Event - Add to Cart" gutenberg block's html element for "dropdown" type is being stripped. [Fixed]
* Remove Stripe Webhook registry if the option is disabled in Tickera > Settings > Payment Gateways > Stripe or Stripe 3D Secure.
* Ability to send order refunded email notification to Buyers.
* New ORDER_DETAILS, EVENT_NAME and EVENT_LOCATION placeholders for "Client Order Placed Email" Notification.
* New ORDER_DETAILS placeholder for "Admin Order Placed Email" Notification


= 3.5.5.5 23/04/2024 =
* New "tc_pdf_font_measure_divisor" filter hook. Allow developers to adjust the font space distance.
* Critical error on Tickera > Tickets Template when running Tickera free version alongside a paid add-on. [Fixed]
* Render the current checked-in date without converting to the local timezone.
* New "Display Format" option in Tickera > Ticket Templates > Event Date & Time element.

= 3.5.5.4 02/04/2025 =
* Updated Braintree Server and Client Side SDK.
* Unable to checkin per calendar basis due to timestamp discrepancy. [Fixed]
* Gutenberg "Event - Add to Cart" block's dropdown type elements are being removed. [Fixed]
* Terms and Conditions add-on: Tinymce unable to switch to "Text" editor.

= 3.5.5.3 12/03/2025 =
* Ticket template spacing issue on bold text. [Fixed]
* New "Enable line breaks" option in Ticket Template's Ticket Description Element.
* Disable default payment gateways when Tickera is running alongside Bridge for Woocommerce. 
* Duplicated Ticket Template fail to save existing elements. [Fixed]
* The PayU Latam payment method is unable to proceed to the payment form. [Fixed]
* Deprecated "tc_tickets_instances_init_table_by_order_statuses" filter hook.
* Missing age confirmation checkbox in checkout page. [Fixed]
* New discount scope option in Tickera > Discount Codes.
* Broken Access Control vulnerability via Event duplication. [Fixed]

= 3.5.5.2 22/02/2025 =
* Updated "Offline Payment Gateway" > "Visible to admin only" option to "Visible to user roles".
* Discontinued "tc_change_user_role_offline_payment" filter hook.
* Freemius SDK updated to v2.11

= 3.5.5.1 15/01/2025 =
* Remove extra spaces below the event page title.
* Order statuses string translation. Tickera > Orders.
* Discount code validation in payment summary page. A final discount code validation right after the "continue checkout" button is clicked.
* Limit Tickera > Discount Codes > "Discount Available for" select options with published ticket types only.
* Additional security measures in Order details page (frontend).
* Additional error handler in TCPDF Library.
* Duplicated ticket template element values not rendered. [Fixed]
* Clear out PHP Deprecated: Creation of dynamic property notice at Dashboard widget "Ticketing store at a Glance".
* "Ticketing store at a Glance" number of tickets sold discrepancy. [Fixed]
* Additional security measures in Tickera > Barcode Reader
* Ticket checkin via Tickera > Barcode Reader can be processed by admin and associated APIs user only. No privilege access will be invalidated.
* Additional error handler in Authorize.net payment method.

= 3.5.5.0 10/12/2024 =
* Ability to enable/disable wpautop within Tickera Custom Post Types via "tc_the_content_wpautop" filter hook. Argument(s): $content

= 3.5.4.9 03/12/2024 =
* Additional security patch for Checkin API

= 3.5.4.8 18/11/2024 =
* Unable to save "Background Placement" option in Tickera > Ticket Templates.
* Unable to render "Google Map" Ticket Template Element. [Fixed]
* Set offline payments active as default.
* Load up localization file on init hook

= 3.5.4.7 06/11/2024 =
* Additional error handler for Stripe payment method.
* New "Background Placement" option in Tickera > Ticket Templates. The option allows to render background image either in first page or across all pdf pages.

= 3.5.4.6 31/10/2024 =
* Wordfence security patch
* Additional error handler for Stripe payment method.
* Selecting "Courier" font in Ticket Template is being overridden by "Al Arabiya". [Fixed]

= 3.5.4.5 28/10/2024=
* New "tickera_track_added_to_cart" hook. Arguments: $ticket_id, $quantity, $cart_content.
* Ticket type's "Limit check-ins on time basis" executes regardless the status of the option. The issue occurs when the option's limit field is set with a value (any value from 0). [Fixed]
* Ability to override order details page. Override the includes/templates/page-order.php onto the theme root directory.
* Updated Freemius to the latest SDK v2.9.0.
* Freemius SDK patched with PR:730. Patched Freemius SDK v2.9.0.1. Reference PR: https://github.com/Freemius/wordpress-sdk/pull/730/files
* Ability to insert custom order statuses via "tickera_order_statuses" filter hook. Argument: $order_statuses

= 3.5.4.4 18/10/2024 =
* Stripe connect add-on compatibility.
* Remove promotional notification once an affiliated theme is already active. Page: Themes page
* Ability to use other payment methods (e.g Klarna) within Stripe Checkout Session Form.
* Bridge for Woocommerce: Callback error on Network activated. [Fixed]
* Remove "Tickera" Shortcode Builder Button in Tickera > Event > "Event terms and conditions" metabox.

= 3.5.4.3 03/10/2024 =
* Uncaught Error: Class "Tickera\FS_Admin_Menu_Manager" not found. [Fixed]

= 3.5.4.2 01/10/2024 =
* Tickera > Ticket Type "Active" toggle not working. [Fixed]
* Stripe webhook fatal error. [Fixed]
* Clear out undefined function tc_wizard_get_start_screen_next_step() error appearing during installation wizard.
* Unable to render quantity selector in Event - Add to cart table. Issue occurs only when running Tickera alongside Bridge for Woocommerce. [Fixed]

= 3.5.4.1 16/09/2024 =
* Unable to complete checkout with Braintree payment method. [Fixed]
* Tickera > Events "Active" toggle not working. [Fixed]
* Custom Form Fields placeholder not properly rendered in cart/checkout pages.
* Tickera - Add to cart gutenberg block rendering issue. [Fixed]

= 3.5.4.0 13/09/2024 =
* Custom Form Fields placeholder not properly rendered in cart/checkout pages.

= 3.5.3.9 04/09/2024 =
* Critical error in the event page. [Fixed]

= 3.5.3.8 03/09/2024 =
* Implemented namespace across plugin classes.
* Additional sanitization and escaping across the plugin files.
* Wordpress version 6.5+ compliance.

= 3.5.3.7 29/08/2024 =
* Fatal error on an incomplete object __PHP_Incomplete_Class. [Fixed]

= 3.5.3.6 27/08/2024 =
* Translation for cart field's error messages
* Unable to send offline payment instruction email. [Fixed]
* Remove legacy functions.
* Wordpress version 6.5+ compliance.

----------------------------------------------------------------------
 - Plugin built from the ground up