by Mike Ricotta - February 7, 2020
Trying to figure out which Stripe Credit Card Reader works best with Arcane’s Stripe Terminal for WooCommerce plugin? We’ve got you covered. Some card readers may not be compatible with your setup. Or perhaps you just want to know what alternatives there are for working with Stripe. We’ll go through each of the available options on the market, below, to give you all the information you need to make your decision.
Before we dive in, it’s important to know how Stripe processes card reader transactions.
As part of their push towards brick and mortar services, Stripe teamed up with BBPOS to offer mobile services. Their extremely mobile BlueTooth driven card reader, the BBPOS Chipper, was released mid-2019. This super-compact device bests its plug-and-play competition like Square by using a Bluetooth connection instead of plugging into a jack. It accepts contactless RFID payments as well as dip, swipe, and digital payment formats like Apple Pay, Samsung Pay, and Google Pay Check out some specs here.
This device is only available for iOS or Android applications processing transactions through the Stripe gateway. That’s right, this means you cannot use the BBPOS Chipper device for other platforms like desktop software or websites. Obviously, if you have the engineers necessary to rewrite the BBPOS Chipper’s native software to use the server-side API and then become PCI compliant, you can do whatever you want but then you probably don’t need to be reading this. It should also be noted that Bluetooth is a highly vulnerable protocol; perhaps one of the easiest to hack, so this is a risk you’re accepting with such a device.
EDIT: As of October 2020, Arcane now offers a mobile application which connects directly to your WooCommerce store for use with BBPOS Chipper.
Historically magnetic strip readers like the MagTek line have been able to support transactions for any type of platform through USB connectivity. Typically that software will actually read the card information (card number, expiration, CVV, etc) and transmit it to the credit card form on your POS just the same as if you had typed it in yourself. In 2019 Stripe started blocking this automated input method from their PCI controlled methods like Stripe.JS for the obvious reason that it’s insecure and they’re responsible for security as the PCI-accountable party. That doesn’t mean they can’t be used but Stripe doesn’t want you to, so proceed at your own risk.
What if you want to take this route? Bullet 3 above is your only option, so be prepared to be PCI compliant and expect some development costs. You can probably leverage legacy software that uses the Stripe API without Stripe.JS and that will work out just fine until Stripe identifies that you’re sending raw card data and blocks your account. If you can find a way to rewrite the Stripe terminal native software for BBPOS Chipper or Verifone P400 to run on your POS, then yeah, you could leverage the SDKs but frankly, that’s a heck of a lot more work than just using the server-side API… but if you were considering that, you probably already know that.