Tuesday, June 21, 2005

Terminal stupidity

As an IT professional I am particularly offended by poor customer experiences that are caused by badly designed systems, especially when that bad design is the result of laziness on the part of the designer and could easily have been done correctly for little or no additional cost.

I talked about this previously with respect to the menu design on the Qantas in flight entertainment system. Yesterday I experienced another example, even more annoying and just as unnecessary when I tried to pay a taxi fare with my American Express card. The terminal returned an error message "Card declined, contact issuer." I knew at the time that this message was incorrect and confirmed it by successfully using the same card several times later that day.

When you attempt to perform an online credit card authorisation there are actually three things that can happen. The first is that the card issuer authorises the transaction. The second is that the card issuer declines the transaction. The third thing that can occur, and this is what happened in my case, is that for one reason or another the terminal does not receive any response within a pre-defined time. This happens frequently in a situation like paying in a taxi where the terminal has to communicate over a mobile network.

The obvious question is why not display an error message that actually describes what happened e.g. "Could not contact issuer", rather than a message that is completely misleading? I don't know the answer because the difference is 2-3 lines of code or about 10 minutes work for a competent programmer (OK 15 minutes if you include testing). Shame on the person who designed and programmed these terminals and everyone involved in their sale and shame on the taxi company for not insisting that their supplier provide a product that doesn't lie to their customers.

No comments: