---
title: "Start a Paddle checkout (subscription or credits)"
method: POST
path: "/app/billing/checkout"
tags: ["account"]
---

# Start a Paddle checkout (subscription or credits)

`POST /app/billing/checkout`

## Request

- Base URL: `https://api.transcriptdock.com`
- URL: `https://api.transcriptdock.com/app/billing/checkout`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `sb-access-token`

## Request body

- CheckoutRequest
  - `kind` 'subscription' | 'credits', required
  - `plan` 'starter' | 'pro' | 'scale'
  - `units` integer: Credits to buy (kind: credits), in steps of 1,000. Priced at the plan rate per 1,000 with volume discounts: 10% from 10,000, 20% from 50,000.

## Response `200`

Redirect the browser to url

- CheckoutSession
  - `url` string, uri, required
  - `units` integer: Credits in this purchase (kind: credits).
  - `price_usd` string: Total price charged at checkout, after any volume discount.
  - `discount_pct` integer: Volume discount applied (0, 10 or 20).

## Other responses

- `503`: Billing provider not configured yet

---

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