Skip to main content
POST
/
ramp
/
quote
Get quote
curl --request POST \
  --url https://api.etherfuse.com/ramp/quote \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "blockchain": "stellar",
  "customerId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "quoteAssets": {
    "sourceAsset": "MXN",
    "targetAsset": "USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5",
    "type": "onramp"
  },
  "quoteId": "3f2a1b0c-9d8e-7f6a-5b4c-3d2e1f0a9b8c",
  "sourceAmount": "1000",
  "walletAddress": "GDUKMGUGD3V6VXTU2RLAUM7A2FABLMHCPWTMDHKP7HHJ6FCZKEY4PVWL"
}
'
{
  "blockchain": "stellar",
  "createdAt": "2026-05-02T09:14:00Z",
  "destinationAmount": "58.42",
  "etherfuseMidMarketRate": "17.15",
  "exchangeRate": "17.12",
  "expiresAt": "2026-05-02T09:16:00Z",
  "feeAmount": "2.00",
  "feeBps": "20",
  "nominalRate": "17.15",
  "quoteAssets": {
    "sourceAsset": "MXN",
    "targetAsset": "USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5",
    "type": "onramp"
  },
  "quoteId": "3f2a1b0c-9d8e-7f6a-5b4c-3d2e1f0a9b8c",
  "requiresSwap": true,
  "sourceAmount": "1000",
  "updatedAt": "2026-05-02T09:14:00Z"
}

Authorizations

Authorization
string
header
required

API key sent in the Authorization header.

Body

application/json
blockchain
enum<string>
required

blockchain identifier (stellar, solana)

Available options:
stellar,
solana,
base,
polygon,
monad
customerId
string<uuid>
required
quoteAssets
Onramp · object
required

Fiat → crypto: pay in fiat, receive a stablecoin/token on-chain.

quoteId
string<uuid>
required
sourceAmount
string
required
partnerFeeBps
integer<int32> | null
Required range: x >= 0
walletAddress
string | null

Optional Stellar wallet address. When provided for Stellar onramps, enables trustline check and setup fee calculation.

Response

The created quote

blockchain
enum<string>
required

Canonical blockchain enum for API serialization. Use this type for JSON APIs and WebSocket messages. For database storage, convert to BlockchainType.

Available options:
stellar,
solana,
base,
polygon,
monad
createdAt
string<date-time>
required
destinationAmount
string
required
exchangeRate
string
required
feeAmount
string
required

Fee amount in the source asset's currency (e.g., fiat for onramps, tokens for offramps)

feeBps
string
required

Fee in basis points (e.g., 20 = 0.20%)

nominalRate
string
required

Pre-fee rate. exchange_rate is the effective rate after fees; nominal_rate is the underlying market rate before any Etherfuse fee deduction. UIs that want to render the raw market relationship cleanly (e.g., "1 MXN = 1 eMXN" with the fee row shown separately) should read this field. Always populated.

quoteAssets
Onramp · object
required

Fiat → crypto: pay in fiat, receive a stablecoin/token on-chain.

quoteId
string<uuid>
required
requiresSwap
boolean
required

Whether this quote requires an on-chain swap (true for FX ramps, false for stablebond ramps)

sourceAmount
string
required
updatedAt
string<date-time>
required
etherfuseMidMarketRate
string | null

FX mid-market rate from a currency provider (e.g., USD/MXN). Only populated for cross-currency quotes. Absent on direct stablebond ramps and wraps — use nominal_rate for the pre-fee rate there.

expiresAt
string<date-time> | null