The Setup Intent object

The Setup Intent object

The SetupIntent object represents an attempt by your customer to set up a payment method for future charges without making a payment. A CheckoutSession created with the setup or subscription flow includes the setup intent in setup_intent. You can retrieve the setup intent with the Get setup intent endpoint. The status field tracks the setup through created, started, waiting_for_retry, succeeded, and failed.

AttributeTypeDescription
idstringUnique identifier for the SetupIntent object.
objectstringType of the object. Always setup_intent.
error_reasonstring or nullError code explaining why the latest setup attempt failed. null while no attempt has failed, or after the setup succeeds. See Setup intent error reasons for the full list.
statusstringSetup status. One of created, started, waiting_for_retry, succeeded, or failed. The setup starts as created, moves to started while in progress, moves to waiting_for_retry after a retryable failure, and ends as succeeded or failed.
{
  "id": "seti_2cKoy3PEXAuvkr4ofXC1KdMvCgZ",
  "object": "setup_intent",
  "error_reason": "invalid_card",
  "status": "failed"
}