---
title: "POST /v1/customers/{customer_id}/simulate-transactions"
method: POST
path: "/v1/customers/{customer_id}/simulate-transactions"
tags: ["crate::web::openapi::simulations"]
---

# POST /v1/customers/{customer_id}/simulate-transactions

`POST /v1/customers/{customer_id}/simulate-transactions`

## Request

- Base URL: `https://api.1money.com`
- URL: `https://api.1money.com/v1/customers/{customer_id}/simulate-transactions`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/1money/apis/1money-openapi/docs/v1/customers/:customer_id/simulate-transactions/post.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `customer_id` string, required

## Request body

- SimulateTransactionRequest
  - `asset` string, required: - Stablecoin assets: USDC, USDT, PYUSD, RLUSD, USDG, USDP, EURC, MXNB, 1USD(1USD/USDC conversion only, deposit/withdrawal not supported) - Digital assets: BTC, ETH, SOL - Fiat currencies: USD, MXN
  - `network` string, required: Public network identifier for bank, blockchain and internal transactions. Allowed values: - Bank: `US_ACH`, `US_FEDWIRE`, `US_RTP`, `US_FEDNOW`, `SWIFT`, `CUBIX`, `SPEI`, `PIX_TRANSFER`, `LOCAL_BANK_TRANSFER`, `CHATS`, `FPS`, `SEPA`, `FASTER_PAYMENT`, `UAEFTS`, `UPI`, `EREBOR_RAIL` - Blockchain: `ETHEREUM`, `POLYGON`, `ARBITRUM`, `AVALANCHE`, `BASE`, `BNBCHAIN`, `SOLANA`, `TRON`, `ONE_MONEY`, `BITCOIN` - Internal: `INTERNAL` Availability depends on the asset and customer account configuration.
  - `amount` string, required: Deposit amount
  - `reference_code` string, nullable: Optional reference-code/memo/message for the transaction (only used for fiat deposits)
  - `simulate_status` string, nullable: Optional simulation status for sandbox testing. Supported values: "FAILED"

## Response `201`

- SimulateTransactionResponse
  - `simulation_id` string, required: Transaction ID
  - `status` 'PENDING' | 'COMPLETED' | 'FAILED' | 'REVERSED' | 'RETURNED' | 'MICRO_DEPOSIT' | 'MICRO_DEPOSIT_REVERSED', required
  - `created_at` string, required
  - `modified_at` string, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `405`: Method Not Allowed
- `422`: Unprocessable Entity - Invalid enum value (e.g., unsupported network or asset name)
- `500`: Internal Server Error

## Changes

- **2026-11-03** `d213edbaccb6`: 2 warning, 2 info
  - added the new `MICRO_DEPOSIT` enum value to the `status` response property for the response status `201`
  - added the new `MICRO_DEPOSIT_REVERSED` enum value to the `status` response property for the response status `201`
  - api tag `crate::web::openapi::simulations` added
  - api tag `Simulations` removed

[Operation history](https://skmtc.dev/1money/apis/1money-openapi/changes/v1/customers/:customer_id/simulate-transactions/post.md)

---

[API](https://skmtc.dev/1money/apis/1money-openapi.md) - [All operations](https://skmtc.dev/1money/apis/1money-openapi/llms.txt) - [OpenAPI document](https://skmtc.dev/1money/apis/1money-openapi/revisions/d213edbaccb6?raw)
