Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Developer tools
Get started
Payments
Finance automation
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Overview
About Stripe payments
Upgrade your integration
Payments analytics
Online payments
OverviewFind your use caseManaged Payments
Use Payment Links
Build a checkout page
Build an advanced integration
Build an in-app integration
Payment Methods
Add payment methods
Manage payment methods
Faster checkout with Link
Payment interfaces
Payment Links
Checkout
Web Elements
In-app Elements
Payment scenarios
Custom payment flows
Flexible acquiring
Orchestration
In-person payments
Terminal
    Overview
    Accept in-person payments
    Integration design
    Select your reader
    Design an integration
    Quickstart
    Example applications
    Testing
    Terminal setup
    Set up your integration
    Connect to a reader
    Accepting a payment
    Collect card payments
    Additional payment methods
    Accept offline payments
    Mail order and telephone order payments
    Regional considerations
    During checkout
    Collect tips
    Collect and save payment details for future use
    Flexible authorisations
    After checkout
    Refund transactions
    Provide receipts
    Customize checkout
    Cart display
    Collect on-screen inputs
    Collect swiped data
    Collect tapped data for NFC instruments
    Apps on devices
    Manage readers
    Order, return, replace readers
    Register readers
    Manage locations and zones
    Configure readers
    Encryption
    References
    API references
    Mobile readers
    Smart readers
    SDK migration guide
    Deployment checklist
    Stripe Terminal reader product sheets
Other Stripe products
Financial Connections
Crypto
Climate
HomePaymentsTerminal

Display cart details

Dynamically update cart details on the reader screen.

Copy page

The built-in screen of the Verifone P400, BBPOS WisePOS E and Stripe Reader S700 can display line items. During the checkout process, you can update the reader’s screen to show individual items in the transaction, along with the total price.

Cart details

Cart details screen

Set the reader display

SDK Reference

  • setReaderDisplay (iOS)
  • setReaderDisplay (Android)
  • setReaderDisplay (JavaScript)
  • setReaderDisplay (React Native)
  • setReaderDisplay (Java)

To display the line items and total on the reader, call setReaderDisplay before processing the payment and pass the information in the cart parameter.

The amounts passed to the setReaderDisplay method are only used for display purposes. The reader won’t automatically calculate tax or the total – your application must calculate the tax and total before displaying the values. You can use the Stripe Tax API to calculate taxes. Similarly, the total passed to setReaderDisplay doesn’t control the amount charged to the customer. Make sure the amount displayed on the reader matches the amount you’re charging your customer.

Command Line
cURL
curl https://api.stripe.com/v1/terminal/readers/tmr_xxx/set_reader_display \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d type=cart \ -d "cart[line_items][0][description]"="Caramel latte" \ -d "cart[line_items][0][amount]"=659 \ -d "cart[line_items][0][quantity]"=1 \ -d "cart[line_items][1][description]"="Dozen donuts" \ -d "cart[line_items][1][amount]"=1239 \ -d "cart[line_items][1][quantity]"=1 \ -d "cart[currency]"=usd \ -d "cart[tax]"=100 \ -d "cart[total]"=1998

To clear reader display on the server-driven integration, call the cancel_action endpoint.

Pre-dip a card

Note

Pre-dipping a card is only supported for payments in the US.

The Verifone P400, BBPOS WisePOS E, and Stripe Reader S700 support the ability to present a card to the reader before the transaction amount is finalised.

This option—known as pre-dip, pre-tap, or pre-swipe—can help speed up transaction times by allowing a customer to present a payment method before the end of the transaction.

The setReaderDisplay method prepares the reader for pre-dipping. Your customer can present a payment method at any point after this method is called. You can call setReaderDisplay multiple times to update the information displayed without impacting the pre-dipping process. Updating the display doesn’t invalidate a pre-dip, if one has already occurred.

Pre-dipping only allows your customer to present a card early in the payment process, it doesn’t move the payment process forward. Your integration can’t tell if pre-dipping has occurred, and you must implement the full payment flow for all transactions, regardless of pre-dipping.

Pre-dip disabled

If pre-dip isn’t available in your country, the screen shows only the subtotal and line items.

Pre-dip disabled

Pre-dip disabled

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access programme.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc