One step ahead with these plugins

Event Tickets With Ticket Scanner Update – 20260518

= 3.0.9 – 2026-05-18 =

  • New: Day-chooser products can now define a “Same-day cutoff time” (HH:MM) in the product’s ticket settings. When the customer’s local time is past that value, today’s date is automatically disabled in the date picker — only tomorrow and future dates remain selectable. The field has no effect when “Offset days for start date” is already ≥ 1 (today would be excluded anyway).
  • New: CVV-at-Scanner — a per-product opt-in second-factor for ticket redemption. Enable “Require security code at scanner” (saso_eventtickets_require_cvv_at_scanner) on any ticket product; a unique 4-character alphanumeric code (uppercase A–Z plus 2–9, no visually ambiguous O/0/I/1) is generated automatically at WC order-completion time and stored alongside the ticket. At the scanner, the ticket’s public ID is shown immediately on QR scan but all identifying information (name, seat, billing details, product title) is withheld until the bearer reads the code from their ticket and enters it. An incorrect code counts as one strike; after 5 consecutive wrong attempts the ticket locks and the scanner shows a prominent locked-screen warning — the attendant must contact the organiser to reset via the “Reset CVV attempts” button in the admin code-edit modal. The default UI is a two-stage hand-over flow: first stage confirms the public ticket ID and prompts the organiser to hand the device to the attendee; second stage shows the masked code entry field with a show/hide toggle. An optional one-stage flow (global option wcTicketScannerCVVOneStageFlow, default off) skips the hand-over prompt for high-trust environments. Input masking is on by default and controlled globally via wcTicketScannerCVVMaskInput (default on). The anti-information-leak short-circuit response from REST endpoints exposes only requires_cvv, attempts_remaining, locked, and public_ticket_id — no product name, seat, billing, or order metadata is returned before a correct CVV is entered.
  • New: Order-ticket QR codes (one QR for an entire order) now honor the per-product CVV requirement on a per-ticket-row basis. When an order QR is scanned and one or more of its tickets is from a CVV-protected product, the scanner UI renders a compact CVV input next to each protected row instead of revealing name/seat/order details for it, while non-protected rows in the same order continue to show full information. A “Confirm codes” button at the bottom submits all entered codes in one round-trip; rows with a correct CVV unlock and become fully redeemable. Wrong-CVV rows decrement the per-ticket attempt counter (same 5-strike lockout as single-ticket scans); attempts on one row do not affect other rows. Anti-information-leak: blocked rows expose only requires_cvv, attempts_remaining, locked, and public_ticket_id.
  • New: CSV ticket export gains two new columns — meta_cvv_attempts (number of failed attempts so far) and meta_cvv_locked (boolean, 1 if the 5-strike limit was reached) — so organisers can audit CVV activity across all tickets without opening individual admin screens.

Want to be listed as an implementation partner?

We want to add a page dedicated to implementation partner and WordPress developer/designer. You can get listed on this page, if you like. It is free and we will forward users that need help with implementing special behavior to this page. So you can get new customers and support the plugin 🙂

Please send an email to [email protected]. We need your name/company name, website, what you are (developer, designer, etc), with what you can help regarding the plugins (serial and/or event) – the idea is that people with issues, like designing a ticket template with twig or so, can get help from you. If you have default prices (hour, project or so) then we can add them also to the page. I will have to evaluate a bit, so that the quality can be checked. We cannot ensure your listing, if it does not match with the needs of our customer and the relevance to my plugins.

In case you want to revert your basic plugin version:

You can download the old basic plugin from the advance tab on the plugin website. Install it manually via the plugin area.

https://plugins.trac.wordpress.org/browser/event-tickets-with-ticket-scanner/tags

Download the version you like and rename the folder to event-tickets-with-ticket-scanner.
Then zip the folder.
Upload the zip file to your WordPress installation using the plugin area.

Event Tickets With Ticket Scanner Premium

With the Premium Plugin, you can have a lot of additional features. Offer your customer a PDF ticket attached to the order email and have unlimited tickets and much more. Check out the premium features.

Login