Skip to content

Additional Verification

In certain situations, additional evidence is required to verify customers and ensure we’re compliant with the KYC regulations.

Additional Verification APIs support a list of evidences that can be found in the Supported Evidences guide.

If you use the Customer Account with Partner KYC model and your customers are primarily based in the EU, refer to this Onboarding EU customers guide for instructions on how to use these APIs.

Upload Evidences

Request

Uploads verification evidence for a specific profile.

The request body varies significantly between Personal and Business profiles.

Submitting an evidence that was already uploaded will result in an attempt to update the evidence.

Security
UserToken
Path
profileIdinteger, (int64)required

The unique identifier of the profile.

Headers
X-External-Correlation-Idstring, (uuid), <= 36 characters

Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Example:f47ac10b-58cc-4372-a567-0e02b2c3d479
Bodyapplication/jsonrequired
One of:

Payload for Personal profile verification.

accountPurposestring

The primary reason for using the account.

Enum:"MOVING_SAVINGS""SENDING_MONEY_TO_FRIENDS_OR_FAMILY""GENERAL_LIVING_EXPENSES""BUYING_GOODS_OR_SERVICES_ABROAD""PAYING_FOR_MORTGAGE_OR_LOAN""PAYING_BILLS""RECEIVING_SALARY_OR_PENSION""INVESTING"
Example:"MOVING_SAVINGS"
accountPurposeExplanationstring

Additional reasons and specific examples for using Wise account. This is a free-text field.

intendedCountriesArray of strings

List of ISO 3166-1 alpha-3 country codes.
Check the lists of countries you can send money to with Wise.

Example:
[ "deu", "esp" ]
yearlyAnticipatedVolumestring

Expected yearly transaction volume in Euros.

Enum:"0_2350""2351_6000""6001_11500""11501_60000""60001_175000""175001_+"
Example:"0_2350"
mainSourceOfIncomestring

Primary source of income. Must be submitted with annualIncome.

Enum:"SALARY""INVESTMENTS""PENSION""INHERITANCE""LOAN""OTHER"
Example:"SALARY"
annualIncomestring

Expected annual income in Euros. Must be submitted with mainSourceOfIncome.

Enum:"0_11500""11501_19000""19001_28500""28501_47500""47501_75000""75001_+"
Example:"0_11500"
incomeExplanationstring

Additional ways you earn money that were not identified in the provided documents. This is a free-text field.

curl -i -X POST \
  'https://api.wise.com/v5/profiles/{profileId}/additional-verification/upload-evidences' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
  -d '{
    "accountPurpose": "MOVING_SAVINGS",
    "intendedCountries": [
      "deu",
      "esp"
    ],
    "yearlyAnticipatedVolume": "0_2350",
    "mainSourceOfIncome": "SALARY",
    "annualIncome": "0_11500"
  }'

Responses

Multi-Status - Evidence(s) successfully uploaded, fully or partially.

Headers
X-External-Correlation-Idstring, (uuid), <= 36 characters

Echoed back when X-External-Correlation-Id was included in the request. Learn more.

Example:"f47ac10b-58cc-4372-a567-0e02b2c3d479"
x-trace-idstring

Unique trace identifier assigned by Wise. Useful when contacting support about a specific request.

Example:"fba501b6d453b96789f52338f019341f"
Bodyapplication/json
overallStatusstring

Status of the entire request.

Enum:"SUCCESS""PARTIAL_SUCCESS""FAIL"
resultsArray of objects

Results for each evidence.

Response
{ "overallStatus": "SUCCESS", "results": [ { "evidenceRequirementKey": "accountPurpose", "result": "SUCCESS", "message": "SUCCESS" }, { "evidenceRequirementKey": "annualIncome", "result": "SUCCESS", "message": "SUCCESS" }, { "evidenceRequirementKey": "intendedCountries", "result": "SUCCESS", "message": "SUCCESS" }, { "evidenceRequirementKey": "mainSourceOfIncome", "result": "SUCCESS", "message": "SUCCESS" }, { "evidenceRequirementKey": "yearlyAnticipatedVolume", "result": "SUCCESS", "message": "SUCCESS" } ] }