Prerequisites
Before you begin, you must have:- An API key from the Developers section of the dashboard. See Authentication.
- A funded wallet that can send USDC on a supported network.
- A KYC-verified wallet address, if your account requires KYC. Verify at kyc.madhousewallet.com.
Get started
Get a quote
Request a live rate for a USD to EUR payout. Save the The response includes
quoteId — it is valid for 5 minutes and single-use.quoteId, usdToTargetRate, fees, and an estimated delivery time. See Quotes and fees.Find the recipient's required fields
Each currency needs different bank details. Ask which fields to collect for EUR.The response lists account types (for example
iban) and their fields. See Recipients and account requirements.Initiate the transfer
Submit the transfer with your The
quote_id, the recipientId, and the wallet that will send the USDC. You receive a unique deposit_address.customer_uuid must be globally unique — a duplicate is rejected with 409.Send the USDC
Send exactly the quoted
amount of USDC from wallet_address to the returned deposit_address, on the same source_network. MW detects the deposit and starts the fiat payout automatically.Check the status
Poll the transfer until it reaches a terminal status.Status moves from
ready_to_process to processing, transfer_created, and finally completed. See Transfer lifecycle.Next steps
v1 vs v2 transfers
Choose the right transfer pipeline for your integration.
Compliance
Learn how wallet verification and sanctions screening work.
