---
title: "Charge Token"
method: POST
path: "/api/v1/tokens/charge"
---

# Charge Token

`POST /api/v1/tokens/charge`

Charge a `pay` or `kya-pay` token as a seller agent or seller service.

## Request body

- object
  - `token` string, required — The complete, signed JWT string received from the buyer agent.
  - `chargeAmount` string — The amount to charge from the token. Required unless the seller service uses the `pay_per_use` pricing model, in which case Skyfire automatically charges the configured service price when omitted. Tokens may be charged multiple times until their balance is exhausted. When provided, `chargeAmount` must: - Be greater than 0 - Be less than or equal to the token's original `tokenAmount` - Be less than or equal to the token's remaining balance A charge that exceeds the remaining balance will fail.

## Response `200`

200

- object
  - `amountCharged` string — The amount successfully charged from the token.
  - `remainingBalance` string — The amount remaining on the token after the charge is processed.

## Other responses

- `400` — 400
- `401` — 401
- `402` — 402

---

[API](https://skmtc.net/skyfire/apis/skyfire-agent-and-token-apis.md) · [All operations](https://skmtc.net/skyfire/apis/skyfire-agent-and-token-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/skyfire/skyfire-agent-and-token-apis/versions/209ba8f90d59/schema)
