Reference · Tools
Wise integration
Manage international money transfers, multi-currency accounts, exchange rates, quotes, recipients, and transfers via the Wise (TransferWise) API. Supports statement download (CSV/PDF/XML) and transfer receipt PDF download.
The Wise node manages international money movement: profiles, quotes, recipients, transfers and multi-currency balances, plus statement and receipt downloads as PDF, CSV or XML. A typical build is paying overseas contractors and filing each receipt automatically.
- Works as
- Action (binary)
- Tool name
wise- Operations
- 14 — Account: Get Balances , Account: Get Currencies , Account: Get Statement , Exchange Rate: Get , Profile: Get and 9 more
- Parameters
- 44
- Outputs
- Output, Error
- Credentials
- Wise API
- Official docs
- Wise docs docs.wise.com
What you can build with Wise
- Download account statement as PDF from Wise.
- Get exchange rate between GBP and EUR.
- Create a transfer quote in Wise.
- List all recipients in Wise.
- Download a transfer receipt as PDF.
- Get all transfers for the last month.
- Execute a transfer from balance.
Overview
The Wise tool provides operations against the Wise (TransferWise) API. Supports 6 resources: (1) Account — getBalances, getCurrencies, getStatement (with binary download for CSV/PDF/XML formats). (2) Exchange Rate — get (with optional time/range/interval). (3) Profile — get, getAll. (4) Quote — create, get. (5) Recipient — getAll (with returnAll/limit pagination). (6) Transfer — create, delete, execute, get (with optional receipt PDF download), getAll (with date/currency/status filters). Binary operations: Account getStatement produces CSV/PDF/XML binary files. Transfer get with downloadReceipt produces PDF receipt. Uses Bearer token authentication with optional SCA (Strong Customer Authentication) via RSA-SHA256 signed x-2fa-approval headers.
Node Type
Action (Binary) — handles file/binary data operations
Input / Output
| Direction | Port(s) |
|---|---|
| Input | Input |
| Output | Output, Error |
Credentials
This tool requires Wise API credentials. See the Credentials Guide for setup instructions.
Resources
| Resource | Value |
|---|---|
| Account | account |
| Exchange Rate | exchangeRate |
| Profile | profile |
| Quote | quote |
| Recipient | recipient |
| Transfer | transfer |
Operations
Each resource has its own Operation list, and several resources reuse the values get and getAll. Pick the resource first, then the operation.
| Resource | Operation | Value | Description |
|---|---|---|---|
| Account | Get Balances | getBalances | Retrieve balances for all account currencies |
| Account | Get Currencies | getCurrencies | Retrieve available currencies for the borderless account |
| Account | Get Statement | getStatement | Retrieve the account statement (JSON, CSV, PDF, or XML) |
| Exchange Rate | Get | get | Get the exchange rate between two currencies |
| Profile | Get | get | Get a user profile |
| Profile | Get Many | getAll | Get all user profiles |
| Quote | Create | create | Create a transfer quote |
| Quote | Get | get | Get a quote by ID |
| Recipient | Get Many | getAll | Get all recipient accounts |
| Transfer | Create | create | Create a transfer |
| Transfer | Delete | delete | Cancel a transfer |
| Transfer | Execute | execute | Fund and execute a transfer from balance |
| Transfer | Get | get | Get a transfer (with optional receipt PDF download) |
| Transfer | Get Many | getAll | Get all transfers with filters |
Parameters
Account: Get Currencies and Profile: Get Many take no parameters of their own.
Most operations need a Profile ID — run Profile: Get Many once to find yours. Two different parameters are labelled Source Currency and two are labelled Target Currency: the exchange-rate pair uses source/target, while a quote uses sourceCurrency/targetCurrency.
Account: Get Balances
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Profile ID | string | Yes | — | ID of the user profile to retrieve the balance of. Use profile:getAll to find your profile IDs. |
Account: Get Statement
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Profile ID | string | Yes | — | ID of the user profile whose account to retrieve the statement of. |
| Borderless Account ID | string | Yes | — | ID of the borderless account to retrieve the statement of. Use account:getBalances to find account IDs. |
| Currency | string | Yes | — | 3-letter currency code of the borderless account to retrieve the statement of (e.g. GBP, EUR, USD). |
| Format | options | No | json | File format to retrieve the statement in. JSON returns structured data; CSV, PDF, and XML return binary file output. |
Options: json, csv, pdf, xml (XML in CAMT.053 form) | ||||
Binary Property (binaryPropertyName) | string | Yes | data | Name of the binary property to store the downloaded file in. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. (shown when Format is csv, pdf, xml) |
File Name (fileName) | string | Yes | — | Name of the file that will be downloaded. (shown when Format is csv, pdf, xml) |
Additional Fields (additionalFields) | collection | No | {} | Optional statement settings. |
— Line Style (lineStyle) | options | No | COMPACT | Line style to retrieve the statement in. |
Options: COMPACT (single line per transaction), FLAT (separate lines for transaction fees) | ||||
— Interval Start (intervalStart) | string | No | — | Start of the statement period (ISO 8601 datetime). Defaults to 1 month ago if not set. |
— Interval End (intervalEnd) | string | No | — | End of the statement period (ISO 8601 datetime). Defaults to now if not set. |
Exchange Rate: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
Source Currency (source) | string | Yes | — | Code of the source currency (e.g. GBP, USD). |
Target Currency (target) | string | Yes | — | Code of the target currency (e.g. EUR, USD). |
Additional Fields (additionalFields) | collection | No | {} | Optional time-range settings. |
| — Interval | options | No | day | Grouping interval for exchange rates. |
Options: day, hour, minute | ||||
— Range Start (from) | string | No | — | Start of the date range (ISO 8601). Defaults to 1 month ago if not set. |
— Range End (to) | string | No | — | End of the date range (ISO 8601). Defaults to now if not set. |
| — Time | string | No | — | Specific point in time to retrieve the exchange rate for (ISO 8601). If set, from/to are ignored. |
Profile: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Profile ID | string | Yes | — | ID of the user profile to retrieve. |
Quote: Create
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Profile ID | string | Yes | — | ID of the user profile to create the quote under. |
| Target Account ID | string | Yes | — | ID of the recipient account that will receive the funds. |
Amount Type (amountType) | options | No | source | Whether the amount is the source (sent) or target (received) amount. |
Options: source, target | ||||
| Amount | number | Yes | 1 | Amount of funds for the quote. |
Source Currency (sourceCurrency) | string | Yes | — | Code of the currency to send (e.g. GBP). Automatically uppercased. |
Target Currency (targetCurrency) | string | Yes | — | Code of the currency to receive (e.g. EUR). Automatically uppercased. |
Quote: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Quote ID | string | Yes | — | ID of the quote to retrieve. |
Recipient: Get Many
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. |
| Limit | number | No | 5 | Max number of results to return. Accepts 1–1000. (shown when Return All is false) |
Transfer: Create
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Profile ID | string | Yes | — | ID of the user profile to create the transfer under. |
| Quote ID | string | Yes | — | ID of the quote based on which to create the transfer. |
| Target Account ID | string | Yes | — | ID of the recipient account that will receive the funds. |
Additional Fields (additionalFields) | collection | No | {} | Optional transfer settings. |
| — Reference | string | No | — | Reference text to show in the recipient’s bank statement. |
Transfer: Delete
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Transfer ID | string | Yes | — | ID of the transfer to cancel. |
Transfer: Execute
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Profile ID | string | Yes | — | ID of the user profile to execute the transfer under. |
| Transfer ID | string | Yes | — | ID of the transfer to execute. |
Transfer: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Transfer ID | string | Yes | — | ID of the transfer to retrieve. |
Download Receipt (downloadReceipt) | boolean | No | false | Whether to download the transfer receipt as a PDF. Only for executed transfers with status “Outgoing Payment Sent”. |
Binary Property (binaryPropertyName) | string | Yes | data | Name of the binary property to store the receipt PDF in. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. (shown when Download Receipt is true) |
File Name (fileName) | string | Yes | — | Name of the downloaded receipt file. (shown when Download Receipt is true) |
Transfer: Get Many
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Profile ID | string | Yes | — | ID of the user profile to list transfers for. |
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. |
| Limit | number | No | 5 | Max number of results to return. Accepts 1–1000. (shown when Return All is false) |
Filters (filters) | collection | No | {} | Narrow the transfer list. |
— Created Date Start (createdDateStart) | string | No | — | Start of the date range filter (ISO 8601). Defaults to 1 month ago. |
— Created Date End (createdDateEnd) | string | No | — | End of the date range filter (ISO 8601). Defaults to now. |
— Source Currency (sourceCurrency) | string | No | — | Source currency code for filtering transfers. |
— Target Currency (targetCurrency) | string | No | — | Target currency code for filtering transfers. |
| — Status | options | No | processing | Transfer status filter. |
Options: bounced_back, cancelled, charged_back, funds_converted, funds_refunded, incoming_payment_waiting, outgoing_payment_sent, processing, unknown, waiting_recipient_input_to_proceed |
All Operations
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Max Concurrency | number | No | 10 | Maximum number of items to process concurrently. Accepts 1–100. |
Output Data
One input item always produces exactly one output item — no operation fans out. Binary data on the input item is forwarded unchanged, and a downloaded file is added alongside it rather than replacing it.
How the JSON is built depends on whether Wise answered with one record or a list:
- Single-record operations merge onto the input item’s JSON. The returned object’s fields sit alongside the fields the item already carried, so downstream nodes address them directly (
{{ $json.id }}). A response field with the same name as an existing item field overwrites it. - List operations replace the item JSON. The whole list lands on one output item under
results, and nothing from the input item’s JSON carries over. Address individual entries as{{ $json.results }}, or put an Item Lists / Split node after this one if you want one item per record.
| Operations | Output |
|---|---|
| Account Get Balances and Get Currencies; Exchange Rate Get; Profile Get Many; Recipient Get Many; Transfer Get Many | One output item whose JSON is { "results": [ … ] } — the input JSON is replaced. |
Account Get Statement with Format json; Profile Get; Quote Create and Get; Transfer Create, Delete, Execute, and Get without a receipt | One output item; the returned object merged onto the input JSON. |
Account Get Statement with Format csv, pdf or xml | One output item carrying the file in binary, with format, fileName and fileSize merged onto the input JSON. |
| Transfer Get with Download Receipt on | One output item carrying the receipt PDF in binary, with transferId, downloadedReceipt, fileName and fileSize merged onto the input JSON. |
Downloaded files land on the binary property you named, with the MIME type matching the format (text/csv, application/pdf, application/xml) so a downstream upload or email node can attach them as-is.
Example Configuration
Check balances across every currency on a profile:
{
"type": "wise",
"parameters": {
"resource": "account",
"operation": "getBalances",
"profileId": "{{ $json.profileId }}"
}
}
Download a PDF statement for one currency and date range:
{
"type": "wise",
"parameters": {
"resource": "account",
"operation": "getStatement",
"profileId": "12345678",
"borderlessAccountId": "87654321",
"currency": "GBP",
"format": "pdf",
"binaryPropertyName": "statementPdf",
"fileName": "statement_2026.pdf",
"additionalFields": {
"lineStyle": "COMPACT",
"intervalStart": "2026-01-01T00:00:00Z",
"intervalEnd": "2026-06-30T23:59:59Z"
}
}
}
Track a rate day by day over a period:
{
"type": "wise",
"parameters": {
"resource": "exchangeRate",
"operation": "get",
"source": "GBP",
"target": "EUR",
"additionalFields": {
"interval": "day",
"from": "2026-01-01T00:00:00Z",
"to": "2026-06-30T00:00:00Z"
}
}
}
Quote a £1,000 send:
{
"type": "wise",
"parameters": {
"resource": "quote",
"operation": "create",
"profileId": "12345678",
"targetAccountId": "{{ $json.recipientId }}",
"amountType": "source",
"amount": 1000,
"sourceCurrency": "GBP",
"targetCurrency": "EUR"
}
}
Turn that quote into a transfer:
{
"type": "wise",
"parameters": {
"resource": "transfer",
"operation": "create",
"profileId": "12345678",
"quoteId": "{{ $json.id }}",
"targetAccountId": "{{ $json.recipientId }}",
"additionalFields": {
"reference": "Monthly payment"
}
}
}
Fund and send it from your balance:
{
"type": "wise",
"parameters": {
"resource": "transfer",
"operation": "execute",
"profileId": "12345678",
"transferId": "{{ $json.id }}"
}
}
Fetch a transfer and keep its receipt as a PDF:
{
"type": "wise",
"parameters": {
"resource": "transfer",
"operation": "get",
"transferId": "{{ $json.id }}",
"downloadReceipt": true,
"binaryPropertyName": "receiptPdf",
"fileName": "transfer_receipt.pdf"
}
}
List transfers in a window, filtered by currency and status:
{
"type": "wise",
"parameters": {
"resource": "transfer",
"operation": "getAll",
"profileId": "12345678",
"returnAll": false,
"limit": 50,
"filters": {
"createdDateStart": "2026-01-01T00:00:00Z",
"createdDateEnd": "2026-06-30T23:59:59Z",
"sourceCurrency": "GBP",
"status": "processing"
}
}
}
Error Handling
| Mode | Behavior |
|---|---|
| stop | Halts workflow on first error |
| continue | Skips failed items, passes successful ones through |
| errorPort | Routes failed items to Error output port |
Tips
This tool manages international money transfers, multi-currency accounts, exchange rates, quotes, recipients, and transfers via the Wise service. It is ideal for tasks like getting exchange rates, creating transfer quotes, managing recipients, executing transfers, and downloading account statements or transfer receipts. The tool produces information about balances, currencies, profiles, quotes, recipients, and transfers, including binary CSV, PDF, or XML statements and PDF transfer receipts.
The Transfer Workflow
- Profile: Get Many to find your profile ID.
- Quote: Create with the profile ID, recipient account, amount and currency pair.
- Transfer: Create using the quote’s ID.
- Transfer: Execute to fund it from your balance.
- Transfer: Get with Download Receipt once the transfer reaches
outgoing_payment_sent, to keep the PDF.
Account Management
- Get Balances shows available funds per currency, and its response also carries the borderless account IDs that Get Statement needs.
- Get Currencies lists what the account supports.
- Get Statement is the reporting workhorse:
jsonfor data you will process in the workflow,csv/pdf/xmlwhen a person or an accounting system is going to read the file.
Important Notes
- Currency codes are uppercased for you, so
gbpandGBPbehave the same. - Binary downloads need both Binary Property and File Name; the file lands on the property you name and the item’s existing binary is kept.
- Collections (Additional Fields, Filters) are flat objects keyed by the sub-field’s internal name.
- A receipt is only available once the transfer has actually been sent — asking earlier returns an error rather than an empty file.
Frequently asked questions
What is the correct transfer sequence?
Get your profile ID with Profile: Get Many, create a quote with the recipient account, amount and currency pair, create the transfer using the quote's ID, then execute it to fund from your balance.
Can it download documents?
Yes — statements in CSV, PDF or XML, and transfer receipts as PDF, all arriving as binary data.
Why is a quote needed before a transfer?
Because the quote fixes the rate and fees the transfer will use. Creating a transfer without one has nothing to price it against.
How do I react to transfer events?
Use the Wise Trigger, which fires on balance credits, balance updates and transfer state changes.
Build with Wise
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Wise API credentials first.
Open BusyBotLast reviewed . Spotted something wrong? Tell us.