Confirm checkout session and finalize purchase

Confirm a checkout session to finalize the purchase, create a contract, and handle payment processing.

Confirmation modes (confirmation):

  • charge_immediately: Redirect to payment gateway to collect payment now; with redirect=true returns 302 Location, otherwise 200 JSON.
  • charge_when_due: Do not charge now; requires an existing saved payment method; creates contract and schedules payment.
  • no_payment: Skip payments (free/internal flows); creates contract without charging.

Common use cases:

  • Self-service checkout: Use charge_immediately with redirect=true to send users to payment gateway
  • Enterprise deals: Use charge_when_due for customers with payment terms
  • Free plans or trials: Use no_payment to create contract without payment processing
  • Guest checkout completion: Creates customer profile and associates with contract

Behavior & requirements:

  • Only 'open' sessions can be confirmed
  • charge_when_due requires at least one saved payment method
  • Guest checkout creates the customer profile during confirmation
  • redirect=true returns an HTTP 302 redirect for immediate collection flows
  • Successful confirmation creates a contract in the system
  • Payment status transitions from not_started to pending, paid, or no_payment_required

Related endpoints:

  • POST /checkout_session: Create the session to be confirmed
  • GET /checkout_session/{id}: Check session status before confirming
  • PUT /checkout_session/{id}: Update details before confirming
  • POST /checkout_session/{id}/cancel: Cancel instead of confirming

Errors include invalid status transitions, missing customer/payment methods, and contract creation failures.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
uuid
required
Body Params

Schema for confirming a checkout session

This schema defines the parameters for confirming a checkout session, including confirmation type, payment preferences, and redirect behavior.

string
enum

The confirmation mode that determines how payment will be handled

Allowed:
boolean

Whether to return a redirect response instead of a JSON response

PaymentMethodType | null

Preferred payment method type to use for this transaction

length ≤ 255

Optional description to include with the payment

length ≤ 1000

Optional customer-provided notes for this checkout session

Responses

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
*/*