---
title: "POST /v1/portfolio/{portfolioSlug}/reap/simulate-quote"
method: POST
path: "/v1/portfolio/{portfolioSlug}/reap/simulate-quote"
tags: ["ReapQuoteSimulator"]
---

# POST /v1/portfolio/{portfolioSlug}/reap/simulate-quote

`POST /v1/portfolio/{portfolioSlug}/reap/simulate-quote`

## Request

- Base URL: `https://api.tokenbooks.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tokenbooks.io/v1/portfolio/{portfolioSlug}/reap/simulate-quote`
- Auth: API key in header `x-api-key`

## Path parameters

- `portfolioSlug` string, required

## Request body

- ReapQuoteSimulationRequestDto
  - `network` 'SWIFT' | 'ACH' | 'SEPA' | 'FPS' | 'EFT' | 'FAST' | 'CHATS' | 'KFTC' | 'ZENGIN' | 'INSTAPAY' | 'PESONET' | 'PROMPTPAY' | 'BECS' | 'IMPS' | 'NEFT' | 'BI-FAST' | 'UAEFTS' | 'SPEI' | 'SPID' | 'PIX', required: Reap payout network / bank method (e.g. SEPA, ACH, IMPS)
  - `receivingAmount` string, required: Amount the recipient should receive, as a decimal string in the receiving currency (e.g. "500000")
  - `receivingCurrency` string: ISO 4217 receiving currency; defaults to the network default
  - `recipientBankCountry` string: ISO 3166-1 alpha-2 recipient bank country; defaults to the network default
  - `senderCurrency` 'USDC' | 'USDT' | 'USDe': Stablecoin funding the simulated payout
  - `purposeOfPayment` 'payment_for_goods' | 'payment_for_business_services' | 'payment_for_salary_or_benefits' | 'capital_investment_or_item' | 'other': Reap purpose-of-payment classification

## Response `200`

- ReapQuoteSimulationResponseDto
  - `status` 'quoted' | 'corridor_unavailable' | 'amount_out_of_range' | 'limit_skipped', required
  - `corridor` object, required
    - `network` string, required
    - `receivingCurrency` string, required
    - `recipientBankCountry` string, required
    - `senderCurrency` string, required
    - `amountBounds` object, nullable, required: Corridor min/max receiving amount, when the corridor is enabled
      - `minAmount` string, required
      - `maxAmount` string, required
  - `quote` object, nullable, required
    - `exchangeRate` string, required: Receiving units per 1 sender unit (e.g. 95.1058)
    - `senderCurrency` string, required
    - `receivingCurrency` string, required
    - `processingFee` string, required: Total processing fee, in the sender currency
    - `itemizedFees` object[], required
      - `key` string, required: Stable fee bucket key (fixed | variable | special)
      - `label` string, required: Human-readable fee label, e.g. "Fixed fee"
      - `amount` string, required: Component fee amount, in the sender currency
      - `percentage` string, nullable, required: Percentage of the base sender amount, when applicable
    - `totalReceivable` string, required: Amount the recipient receives
    - `quoteValiditySeconds` integer, required: Seconds the draft quote remains valid before auto-expiry
    - `summary` string, required: Human-readable multi-line fee breakdown
  - `note` string, nullable, required

---

[API](https://skmtc.dev/tokenbooks/apis/tokenbooks-public-api.md) · [All operations](https://skmtc.dev/tokenbooks/apis/tokenbooks-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tokenbooks/apis/tokenbooks-public-api/revisions/180622e6255e?raw)
