Posts by Doc Parsons


Changelog: Times They Are A-Changin'

I know I said we didn’t do much “onstage” stuff, but what I meant to say is that we didn’t do much big onstage stuff. Here’s a list of a few of the smaller things that have kept us busy since our last changelog...

  • 🐞 Fixed a receipt layout issue when hiding tax types
  • 🐞 Fixed a confusing billed/unbilled figure in the Reports section
  • 🐞 For those having issues selling ticket in Vietnamese Dong (this could have just been one very, very patient customer — thank you Rachman) the bug be gone
  • 🐞 Tablet users needing to accept lenthy terms for an event will no longer be screaming in scroll-less frustration (sorry)
  • 🐞 Broken images and video for The Dude have been patched
  • 🎉 We created a page for EU VAT advice we’ve been given by some people who know way more about VAT than us: (feel free to link to it)
  • 🐞 Fixed a bug where the company name mandatory setting in the Tickets view was being ignored
  • 🎉 We’ve dropped our pricing for those on the highest 5% tier — they can now enjoy a 3% rate (see separate in-app message)
  • 🐞 Fixed some issues with emails being sent when reassigning tickets based on manual orders
  • 🎉 Event emails sent now include share links in the footer
  • 🎉 Daily digest emails should now arrive at 8am your time rather than our time
  • 🎉 Added a link to the Android Play store for our Android check-in app because I’m pretty sure nobody but us knew we had one
  • 🎉 PDF order invoices now have a paid/unpaid stamp
  • 🎉 Add functional pricing (private beta feature)
  • 🎉 Add an option to exclude the ticket list from messages sent to attendees
  • 🐞 Make it clear if a waitlist ticket can’t be offered due to the ticket having expired
  • 🎉 Include individual open stats for messages sent
  • 🎉 Let organisers limit the total number of tickets per order
  • 🐞 Various improvements to the duplicate event function
  • 🐞 A not insignificant amount of tweaks, fixes and polishings to private beta features
  • 🚀 A completely new app to handle our billing... we call it “the billing app”
  • 😞 Added manual verification of accounts to allow message sending from Tito. Because spammers.
  • 🙀 A whole bunch of updates to the API and webhooks — too numerous to list

So, we’re back to our regular *cough* posting of changelogs... did you miss us? Of course you did!

Doc Parsons


Don’t compare your backstage to other people’s onstage.

— Patrick Rothfuss

We’ll get into the awkward subject of why there have been no blog posts in the last ten months but first, an aside... Podcasts.

For various reasons, 2016 was the year I went from listening to a lot of music to listening to a lot of podcasts. I’m late to the game, I know, but for some reason as last year’s news got worse—Brexit, Trump, losing a loved one—I began to find great comfort and distraction in listening to other people’s voices in my head. Not necessarily content that tried to make sense of the madness happening in the world, but subjects that helped to ground me, like tech and productivity. It was an audible hug for my brain.

Along my podcast journey, I was reacquainted with the voice of Merlin Mann who spoke at dConstruct in 2010; my first ever web conference. He and John Gruber recorded a rather special edition of The Talk Show—which normally covers commentary on the Apple ecosystem—but for this episode mainly skirted around the US election result, having been recorded the day after. I thought it was a nice light through the fog and I began digging into some of Merlin’s other shows.

Back to Work popped up on my radar which is a show Merlin co-hosts with Dan Benjamin where they discuss productivity, communication, work, barriers, constraints, tools, and more. I took particular interest in an episode where they were discussing this notion of backstage versus onstage.

299: Unhook from the Comparison — Back to Work — Overcast

It got me thinking a lot.

tl;dr — the things you generally see on the web, on Instagram, on TV—these can all be seen as someone else’s onstage. It’s the public version. The polished version. And as content creators and makers of things it’s very hard not to be affected by the success of other people’s work. Or by the latest and greatest technique, or method, or framework. Sometimes these things can have a positive effect, but sometimes they can simply make you feel like crap. Like you’re forever trying to catch up. It’s a loud world, and only getting louder.

And then I realised that we at Tito are the kind of individuals—and by association, the kind of company—that try not to get distracted too much by outside influences. We keep our heads down and focus on the things we have to do. “Fuck all that noise” is a statement you’ll hear occasionally echoing through the office.

As with everything, this approach has it advantages but also comes with some drawbacks. We’re not natural showpeople. Marketing ourselves and talking about what we’re up to isn’t something that comes very naturally to us.

We’ve done a lot in the last 10 months, but our default behaviour isn’t to shout about it. Instead, we just hunker down and move on to the next thing. And, when you’re a small team, there’s always a big pile of next things.

Is that a good approach for increasing engagement? Nope.
Is this helping us to scale beyond our wildest dreams? Nope.

We’re perhaps a little too humble for our own good, but we’d prefer that to the alternative. Because the alternative can come across as brash and abrasive. Or maybe it’s ego.

I have a feeling that a lot of our customers prefer our lack of jazz hands. What they get from Tito isn’t a lot of heavy promotion and attention grabbing headlines. They get an honest product with a team dedicated to improving their experience.

With all that said, there needs to be a balance. If you came to our blog looking for a pulse, you’d be forgiven for thinking that all was not well. In fact, quite the opposite is true. We’ve been very busy. We’ve even hired a few great folks to help us improve our *onstage*.

We’re also hiring a few folks to help us improve our bus number.

Not to mention the fact that we haven’t been idle during the last year, and we have plenty of exciting updates that we’ll share soon.

So hello, we’re back. Not that we ever left, but you’ll be hearing a lot more from us from now on.

Doc Parsons

How to: Zapier Integration

In a follow-up to our post earlier this month on using webhooks to push information to Slack, here’s a way to share data with over 500 other apps using Zapier.

For those unfamiliar with Zapier, it’s a third party service that moves data from one app to another. It can be used for tasks such as copying data to a spreadsheet, populating a mailing list, or updating your CRM.

Zapier’s integrations are called ‘Zaps’ and are made up of a Trigger, and one or more Actions or Searches.

A note from Zapier’s documentation: Zaps do not import or export old data (they only operate on new items created after the Zap is enabled). Zaps are also not kept in sync (“two way syncing”) after the Zap is triggered.

As you would imagine, Zapier is a paid service, although depending on your requirements you might be able to use their free plan. More information on costs here:


In this example we’re going to create (or update) contacts in HubSpot. HubSpot is a popular marketing and sales platform, and its CRM is free to use.

What you’ll need

  • A Tito account with an event already set-up with at least one available ticket
  • A HubSpot account, you can sign up here
  • A Zapier account, you can sign up here

Note: In order to set-up the integration we’ll need to process a ticket in Tito. In order to do this without upsetting your numbers and incurring any charges you should set your Tito event to Test Mode (Customize > Test Mode > Enable Test Mode for the whole event). For paid tickets in test mode, if you have a Stripe account connected, you can use a test credit card to process the order:

Card number: 4242 4242 4242 4242
Expiry date: 01/2020
CVV: 123

Create a Zapier integration

Step 1.


If you haven’t already, create an account on Zapier, or log into your existing account

Step 2.


On your Zapier dashboard, click “MAKE A ZAP” at the top of the screen

Step 3.


Choose a Trigger App: In the searchbar, type “webhooks” and select “Webhooks by Zapier”

Step 4.


Choose a Trigger: select “Catch Hook” then “Save + Continue”

Step 5.


Pick off a Child Key: you can skip this, just click “Continue”

Step 6.


Test this Step: copy the generated URL to the clipboard

Step 7.


Create an Endpoint: Switch to your event in Tito. Go to “Customize > Webhooks” and click “Add New Endpoint”

Step 8.


Specify Endpoint and Actions: paste the Zapier URL into “Endpoint URL”, and deselect all the actions and just reselect “registration.finished”. Click “Save”.

Step 9.


Jump back to Zapier and click “OK, I did this” and you’ll see the message “Looking for the hook, this might take a sec…”

Step 10.


Jump back to Tito and place an order for the event. For paid tickets, if you are in Test Mode you can use the Stripe test card: 4242 4242 4242 4242 Exp. 01/20 CVV 123

Step 11.


Jump back to Zapier and you should see the “Test Successful!” message. Click “Continue”. If the hook times out, just rerun it and place another order in Tito.

Step 12.


Choose an Action App: search for “HubSpot” and you get two options “HubSpot” or “HubSpot CRM” — select “HubSpot”

Step 13.


Select HubSpot Action: choose the “Create or Update Contact” action. Click “Save + Continue”.

Step 14.


Select HubSpot Account: connect your HubSpot account to Zapier

Step 15.


Set up HubSpot or Update Contact: Here you map the fields, so the first one would be “Contact Email” mapped to “Email”. Map all the fields you need. If fields are missing then you’ll need to set them up in Tito, place another order and re-run the Test Step in “Catch Hook” so they are made available. When you’ve mapped the fields, click “Continue”

Step 16.


Test HubSpot: click “Create & Continue”

Step 17.


You should see “Test Successful!” 🎉

Step 18.


Click “Finish”, name your Zap and switch it on.

Step 19.


You can jump into HubSpot and see the test contact that was created.

Getting attendee data into Zapier is a little trickier, but I’ll do a follow-up post on this soon.

Doc Parsons

Posting new registrations to Slack

Slack is a messaging app for teams. We love it here at Tito (I’m sure many of you do too) and it forms an integral part of both our internal and external communication.

Using our webhooks, it’s super simple to post to a Slack channel whenever someone registers for your event. Just follow the steps below:

Step 1.


Jump into Slack and select “Apps & integrations” from the main menu.

Step 2.


From the App Directory, type and select “Incoming WebHooks”.

Step 3.


On the Incoming WebHooks page, select “Add configuration”.

Step 4.


Choose an existing channel, or create a new channel to post to, and click “Add Incoming WebHooks integration”.

Step 5.


Scroll down to the Integration Settings and fill in the relevant information. Here are some suggested settings:

Descriptive Label: A bot to post new Tito registrations from FriendsConf
Customize Name: FriendsConf
Customize Icon: download a Tito icon here

Click “Save Settings”, and finally click on the “Copy URL” link to copy the Webhook URL.

Step 6.


Jump into Tito, and into your event.

Step 7.


Go to Customize > Webhooks and click on “Add New Endpoint”.

Step 8.


Paste your Slack Webhook URL into the “Endpoint URL” field, and deselect all of the Included Actions, then reselect “registration.finished”, and click “Save”.

Step 9.

You’re all done! You can put your event into Test Mode (Customize > Test Mode > Enable Test Mode for the whole event) and place a registration to test the integration.


Doc Parsons

Cheaper European Pricing from Stripe

Good news everyone!

On December 9th Stripe lowered their pricing for all 14 supported European countries:

Our new price is 1.4% + €0.25 for European cards and 2.9% + €0.25 for non-European cards. (Instead of €0.25, the fixed fee in the UK will be 20p and in Denmark and Sweden will be 1.8kr.)

We continue to recommend Stripe for the best possible user experience for Tito.

Doc Parsons

A Word from The Design Department

Paul: It’s been nearly a year.
Doc: No it hasn’t.
Paul: It has.
Doc: checks

So it’s been nearly a year since I put fingers to keyboard for this blog. Shocking? Yes. Inexcusable? Probably. But the excuses are awesome, including having taken delivery of a tiny human along the way—who by-the-by has more hair than me already—I’ll tell you all about the rest over a glass of house red some time.

What I will say is that looking back, the last year has been pretty turbulent. The Design Dept. said goodbye to it’s first (and only) full-time employee who departed our shores to Kickstart his career in the good ol’ US of A.

With all the will in the world there is a limit to how much a small, bootstrapped team can get done. Pressure builds and inevitably I let the design side of things begin to slide while we focused on bug fixes, new features and customer development.

However, we eventually managed to wrestle some time from busy freelancer extraordinaire Peter McDonagh who has done an amazing job at giving Tito a fresh design injection.

If you’ve logged into Tito recently you’ll notice a fairly hefty revamp of most of the internal admin screens. I’ll dive into some detail in a later post, but we finally have the makings of the interface we always wanted—lots of improvements to be made of course, but we feel it’s a fantastic start.

You’ll also notice a refresh of the blog—in all honestly, the old design was probably one of the reasons I wasn’t rushing back here to write. Anyway, we now have a typographically beautiful platform on which to pen our words. A massive, massive thanks to Jake Giltsoff for creating Sassline which has done all of the heavy lifting.

The blog also gives a few design hints as to what’s coming next. There’s a lot in the pipeline, so I’ll leave you for now and promise to come back soon. There’s a hungry baby to feed and perhaps a house red to sip in celebration of a long awaited press of the publish button.


Organizer registration notifications

Following a suggestion from one of our customers, Stephan Boönneman, the email notification that event organizers receive for ticket registrations now includes the ticket name.


From: UltimateConf 2014
Subject: John Wayne just registered 1 ticket


From: UltimateConf 2014
Subject: 1 x Early Bird registered by John Wayne

Since multiple ticket purchases have the potential to make the subject length unwieldy, we roll them up for more than three.