Create a Setup Intent

Creates a Setup Intent to set up and save a customer's payment method for future payments without collecting money immediately.

Related guide: Payment Methods and tokenization

Body·
required
application/json
  • currency
    Type: string ·
    required

    ISO 4217 currency codes (alpha3) supported for payments

  • confirm
    Type: boolean

    Set to true to attempt to confirm this Payment Intent immediately. This parameter defaults to false. When creating and confirming a Payment Intent at the same time, you can also provide the parameters available in the Confirm API.

  • off_session
    Type: string | null
    max length:  
    100
    enum

    Use this parameter in scenarios where you collect card details and charge them later. This parameter can only be used with confirm=true.

    values
    • one_off
    • recurring
Responses
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for post/v1/setup_intents
curl https://api.paypercut.io/v1/setup_intents \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "currency": "EUR",
  "confirm": true,
  "off_session": "one_off"
}'
{
  "currency": "EUR",
  "usage": "string",
  "payment_method": "01K688H80Z3199KETHDJ4ZAFPS",
  "x-expansionResources": "01K688H80Z3199KETHDJ4ZAFPS",
  "id": "21210021c2855007efa2d657018",
  "status": "canceled",
  "livemode": true,
  "created": "2026-07-03T10:37:04.321Z"
}