The Opal Card is an automatic fare collection system based around NXP MiFare DESFire EV1 NFC cards and readers supplied by Cubic Transportation Systems (based on readers on the Oyster card network). It has been in use since December 2012 as a supplementary system of ticketing for Sydney’s public transport, with an intention to replace magnetic-stripe based paper tickets in the future. Following the previous botched T-card system awarded to ERG, the NSW Government has been very positive about it, with the former transport minister (Gladys Berejiklian) and the present transport minister (Andrew Constance) typically fronting the media at any opportunity to tout Opal’s successful trials, wide adoption and benefits to consumers.
Opal’s shortcomings are, for all intents, glossed over – including customer service difficulties, regular website downtime and slowness, slow data synchronization from readers, data loss and inconsistencies, activation faults, top-up collection faults, and default fares.
Most of these issues fly under the radar, save for a few short stories on the nightly news, mainly regarding issues surrounding the system going down in peak time, auto-top up minimum balances, defective readers and default fares, and travel reward exploitation. In some cases, the fault is down to the user who fails to follow instructions, but even for legitimate users, all is not as calm as it seems.
It seems that the system itself has many idiosyncrasies, unwritten rules and bugs which still have not been ironed out, some of which are taken advantage of by more enterprising people. Andrew Constance has recently come out to attack groups of people taking advantage of the weekly travel reward to reduce their weekly expenditure, something which was approved of and encouraged by himself and the former minister. However, things might be set to change with a review of the integrated ticketing system, with an eye towards fully-integrated distance-based charges to remove penalties from transport mode switching.
Sadly, despite all of this, users still fall through the cracks, with fundamental issues with the Opal system that a moderate or regular commuter will unfortunately encounter. I’m hardly a regular commuter, often doing two trips per week, and I do not partake in any exploits of the travel reward, but even so, I’ve had my fair share of issues. From traffic to my site, it seems that I am not alone, with a surge of queries from people wondering why they have a stuck pending top-up, wondering why their auto-top up took money from their credit card but didn’t put it on their Opal card, wondering why their transaction was listed as declined by Opal but the money is missing from their bank account, and wondering why their cards have been incorrectly charged or sometimes mysteriously blocked.
Having now been a regular user of the Opal card system, there are a few observations and tips I would like to share with everyone, so they can hopefully reduce the hassles around living with Opal.
The Opal system allows you to top-up online, through their website using a linked credit card and set up an automatic-top-up if you wish. This ensures your card remains above a $10 balance by automatically recharging a set value once your card falls below a $10 remaining credit.
This system, however, works via informing the card readers that your card needs to have its value adjusted, in a process known as a Pending top-up. Once you initiate a top-up from the Opal.com.au site which is successful, a pending top-up is registered and you must present your card at a reader within a certain number of days to “collect” this. This is because the value is stored on the Opal card itself (using encryption, of course), and the website has no way of altering the data on your card until it is presented to a reader.
In theory, such a system should work just fine, but in practice, things seem to be a little bit shaky. First of all, given that there are over two million of these cards in the wild now, the number of pending transactions can be quite significant. This is because new cards have their first top-up marked as a pending top-up, and all card data alterations (such as card blocking) are also “in the queue” to be processed. Every time a card is tapped, it has to be checked against a list of changes (likely stored in the reader, as network connectivity cannot be guaranteed) and any changes applied all in under a second. Given the reader’s resources are limited, there is likely to be a limit as to how many of these transactions can be stored.
This is why my first Opal card met its demise. A $60 top-up that couldn’t be collected, and was stuck in pending, which took several calls to resolve by marking the card as defective, blocking it, ordering a new card and activating it. Sadly, this didn’t go so smoothly, with problems with activation, then with balance transfer being collected but not reflected (so instead, I had a stuck pending top-up which had already been collected, which is the opposite of the first problem).
Interestingly, after the first card was cancelled, the stuck pending top-up turned up with a really unusual transaction number, suggesting some mathematical issue caused a counter to roll over into the negatives, but printed as a positive integer.
All in all, it took 50 days from the first top up not collecting to the new card being fixed, and 37 days from when the new card’s balance transfer actually not working properly, to when it was fixed, and involved over 17 calls to Opal, my time and effort chasing supervisors and time without an Opal card resulting in paper ticket purchases that were never compensated for.
Of course, this wouldn’t be such a big problem if it was a once-off, but I have reason to believe otherwise. I have been receiving increasing hits for ‘pending top up not collecting’ amongst other searches including the terms ‘pending top up’ which gives me reason to believe this issue is becoming more widespread. Alleviation may only happen when less people use the online systems to do things.
Hint: Don’t top-up online at all. Don’t top up using auto-top-up. Instead, top-up at a physical top-up machine run by TfNSW, like this one (the day before it was activated):
Using these machines allows you to top-up from a bank or credit card, updates your card immediately resulting in no pending top-up issues, and allows you to collect a physical receipt for the top-up. This way there should be no misunderstandings and no missing money. Best of all, there are no fees and it’s simple to use (follow the touch-screen prompts).
A second option is to top-up at a shop which has Opal top-up facility, but be warned that the shops reserve the right to charge fees for providing the service and most shops refuse top-ups from cards as the card fee means there’s a monetary loss in processing top-ups. That’s why seeking out one of the machines above is the best way to do it – and the good news is that they’ve finally been rolled out to many stations, not just the ones in the city.
If you don’t believe me, this is from the Opal FAQ:
“There are no fees for topping up online, by phone or at Opal card retailers using cash. However, if you use a credit or debit card to top up at an Opal card retailer, they may charge a service fee.”
Hint: Top up as much as you can. This is normally $60 for Concession and $120 for Adults in a single transaction on the top-up machines. Stored value on the Opal card will last for 9 years, and by topping up more rather than less, you will avoid queues at the machine and other downtime which can arise from system failures.
Hint: If you’re worried about losing eligibility for a card, don’t worry – your money can be balance transferred to a new card of the right entitlement, although this process could result in a 24 hour wait as the system has to ensure all outstanding transactions have been synchronized with the back end so that the balance is correct.
Hint: If you have a pending top-up that won’t collect, the first thing to do is to try and find a properly networked Opal reader (i.e. Train or Ferry) and do a tap-on reversal (i.e. tap on, wait about 1 minute, then tap off) to see if the top-up will collect. If it still doesn’t, you will have to call 13 OPAL and get them onto it. Whatever you do, I do not recommend using their website form as responses are generally slow (a day to two days), the form does not allow you to read your submitted ticket details, and doesn’t allow you to read replies either.
Hint: If you have an auto top-up which has been committed but the system claims it has failed, this is probably due to an issue with your card, banking details or a transient issue with Opal. Sadly, you will need to call them to sort this out, but why not just get rid of the auto-top up and follow my suggestion instead?
Hint: Don’t be caught by stupid online offers for $x Opal credit for only $y. They are almost always subscription scams to rip you off – read the fine print. The only authorized (and possible) way of topping up a card without physical access to the card is via Opal’s own systems.
Getting a Card and Activation
Getting an Opal card can be quite easy, as regular Adult and Child cards are generally available to purchase from convenience stores where the Opal top-up symbol is seen. Other types of cards need to be ordered directly from Opal as there is a need to validate eligibility. The cards themselves cost nothing, although the minimum top-up to “sell” a card to you is AU$10. Cards that are sold in this way are “unregistered”.
Hint: If you’re concerned about the government’s use or misuse of collected travel data, a good way to anonymize yourself is to leave your card unregistered, purchase several cards and change between them when necessary. Unfortunately, this could leave unused money on cards which cannot be spent as it would cause your Opal card to go negative in balance, and you will not have the ability to view as many past transaction records or block the card if it is lost or stolen.
Hint: Registering a card is simple and can be done online after purchasing a card from a retailer, and involves entering the card number into a form. Registering your card avails you to the blocking mechanism, full transaction records, ability to do balance transfers and online top-ups if you have a linked credit card.
Card activation can be done over the phone or online. Generally there is no problems with the online system, so try that first if it’s available to you. The phone system is also relatively straightforward, and is a free call 1800 447 792 or can also be reached by a Sydney number (02) 9211 9341. This system will prompt you for your Opal card number and PIN to activate it.
Hint: If you’re having trouble activating your card and you’re stuck in a loop in the “Please enter your Opal Card Number” prompt, press the # key three or four times in a row, and eventually you will be transferred to an operator, although there could be silence for a while.
Hint: If your problem is with activation, you can use this free-call number. However, if you have other issues, it’s best to call 13 OPAL despite the local call cost because this number leads to a dedicated team which deals with activations and are unable to assist with other queries aside from leaving tickets behind for someone else to attend to.
Tapping On and Off
It seems that some people have taken liberties with this statement, and they have a habit of tapping their whole wallet or a kludged card-in-smartphone onto the reader, perplexed when the system throws errors at them including “Try again with one card” and “Error”.
Hint: Even though the system says “tap” on and off, the action required is not waving your card above the reader, or tapping the card on the reader like it’s a drum-stick. You should bring the card into contact with (or as close as possible) to the target and hold it there relatively stationary until the transaction is complete. Moving your card “in and out” of the field during a transaction could corrupt the card or cause a failure and roll-back of data, meaning you have to try again.
Hint: If you are at the reader and you hear the Opal reader go “ding” for a successful transaction, and then rapidly goes to “bing-bong” for an error, it’s likely that you’ve held your card at the reader for too long after the transaction was processed. The balance available screens are very short, so make sure to remove your card as soon as you hear the ding to avoid causing the reader to attempt to process another transaction.
Hint: You don’t need to worry if you’ve “double-tapped” the card at a reader in the case of confusing dings. The system has a provision that prevents the same card being tapped on or off at the same reader within a certain time window (about a minute), and you will receive an “Already tapped on/off” message.
Hint: Your wallet likely contains many NFC cards and this can cause the reader trouble because it needs to power, identify and separate the cards and make sure it’s talking to the right card. Do us all a favour and take out your Opal card and tap that on the reader. The distance from the card to the reader also affects the ability of the reader to perform a transaction with the card (think inverse square law).
Hint: Your phone likely contains metal – in the shell, in the shell of the battery, and possibly even contains an NFC antenna. Putting your Opal card on the back of your phone is a bad idea, as the metal (if conductive) will act as a shorted turn to the reader and absorb the RF energy that is emitted to power the card. This can cause a field reduction at the card and result in poor signal to noise ratio, causing the reader to fail to work with your card. Only put your card alongside non-conductive surfaces, or shield the surfaces with an “anti-metal” diamagnetic layer (this is what’s used under NFC antennas on batteries, and is used in some proper cases). The front cover of your phone might be more suitable.
Hint: Check the reader before you tap. If it says Closed, or has a red screen with an X on it, it is suffering difficulties and cannot process any transactions. Try another reader.
Hint: Train barriers, especially, can be very slow to update their LCDs and other times can freeze. However, if you take off your headphones and listen to the tone, or carefully watch the LED light on the reader, you can confirm that you have successfully tapped on or off without waiting for the LCD to show the status. This also holds true for all readers around the network.
Hint: Take out your card well-before you are due at your stop to prevent holding up others as you exit. Bus readers are generally ready as soon as you are approaching your intended stop and the screen changes from “Please Wait” to “Tap on/off here”. This generally happens when the GPS detects that the bus has approached a stop.
Hint: If the bus readers still say Please Wait while you are stopped at your designated stop, please call out to the bus drivers to “activate the Opal readers please”. The bus driver merely needs to wake up the driver’s console, select a stop on the console, and wait for that to be pushed to the readers to activate them especially when the GPS is non-functioning or due to traffic conditions, they may be stopped too far from the designated stopping area.
Hint: Opal cards contain one unencrypted partition with a very small (16-or so bytes) of unencrypted raw data accessible to all NFC applications. This is likely the data used by third party apps to decode your card status, and allows for “risk free” accessing of part of the card’s data without knowledge of the seven or so encryption keys used by various infrastructure. The format of these raw bytes are probably only known to a few developers and those who have bothered to reverse engineer it.
Interestingly, at present, according to the Opal FAQ’s, you must board a bus only by the front doors. However, the hardware itself is capable of handling a tap on/off at any reader throughout the bus, and there was a trial for about a week to test a faster “all-doors” boarding system. This hasn’t seemed to have resulted in any changes to the recommendation, so unless otherwise told (i.e. UNSW 895 express), please use only the front doors to board.
The Opal system has a relatively straightforward charging structure for fares, which are distance zone-based, however, also complicate this with journey “transfer” benefits, daily travel caps and weekly travel reward systems. A full discussion isn’t warranted here, but I have discussed this before. The system works out the distance by looking at your tap-on and tap-off locations, works out the appropriate fare based on your trip history and records this onto your card, updating your balance. The online system itself is informed of the transactions and state of the card at every tap on and off and keeps a record for you to see on the website. Because this happens after the card is presented to a reader, such transactions can sometimes take a while to appear.
This screenshot was taken at the night at 7:53pm on the 23rd June. Notice how no transactions newer than 18th June has shown up.
The next day, some 23rd transactions have shown up on the 24th, but two transactions are missing in the log.
It was not until the 25th that the transactions finally showed up. The delay in the system is extreme and unexplainable.
Hint: If you have some missing transactions online, don’t panic. They could be in the system waiting to be updated, and might be held up because of missing data from earlier transactions. This is more common where bus readers are involved as they have a poor tendency for reliability. The balance shown by the reader is the true balance remaining on the card, and if there is an issue with a charge, you will have to wait until it turns up online before you can dispute it.
Of course, the above example is relatively positive, as the data eventually made it. However, this isn’t always the case.
Transaction 369 has gone missing in this log, and it would have been a journey taken on Wednesday 5th August. It is 9:07am on the 6th August as I’m checking it and it still hasn’t shown up.
Checking it on the 9th August, the system has conceded defeat and has lost the data. The fare is correct, the fare type is not default, but instead it shows High St nr Gate 9 UNSW to Unknown. Unfortunately, the system just doesn’t have the intelligence to work it out even if the route is an express route with just a single stop. A data loss like this on my balance transfer caused me a stuck pending top-up which would not release until after a barrage of calls to Opal and me insisting that they fix it.
Unfortunately, sometimes the system will incorrectly charge the rider. In this case, I’ve managed an non-existent route – no such route exists but I have been charged for a single ride from Minneapolis Cr nr Midway to Eddy Av and so was most of the busload of people to perplexed faces when tapping off. The actual ride is the same route as above.
This happened because the driver’s GPS may not have locked on correctly after a rest break. I was one of the first to board the bus, and I saw the readers come online, and I asked the driver if they were ready and she said that they were. Later, I saw the readers flicker to Please Wait and then back to Tap On/Off Here and I knew I was in trouble.
In another case, I was charged two default fares for a single ride. How could this be? You can see from the time stamps that it was a single 891 service.
It seems that the driver had not fully entered his job details at the time the readers were enabled, or the readers did not receive the correct details at the time I tapped on. This resulted in the readers thinking I had got on one service and tapped on, then got onto another service and tapped on without tapping off the last service, hence two default fares.
Hint: Try not to be the first to board the bus at a terminal point especially after a driver rest break when the driver has not run the bus for a while so the GPS can lock and the shift details are sent to the readers, and not to tap on just as the readers come online. There is a chance that the readers have not yet received their final configuration and this will result in incorrect fare charging. Sadly, there is no sure-fire way to avoid issues here.
Hint: Try not to tap-off on the rear readers, especially on private buses where you see the screen flicker to Closed and hear the reader reboot mid-trip. This is a sure sign of a wiring problem, and loose connections, that will likely cause data loss of your journey and thus inconsistent records.
Hint: If you have a fare discrepancy, work out if it has any material effect on your travel costs and if so, how much, before you waste your time calling Opal. Despite having two charging issues within two weeks, the difference in cost for me was under the cost of actually making a phone call, let alone the time spent doing that, so it wasn’t economical to do it. Unfortunately, this does let Opal get away with overcharging in some instances.
Of course, there is more weirdness to be found. Tap-on reversals for Train and Ferry are available, as it is possible to arrive at a station, tap-on, and realize the service is cancelled or running late and you need to back-out of your commitment. But such a service is generally not available for buses – as the bus must have arrived for you to tap on. Attempting a tap-on reversal on a bus generally results in a charge, or many frustrating errors claiming “Already tapped on/off”.
However, I got caught in an interesting shift change situation with a bus – in this case, the driver stopped at a bus stop and kindly asked we all disembark and board the second bus. I loudly asked the driver – “Should we tap off on this bus and tap on the next bus?” to which he replied “It doesn’t matter. You can do it if you like.”
I dutifully did it, as it is a transfer and thus incurs no cost, and according to the Opal FAQ: “What happens if my bus breaks down and I have to transfer to a replacement bus? Tap off the first bus as you leave and, once you’re on the replacement bus tap on and tap off as normal. Your fare will be unaffected as long as the time between tapping off the first bus and tapping onto the second bus is no longer than 60 minutes.”
Tapping off the first bus succeeded, and tapping on the second bus was fine, claiming “transfer” as it should have. But when it came to tapping off, the readers did not activate and I asked the driver to activate them. He asked me with a perplexed face – “you tapped on?” to which I replied “yes.” The screen showed tap on reversal, which was unexpected.
It appears that the second bus driver manually selected a stop which was impossible – i.e. he may have selected a stop further back in the route than when I tapped on, causing Opal to be confused as to the distance of my ride (which now appears negative). As a result, the transfer to the other bus resulted in a tap-on reversal (on the screen), but had another side effect – the next boarding of another bus resulted in another entry line of a transaction with blank details … and …
… a zero dollar top-up. So it seems that the invalid card data resulted in a $0 adjustment being applied to the card. How very peculiar. That being said, the other passengers that did not tap off on the first bus and tapped off on the second are likely to see a double-default-fare situation like I had earlier.
Hint: If your bus breaks down or you need to transfer from one bus to another, you must tap off on your existing bus and tap on on your replacement bus. This is counted as a transfer if it’s within 60 minutes and as it is distance charged, you should not be penalized for this.
Some people I have talked to have claimed that very short bus rides are now charged as a tap-on reversal. I had a legitimate need to catch a bus a one-stop distance from UNSW Gate 2 to UNSW Gate 9, and it was charged appropriately. It seems that those who are getting tap-on reversals for short rides may be an artifact of a non-functioning GPS and tapping off on the same or earlier stop.
Hint: Making short trips during your day with 1 hour separation from your other trips can be a way to accrue your weekly travel reward early and save money. To save the most money, choose the modes which cost the least. But be warned, if you do this, apparently you are an “ingenious little bugger.”
Hint: The present Opal system penalizes you for changing modes, so to minimise costs, you should stick to one mode where possible, even if it takes a little longer.
There seems to be some interesting results of the system as well, where by travelling a non-zero distance, can result in your card being credited with cash.
As part of a sequence of trips, this transaction came up where a +$0.50 adjustment was added to the card. Is this because I crossed the city circle and then returned past the city circle? The accounting for train distance is very peculiar especially when City stations are concerned.
Other people experimenting with the system seem to have uncovered issues with the transfer system. The complaint often goes that after a certain number of transfers, a new journey begins automatically. This seems to be a limitation of the card data structure, and is something which other people tend to exploit. However, it seems that a change of mode will continue your journey on the same number, allowing for more legs to a single journey. There is no practical reason why you might want to do this, as it puts you at a disadvantage for earning your weekly travel reward, and you are penalized for mode-changing by being slugged a new fare, but I thought I’d just mention it anyway.
Central Station Revamp
It’s been an age since I’ve had time to write a random post, so while the Central Station revamp is now nearly entirely complete, I hadn’t had the chance to document it.
Part of the revamp includes pulling off all the old tiling with very much “classic” design, and replacing it with a new, uniform grey and white style tiling. Very coffee shop-like.
This was done in stages, with pillars covered as they were being done a few at a time. New signage was installed with inverse colour scheme, and the concourses were given new names – Grand Concourse, North Concourse and South Concourse to name a few.
The old departures screens, themselves replacing an older CRT-monitor based system, were also replaced with a new tall-wall of LCD displays. I’d love to have some of them in my room.
Here, they were being tested on the night of the 18th June.
This being an Opal post, what does this all have to do with Central Station? Well, let me explain. Part of these changes to the Grand Concourse have been made to accomodate a new Transport Information Centre which opened just underneath.
This claims to be a one-stop shop for Opal and transport help, but is only staffed with three counters and can only do card-based top-ups. Occasionally, there are queues, but it is generally filled with a stack of forms you fill out instead. Asking for help normally leads to them filing a ticket for you, as they have no relation to the Opal back-end system itself.
Hint: If you really need help, you probably shouldn’t visit this centre, or use the web-form. Again, despite it costing 25c, call them up at 13 OPAL and tell them there, as they have access to the systems which can help you.
Hint: If you call 13 OPAL, and they ask you again for your Opal card number after you already entered it into the system correctly, you have reached the overflow queue, and this centre is less-well-equipped to handle complex issues. Reaching this queue also often results in about 20 seconds of silence (instead of the “your call may be recorded for quality and training purposes messages”) when pressing 0 to speak to a customer service representative, and results in the line “ringing” rather than being silently dropped into the queue.
Another change to Central Station is the Eddy Avenue to Elizabeth Street concourse. The old ticket readers were de-activated, bagged, and then removed with new readers installed instead at the ends of the corridor. The toilets were also taken out of service and refurbished.
This has changed the layout of the station, resulting in the layout turning from this …
… where blue is coded for “free” area, and “yellow” is paid area (forgive my crude hand-drawn images) … to ….
… this, where there is no thoroughfare and no access to the toilets anymore. If you don’t intend to ride, you must endure the weather and walk the long way around to catch a bus … that is … unless you remember the following hint.
Hint: You can use a tap-on reversal, which costs you nothing and does not affect your journeys, to gain access to the internal thoroughfare and toilets. A tap on reversal normally requires at least a minute within the paid area which you will achieve by walking the length of the corridor (or waiting a bit if you get the “Please wait to tap off” message).
Hint: Tap on reversals also work for ferries … but you already knew that ;).
Hint: Tap on reversals may make a good way to establish proof of your location and time. Many of these locations are well-equipped with CCTV as well, and the transactions record date and time to make future requests for such footage easier. Not that I’d think you’d need it.
The Opal system does have its quirks, but generally does work if you use your observation skills and common sense. Using it “right” and obeying all the rules won’t guarantee you won’t get stung by something silly, but if you are aware of the rules, and you try your best to conform with them, then you might save yourself a few calls to Opal and long-winded explanations to try and claw back a few dollars and cents. Even then, in many cases, it’s not worth the time or money, so chances are, the Opal guys will get to pocket any errors. It’s not fair, but that’s how it is.
It seems that the majority of issues are caused by bus readers, and their flaky wiring, tricky automotive power environment and intermittent network coverage. Aside from buses, I have never had any charging issues elsewhere, as their readers are generally permanently fixed and well networked. The next biggest issue would be the online top-up system due to the design of the pending-changes system.
You would think that a system that has been running for almost three years would be seamless and just work. Sadly, this is not the case, and even today, it is not as reliable or as slick as some systems overseas.
Having relatives overseas who regularly use Octopus overseas (Hong Kong’s Felica and MiFare based based system), it seems that problems with fares, multiple NFC cards in wallets, and recharges are virtually zero due to the way the system is designed. The system also is more flexible, allowing the card to be used as virtual currency for small convenience store purchases, access control to certain buildings, as well as allowing you to use special forms of IC-integrated accessories (such as an Octopus watch). This is especially surprising given the Octopus system pre-dates our system, launched in September 1997. I have had personal experience with the system in 2001, 2006 and again in 2014 with no fault at all. The system was even built with consultation with ERG, the company that failed to deliver our T-card. How peculiar.
Regardless, I hope the Opal guys get the problems sorted, however, I have a feeling many of the issues experienced with online systems are architecturally related. Their readers will have a finite amount of storage, the network connectivity will be flaky at times, and the amount of outstanding-card-changes that can be held may never be enough to ensure that every stolen/lost card is immediately blocked, every paid online and auto top-up can be collected immediately. This is disappointing, but if you try to live your Opal life with as little reliance on the online services as you can, it seems that you will not encounter the issues that plague those who do.