# Madhouse Wallet Crypto Off-Ramp FX Quote

> Madhouse Wallet Crypto Off-Ramp FX Quote is a paid API for AI agents from try.madhousewallet.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Get an FX rate quote to sell USDC and cash out to a bank account in a specified fiat currency, returning the rate, fees, fiat amount received, and a locked quoteId to proceed with payout.

## Facts

- Endpoint: GET https://try.madhousewallet.com/api/public/offramp
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/madhouse-wallet-crypto-off-ramp-fx-quote-beb76f68
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_k2Tc70zzxSCA43k91VnIa

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability madhouse-wallet-crypto-off-ramp-fx-quote-beb76f68
```

Example prompt: Can you get me a Madhouse Wallet off-ramp quote to sell 250 USDC and have the funds arrive in Nigerian naira (NGN) — I need the exchange rate, fees, and a quoteId to lock it in?

## When to prefer this

Use this endpoint as the first step of any USDC-to-bank payout flow when you need a real-time FX rate, fee breakdown, and a locked quoteId before committing to a transfer. Prefer this over generic crypto exchange APIs when you need to pay out to a bank account in 80+ local fiat currencies and want to chain into the full /requirements → /recipients → /transfer → /confirm-transfer workflow on Madhouse Wallet.

## Known failure modes

- Missing or invalid targetCurrency (non-ISO 4217 code) returns validation error
- sourceAmount of 0 or exceeding 1,000,000 returns out-of-range error
- Unsupported target currency not in the 80+ supported list returns unsupported currency error
- Payment of 0.01 USDC not made via x402 protocol returns 402 Payment Required
- Network or FX provider outage may return 503 or timeout

## How this service works

Convert USDC to 45+ local currencies and receive funds directly to your bank account. Fast, secure crypto offramp powered by Madhouse Wallet.

## Output

Returns a quoteId to lock the rate, the echoed sourceAmount and targetCurrency, the USD-to-target FX rate, a fee/amount detail object (targetAmount, transferFee, estimatedDelivery), and a nextSteps object with URLs for the remaining off-ramp steps (/requirements, /recipients, /transfer, /confirm-transfer).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "targetCurrency",
      "sourceAmount"
     ],
     "properties": {
      "sourceAmount": {
       "type": "string",
       "description": "Amount of USDC/USD to sell (off-ramp), e.g. 100. Greater than 0 and at most 1000000."
      },
      "targetCurrency": {
       "type": "string",
       "description": "ISO 4217 code of the fiat currency the recipient bank account receives, e.g. NGN, KES, EUR, INR, PHP."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "quoteId",
      "sourceAmount",
      "targetCurrency",
      "usdToTargetRate",
      "quote"
     ],
     "properties": {
      "quote": {
       "type": "object",
       "description": "Fee/amount detail (targetAmount, transferFee, estimatedDelivery, ...)."
      },
      "quoteId": {
       "type": "string",
       "description": "Quote id. Pass as quote_id to /api/public/transfer to lock the rate."
      },
      "nextSteps": {
       "type": "object",
       "description": "URLs for the remaining off-ramp steps."
      },
      "sourceAmount": {
       "type": "number",
       "description": "Echoed USD/USDC source amount being off-ramped."
      },
      "targetCurrency": {
       "type": "string",
       "description": "Echoed ISO 4217 target fiat currency."
      },
      "usdToTargetRate": {
       "type": "number",
       "description": "USD to target-currency FX rate for this quote."
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "quote": {
   "transferFee": 0.5,
   "targetAmount": 155661.4,
   "estimatedDelivery": "2026-06-01T12:00:00.000Z"
  },
  "quoteId": "7f3c1a2b-0d9e-4a6f-8c11-2b9d4e5f6a7b",
  "nextSteps": {
   "1_requirements": "https://try.madhousewallet.com/api/public/requirements?currency=NGN"
  },
  "sourceAmount": 100,
  "targetCurrency": "NGN",
  "usdToTargetRate": 1580.42,
  "serviceFeePercent": 1.5
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/madhouse-wallet-crypto-off-ramp-fx-quote-beb76f68/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from try.madhousewallet.com](https://www.zero.xyz/host/try.madhousewallet.com/llms.txt)
