Designing an Integration
Learn about Terminal integration options and choose an SDK and reader combination that works best for you.
Before you order readers or begin integrating, it’s important to understand the big picture. You can plan a Stripe Terminal integration for your business in three steps:
- Pick the reader type that works best for the in-person payments experience you want to create. Though Stripe Terminal is designed to support multiple reader types in a single deployment, most businesses pick one.
- Choose an SDK type that’s compatible with your chosen reader type and existing software.
- Learn about the high-level architecture for your deployment, based on your choice of reader type and SDK.
Choosing your reader
Currently, Stripe Terminal offers two kinds of readers, the BBPOS Chipper 2X BT and the Verifone P400:
BBPOS Chipper™ 2X BT
![A depiction of product creation in the Stripe Dashboard](/web/20190703001356im_/https://stripe.com/img/docs/terminal/bbpos-photo.png)
- Create a roaming cashier experience, where customers can pay anywhere
- Works with iOS and Android SDKs
- Uses Bluetooth, optimized for mobile checkout experiences
- Accepts tap, swipe, and dip payment methods
Verifone® P400
![A sample of Stripe Checkout Session creation code](/web/20190703001356im_/https://stripe.com/img/docs/terminal/verifone-photo.png)
- Create a countertop checkout, with customizable customer-facing display
- Works with the JavaScript SDK
- Requires internet connection, best for stationary counter checkout
- Accepts tap, swipe, and dip payment methods
Choosing your SDK
The Stripe Terminal SDK is available for JavaScript, iOS, and Android. If you already have an application in one of these programming languages, use the corresponding SDK. If you want to use the Verifone P400 you must use the JavaScript SDK. If you want to use the BBPOS Chipper 2X BT you can use either the iOS or Android SDKs. For new point of sale applications, use a language you’re comfortable in.
Planning your deployment
After picking the reader and SDK type for your Terminal integration, learn the high-level architecture for your deployment.
BBPOS Chipper 2X BT
When using the BBPOS Chipper 2X BT, the Terminal SDK facilitates communication between the reader, your application, your backend, and the Stripe API. In this integration, your application runs on a mobile device or tablet, displaying a checkout UI for both the customer and cashier.
Verifone P400
If you use a Verifone P400, the reader screen provides the customer-facing checkout experience and your application provides the cashier-facing UI. The reader runs embedded Stripe reader software to connect to your application over the local network and to Stripe over the internet.
Your web application provides the UI for the cashier. The Verifone P400 is compatible with the JavaScript SDK (with support for Android and iOS coming soon). If you integrate your application with the JavaScript SDK, you can run it in the browser on a mobile device or tablet, as long as the device is connected to the same local network as the reader.
Next steps
After deciding what type of integration you'd like to build, start integrating the Stripe Terminal SDK.
The BBPOS and Chipper™ name and logo are trademarks or registered trademarks of BBPOS Limited in the United States and/or other countries. The Verifone® name and logo are either trademarks or registered trademarks of Verifone in the United States and/or other countries. Use of the trademarks does not imply any endorsement by BBPOS or Verifone.