---
title: "Create a manual checkout session for a paid harness"
method: POST
path: "/billing/checkout"
---

# Create a manual checkout session for a paid harness

`POST /billing/checkout`

## Request

- Base URL: `https://superskill.sh/api`
- URL: `https://superskill.sh/api/billing/checkout`
- Auth: HTTP bearer

Auth required. Creates a pending purchase through the manual checkout provider. Free harnesses return 400.

## Request body

- object
  - `owner` string, required
  - `repo` string, required
  - `version` string
  - `ref` string

## Response `201`

Checkout session created

- CheckoutSession
  - `provider` 'manual', required
  - `provider_ref` string, required
  - `checkout_url` string, required
  - `status` 'pending', required
  - `owner` string, required
  - `repo` string, required
  - `version` string, required
  - `pricing` object, required
  - `next` string, required

## Other responses

- `400`: Bad request
- `401`: Authorization required
- `404`: Resource not found
- `409`: The harness uses per_call pricing, but hosted execution is not live.

---

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