A valid request URL is required to generate request examples{
"id": "<string>",
"object": "setup_intent",
"merchant_id": "<string>",
"livemode": true,
"customer": "<string>",
"currency": "<string>",
"status": "requires_confirmation",
"payment_method": "<string>",
"metadata": {},
"created_at": 123,
"updated_at": 123,
"client_secret": "<string>"
}{
"error": {
"code": "INVALID_REQUEST",
"message": "currency is required"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "CUSTOMER_NOT_FOUND",
"message": "customer not found"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Create a setup intent
Creates a setup intent in requires_confirmation status. Supply a
currency and, for customer-attached mandates, a customer id. Once
created, collect a single-use payment token from the client and call
confirm.
A valid request URL is required to generate request examples{
"id": "<string>",
"object": "setup_intent",
"merchant_id": "<string>",
"livemode": true,
"customer": "<string>",
"currency": "<string>",
"status": "requires_confirmation",
"payment_method": "<string>",
"metadata": {},
"created_at": 123,
"updated_at": 123,
"client_secret": "<string>"
}{
"error": {
"code": "INVALID_REQUEST",
"message": "currency is required"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "CUSTOMER_NOT_FOUND",
"message": "customer not found"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Authorizations
A merchant secret key (sk_…) sent as Authorization: Bearer <key>.
Headers
Merchant ID when an authorized Platform acts for a connected Merchant. Omit when authenticating directly as that Merchant.
^mer_[0-9A-Za-z]{14}$A unique key that makes retries safe: the same key with the same request body returns the original response instead of repeating the operation.
255Body
Response
The created setup intent.
Unique identifier for the setup intent (seti_…).
setup_intent ID of the account that owns the setup intent (mer_…).
The customer this intent is attached to (cus_…), or null if not customer-scoped.
Three-letter ISO currency code.
requires_confirmation: initial state; awaiting a client-side token.
processing: vault operation is in progress.
succeeded: card vaulted and payment method created.
canceled: intent was canceled before completion.
requires_confirmation, processing, succeeded, canceled The reusable payment method created when the card was vaulted (pm_…). Null until succeeded.
Custom key-value pairs for your use.
Show child attributes
Show child attributes
Unix epoch seconds.
Unix epoch seconds.
Returned only when creating the intent. Pass to Ionic Blocks to collect and save a payment method. Keep out of URLs and logs.

