Bank Account Details
Bank account details ID
Currency code (ISO 4217 Alphabetic Code)
Currency name
Account title
Account subtitle
AVAILABLE
: Account details do not exist for the user but may be createdACTIVE
: Account details are ready to be used by this user
Important! When the value is true
, Wise issued another account details for the same currency. The users should not use the deprecated account anymore, but they still need to be informed as they might have external references pointing to the old one.
This array will contain the available receive options for the given currency.
LOCAL
: local bank details to receive money in the account currencyINTERNATIONAL
: Swift bank details to receive money internationally in the account currency.
It returns all the details that need to be displayed to users to make transfers to this account. This array will vary from currency to currency as each one has its requirements. For example, EUR will return ACCOUNT_HOLDER
, SWIFT_CODE
, IBAN
and ADDRESS
, whereas GBP
will return ACCOUNT_HOLDER
, BANK_CODE
, ACCOUNT_NUMBER
, IBAN
and ADDRESS
.
Each element in this array will contain the following attributes:
type
: String informing the account detail typetitle
: Label to display in the UIbody
: Value to display in the UIdescription
: When present, it has the content to show a tooltip/popup hinthidden
: If the field should be displayed or not in the UI
Features enabled on the account
{"id": 14000001,"currency": {"code": "EUR","name": "Euro"},"title": "Your EUR account details","subtitle": "IBAN, SWIFT/BIC","status": "ACTIVE","deprecated": false,"receiveOptions": [],"bankFeatures": [{"key": "LOCAL_RECEIVE","title": "Receive locally","supported": true},{"key": "SWIFT","title": "Receive internationally (Swift)","supported": true},{"key": "DIRECT_DEBITS","title": "Set up Direct Debits","supported": true},{"key": "PLATFORM_RECEIVE","title": "Receive from PayPal and Stripe","supported": true}]}
GET /v1/profiles/{{profileId}}/account-details
This endpoint returns a list with all the AVAILABLE
and ACTIVE
account details for the given profile, including examples. Account receive options can also include local and international details to receive money on the currency balance.
Example bank account details are returned for any currency where bank account details have not been requested and issued. Examples will always include an id
of null
.
Response
Returns a list of bank account details objects.
curl -X GET https://api.sandbox.transferwise.tech/v1/profiles/{{profileId}}/account-details \-H 'Authorization: Bearer <your api token>'
POST /v1/profiles/{{profileId}}/account-details-orders
Creates an order which will issue account details. It should use the same currency as the balance previously created. Fulfilling all the requirements will complete the order. That means reaching status DONE
.
The possible values for a requirement are:
PENDING_USER
: The requirement has some pending action from the user.PENDING_TW
: The requirement has some pending action from Wise.DONE
: The requirement is completed
The more common requirements are:
VERIFICATION
: The user needs to be fully verified before complete this requirement.TOP_UP
: A fee will be charged and must be paid using through wise.com before complete this requirement.
balance currency (ISO 4217 Alphabetic Code)
Status (PENDING_USER
, PENDING_TW
, DONE
)
currency (ISO 4217 Alphabetic Code)
Requirement type (VERIFICATION
, TOP_UP
)
Requirement status (PENDING_USER
, PENDING_TW
, DONE
)
curl -X POST https://api.sandbox.transferwise.tech/v1/profiles/{{profileId}}/account-details-orders \-H 'Authorization: Bearer <your api token>' \-H 'Content-Type: application/json' \-d '{"currency": "EUR"}'
{"status": "PENDING_USER","currency": "EUR","requirements": [{"type": "VERIFICATION","status": "PENDING_USER"}]}
POST /v3/profiles/{{profileId}}/bank-details
Creates and assigns a pair of local account details and international account details (where available) that are linked to the target balance specified in the request.
ID of the currency balance to create account details on
Account detail ID
Account detail currency (ISO 4217 Alphabetic Code)
Status of the account detail
Name of the bank
Address of the bank
Sort code of the bank
Bank account number
Type of account detail
Name of the bank
Address of the bank
Bank SWIFT code
IBAN
Type of account detail
curl -X POST https://api.sandbox.transferwise.tech/v3/profiles/{{profileId}}/bank-details \-H 'Authorization: Bearer <your api token>' \-H 'Content-Type: application/json' \-d '{"targetAccountId": "123456"}'
{"id": "2","currency": "GBP","active": true,"localDetails": {"bankName": "Wise","bankAddress": "TEA BUILDING, FLOOR 6, SHOREDITCH HIGH STREET","sortCode": "231370","accountNumber": "00000001","type": "UK_ACCOUNT"},"internationalDetails": { // optional, only if SWIFT payments are supported for that currency"bankName": "Wise","bankAddress": "TEA BUILDING, FLOOR 6, SHOREDITCH HIGH STREET","swiftCode": "TRWIGB22XXX","iban": "GB123450000000001","type": "IBAN"}}
GET /v1/profiles/{{profileId}}/account-details-orders
This endpoint returns the bank account assignment requests for a profile and multi-currency account.
curl -X GET https://api.sandbox.transferwise.tech/v1/profiles/{{profileId}}/account-details-orders \-H 'Authorization: Bearer <your api token>'
[{"status": "PENDING_USER","currency": "EUR","requirements": [{"type": "TOP_UP","status": "PENDING_USER",},{"type": "VERIFICATION","status": "PENDING_USER",}]},...]
POST /v1/profiles/{{profileId}}/account-details/payments/{{paymentId}}/returns
Creates a return for a payment received to bank account details.
When you create a return, you must provide the ID of the payment you wish to return as well as the ID of the profile that received the payment. In addition, you can provide a reason
for the return in the request body. When returning Swift payments, reason
is a required field.
Reason for the return. Only required to return Swift payments.
Reason(INCORRECT_ACCOUNT_NUMBER
, CLOSED_ACCOUNT
, BLOCKED_ACCOUNT
, CANCELLATION_REQUEST
, REGULATORY
, CUSTOMER_REQUEST
)
optional
ID of the return created.
required
curl -X POST https://api.sandbox.transferwise.tech/v1/profiles/{{profileId}}/account-details/payments/{{paymentId}}/returns \-H 'Authorization: Bearer <your api token>' \-H 'Content-Type: application/json' \-d '{"reason": "CLOSED_ACCOUNT"}'
{"id": "4cc39f2b-3513-453d-8792-9ccc22e513c3"}
{"errors": ["code": "error.payment.not-found","message": "No payment found with id [123456789] for profile id [987654321]","arguments": [987654321,123456789,null]]}
{"errors": ["code": "error.payment-return.invalid","message": "A valid reason is required to return a Swift payment","arguments": [987654321,123456789,null]]}