User Currencies
It is possible for users (including card assigneesCard Assignee The person that a card is assigned to and who will use the card. For consumers, the card owner and card assignee are the same person. For corporates, the card assignee and card owner are different entities - the corporate is the card owner and the person using the card is the card assignee. Card assignees must be created as Authorised Users.) to view the balance of a debit-mode card or set spend limits in a secondary currency, different from the card's assigned currency, known as the userCurrency.
What is userCurrency?
Consider a UK-based company with employees in Sweden. If the company enables SEK as a userCurrency, it can assign this currency when creating cards for Swedish employees. Card assigneesCard Assignee The person that a card is assigned to and who will use the card. For consumers, the card owner and card assignee are the same person. For corporates, the card assignee and card owner are different entities - the corporate is the card owner and the person using the card is the card assignee. Card assignees must be created as Authorised Users. can view their card balance and spend limits in their designated userCurrency, providing greater flexibility and transparency in managing expenses.
Specifying a userCurrency does not change the underlying card’s issuing currency with our banking partners. The card's statements are still reported in the original card currency. Additionally, once a card is created, its userCurrency cannot be changed.
This feature is not available on prepaid-mode cards.
Enabling the userCurrency Feature
This feature is optional. To enable it, contact your account manager or support team with the following details:
- The name of the application/s you wish to enable the feature for
- The card profile/s (if not all) you wish to enable it on
You can choose to enable all supported currencies or a subset for each card profile. Supported userCurrency values:
JPY, BGN, CZK, DKK, HUF, PLN, RON, SEK, CHF, ISK, NOK, TRY, AUD, BRL, CAD, CNY, HKD, IDR, ILS, INR, KRW, MXN, MYR, NZD, PHP, SGD, THB, ZAR
We support USD, EUR, and GBP as currencies for cards. If you choose USD as the base currency, for example, you can also set EUR and/or GBP as user currencies.
Creating a Card with a userCurrency
To create a new debit-mode card with a userCurrency, use:
Include the optional userCurrency parameter in the request body, selecting a value from the supported list.
If omitted, spend limits default to the card's currency, which also matches the parentManagedAccountId currency, the card's base currency.
The userCurrency setting does not alter the issuing currency or how statements are reported.
Once a card is created, the userCurrency cannot be changed.
Retrieving Available-to-Spend Amount
To retrieve the available-to-spend amount, use:
or
If a userCurrency is assigned, the returned amount is shown in that currency. Otherwise, the amount is shown in the card's base currency.
Setting Spend Limits
To define a spend limit, use:
Provide both the currency and amount in the spendLimit object.
If a userCurrency is assigned, spendLimit.value.currency must match it. Otherwise, it must match the parentManagedAccountId currency.
minTransactionAmount and maxTransactionAmount are always in the parentManagedAccountId currency, regardless of whether a userCurrency is assigned.
The same logic applies when updating spend rules via:
Retrieving the Card Statement
To retrieve a card statement, use:
If the card has a userCurrency assigned, the response includes a userTransactionAmount field with:
userTransactionAmount.currency: the assigned userCurrencyuserTransactionAmount.amount: the transaction amount in userCurrencyuserTransactionAmount.userExchangeRate: the conversion rate used, which is the daily ECB rate.
If userCurrency equals the original transaction currency, no conversion is applied.
Webhooks
Authorisation and settlement webhooks for cards with a userCurrency include:
userTransactionAmount: transaction amount in the userCurrencycurrency: the userCurrencyamount: transaction amount in the userCurrency