---
title: "Simulate the payout for an FX trade (sandbox only)"
method: POST
path: "/v1/fx/trades/{tradeId}/simulate-payout"
tags: ["FX"]
---

# Simulate the payout for an FX trade (sandbox only)

`POST /v1/fx/trades/{tradeId}/simulate-payout`

Sandbox only — always returns 403 in production. Simulates the payout completing for a trade in `PROCESSING` (deposit already settled), driving it to `COMPLETED` through its normal lifecycle asynchronously: poll `GET /v1/fx/trades/{tradeId}` or subscribe to FX trade webhooks to observe the transition.

## Path parameters

- `tradeId` string, required

## Headers

- `X-API-Key` string

## Response `202`

Simulation accepted. The trade completes asynchronously as the simulated payout settles.

- FxTradeSimulationResponseDto
  - `simulated` boolean, required — Always `true` — the simulation request was accepted.
  - `note` string, required — Human-readable note about what happens next. The trade advances asynchronously; poll `GET /v1/fx/trades/{tradeId}` or subscribe to FX trade webhooks to observe the transition.

## Other responses

- `401` — Unauthorized - Invalid or missing authentication credentials
- `403` — Simulation is sandbox-only and not available in production.
- `404` — Trade does not exist for the calling organization.
- `409` — Trade is not in `PROCESSING`.

---

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