---
title: "Confirm Checkout Session"
method: POST
path: "/api/billing/confirm-session"
tags: ["billing"]
---

# Confirm Checkout Session

`POST /api/billing/confirm-session`

## Request

- Base URL: `https://api.getle.ad` (the document declares no server; this is the origin it was published from)
- URL: `https://api.getle.ad/api/billing/confirm-session`
- Auth: none declared

Activate the account behind a completed Checkout Session.

The webhook is the authority on entitlement, but it is asynchronous — the
customer lands on the success page before it has necessarily arrived. This
endpoint does the same provisioning work synchronously and idempotently, so
the customer can sign straight in instead of staring at a spinner. Whichever
of the two runs second is a no-op.

Only a Checkout Session Stripe reports as paid can activate anything, so a
guessed session id grants nothing.

## Request body

- ConfirmSessionRequest
  - `session_id` string, required
  - `email` string, nullable
  - `full_name` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/getle/apis/lead-generator-pro-api.md) · [All operations](https://skmtc.dev/getle/apis/lead-generator-pro-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getle/apis/lead-generator-pro-api/revisions/041155e6d905?raw)
