Authenticate using OAuth 2.0 or a personal/business API token in the Authorization header as 'Bearer YOUR_TOKEN'
Create a quote: POST /v3/quotes with sourceCurrency, targetCurrency, sourceAmount or targetAmount, payOut type (e.g. 'BANK_TRANSFER'), and your profile ID to receive a quoteId with a guaranteed exchange rate and fee breakdown
Create a recipient account if not already on file: POST /v1/accounts with currency, type, profile, and the accountHolderName and details appropriate for the target country (e.g. IBAN for SEPA, sort code + account number for UK)
Create the transfer: POST /v1/transfers with targetAccount (recipient ID), quoteUuid, customerTransactionId (idempotency key), and optional details.reference
Fund the transfer: POST /v3/profiles/{profileId}/transfers/{transferId}/payments with type: 'BALANCE' (from Wise balance) or follow the response for bank debit instructions; then poll GET /v1/transfers/{transferId} for the status
Known gotchas
Quotes have a limited validity window (typically minutes to a short period); create the transfer promptly after obtaining the quote or the rate will expire and require a new quote
Recipient account details vary significantly by country and currency; use GET /v1/account-requirements?source=USD&target=EUR&sourceAmount=1000 to retrieve the required fields dynamically rather than hardcoding them
Some corridors and amounts trigger manual review by Wise compliance; the transfer status will remain in a pending state and may require additional documentation from the sender
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp