---
title: "Principal Topup"
method: POST
path: "/v1/principal/wallet/topup"
tags: ["principal"]
---

# Principal Topup

`POST /v1/principal/wallet/topup`

## Request

- Base URL: `https://api.mundane.market` (the document declares no server; this is the origin it was published from)
- URL: `https://api.mundane.market/v1/principal/wallet/topup`
- Auth: none declared

Open Stripe Checkout for the signed-in principal.

No currency field. `app/currency.py` enforces one supported currency
platform-wide, so the only thing a client could contribute here is a
mismatch -- which is exactly what /wallet/topup has to 422 on.

## Headers

- `authorization` string

## Cookies

- `mundane_principal_session` string, nullable

## Request body

- ConsoleTopupRequest
  - `amount_minor` integer, required
  - `success_url` string, required
  - `cancel_url` string, required

## Response `201`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

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