Tearleads

POST/organizations/{organizationId}/billing/stripe/checkout

Create a Stripe checkout

Operation organizations.billing.stripe.checkout.create

Description

Starts or resumes an inline Stripe checkout and returns the client secret for Stripe's Payment Element. Only organization administrators may call it, and the seat count comes from the roster, not the client. Identical retries reuse the same attempt; a different buyer, mode, or seat count while one is open returns 409.

Authentication

Requires a signed-in session: the client sends its session token as a bearer token in the Authorization header.

Parameters

NameInTypeDetails
organizationIdpathstringrequired
  • lowercase UUID v4

Responses

200 OK

application/jsonStripeCheckoutIntentResponse

What Stripe's Payment Element needs to confirm one subscription purchase.

2 fields
  • subscriptionIdstringrequired
    • not empty
  • clientSecretstringrequired
    • not empty

    Stripe PaymentIntent client secret; pass it only to Stripe.js.

Other fields are allowed.

Other responses

StatusMeaningBody
400Bad Request

application/jsonErrorResponse

401Unauthorized

application/jsonSessionFailureResponse

403Forbidden

application/jsonErrorResponse

404Not Found

application/jsonErrorResponse

409Conflict

application/jsonBillingErrorResponse

500Internal Server Error

application/jsonErrorResponse

502Bad Gateway

application/jsonErrorResponse

503Service Unavailable

application/jsonErrorResponse