Did you know that you can accept in-person payments with Stripe?
Stripe Terminal is a set of APIs and SDKs that allow you to process payments with one of Stripe’s supported card readers and Stripe’s core payment APIs. In this series, we’ll be integrating using the API-only server-driven integration path.
In this inaugural post, we walk through the first step: registering a Stripe Terminal reader to your account.
Don’t have a WisePOS E card reader on hand? No worries! We’ll cover how to set up a simulated reader for testing and development. Want to test with the real thing? You can order a card reader from your Stripe Dashboard’s Terminal shop.
In this tutorial, we’ll walk through registering a card reader and simulated card reader for Stripe Terminal. For simplicity’s sake, we’ll be using the Stripe Dashboard to register our readers, but you can use Stripe Terminal’s APIs to build your own registration flow as well.
In order to register a card reader to your Stripe account, you need to take two steps:
- Create a Location so that you can assign the reader to a physical location
- Register the reader to a Location using its registration code
Navigate to your Stripe Dashboard and go to the Terminal dashboard by clicking More in the navigation menu and then Terminal.
You may be prompted with some pricing information about Terminal. You won’t be charged anything until you start taking live payments. In this series, we’ll only be doing things in test mode.
With your account in Test mode, navigate to Locations and create a Location. Locations are used to group readers to a physical place. A Stripe Terminal integration could include hundreds of readers across multiple stores. Assigning a reader to a Location makes it easy to filter and retrieve the right readers for the right store. They’re also used to configure the reader, so every reader must be assigned to a Location.
To create a Location click +New in the Locations section and enter the location’s Name and Address information.
The next step is registering a WisePOS E reader to your newly created Location.
You can register a device to a Location by clicking +New near Readers.
If you have a WisePOS E, you’ll want to turn it on and connect it to WiFi from the Settings. Keep in mind that the WiFi must use WPA-Personal or WPA2-Personal encryption with password protection. Enterprise and unsecured networks aren’t compatible with Stripe Terminal.
Once your WisePOS E has been connected to WiFi, your reader will automatically show its registration code if it's an unregistered device.
You can also get the device’s registration code by swiping left on the device to open the Settings menu and clicking Registration Code.
In either case, type the registration code you see on the device in the Registration code field.
If you don’t have a reader, you can use a simulated WisePOS E for testing and development by inputting
simulated-wpe as the registration code.
Whether you’ve set up a simulated or real WisePOS E, you should now see a simulated or physical device registered to your new location. For Stripe’s server-driven integration, this is all that’s required to setup the reader.
In our next post, we’ll learn how to retrieve our readers from Stripe's Terminal Reader API and render them in a web app so that we can prompt them to collect in-person payments.
Want to stay up to date on Stripe’s latest integrations, features, and open-source projects?
Charles Watkins is a Developer Advocate at Stripe where he writes, codes, and livestreams about online payments. In his spare time, he enjoys drawing, gaming, and rewatching the first five seasons of Game of Thrones.