---
title: "Create Topup Checkout"
method: POST
path: "/api/wallet/topup"
tags: ["wallet"]
---

# Create Topup Checkout

`POST /api/wallet/topup`

## Request

- Base URL: `https://api.maritime.sh` (the document declares no server; this is the origin it was published from)
- URL: `https://api.maritime.sh/api/wallet/topup`
- Auth: HTTP bearer

Create a Stripe Checkout session for wallet top-up (one-time payment).

Wallet-model (grandfathered) accounts only. On seats accounts the hosting
balance buys nothing — every charge is a Stripe subscription invoice — so
accepting a top-up here would take real money for a balance no code path
can ever spend (the UI stopped offering it; the SDK and raw API had not).

## Request body

- TopUpRequest
  - `amount_cents` integer, required: Amount in cents, minimum $5 (500)
  - `return_path` string, nullable: Path to redirect to after checkout (e.g. /enterprise)

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

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