---
title: "Topup Wallet"
method: POST
path: "/api/admin/transactions/topup"
tags: ["admin-transactions"]
---

# Topup Wallet

`POST /api/admin/transactions/topup`

Credit (TOPUP) or debit (REFUND) a user/team wallet. ``amount`` is in
stored units (USD * 10000).

## Request body

- AdminTopupRequest — Manual admin credit (TOPUP) or debit (REFUND) of a user/team wallet. Exactly one of ``user_id`` / ``team_id`` identifies the wallet owner. ``amount`` is in stored integer units (USD * 10000), matching the platform.
  - `userId` string, nullable
  - `teamId` string, nullable
  - `amount` integer, required — Amount in stored units (USD * 10000).
  - `type` 'TOPUP' | 'REFUND' — Transaction types an admin may create manually. A narrower set than the full ``TransactionType`` (which also covers AUTOTOPUP/COUPON/INVOICE) so the top-up endpoint can't be used to mint mislabeled adjustments.
  - `description` string, nullable

## Response `200`

Successful Response

- GenericResponseTopupResult
  - `data` TopupResult
    - `walletId` string, required
    - `balance` integer, required
    - `amount` integer, required
    - `type` string, required
  - `status` string, nullable — Response status

## Other responses

- `401` — Authorization failed
- `403` — Insufficient permissions
- `422` — Invalid request data

---

[API](https://skmtc.net/primeintellect/apis/pi-api.md) · [All operations](https://skmtc.net/primeintellect/apis/pi-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/primeintellect/pi-api/revisions/3d3868828a78/schema)
