Beginners Guide to Developing Kiosk Software – Part 3

By | August 15, 2014

Beginners Guide to Developing Kiosk Software

Pitfalls to avoid when developing payment kiosks

This is my third and final article in a series titled “A Beginners Guide to Developing Kiosk Software.” In this article I’m not even going to attempt to delve into the

KioskSimple CEO Andrew Savala

KioskSimple CEO Andrew Savala

specifics of developing support for accepting payments because there is a huge variation between payment devices and their interfaces. What I am going to cover is the decision making process you as a developer or business owner need to carefully step through when you decide to make your kiosk accept payments. If you have any questions about a specific payment device please shoot me a message on one of my social media channels listed at the end of this article.

Will that be Cash or Credit?

While this is really more of a business decision driven largely by your customer demographics it has a significant impact on development. Credit card readers are relatively easy to integrate with and are pretty much dummy proof (but not always child proof). With a credit card reader there’s no reason to be concerned about bill jams or updating firmware to support the latest “Monopoly” money looking $100 bills. Going with credit is more desirable from a design standpoint, which is all well and good as long as you don’t have a line of cash customers waiting to use your kiosk.

In my experience cash customers tend to be the poorer and/or the ever evaporating, less tech savvy demographic. We’ve found that kiosks placed in rich and/or college towns tend to accept a ton of credit card payments whereas the kiosks placed in poorer communities tend to be mainly small cash transactions. Another huge issue with accepting cash is that the cashbox needs to be emptied regularly, which can mean hiring an expensive armored truck service. Some businesses are hung up on the idea of “going cashless” and if this is your client by all means accept the cash, just make sure you’re aware of the challenges associated with accepting this form of payment.

But I want my kiosk to give out change!

When you say give out change are you thinking coins or bills? That is the first question I would ask my client wanting this functionality. The second question would be “Why is it necessary to give out change?” You can certainly house a big coin hopper in the kiosk but you have to consider if it’s worth the headache of keeping it stocked with coins and servicing coin/gum/paper/etc… jams. After understanding what giving change in coins entails our client’s often opt to round up to the nearest dollar and dispense change in bills. Typically we’re dealing with clients who are selling products and services no less than $20 per transaction and rounding up the change to the nearest dollar is worth eliminating the headache of dealing with coins. Optimizing your pricing to minimize the need to give change can be an effective strategy also. Accepting and dispensing change (in coins) is something I would recommend avoiding if you can get away with it.

Ok so what about giving back change in whole bills? This is very doable, but you’re talking about investing in a relatively expensive bill recycler. To give you a little background, a bill recycler (or bulk note recycler) is a hybrid bill acceptor which both accepts and dispenses bills. The recycler uses the bills from previous transactions to dispense change but you also need to keep it stocked to ensure you always have sufficient bills of all increments.

We’ve integrated the MEI BNR (Bulk Note Recycler) into multiple kiosk projects

MEI BNR Cash Recycler often used in supermarket checkout

MEI BNR Cash Recycler often used in supermarket checkout

and I would highly recommend this product. Both the product and their developer support are excellent.

Can my kiosk accept checks?

The short answer is yes, but I wouldn’t recommend it because of the potential for check fraud. Next time you pass by a bill payment kiosk see if it accepts checks and ask yourself why not. Once upon a time we actually developed a kiosk application equipped with a check scanner and then automatically sent the check images to a bank to deposit them, but this was purely for use with checks issued internally by the organization. Again I wouldn’t recommend it.

Don’t ignore PCI compliance

PCI-DSS compliance is a huge issue in today’s retail environment and the same is true for retail kiosks or any kiosk where you’re accepting credit card payments. It’s critical that you understand how to adhere to its guidelines or you may end up putting your clients at risk of fines and your customers at risk of credit card fraud. The whole purpose of PCI compliance is to protect card holder data and many of the guidelines are no-brainers. Just search the web for the phrase “kiosk PCI compliance” and you will find a whole wealth of useful information on the topic. Bottom line is, you need to protect the customer’s credit card data by ensuring that it’s always transmitted securely via SSL and NEVER store credit card data on the kiosk.


Thank you for taking the time to read this short series on developing kiosk software. The last thing I wanted to mention is that when developing support for kiosk payment devices you’ll find that each device will commonly have its own proprietary interface or API. We’ve created a handy kiosk software product called KioskSimple that makes it easy for your kiosk to start accepting payments with writing only very little code, so you can check that out at We also offer a generic API for payment devices that makes it simple to swap between different devices, any many cases without the need to modify your code at all.

Author: Staff Writer

Craig Keefner is the editor and author for Kiosk Association and kiosk industry. With over 30 years in the industry and experience in large and small kiosk solutions, Craig is widely considered to be an expert in the field. Major kiosk projects for him include Verizon Bill Pay kiosk and hundreds of others.