Accepting data from magnetic stripe card readers

Kiosk Pro Enterprise currently integrates the SDK for several specific magnetic stripe card readers:

  • IDTech's Shuttle and UniMag II, both of which connect to the device's audio jack.
  • IDTech's iMag Pro with 30-pin connector (for early iPads) and iMag Pro II with Lightning connector (for newer iPads).
  • MagTek iDynamo, which is available with 30-pin connector or Lightning connector.

The IDTech card readers are available as both unencrypted readers (that return the information from a card swipe as plain text) and encrypted readers that can be encrypted with keys from various payment processors. The MagTek iDynamo is only available as an encrypted reader.

The unencrypted IDTech readers return the information from a card swipe as plain text directly to your HTML page through a JavaScript function. We generally recommend using these unencrypted card readers for cards that do not contain sensitive information, like loyalty or membership cards. If you are considering using these for credit cards, your code would have to secure and parse the information returned and submit it to some sort of merchant account to create a charge.

If you are considering accepting credit cards through the app, we highly recommend considering the  MercuryPay integration, which allows you to process card transactions that are encrypted from the moment the card is swiped until it reaches Mercury's servers for processing.

This solution is both PCI-compliant and more secure, but is only able to process payments inside the U.S. The MercuryPay integration is compatible with the IDTech Shuttle and MagTek iDynamo card readers; please note that the card reader must be encrypted specifically for MercuryPay's servers.

To use encrypted processing with other processors, you'd need to work directly with that processor to determine how the encrypted card swipe could be submitted to their servers for processing.

JavaScript API Documentation

Still stuck? How can we help? How can we help?