Integrations
Integrations with third-party systems
Paul Campbell avatar
Written by Paul Campbell
Updated over a week ago

Tito is very flexible and can be integrated with other platforms using various tools we've built. Some of these methods are more advanced and/or in private beta, so we'll start with the simplest and work our way up to the more technical.

Embeddable widget

If you wish to display tickets and integrate the Tito checkout flow into your own website, you can do this with this just a couple of lines of code using our embeddable JavaScript widget. You can find the full widget instructions here.

Or if your site runs on Wordpress, you can use this plugin to embed the widget. And if your site runs on Squarespace, this video will point you in the right direction.

You can apply your own custom styles to the widget using CSS.

Google Analytics

Enable the widget on your site and you can make use of our plugins to add GA tracking. We have three different plugins for Google Analytics:

  • google_analytics

  • gtag

  • gtm

Read more about which one to use and how to integrate it into your website here.

Webhooks

Push data dynamically to other platforms and systems to help automate your tasks using our Webhooks. Webhooks will POST a JSON payload to the endpoint you specify, with a X-Webhook-Name header. 

You can use Webhooks for tasks like posting registrations to Slack as they happen, or connecting to a service like Zapier to send Tito data to over 500 other apps. 

Admin API

We have a full read/write REST API that we consume ourselves to power Tito. It returns JSON responses and is designed to be a predictable and intuitive interface for secure programmatic access to Tito. The Admin API can be used to manage events, tickets, etc, and allows developers to build cool and useful tools on top of Tito. 

Which option to choose

The path of least resistance to third-party integrations is using our webhooks. Work on Tito’s API continues. We originally implemented a read-only V1 API at https://api.tito.io, but abandoned plans to finish that off in favour of building a JSON API compliant read-write API. You can read the work-in-progress docs for that here.

The API will eventually expand to offer most if not all of the functionality of our admin or checkout UIs. If you have any specific questions about the API, or if you need something specific, let us know

iframe callbacks

If you need to add third-party tracking to the Tito checkout, you can do this using iframe callbacks. This feature is in private-beta, please email us to enable on your account. Once enabled, you'll find the option under Settings  > Services  > Custom tracking .

iframe callbacks allow you to run code in response to certain events during the Tito checkout process, whether you’re using the widget or our hosted event page. 

Multi-domain warning You can either host your own tracking page or paste HTML into the custom tracking HTML field. If you host your own page, you can potentially access session data from your own site inside the iframe. Please note that if a user has not been on your site, some browsers will not allow our iframe to access the session. If you use the widget, then most customers will start on your site, so this should be ok.

How it works

The iframe callbacks are hosted inside an invisible iframe that is embedded throughout the whole Tito checkout process, even if you’re using the widget and the customer gets redirected to our servers if they are on mobile for example.

As the customer goes through the checkout process, events are sent to the iframe, and you can use tito.js to listen for these events.

Examples

You can use this gist as an empty starting point for seeing the lifecycle events that you can listen to. These contain the same data as would be sent to a hosted widget. Refer to our widget docs or the examples below to see what data is available. 

______________________

Need help with something specific? Search our FAQs section to find instant answers. 

If you can’t see what you need, drop us a line at support@tito.io or chat with us in-app and we’ll get back to you as quickly as we can.

Did this answer your question?