Skip to main content
GET
Retrieve a checkout session

Authorizations

Authorization
string
header
required

A secret key, sk_test_... or sk_live_...; a publishable key (pk_...) on the browser routes only

Path Parameters

id
string
required
Required string length: 1 - 64

Response

The session

object
enum<string>
required
Available options:
checkout_session
id
string
required
Example:

"cs_test_7Hs2kQ9mL1pXv4cR8tWzAbCd"

status
enum<string>
required

open while the customer can pay; complete once one payment succeeded (or, for a bank debit, was accepted) on the page; expired after expires_at, or once you expired it. A session pays once.

Available options:
open,
complete,
expired
Example:

"open"

amount
integer
required

In the smallest unit of the currency (cents).

Example:

12550

currency
enum<string>
required
Available options:
USD,
CAD
Example:

"USD"

reference
string | null
required
Example:

"1042"

description
string | null
required
Example:

"Northwind order #1042"

success_url
string
required
Example:

"https://shop.example/thanks?order=1042"

cancel_url
string
required
Example:

"https://shop.example/cart"

customer_email
string | null
required
customer
string | null
required
Example:

null

payment_method_types
enum<string>[]
required
Available options:
card,
us_bank_account
Example:
metadata
object | null
required

Up to 20 keys of your own (keys up to 40 characters, values up to 500); stored and returned, never interpreted.

Example:
payment
string | null
required

The payment made on the page, once the session is complete; read it at GET /payments/{id}.

Example:

"pay_test_7Hs2kQ9mL1pXv4cR8tWzAbCdEf"

livemode
boolean
required
Example:

false

expires_at
string
required
Example:

"2026-09-26T12:00:00.000Z"

completed_at
string | null
required
Example:

null

created_at
string
required
Example:

"2026-09-25T12:00:00.000Z"