Stripe | Financial Infrastructure to Grow Your Revenue

Stripe | Financial Infrastructure to Grow Your Revenue

4466 articles

List all SetupIntents


List all SetupIntents

GET / v1 / setup_intents

Returns a list of SetupIntents.

Parameters

  • customer string Only return SetupIntents for the customer specified by this customer ID.
  • customer _ account string Only return SetupIntents for the account specified by this customer ID.
  • payment _ method string Only return SetupIntents that associate with the specified payment method.

More parameters

  • attach _ to _ self boolean
  • created object
  • ending _ before string
  • limit integer
  • starting _ after string

Returns

A dictionary with a data property that contains an array of up to limit SetupIntents, starting after SetupIntent starting_after. Each entry in the array is a separate SetupIntent object. If no more SetupIntents are available, the resulting array will be empty.

Response

{ "object": "list", "url": "/v1/setup_intents", "has_more": false, "data": [ { "id": "seti_1Mm8s8LkdIwHu7ix0OXBfTRG", "object": "setup_intent", "application": null, "cancellation_reason": null, "client_secret": "seti_1Mm8s8LkdIwHu7ix0OXBfTRG_secret_NXDICkPqPeiBTAFqWmkbff09lRmSVXe", "created": 1678942624, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": null, "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": { "card": { "mandate_options": null, "network": null, "request_three_d_secure": "automatic" } }, "payment_method_types": [ "card" ], "single_use_mandate": null, "status": "requires_payment_method", "usage": "off_session" } ]}

Cancel a SetupIntent

POST / v1 / setup_intents /:id / cancel

You can cancel a SetupIntent object when it’s in one of these statuses: requires_payment_method, requires_confirmation, or requires_action.

After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can’t cancel the SetupIntent for a Checkout Session. Expire the Checkout Session instead.

Parameters

  • cancellation _ reason string Reason for canceling this SetupIntent. Possible values are: abandoned, requested_by_customer, or duplicate

Returns

Returns a SetupIntent object if the cancellation succeeds. Returns an error if the SetupIntent is already canceled or isn’t in a cancelable state.

Response

{ "id": "seti_1Mm8s8LkdIwHu7ix0OXBfTRG", "object": "setup_intent", "application": null, "cancellation_reason": null, "client_secret": "seti_1Mm8s8LkdIwHu7ix0OXBfTRG_secret_NXDICkPqPeiBTAFqWmkbff09lRmSVXe", "created": 1678942624, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": null, "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": null, "payment_method_options": { "card": { "mandate_options": null, "network": null, "request_three_d_secure": "automatic" } }, "payment_method_types": [ "card" ], "single_use_mandate": null, "status": "canceled", "usage": "off_session"}

Confirm a SetupIntent

POST / v1 / setup_intents /:id / confirm

Confirm that your customer intends to set up the current or provided payment method. For example, you would confirm a SetupIntent when a customer hits the “Save” button on a payment method management page on your website.

If the selected payment method does not require any additional steps from the customer, the SetupIntent will transition to the succeeded status.

Otherwise, it will transition to the requires_action status and suggest additional actions via next_action. If setup fails, the SetupIntent will transition to the requires_payment_method status or the canceled status if the confirmation limit is reached.

Parameters

  • allowed _ payment _ method _ types array of enums The list of payment method types to allow for this SetupIntent. Stripe will only use methods in this list when determining the payment methods to offer. A list of valid payment method types can be found here. Possible enum values acss_debit Pre-authorized debit payments are used to debit Canadian bank accounts through the Automated Clearing Settlement System (the related setting). affirm Affirm is a buy now, pay later payment method in the US. afterpay_clearpay Afterpay / Clearpay is a buy now, pay later payment method used in Australia, Canada, France, New Zealand, Spain, the UK, and the US. alipay Alipay is a digital wallet payment method used in China. alma Alma is a Buy Now, Pay Later payment method that lets customers pay in 2, 3, or 4 installments. amazon_pay Amazon Pay is a Wallet payment method that lets hundreds of millions of Amazon customers pay their way, every day. au_becs_debit the related setting Direct Debit is used to debit Australian bank accounts through the Bulk Electronic Clearing System (the related setting). bacs_debit Bacs Direct Debit is used to debit UK bank accounts. bancontact Bancontact is a bank redirect payment method used in Belgium. billie Billie is a payment method. Show 89 more
  • payment _ method string ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent.

More parameters

  • confirmation _ token string
  • mandate _ data object
  • payment _ method _ data object
  • payment _ method _ options object secret key only
  • return _ url string
  • use _ stripe _ sdk boolean

Returns

Returns the resulting SetupIntent after all possible transitions are applied.

Response

{ "id": "seti_1Mm2cBLkdIwHu7ixaiKW3ElR", "object": "setup_intent", "application": null, "cancellation_reason": null, "client_secret": "seti_1Mm2cBLkdIwHu7ixaiKW3ElR_secret_NX6phB7HbSmlkpqzKZ3Bxr7uXFRf9Jg", "created": 1678918571, "customer": null, "description": null, "flow_directions": null, "last_setup_error": null, "latest_attempt": "setatt_1Mm2cBLkdIwHu7ixdEp1VkXJ", "livemode": false, "mandate": null, "metadata": {}, "next_action": null, "on_behalf_of": null, "payment_method": "pm_1Mm2cBLkdIwHu7ixGoOfZSsV", "payment_method_options": { "card": { "mandate_options": null, "network": null, "request_three_d_secure": "automatic" } }, "payment_method_types": [ "card" ], "single_use_mandate": null, "status": "succeeded", "usage": "off_session"}
Last verified 2026-09-24

Is this helpful?