Skip to main content
POST
/
checkout_configurations
Create a checkout configuration
curl --request POST \
  --url https://{defaultHost}/checkout_configurations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "company_id": "<string>",
  "plan_id": "<string>",
  "plan": {
    "company_id": "<string>",
    "product_id": "<string>",
    "currency": "<string>",
    "initial_price": 123,
    "renewal_price": 123,
    "plan_type": "<string>",
    "billing_period": 123,
    "expiration_days": 123,
    "trial_period_days": 123,
    "release_method": "<string>",
    "title": "<string>",
    "description": "<string>",
    "visibility": "<string>",
    "stock": 123,
    "unlimited_stock": true,
    "override_tax_type": "<string>",
    "metadata": {},
    "force_create_new_plan": true,
    "payment_method_configuration": {
      "enabled": [
        "<string>"
      ],
      "disabled": [
        "<string>"
      ],
      "include_platform_defaults": true
    }
  },
  "currency": "<string>",
  "affiliate_code": "<string>",
  "metadata": {},
  "redirect_url": "<string>",
  "three_ds_level": "<string>",
  "payment_method_configuration": {
    "enabled": [
      "<string>"
    ],
    "disabled": [
      "<string>"
    ],
    "include_platform_defaults": true
  }
}
'
{
  "id": "<string>",
  "created_at": 123,
  "updated_at": 123,
  "company_id": "<string>",
  "currency": "<string>",
  "plan": {},
  "affiliate_code": "<string>",
  "metadata": {},
  "redirect_url": "<string>",
  "purchase_url": "<string>",
  "three_ds_level": "<string>",
  "payment_method_configuration": {}
}

Authorizations

Authorization
string
header
required

An account API key, account scoped JWT, app API key, or user OAuth token.

Headers

Api-Version-Date
string<date>

Pins the request to a dated API version. When omitted, the request uses the original (2025-01-01) request/response shapes, so existing unversioned callers are never broken. Generated SDKs always send the latest version they were built against. An unrecognized value is rejected with a 400. The schemas documented here always describe the latest version.

Example:

"2026-06-09"

Body

application/json
company_id
string

The ID of the company.

plan_id
string | null

The ID of an existing plan to attach.

plan
object

Plan attributes to create a new plan inline for this checkout configuration. Mutually exclusive with plan_id.

mode
enum<string>

Checkout mode. Defaults to 'payment'.

Available options:
payment,
setup
currency
string | null

The currency code.

affiliate_code
string | null

An affiliate code to apply.

metadata
object

Arbitrary key-value metadata.

redirect_url
string | null

URL to redirect after checkout.

three_ds_level
string | null

3D Secure enforcement level.

payment_method_configuration
object

Response

checkout configuration created

id
string
required

The unique identifier of the checkout configuration.

created_at
integer
required

Unix timestamp when the checkout configuration was created.

updated_at
integer
required

Unix timestamp when the checkout configuration was last updated.

company_id
string
required

The ID of the company that owns this checkout configuration.

mode
enum<string>
required

The checkout mode.

Available options:
payment,
setup
currency
string | null

The currency for this checkout configuration.

plan
object

The plan associated with this checkout configuration.

affiliate_code
string | null

The affiliate code applied at checkout.

metadata
object

Arbitrary key-value metadata. Only returned when caller has checkout_configuration:basic:read scope.

redirect_url
string | null

The URL to redirect after checkout.

purchase_url
string | null

The URL for the checkout page.

three_ds_level
string | null

The 3D Secure enforcement level.

payment_method_configuration
object

Payment method configuration.