Case StudiesZoological Society London

When one-size booking doesn’t fit all...

  • OrganisationLondon Zoo & Whipsnade Zoo
  • Venue TypeZoo & Visitor Attraction
  • Related SystemsTessitura

Every visitor attraction knows how important it is to have online systems that provide a robust ticketing journey that can consistently service high volumes of users every day. But what happens when we need to replace these systems and by doing so potentially lose functionality that we once had access to?

Zoological Society London (also known as ZSL, the science-driven conservation charity behind London Zoo and Whipsnade Zoo) faced this question when they underwent an online ticketing transformation project moving from See Tickets to the Tessitura powered purchase pathway, TNEW. Whilst this move unified ticketing, memberships and donations to all flow through a single system, there were certain aspects of ZSL’s ticketing model that now didn’t fit the out-the-box TNEW user flow.

The challenge

Alongside timed entry tickets, ZSL offers Flexi-Ticketsundated tickets that can be purchased in advance and redeemed at any time within 12 months, often as gifts. While the purchase is recorded on the buyer’s Tessitura record, the ticket is typically redeemed by someone else. Capturing the actual visit date against the actual visitor is essential for accurate reporting and on-site capacity management.

Previously, Flexi-Tickets could only be redeemed at the zoo entrance where staff manually updated Tessitura. On busy days, this time-consuming process led to long queues and frustrated visitors.

ZSL needed a way for Flexi-Ticket holders to pre-book online and redeem their tickets in advance. However, due to the back-end setup in Tessitura, this functionality wasn’t available through TNEW so ZSL partnered with Action Links to deliver a new, end-to-end online redemption journey.

The brief

We knew that the new service would have to…

  • Provide a place outside of TNEW where users could be directed to redeem a Flexi-Ticket online, confirming their visit date and time in advance of attending
  • Record the respective redemption activity on relevant constituent records in Tessitura, marking the Flexi-Ticket as used, and recording the chosen visit date on the visitor's record
  • Host separate user journeys for London Zoo and Whipsande Zoo, each with individual branding and relevant booking options (London Zoo runs timed entry admission, whereas Whipsnade Zoo does not)
  • Prevent users from redeeming a Flexi-Ticket that has expired

Harnessing the customisability of our Tessitura integration, Action Links was able to provide a brand new user journey that meets all of these requirements and unlocks the ability for visitors to self-serve online in advance of their visit.

The solution

The first thing we needed to establish was the location we were sending users to in order to redeem a Flexi-Ticket. Because ZSL has two websites - one for London Zoo and one for Whipsnade Zoo - we set up two separate Action Links subdomains and added the respective zoo logos, colour and font styles to each. This meant we had two distinct environments for users depending on which zoo they were visiting.

We then mapped each micro-step in the user journey, knowing the complexity required an easy to follow UI to guide the user through the required series of actions: identify the user, enter a Flexi Ticket ID, select a date and time, and confirm the booking. Rather than splitting this across multiple screens, ZSL wanted everything on a single page so the user could view their choices at all points in the flow. We designed a four-step layout using conditional logic in Action Links, revealing each step progressively as the user moves through the journey.

Step 1:
The user begins by logging in to their TNEW customer account, or creating one (we only ask them to provide their address, phone number and opt in to contact permissions). Rather than redirecting the user to the native TNEW Login page for this, login is handled directly between Action Links and the Tessitura API to check for a matching constituent (if none can be found, Action Links creates one). The user is now logged in and a cart session has been initiated ready for the subsequent steps.

Looking up Flexi Ticket numbers and checking expiration

Step 2:
Once we detect the session as having a logged in status, we move the user into the next phase where they can indicate how many Flexi-Tickets they are redeeming and the unique ID of each. This allows Action Links to look up the Flexi Ticket ID to check if it’s still valid (in Tessitura a Flexi-Ticket is set up up as a performance, dated 12 months from the day of purchase - if this date has passed, the Flexi-Ticket is no longer valid). Because there is no specific string of API endpoints we can use to perform this one action, we worked with the ZSL team to use a stored procedure instead - Action Links triggers this stored procedure to run, passing the ID numbers to Tessitura, and then the stored procedure returns their validity.

Step 3:
The user can now choose the date & time they'd like to visit. To do this, Action Links needs to fetch available upcoming admission ‘performances’ for either London Zoo or Whipsnade Zoo. Rather than returning all eligible performances (ZSL have hundreds of daily admissions performances within a Production Season which would severely slow down the API response), we use a second stored procedure to provide only performances in the next 90 days.

Users can easily select visit date and time zone

Step 4:
The user is now ready to agree to ZSL terms and conditions and their final step in the journey is complete. At this point, Action Links triggers a third and final stored procedure to update Tessitura behind the scenes - the original Flexi-Ticket is marked as 'Attended' (aka 'used') on the purchaser's record and a £0 admission ticket for the chosen date and time of the visit being added as a new order on the visitor's record (along with a note that references the original Flexi-Ticket purchase order number as a cross-reference point linking the purchase to the redemption). This all happens instantaneously in a matter of seconds - no additional work for the user, no manual intervention for the ZSL team.

The impact

Rather than hard-coding a workaround into their TNEW path, ZSL leveraged Action Links’ flexible configuration options to design and manage every micro-step of the journey. This gave them full control — with the freedom to iterate, refine, and adapt as their needs evolve.

Since launching online Flexi Ticket redemption, over 5,000 customers have used the service, significantly reducing manual workload for the ticketing team. Customers can now redeem multiple tickets in a single seamless flow — a critical requirement for Corporate Partnerships, where Flexi Tickets are often booked in bulk for group visits. The result is a smarter, more scalable solution that delivers for both the team behind the scenes and the visitors it serves.

Other case studies