Wise Business
Let hires check balances, read statements and activity, and match incoming payments to invoices in Wise Business. Read only.
Explore 7 actions and their permissionsExact inputs, sign-in scopes, access limits and approval rules.
With Wise Business, a hire can:
- check your balances in every currency (and jars),
- read a balance's statement: money in and out, who sent it, their payment reference, fees and the running balance, filtered by a name, an invoice number or an amount,
- read your recent activity (money received, card payments, transfers, conversions),
- list transfers and read one,
- look up Wise's exchange rate between two currencies.
That's what reconciling needs: a hire can find the payment that matches an invoice and then record it in your accounting app.
Hires never move money in Wise. There is no tool for sending, converting or paying, whatever access you give. When a hire thinks money should go out, it asks you for approval in the chat with the amount, who to pay and the rate, and you make the transfer in Wise yourself.
1. Make a read-only token in Wise
- Open API tokens in Wise Business (the form in Roster links there too; it's under Your account → Connect and manage apps → API tokens).
- Click Add new token, name it
Roster, and choose Read only. - Confirm with your second factor, then copy the token.
2. Connect it in Roster
- Open Integrations → Tools → Add a tool, search for Wise Business and choose it.
- Paste the API token.
- Environment: Wise, or Wise sandbox to try it with test data first.
- Profile ID: leave it empty to use your business profile. If you have more than one, a hire can list them for you (or find the ID in Wise), and you set the one to use.
- Click Connect. Roster checks the token with Wise, and the connection shows Connected as your business's name. If Wise refuses the token, Roster says so and saves nothing.
3. Give hires access
On the hire's Tools tab, click Give access on Wise Business. Read only and Read and write give the same tools here, because nothing in Wise can be changed through Roster.
Watching Wise
A hire's responsibility can watch Wise: it's woken when something new happens, such as money arriving, with the sender and amount. Checking costs nothing when nothing happened.
Statements outside the US, Canada, Australia, New Zealand, Singapore and Malaysia
Wise asks for an extra security check before it shows a statement, and a token can't do that check for business profiles registered in other countries (including the UAE, the UK and the EU). There, the hire says so and uses your activity instead, which shows what came in and went out. For a full statement, download it from Wise.
If something goes wrong
- "Didn't accept the connection's credential": the token was revoked. Make a new one and paste it on the connection.
- "Several profiles": set the Profile ID on the connection.
- "There's no … balance": that currency isn't open in this profile.
Tools and permissions reference
This reference is built from the same definitions Roster uses to connect Wise Business and give hires access. It updates with each release.
Authentication and requested permissions
The account or app you connect sets the outer limit. Each hire's access can narrow it further. Connecting a tool gives it to no hire until you give access on that hire's Tools tab.
API key or access token
In Wise Business: Settings → API tokens → Add new token, and choose Read only.
When making a key, use these permissions from the connection guide:
- Read only
Connection fields
| Field | What to provide |
|---|---|
API tokentokenRequired · sealed secret | In Wise Business: Settings → API tokens → Add new token, and choose Read only. |
EnvironmentenvironmentOptional | Use the value for your account or connection. Choices: Wise (production); Wise sandbox (test data) (sandbox). Starts with: |
Profile IDprofileOptional | Only if you have more than one business profile. Empty: your business profile (or your personal one if there's no business). |
Per-hire limits
Read-only hires receive only actions that read. Read-and-write access also allows actions that change things, where the connection itself permits them. An empty resource allowlist usually means everything the connected account can reach; each field below explains its meaning.
No additional fields.
Actions
7 actions: 7 only read and 0 change something. A read action may still need approval when your workspace or hire is set to ask. A locked approval requirement always applies.
7 of 7 actions. Open an action for its arguments and full input schema.
list_profilesRead only
The Wise profiles the token can see (personal and business), with their ids.
Approval: Uses your workspace and hire approval settings.
This action takes no arguments.
Full input schema (JSON)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}list_balancesRead only
Money held in Wise, per currency (and in any jars), with what's reserved for pending payments.
Approval: Uses your workspace and hire approval settings.
This action takes no arguments.
Full input schema (JSON)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}statementRead only
A balance's statement for reconciling: money in and out with who sent it and their payment reference, fees and the running balance. Filter by direction, words (a name, an invoice number in the reference) or amount. Default: the last 30 days.
Approval: Uses your workspace and hire approval settings.
| Argument | Type | Details |
|---|---|---|
currencyRequired | string | See input schema below. |
fromOptional | string | default 30 days ago |
toOptional | string | default today |
directionOptional | "any" | "in" | "out" | See input schema below.Default: "any" |
searchOptional | string | words in the sender, description or payment reference |
amountOptional | number | only this exact amount |
limitOptional | integer | See input schema below.Default: 50 |
Full input schema (JSON)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"currency": {
"type": "string",
"pattern": "^[A-Za-z]{3}$"
},
"from": {
"description": "default 30 days ago",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"to": {
"description": "default today",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"direction": {
"default": "any",
"type": "string",
"enum": [
"any",
"in",
"out"
]
},
"search": {
"description": "words in the sender, description or payment reference",
"type": "string"
},
"amount": {
"description": "only this exact amount",
"type": "number",
"exclusiveMinimum": 0
},
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 500
}
},
"required": [
"currency"
]
}list_activityRead only
What happened in Wise, newest first: money received, card payments, transfers, conversions, with their status. Works for every profile, including where statements aren't available.
Approval: Uses your workspace and hire approval settings.
| Argument | Type | Details |
|---|---|---|
sinceOptional | string | on or after, yyyy-mm-dd |
untilOptional | string | on or before, yyyy-mm-dd |
searchOptional | string | words in the title or description |
limitOptional | integer | See input schema below.Default: 30 |
Full input schema (JSON)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"since": {
"description": "on or after, yyyy-mm-dd",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"until": {
"description": "on or before, yyyy-mm-dd",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"search": {
"description": "words in the title or description",
"type": "string"
},
"limit": {
"default": 30,
"type": "integer",
"minimum": 1,
"maximum": 200
}
}
}list_transfersRead only
Transfers sent from Wise, newest first, with their status, amounts, rate and reference.
Approval: Uses your workspace and hire approval settings.
| Argument | Type | Details |
|---|---|---|
statusOptional | string | e.g. outgoing_payment_sent, processing, funds_converted, cancelled, bounced_back |
fromOptional | string | See input schema below. |
toOptional | string | See input schema below. |
limitOptional | integer | See input schema below.Default: 30 |
Full input schema (JSON)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"status": {
"description": "e.g. outgoing_payment_sent, processing, funds_converted, cancelled, bounced_back",
"type": "string"
},
"from": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"default": 30,
"type": "integer",
"minimum": 1,
"maximum": 200
}
}
}get_transferRead only
One transfer by its id: amounts, rate, status and reference.
Approval: Uses your workspace and hire approval settings.
| Argument | Type | Details |
|---|---|---|
transferRequired | string | See input schema below. |
Full input schema (JSON)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"transfer": {
"type": "string",
"pattern": "^\\d+$"
}
},
"required": [
"transfer"
]
}exchange_rateRead only
Wise's current mid-market rate between two currencies, e.g. to put a conversion in front of a person who decides whether to make a transfer.
Approval: Uses your workspace and hire approval settings.
| Argument | Type | Details |
|---|---|---|
sourceRequired | string | See input schema below. |
targetRequired | string | See input schema below. |
Full input schema (JSON)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"source": {
"type": "string",
"pattern": "^[A-Za-z]{3}$"
},
"target": {
"type": "string",
"pattern": "^[A-Za-z]{3}$"
}
},
"required": [
"source",
"target"
]
}Watches and incoming events
- This integration supports a responsibility that watches for changes. The guide above explains what it checks and how to limit it.
- No incoming webhook handler is declared for this integration.
Limits and troubleshooting
- Permission errors: check both the connected account's rights and the hire's resource and read/write limits.
- Expired or revoked access: reconnect or replace the key on the connection.
- Rate limits and unavailable services can interrupt work. The hire's timecard records the outcome.
- The action schema describes accepted inputs. It does not grant additional access or bypass approvals.