Android Question POS Credit Card Capture

cwt

Active Member
Licensed User
Longtime User
I am converting a Windows POS program to a mobile application to use on tablets - really just converting the concept as the only reusable code is on the backend. With the Windows point-of-sale program it was relatively easy to integrate credit card capture - not so easy on Android or iOS. Has anyone done this and any suggestions on the best solution? Ideally, I want to be able to send the amount of the sale from my POS app to the credit card device via Bluetooth, and then pull back the card capture result to my app. I want to give my users some flexibility so they don't have to use a dedicated system like Square.
 

Sandman

Expert
Licensed User
Longtime User
Well, judging by how other have solved it, it's probably fair to assume you will have to use an external piece of hardware. Take a look at Zettle, for instance. They've been around for some time (called iZettle before getting bought by Paypal) and they created their own device just for this.




I want to give my users some flexibility so they don't have to use a dedicated system like Square.
Just a friendly warning. Depending on where you are in the world, the rules regarding reading credit and payment cards are draconian. Do not expect it to be a simple or cheap project.
 
Upvote 0

cwt

Active Member
Licensed User
Longtime User
Thanks for the reply. I am in the US. I have been doing card capture for years with Windows applications so am very familiar with PCI compliance - this should not be a problem.

I expect to need external hardware for this - but need something I can control via my B4X apps. Zettle looks promising - thanks for the pointer.
 
Upvote 0

Jeffrey Cameron

Well-Known Member
Licensed User
Longtime User
I am converting a Windows POS program to a mobile application to use on tablets - really just converting the concept as the only reusable code is on the backend. With the Windows point-of-sale program it was relatively easy to integrate credit card capture - not so easy on Android or iOS. Has anyone done this and any suggestions on the best solution? Ideally, I want to be able to send the amount of the sale from my POS app to the credit card device via Bluetooth, and then pull back the card capture result to my app. I want to give my users some flexibility so they don't have to use a dedicated system like Square.

The last one I did (a few years ago now) was the Cayan Genius system, It's a device that acts a local network HTTP host and you post requests to it. If you want to issue card boards, or void transactions you'll need to use the transport layer API on their web backend (for our application the tablet only handles swipes, all other functions are performed by our backend API).

Since this integration, all of the independent companies (MerchantWare, Cayan, TSYS, FisrtData just to name the ones I can remember) have all been bought out by Global Payments. But, from what I understand they are still using the method I described above for their current terminals.


From the research I can remember, your only other option would be to install the processors software on the tablet, then issue an intent for the swipe, then have your app handle the card swipe response intent. We chose the former method so we had more control over what was displayed and the program flow/timeout. We didn't trust the clerks leaving our app for a 3rd party app ;)
 
Last edited:
Upvote 0
Top