Like many people I get an email from TfL each month letting me know my Oyster card will expire soon and I need to go to their website to renew it. If only it was that simple.

It’s a simple email, along the lines of:

“This is a reminder that the season ticket on your Oyster card will expire on 04/10/2019. Please go to oyster.tfl.gov.uk and sign in to your Oyster online account to renew it. You can do this up to 30 days in advance but please allow 30 minutes to process the order before you want to travel.”

Depending on your email software, that link to the TfL website might be one you can click on and it will work normally — but thanks to a bug in the underlying code, a lot of people can’t click on the link.

Thinking occasionally over the past few months that it’s odd to send out an email telling me to go to the Oyster website, then expecting me to go and look up the address on google, it was time to dig into the issue a bit.

It’s a simple problem.

The HTML code that creates the website link in the email is written thus:

<a href=”oyster.tfl.gov.uk”>oyster.tfl.gov.uk</a>

They’ve missed a small, but critical bit off. It should read thus:

<a href=”https://oyster.tfl.gov.uk”>oyster.tfl.gov.uk</a>

By missing off the bit in red, the protocol to be used for the link, many email software applications won’t know what to do with the link. They see there’s a link, but is it a website, an email, FTP, a phone number, etc.

Some email software will attempt to guess — and usually get it right and that link is indeed clickable. But not all can do that.

If I open the email on my PC, not clickable, in gmail on a web browser, clickable, in mail on an Android phone, clickable, but goes to the wrong address.

It’s a coding typo — quite small and very easy to fix. Just put the red text in, and all will be fine.

Knowing that people often don’t report website bugs presuming that the website manager has a magic “tell me all the bugs” type tool, I dropped a note to TfL customer service to alert them of the tiny glitch.

Easy bug, quick to fix, no hassles.

The reply:

I appreciate the time you’ve taken out to write to us. I’ve had a look at your query and I’d like to inform you that this is a known issue and is currently being investigated.

So it’s a known bug, and being investigated.

Not much investigation needed, any email coder will spot that mistake in seconds.

I know that bugs need to be scheduled for fixes and then the fixes validated and finally deployed.

But this is a known bug. I did some digging through old emails, the known bug has been in their emails since late 2018.

A bug that takes a few minutes to fix has lurked in the code snarling up emails for nearly a year.

Ironically, I am finally able to switch to an annual ticket next month, so I won’t know if this issue is ever fixed or not.

But hopefully, for the many thousands of people who receive that monthly alert, it will be fixed. Eventually.