The details required to create a recipient account vary by currency, type, and receiving entity. To determine which fields are required to successfully create a specific recipient, send a request to this endpoint. The response returns an array of objects that indicate which recipient account types are available for the corridor, as well as the fields and related attributes that apply to the currency and account type.
You can then choose to use Wise’s dynamic forms to gather the required data from your customer, hard-code the requirements into your system, or use a combination of both hard-coded and dynamic forms.
If refreshRequirementsOnChange is true for any item in the response’s fields array, this indicates additional field requirements that are conditional to the specific data key. For example, when address.country is set to US, the address.state field becomes required. To retrieve additional requirements, use the POST operation to requery and retrieve the updated requirements. For the address.country = "US" example, the response returns a list of valid state names.
You can query this endpoint either with or without a quote ID.
With quote ID
GET /quotes/{quoteId}/account-requirements
Recommended when using the quote-first transfer flow. The response returns the requirements for the currency corridor specified in that authenticated quote resource.
Without quote ID
GET /account-requirements?source=EUR&target=USD&sourceAmount=1000
Use this variation if you do not have a quote ID (as in recipient-first transfer flows). In this request, you specify the source currency, target currency, and source amount as query parameters and the response returns the relevant requirements.
The variation without a quote ID is not valid for some currencies, as some payout methods only surface when profile-context is known. For example, at the time of this writing, business payments to Chinese Yuan use a different payout method than what is revealed by GET /account-requirements?source=USD&target=CNY&sourceAmount=1000.
Confirm with your implementation team if certain corridors should not use the recipient-first transfer flow.
All new integrations should use the Accept-Minor-Version header with the value set to 1. This ensures the response includes both the recipient name and email fields, which are required to support currencies such as KRW, JPY and RUB. It also removes the need for manual name validation.
Legal entity type override for the actual sender.
Correspondent partners must include the originatorLegalEntityType query parameter to ensure the correct requirements are returned in the response. This parameter indicates whether the actual sender is PRIVATE or BUSINESS. When not included, the request is assumed to be for a BUSINESS entity, as Wise has no way of knowing if the true sender on a third-party transfer is a business or private individual.
When set to true, the response always returns address as required, even if not required by the specific currency route.
Include this query parameter set to true to force the address requirement regardless of currency.
Address requirement fields are subject to change. Be sure to build your integration in a way that handles unrecognized or changed fields.
Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.
- Production Environmenthttps://api.wise.com/2026Q4/quotes/{quoteId}/account-requirements
- Sandbox Environmenthttps://api.wise-sandbox.com/2026Q4/quotes/{quoteId}/account-requirements
curl -i -X GET \
'https://api.wise.com/2026Q4/quotes/{quoteId}/account-requirements?originatorLegalEntityType=BUSINESS&addressRequired=false' \
-H 'Accept-Minor-Version: 1' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479'Dynamic account requirements for building a recipient form.
Echoed back when X-External-Correlation-Id was included in the request. Learn more.
Requirement group identifier (route/payout-method specific).
[ { "type": "south_korean_paygate", "title": "PayGate", "usageInfo": null, "fields": [ { … }, { … }, { … }, { … }, { … }, { … } ] } ]