Global Currencies is a Wise product that allows customers to send currencies to countries other than the one they are domestic to. For example, sending US dollars to a person or business in Hong Kong, rather than the USA.
It is quite common, especially for businesses, to operate in USD, GBP or EUR despite being based outside of the respective country of these currencies. In some countries, these bank accounts do not use the standard account details that a domestic account would, for example an account number and sort code in UK. Instead, these accounts are more likely to be addressed using an IBAN.
The Wise Platform API supports this product in version two of the quotes API. The key difference this API provides against version one is the ability to update a quote with a recipient before a transfer is created, using the Quote Update endpoint. If you set the ID of a recipient that represents an account of, for example, a USD recipient with an IBAN (i.e. an account with
"type": "swift_code") then the returned quote will be updated to represent we will not be sending these funds domestically in the USA and as such charge different fees.
Global currency warning message
In addition, if you offer this product, you must be sure to display a message to customers that there are potentially additional extra fees for this type of transfer. For example:
There are three cases you need to cover where we will use the SWIFT network and the message needs to be displayed:
- A USD recipient of type
- A GBP recipient of type
ibanwhere the IBAN does not start with
- A EUR recipient of type
swift_codewhere the IBAN does not start with one of the SEPA country codes (i.e. the transfer is to a non-SEPA country).
Example: Creating a global currency USD currency transfer
The process is as follows:
Create a Quote for the currencies you wish to send between, e.g. GBP to USD. If using Swift, ensure to set payOut to
SWIFT_OURwhich will give the best estimate on the fees changed for the transfer.
Based on the requirements set out in the Recipient Account resource, create a recipient using the create account endpoint.
Update the Quote created in step 1 with the ID of the recipient created in step two. Ensure to set the payOut field to
SWIFT_OURas this will ensure the recipient will receive complete target amount.
You will now see the
payOutfield of the quote to have updated to be of type
SWIFT_OUR, and the
paymentOptionsarray to have all options updated to also have a
SWIFT_OURand different fees. The
payOutfield informs you which
paymentOptionto select, in this case you should show the user the fees to pay using the option that has a pay out of
SWIFT_OURdepending on who will bear the transaction charges. With
SWIFT_OURyou can ensure that the recipient will receive the complete target amount. You should use the
payInoption that has previously been agreed upon, by default this is
BANK_TRANSFERunless you are using a prefunded or bulk settlement model.