Configure spend limits

You can view and set spend limits for both profile and individual cards, a transaction will be rejected if it exceeds any of the limits.

There are two types of profile spend limits. One for ATM withdrawals and the other is a combined limit that applies to Contactless, Magnetic, Online purchase, Chip and PIN/mobile wallet transactions. You are able to customize the daily and monthly spend limits for both types.

Profile spend limits are shared by all the cards created by the same profile. It is not possible to remove the profile limits completely or to set the value beyond the maximum allowed by Wise. To know more, reach out to your implementation manager.

Setting spend limits for an individual card is optional. An individual card limit applies to all transactions including ATM withdrawal. The limit can be set on transaction, daily, monthly or lifetime.

typetext

The type of transaction. One of PURCHASE, ATM_WITHDRAWAL. PURCHASE is a combined limit that applies to Contactless, Magnetic, Online purchase, Chip and PIN/mobile wallet transactions

valuemoney

Daily or monthly limit. The value should be between 0 and the max allowed

usagemoney

The total authorised amount till date

maxmoney

The max allowed limit for daily or monthly

resetAttext

The time when the limit get reset. ISO-8601 timestamp with timezone (Z)

Profile Limits Resource
{
"type": "PURCHASE",
"aggregateWindow": {
"daily": {
"value": {
"amount": 20000.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"max": {
"amount": 30000.00,
"currency": "GBP"
},
"resetAt": "2023-07-31T22:59:59.999999999Z"
},
"monthly": {
"value": {
"amount": 20000.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"max": {
"amount": 30000.00,
"currency": "GBP"
},
"resetAt": "2023-07-31T22:59:59.999999999Z"
}
}
}
valuemoney

Optional transaction, daily, monthly or lifetime limit

usagemoney

The total authorised amount during the specified window. The value is always 0 for transaction limit

resetAttext

The time when the limit gets reset. ISO-8601 timestamp with timezone (Z). A null value is returned for transaction and lifetime limit

Card Limits Resource
{
"transaction": {
"value": {
"amount": 100.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"resetAt": null
},
"daily": {
"value": {
"amount": 2000.00,
"currency": "GBP"
},
"usage": {
"amount": 100.00,
"currency": "GBP"
},
"resetAt": "2023-09-29T22:59:59.999999999Z"
},
"monthly": null,
"lifetime": {
"value": {
"amount": 5000.00,
"currency": "GBP"
},
"usage": {
"amount": 100.00,
"currency": "GBP"
},
"resetAt": null
}
}

GET /v4/spend/profiles/{{profileId}}/spend-limits

Retrieves the spend limits that are configured for a profileId.

Example Request
curl -X GET 'https://api.sandbox.transferwise.tech/v4/spend/profiles/{{profileId}}/spend-limits' \
-H 'Authorization: Bearer <your api token>'

Response

Returns a list of profile limits object

Example Response
{
"spendLimits": [
{
"type": "PURCHASE",
"aggregateWindow": {
"daily": {
"value": {
"amount": 20000.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"max": {
"amount": 30000.00,
"currency": "GBP"
},
"resetAt": "2023-07-31T22:59:59.999999999Z"
},
"monthly": {
"value": {
"amount": 20000.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"max": {
"amount": 30000.00,
"currency": "GBP"
},
"resetAt": "2023-07-31T22:59:59.999999999Z"
}
}
},
{
"type": "ATM_WITHDRAWAL",
"aggregateWindow": {
"daily": {
"value": {
"amount": 1000.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"max": {
"amount": 4000.00,
"currency": "GBP"
},
"resetAt": "2023-07-31T22:59:59.999999999Z"
},
"monthly": {
"value": {
"amount": 1000.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"max": {
"amount": 4000.00,
"currency": "GBP"
},
"resetAt": "2023-07-31T22:59:59.999999999Z"
}
}
}
]
}

PATCH /v4/spend/profiles/{{profileId}}/spend-limits

Update profile daily and monthly spend limits for PURCHASE or ATM_WITHDRAWAL.

typetext

The type of transaction. One of PURCHASE, ATM_WITHDRAWAL

valuemoney

The amount allowed to be spent for the chosen type, both daily and monthly must be set

Example Request
curl -X PATCH https://api.sandbox.transferwise.tech/v4/spend/profiles/{{profileId}}/spend-limits \
-H 'Authorization: Bearer <your api token>' \
-H 'Content-Type: application/json' \
-d '{
"type": "PURCHASE",
"aggregateWindow": {
"daily": {
"value": {
"amount": 20000.00,
"currency": "GBP"
}
},
"monthly": {
"value": {
"amount": 20000.00,
"currency": "GBP"
}
}
}
}'

GET /v4/spend/profiles/{{profileId}}/cards/{{cardToken}}/spend-limits

Retrieves the spend limits that are configured for a card.

Example Request
curl -X GET 'https://api.sandbox.transferwise.tech/v4/spend/profiles/{{profileId}}/cards/{{cardToken}}/spend-limits' \
-H 'Authorization: Bearer <your api token>'

Response

Returns a list of card limits object

Example Response
{
"transaction": {
"value": {
"amount": 100.00,
"currency": "GBP"
},
"usage": {
"amount": 0.00,
"currency": "GBP"
},
"resetAt": null
},
"daily": {
"value": {
"amount": 2000.00,
"currency": "GBP"
},
"usage": {
"amount": 100.00,
"currency": "GBP"
},
"resetAt": "2023-09-29T22:59:59.999999999Z"
},
"monthly": {
"value": {
"amount": 3000.00,
"currency": "GBP"
},
"usage": {
"amount": 100.00,
"currency": "GBP"
},
"resetAt": "2023-09-30T22:59:59.999999999Z"
},
"lifetime": {
"value": {
"amount": 5000.00,
"currency": "GBP"
},
"usage": {
"amount": 100.00,
"currency": "GBP"
},
"resetAt": null
}
}

PATCH /v4/spend/profiles/{{profileId}}/cards/{{cardToken}}/spend-limits

Create or update card transaction, daily, monthly or lifetime spend limits.

valuemoney

The amount allowed to be spent on the card during the specified period

Example Request
curl -X PATCH https://api.sandbox.transferwise.tech/v4/spend/profiles/{{profileId}}/cards/{{cardToken}}/spend-limits \
-H 'Authorization: Bearer <your api token>' \
-H 'Content-Type: application/json' \
-d '{
"daily": {
"value": {
"amount": 1000.00,
"currency": "GBP"
}
},
"monthly": {
"value": {
"amount": 1000.00,
"currency": "GBP"
}
}
}'

DELETE /v4/spend/profiles/{{profileId}}/cards/{{cardToken}}/spend-limits/{{granularity}}

Delete card spend limits. The granularity must be set to transaction, daily, monthly or lifetime.

Example Request
curl -X DELETE https://api.sandbox.transferwise.tech/v4/spend/profiles/{{profileId}}/cards/{{cardToken}}/spend-limits/daily \
-H 'Authorization: Bearer <your api token>'