---
title: "Simulate a balance top-up"
method: POST
path: "/v1/simulation/balance/topup"
tags: ["simulation"]
---

# Simulate a balance top-up

`POST /v1/simulation/balance/topup`

Simulates a top-up so that a balance can be used to fund transfers and/or card spend.

## Headers

- `X-External-Correlation-Id` string, uuid

## Request body

- object
  - `profileId` integer, required — The profile ID linked to the balance account.
  - `balanceId` integer, required — The ID of the balance account that is going to receive the funds.
  - `currency` string, required — The currency to top up the balance account in. Must be the same currency as the balance account.
  - `amount` number, required — The amount to top up the balance account with.
  - `channel` 'TRANSFER' | 'CARD' — Type of top-up. Not providing a channel will default to `CARD`.

## Response `200`

Simulated balance top-up result.

- object
  - `transactionId` integer — The ID of the top-up transaction.
  - `state` string — The state of the transaction. `COMPLETED` is always returned when using this endpoint.
  - `balancesAfter` object[]
    - `id` integer — The ID of the balance account.
    - `value` number — The new amount available in the balance account.
    - `currency` string — The currency of the balance account.

## Other responses

- `429` — Rate limit exceeded. Retry after the number of seconds specified in the `Retry-After` header.

---

[API](https://skmtc.net/wise/apis/platform-api.md) · [All operations](https://skmtc.net/wise/apis/platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/wise/platform-api/revisions/4907a1d269ab/schema)
