Hand-off a PaymentIntent to a Reader

Initiates a payment flow on a Reader.

Parameters

  • payment_intentstringRequired

    PaymentIntent ID

More parameters

  • process_configobject

Returns

Returns an updated Reader resource.

POST /v1/terminal/readers/:id/process_payment_intent
const stripe = require('stripe')('sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc');
const reader = await stripe.terminal.readers.processPaymentIntent(
'tmr_FDOt2wlRZEdpd7',
{
payment_intent: 'pi_3NtEKRLkdIwHu7ix3crEirSx',
}
);
Response
{
"id": "tmr_FDOt2wlRZEdpd7",
"object": "terminal.reader",
"action": {
"failure_code": null,
"failure_message": null,
"process_payment_intent": {
"payment_intent": "pi_3NtEKRLkdIwHu7ix3crEirSx"
},
"status": "in_progress",
"type": "process_payment_intent"
},
"device_sw_version": "",
"device_type": "simulated_wisepos_e",
"ip_address": "0.0.0.0",
"label": "Blue Rabbit",
"last_seen_at": 1695408232226,
"livemode": false,
"location": "tml_FDOtHwxAAdIJOh",
"metadata": {},
"serial_number": "259cd19c-b902-4730-96a1-09183be6e7f7",
"status": "online"
}

Hand-off a SetupIntent to a Reader

Initiates a setup intent flow on a Reader.

Parameters

  • customer_consent_collectedbooleanRequired

    Customer Consent Collected

  • setup_intentstringRequired

    SetupIntent ID

More parameters

  • process_configobject

Returns

Returns an updated Reader resource.

POST /v1/terminal/readers/:id/process_setup_intent
const stripe = require('stripe')('sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc');
const reader = await stripe.terminal.readers.processSetupIntent(
'tmr_FDOt2wlRZEdpd7',
{
customer_consent_collected: true,
setup_intent: 'seti_1NtEXHLkdIwHu7ixcBcUmqfe',
}
);
Response
{
"id": "tmr_FDOt2wlRZEdpd7",
"object": "terminal.reader",
"action": {
"failure_code": null,
"failure_message": null,
"process_setup_intent": {
"setup_intent": "seti_1NtEXHLkdIwHu7ixcBcUmqfe"
},
"status": "in_progress",
"type": "process_setup_intent"
},
"device_sw_version": "",
"device_type": "simulated_wisepos_e",
"ip_address": "0.0.0.0",
"label": "Blue Rabbit",
"last_seen_at": 1681320543815,
"livemode": false,
"location": "tml_FDOtHwxAAdIJOh",
"metadata": {},
"serial_number": "259cd19c-b902-4730-96a1-09183be6e7f7",
"status": "online"
}

Refund a Charge or a PaymentIntent in-person

Initiates a refund on a Reader

Parameters

  • amountinteger

    A positive integer in cents representing how much of this charge to refund.

  • chargestring

    ID of the Charge to refund.

  • metadataobject

    Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

  • payment_intentstring

    ID of the PaymentIntent to refund.

  • refund_application_feebooleanConnect only

    Boolean indicating whether the application fee should be refunded when refunding this charge. If a full charge refund is given, the full application fee will be refunded. Otherwise, the application fee will be refunded in an amount proportional to the amount of the charge refunded. An application fee can be refunded only by the application that created the charge.

  • reverse_transferbooleanConnect only

    Boolean indicating whether the transfer should be reversed when refunding this charge. The transfer will be reversed proportionally to the amount being refunded (either the entire or partial amount). A transfer can be reversed only by the application that created the charge.

More parameters

  • refund_payment_configobject

Returns

Returns an updated Reader resource

POST /v1/terminal/readers/:id/refund_payment
const stripe = require('stripe')('sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc');
const reader = await stripe.terminal.readers.refundPayment(
'tmr_njDFG9Z5k7y7KeQI8RmZYDYT',
{
payment_intent: 'pi_1NrpbFBHO5VeT9SUiCEDMdc8',
}
);
Response
{
"id": "tmr_njDFG9Z5k7y7KeQI8RmZYDYT",
"object": "terminal.reader",
"action": {
"failure_code": null,
"failure_message": null,
"refund_payment": {
"payment_intent": "pi_1NrpbFBHO5VeT9SUiCEDMdc8",
"amount": 1000
},
"status": "in_progress",
"type": "refund_payment"
},
"device_deploy_group": null,
"device_sw_version": null,
"device_type": "bbpos_wisepos_e",
"ip_address": "192.168.2.2",
"label": "Blue Rabbit",
"livemode": false,
"location": null,
"metadata": {},
"serial_number": "123-456-789",
"software": null,
"status": "online"
}

Set reader display

Sets reader display to show cart details.

Parameters

  • typeenumRequired

    Type

  • cartobject

    Cart

Returns

Returns an updated Reader resource.

POST /v1/terminal/readers/:id/set_reader_display
const stripe = require('stripe')('sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc');
const reader = await stripe.terminal.readers.setReaderDisplay(
'tmr_FDOt2wlRZEdpd7',
{
type: 'cart',
cart: {
currency: 'usd',
line_items: [
{
amount: 5100,
description: 'Red t-shirt',
quantity: 1,
},
],
tax: 100,
total: 5200,
},
}
);
Response
{
"id": "tmr_FDOt2wlRZEdpd7",
"object": "terminal.reader",
"action": {
"failure_code": null,
"failure_message": null,
"set_reader_display": {
"cart": {
"currency": "usd",
"line_items": [
{
"amount": 5100,
"description": "Red t-shirt",
"quantity": 1
}
],
"tax": 100,
"total": 5200
},
"type": "cart"
},
"status": "in_progress",
"type": "set_reader_display"
},
"device_sw_version": "",
"device_type": "simulated_wisepos_e",
"ip_address": "0.0.0.0",
"label": "Blue Rabbit",
"last_seen_at": 1695166525506,
"livemode": false,
"location": "tml_FDOtHwxAAdIJOh",
"metadata": {},
"serial_number": "259cd19c-b902-4730-96a1-09183be6e7f7",
"status": "online"
}

Simulate presenting a payment methodTest helper

Presents a payment method on a simulated reader. Can be used to simulate accepting a payment, saving a card or refunding a transaction.

Parameters

  • card_presentobject

    Simulated data for the card_present payment method.

  • typeenum

    Simulated payment type.

More parameters

  • amount_tipinteger

  • interac_presentobject

Returns

Returns an updated Reader resource.

POST /v1/test_helpers/terminal/readers/:id/present_payment_method
const stripe = require('stripe')('sk_test_4eC39Hq...arjtT1zdp7dcsk_test_4eC39HqLyjWDarjtT1zdp7dc');
const reader = await stripe.testHelpers.terminal.readers.presentPaymentMethod(
'tmr_gLeqlF03xvlBympS9RfZqdpF'
);
Response
{
"id": "tmr_gLeqlF03xvlBympS9RfZqdpF",
"object": "terminal.reader",
"action": {
"failure_code": null,
"failure_message": null,
"process_payment_intent": {
"payment_intent": "pi_1Gt0582eZvKYlo2CGSidzWqK"
},
"status": "succeeded",
"type": "process_payment_intent"
},
"device_sw_version": null,
"device_type": "bbpos_wisepos_e",
"ip_address": "192.168.2.2",
"label": "Blue Rabbit",
"last_seen_at": null,
"livemode": false,
"location": null,
"metadata": {},
"serial_number": "123-456-789",
"status": "online"
}
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Log in to your Stripe account and press Control + Backtick (`) on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g., )
The Stripe Shell is best experienced on desktop.
$