---
title: "Create Api Checkout Session"
method: POST
path: "/api/stripe/create-api-checkout-session"
tags: ["Stripe Payments"]
---

# Create Api Checkout Session

`POST /api/stripe/create-api-checkout-session`

## Request

- Base URL: `https://api.xfinlab.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.xfinlab.com/api/stripe/create-api-checkout-session`
- Auth: none declared

2026-08-24: Intelligence API self-serve Pro checkout -- see the
VALID_API_TIERS block above for why this is public/unauthenticated
(email-keyed, not JWT-keyed) unlike the two checkout endpoints above
it. Body: {"email": "...", "tier": "pro"}. On success the webhook
handler below issues a real API key and emails it -- this endpoint
itself never returns a key, same "never in a JSON response" posture as
every other key-issuance path in this codebase.

## Response `200`

Successful Response

- unknown

---

[API](https://skmtc.dev/xfinlab/apis/xfinlab-api.md) · [All operations](https://skmtc.dev/xfinlab/apis/xfinlab-api/llms.txt) · [OpenAPI document](https://skmtc.dev/xfinlab/apis/xfinlab-api/revisions/205f85614bc6?raw)
