---
title: "Create bank ramp fee quote"
method: POST
path: "/money/ramp_fee_quotes"
---

# Create bank ramp fee quote

`POST /money/ramp_fee_quotes`

## Request

- Base URL: `https://api.stablesea.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.stablesea.com/money/ramp_fee_quotes`
- Auth: none declared

Returns fixed fee terms, an optional indicative conversion rate, estimated proceeds, and whether a ramp created now settles at 1:1 before fees (settles_at_par) and whether it caps a fill above 1:1 (caps_at_par). Previews do not reserve funds or place an order; repeated previews cannot move money.

## Request body

- RampfeesQuoteInput
  - `account_id` string, nullable
  - `amount_usd` string, required
  - `direction` 'onramp' | 'offramp', required
  - `rail` 'ach' | 'wire', required

## Response `200`

OK

- RampfeesQuoteOutput
  - `bank_fee_usd` string
  - `bps` integer
  - `caps_at_par` boolean: True when a ramp created now in this direction caps a fill above 1:1 USD/USDC: the surplus is swept to the platform, so an onramp credits no more USDC than the USD deposited and an offramp pays no more USD than the USDC sold, before fees. Says nothing about a fill below 1:1, which is topped up only when settles_at_par is also true and otherwise settles at the market fill. Platform and bank fees are separate from this.
  - `conversion_input` string
  - `direction` 'onramp' | 'offramp'
  - `estimated_conversion_output` string, nullable: Indicative gross conversion proceeds before bank or platform fees, in proceeds_symbol.
  - `estimated_conversion_rate` string, nullable: Indicative proceeds currency per one source currency unit, before fees. Not a guaranteed settlement rate.
  - `estimated_proceeds` string, nullable
  - `expires_ts` string, date-time
  - `platform_fee_usdc` string
  - `proceeds_symbol` string
  - `quote_id` string
  - `settles_at_par` boolean: True when a ramp created now in this direction is held to 1:1 USD/USDC before fees: a fill above par has its surplus swept to the platform, and a fill below par is topped up from the platform account. Not unconditional: a top-up is made only when the shortfall is at most the greater of 25 basis points of the principal and 1.00 USD and the platform account holds the balance, and a ramp whose adjustment is rejected settles at the market fill. False when either adjustment is off for this direction, so a fill on that side of par settles at the market fill. Platform and bank fees are separate from this.
  - `source_symbol` string
  - `total_source_debit` string

## Other responses

- `default`: Error response.

## Changes

- **2026-10-29** `e003c8a67b62`: 1 info
  - added the optional property `error/authorization` to the response with the `default` status
- **2026-10-08** `352f74da5030`: 2 info
  - added the optional property `caps_at_par` to the response with the `200` status
  - added the optional property `settles_at_par` to the response with the `200` status
- **2026-09-23** `db67f9e5e315`: 2 info
  - added the optional property `estimated_conversion_output` to the response with the `200` status
  - added the optional property `estimated_conversion_rate` to the response with the `200` status
- **2026-09-17** `e55170c42599`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/stablesea/apis/stable-sea-backend/changes/money/ramp_fee_quotes/post.md)

---

[API](https://skmtc.dev/stablesea/apis/stable-sea-backend.md) - [All operations](https://skmtc.dev/stablesea/apis/stable-sea-backend/llms.txt) - [OpenAPI document](https://skmtc.dev/stablesea/apis/stable-sea-backend/revisions/fb17fc318db3?raw)
