This article is a cautionary tale about one of the costliest and easily avoidable mistakes companies make when developing their first payment kiosk.
One of the most common calls I get as a kiosk consultant is from a project manager or developer asking me how to integrate some payment device (i.e. a bill acceptor) into their kiosk application.
If you’re asking this question, then you messed up a long time ago.
What’s the problem?
The companies that make these payment devices typically release software development kits (SDKs) which greatly lower the learning curve for integrating their payment device into a software application.
They also tend to favor the Windows and Linux operating systems. This is certainly not true for all payment devices, but it is in most cases.
For example, if you’re going to be deploying Android tablets, make sure the payment device you’re using has an Android SDK you can use!
I already painted myself into a corner. What now?
OK so you already messed up. What now you ask?
Here are a few options, none of which are pretty…
- Select different payment devices, which might not easily fit into your kiosk enclosure
- Completely re-write your kiosk application in a different language
- Implement a very low-level and potentially expensive integration directly with the payment device
- Implement a complex client/server solution where the server utilizes the payment device SDK, since the client (your kiosk application) cannot
None of these solutions are cheap or fast. Therefore, it’s vital that you select your kiosk hardware early in the project before you select your operating system and programming language.
This pitfall is easily avoidable, but unless your software developers have built a payment kiosk, selecting hardware will likely be an afterthought.
As a software developer it’s a foreign concept to worry about hardware first. But when you’re developing a self-service kiosk, the hardware and software must play nice together.
Think ahead or you’ll end up wrecking your budget and timeline with costly rework.