Skip to content
Last updated

Send money

Sending money with Wise Platform is a process with four stages. You start by getting a quote which tells you the cost of the transaction, and the exchange rate.

When you create a transfer, you do so from your own Wise profile, and must include your profileId in the path of the API request.

Overview of API requests

To send money:

  1. Create an authenticated quote using POST /v3/profiles/{profileId}/quotes — a quote is required to create the transfer and provides the cost and exchange rate.
  2. Add a recipient's account details using POST /v1/accounts — the recipient is the party receiving the money. You receive a recipient ID in the response.
  3. Create the transfer using POST /v1/transfers — include the quote ID and recipient account ID.
  4. Fund the transfer using POST /v3/profiles/{profileId}/transfers/{transferId}/payments — once complete, the money is sent.
Wise PlatformYour systemWise PlatformYour systemCreate an authenticated quote - POST /quotes200 Response returns: quoteIdCreate a recipient - POST /accounts200 Response returns: recipientIdCreate transfer including quoteId, recipientId - POST /transfers200 Response returns: transferIdFund transfer including transferId - POST profiles/{{profileId}}/transfers/{{transferId}}/payments200 Response returns: transfer status
Wise PlatformYour systemWise PlatformYour systemCreate an authenticated quote - POST /quotes200 Response returns: quoteIdCreate a recipient - POST /accounts200 Response returns: recipientIdCreate transfer including quoteId, recipientId - POST /transfers200 Response returns: transferIdFund transfer including transferId - POST profiles/{{profileId}}/transfers/{{transferId}}/payments200 Response returns: transfer status

Create an authenticated quote

Create a quote to lock in the exchange rate and calculate fees for the transfer. The quote requires source and target currencies and an amount. The returned quote ID is needed to create the transfer.

curl -i -X POST \
  https://api.wise.com/v3/profiles/101/quotes \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
  -d '{
    "sourceCurrency": "GBP",
    "targetCurrency": "USD",
    "sourceAmount": 100,
    "targetAmount": null,
    "targetAccount": 12345,
    "payOut": null,
    "preferredPayIn": null,
    "paymentMetadata": {
      "transferNature": "MOVING_MONEY_BETWEEN_OWN_ACCOUNTS"
    },
    "pricingConfiguration": {
      "fee": {
        "type": "OVERRIDE",
        "variable": 0.011,
        "fixed": 15.42
      }
    }
  }'

For request/response details, see the API reference.

Create a recipient account

Create a recipient (beneficiary) for the transfer. The recipient details vary by currency and route — use the account requirements endpoint to discover required fields dynamically.

curl -i -X POST \
  'https://api.wise.com/v1/accounts?refund=false' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
  -d '{
    "currency": "GBP",
    "type": "sort_code",
    "profile": 30000000,
    "ownedByCustomer": true,
    "accountHolderName": "John Doe",
    "details": {
      "legalType": "PRIVATE",
      "sortCode": "040075",
      "accountNumber": "37778842",
      "dateOfBirth": "1961-01-01"
    }
  }'

For request/response details, see the API reference.

Create a transfer

Create the transfer using the quote ID and recipient account ID.

curl -i -X POST \
  https://api.wise.com/v1/transfers \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
  -d '{
    "targetAccount": 8692237,
    "quoteUuid": "8fa9be20-ba43-4b15-abbb-9424e1481050",
    "customerTransactionId": "54a6bc09-cef9-49a8-9041-f1f0c654cd88",
    "details": {
      "reference": "Invoice 2026-001"
    }
  }'

For request/response details, see the API reference.

Fund the transfer

Fund the transfer to initiate the payment.

curl -i -X POST \
  'https://api.wise.com/v3/profiles/{profileId}/transfers/{transferId}/payments' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
  -d '{
    "type": "BALANCE",
    "partnerReference": "string"
  }'

For request/response details, see the API reference.