{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/product/account-setup/sidebars.yaml","api-docs-api-reference/@latest/index.yaml":"api-docs-api-reference/@latest/index.yaml"},"props":{"metadata":{"markdoc":{"tagList":["sub-header","glossary","openapi-code-sample","admonition","tabs","tab","openapi-response-sample"]},"type":"markdown"},"seo":{"title":"Registration code grant flow","siteUrl":"https://docs.wise.com","projectTitle":"Wise Platform","description":"Explains how to programmatically create an account and profiles via API for Correspondent and Enterprise partners."},"dynamicMarkdocComponents":["openapi"],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"registration-code-grant-flow","__idx":0},"children":["Registration code grant flow"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"span","attributes":{"class":"sub-header"},"children":["Securely create an account and profiles via API"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When using the API to create an account and its related profiles, you perform the following basic steps:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Generate a ",{"$$mdtype":"Tag","name":"Glossary","attributes":{"term":"Client credentials token","def":"A token used in OAuth 2.0 authentication flows that allows an application to authenticate itself to the Wise Platform API, perform application-level actions, and obtain user access tokens."},"children":["client credentials token"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create a user account with a registration code."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Retrieve user access tokens with the registration code."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create the business profile."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Add directors and UBOs to the business profile."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Wise reviews the profiles and may request additional verification documents, if necessary."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"step-1-generate-client-credentials-token","__idx":1},"children":["Step 1: Generate client credentials token"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Send a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/oauth-token/oauthtokencreate"},"children":["create OAuth token request"]}," to generate the client credentials token."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Content-Type"]}," must be sent as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["x-www-form-urlencoded"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["grant_type"]}," set to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["client_credentials"]},"."]},{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"oauthTokenCreate","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  -u '<client_id>:<client_secret>' \\\n  https://api.wise.com/2026Q3/oauth/token \\\n  -H 'Content-Type: application/x-www-form-urlencoded' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -d grant_type=client_credentials"},{"lang":"javascript","title":"JavaScript","source":"const formData = {\n  grant_type: 'client_credentials'\n};\n\nconst resp = await fetch(\n  `https://api.wise.com/2026Q3/oauth/token`,\n  {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application/x-www-form-urlencoded',\n      'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n      Authorization: 'Basic ' + btoa('<client_id>:<client_secret>')\n    },\n    body: new URLSearchParams(formData).toString()\n  }\n);\n\nconst data = await resp.text();\nconsole.log(data);"},{"lang":"javascript","title":"Node.js","source":"import fetch from 'node-fetch';\n\nasync function run() {\n  const formData = {\n    grant_type: 'client_credentials'\n  };\n\n  const resp = await fetch(\n    `https://api.wise.com/2026Q3/oauth/token`,\n    {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/x-www-form-urlencoded',\n        'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n        Authorization: 'Basic ' + Buffer.from('<client_id>:<client_secret>').toString('base64')\n      },\n      body: new URLSearchParams(formData).toString()\n    }\n  );\n\n  const data = await resp.text();\n  console.log(data);\n}\n\nrun();"},{"lang":"python","title":"Python","source":"import requests\n\nurl = \"https://api.wise.com/2026Q3/oauth/token\"\n\npayload = {\n  \"grant_type\": \"client_credentials\"\n}\n\nheaders = {\n  \"Content-Type\": \"application/x-www-form-urlencoded\",\n  \"X-External-Correlation-Id\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"\n}\n\nresponse = requests.post(url, data=payload, headers=headers, auth=('<client_id>','<client_secret>'))\n\ndata = response.json()\nprint(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\nimport java.nio.charset.StandardCharsets;\nimport java.util.stream.Collectors;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    HashMap<String, String> params = new HashMap<>();\n    params.put(\"grant_type\", \"client_credentials\");\n\n    var form = params.keySet().stream()\n      .map(key -> key + \"=\" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))\n      .collect(Collectors.joining(\"&\"));\n\n    var host = \"https://api.wise.com\";\n    var pathname = \"/2026Q3/oauth/token\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(form))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"application/x-www-form-urlencoded\")\n      .header(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n      .header(\"Authorization\", \"Basic \" + Base64.getEncoder().encodeToString((\"<client_id>:<client_secret>\").getBytes()))\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\nusing System.Text;\nusing System.Collections.Generic;\nusing System.Net.Http.Headers;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\n      }\n    };\n\n    string base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes(\"<client_id>:<client_secret>\"));\n    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@\"Basic\", base64String);\n\n\n    List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();\n    postData.Add(new KeyValuePair<string, string>(\"grant_type\", \"client_credentials\"));\n\n    using HttpResponseMessage request = await client.PostAsync(\"https://api.wise.com/2026Q3/oauth/token\", new FormUrlEncodedContent(postData));\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\n$curl = curl_init();\n\n$payload = \"grant_type=client_credentials\";\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Content-Type: application/x-www-form-urlencoded\",\n    \"X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n    \"Authorization: Basic \" . base64_encode(\"<client_id>:<client_secret>\")\n  ],\n  CURLOPT_POSTFIELDS => $payload,\n  CURLOPT_URL => \"https://api.wise.com/2026Q3/oauth/token\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"net/url\"\n  \"strconv\"\n  \"strings\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  reqUrl := \"https://api.wise.com/2026Q3/oauth/token\"\n  data := url.Values{}\n  data.Set(\"grant_type\", \"client_credentials\")\n  req, err := http.NewRequest(\"POST\", reqUrl, strings.NewReader(data.Encode()))\n  if err != nil {\n    panic(err)\n  }\n  req.SetBasicAuth(\"<client_id>\", \"<client_secret>\")\n  req.Header.Add(\"Content-Type\", \"application/x-www-form-urlencoded\")\n  req.Header.Add(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n  req.Header.Add(\"Content-Length\", strconv.Itoa(len(data.Encode())))\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"ruby","title":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI('https://api.wise.com/2026Q3/oauth/token')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['Content-Type'] = 'application/x-www-form-urlencoded'\nrequest['X-External-Correlation-Id'] = 'f47ac10b-58cc-4372-a567-0e02b2c3d479'\nrequest.body = URI.encode_www_form({\n  grant_type: 'client_credentials'\n})\nrequest.basic_auth('<client_id>', '<client_secret>')\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"r","title":"R","source":"library(httr)\n\nbody <- list(\n  grant_type = \"client_credentials\"\n)\n\nurl = \"https://api.wise.com/2026Q3/oauth/token\"\n\ndata_req <- POST(\n  url,\n  authenticate(\"<client_id>\", \"<client_secret>\")\n  add_headers(\"Content-Type\" = \"application/x-www-form-urlencoded\", \"X-External-Correlation-Id\" = \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"),\n  body = body,\n  encode = \"form\",\n  verbose()\n)\n\ncontent(data_req)"},{"lang":"clike","title":"Payload application/x-www-form-urlencoded","source":"grant_type=client_credentials"}]},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["access_token"]}," value in the response is your client credentials token, which is valid for ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["12 hours"]},". You’ll use this token in the authorization header of the create user account request, as well as other application-level requests like subscribing to webhooks."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"potential-client-credential-errors","__idx":2},"children":["Potential client credential errors"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Error"},"children":["Error"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause"},"children":["Cause"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Resolution"},"children":["Resolution"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["401"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{\"error\": \"invalid_client\", \"error_description\": \"...\"}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The client ID or secret is incorrect."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Verify your client ID and secret and try again."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"step-2-create-user-with-registration-code","__idx":3},"children":["Step 2: Create user with registration code"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["User accounts serve as the primary entity that holds the profile created in a later step. Send a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/user/usercreate"},"children":["create user with registration code request"]}," to create a new Wise user resource."]},{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"userCreate","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  https://api.wise.com/2026Q3/user/signup/registration_code \\\n  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -d '{\n    \"email\": \"user@email.com\",\n    \"registrationCode\": \"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\",\n    \"language\": \"EN\"\n  }'"},{"lang":"javascript","title":"JavaScript","source":"const resp = await fetch(\n  `https://api.wise.com/2026Q3/user/signup/registration_code`,\n  {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application/json',\n      'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n      Authorization: 'Bearer <YOUR_JWT_HERE>'\n    },\n    body: JSON.stringify({\n      email: 'user@email.com',\n      registrationCode: 'a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr',\n      language: 'EN'\n    })\n  }\n);\n\nconst data = await resp.json();\nconsole.log(data);"},{"lang":"javascript","title":"Node.js","source":"import fetch from 'node-fetch';\n\nasync function run() {\n  const resp = await fetch(\n    `https://api.wise.com/2026Q3/user/signup/registration_code`,\n    {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/json',\n        'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n        Authorization: 'Bearer <YOUR_JWT_HERE>'\n      },\n      body: JSON.stringify({\n        email: 'user@email.com',\n        registrationCode: 'a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr',\n        language: 'EN'\n      })\n    }\n  );\n\n  const data = await resp.json();\n  console.log(data);\n}\n\nrun();"},{"lang":"python","title":"Python","source":"import requests\n\nurl = \"https://api.wise.com/2026Q3/user/signup/registration_code\"\n\npayload = {\n  \"email\": \"user@email.com\",\n  \"registrationCode\": \"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\",\n  \"language\": \"EN\"\n}\n\nheaders = {\n  \"Content-Type\": \"application/json\",\n  \"X-External-Correlation-Id\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n  \"Authorization\": \"Bearer <YOUR_JWT_HERE>\"\n}\n\nresponse = requests.post(url, json=payload, headers=headers)\n\ndata = response.json()\nprint(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    var payload = String.join(\"\\n\"\n      , \"{\"\n      , \" \\\"email\\\": \\\"user@email.com\\\",\"\n      , \" \\\"registrationCode\\\": \\\"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\\\",\"\n      , \" \\\"language\\\": \\\"EN\\\"\"\n      , \"}\"\n    );\n\n    var host = \"https://api.wise.com\";\n    var pathname = \"/2026Q3/user/signup/registration_code\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(payload))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"application/json\")\n      .header(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n      .header(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\nusing System.Text;\nusing System.Text.Json;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\n        {\"Authorization\", \"Bearer <YOUR_JWT_HERE>\"},\n      }\n    };\n\n    string json = JsonSerializer.Serialize(new\n    {\n      email = \"user@email.com\",\n      registrationCode = \"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\",\n      language = \"EN\"\n    });\n\n    using StringContent postData = new(json, Encoding.UTF8, \"application/json\");\n    using HttpResponseMessage request = await client.PostAsync(\"https://api.wise.com/2026Q3/user/signup/registration_code\", postData);\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\n$curl = curl_init();\n\n$payload = array(\n  \"email\" => \"user@email.com\",\n  \"registrationCode\" => \"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\",\n  \"language\" => \"EN\"\n);\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Authorization: Bearer <YOUR_JWT_HERE>\",\n    \"Content-Type: application/json\",\n    \"X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479\"\n  ],\n  CURLOPT_POSTFIELDS => json_encode($payload),\n  CURLOPT_URL => \"https://api.wise.com/2026Q3/user/signup/registration_code\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"bytes\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  reqUrl := \"https://api.wise.com/2026Q3/user/signup/registration_code\"\n  var data = []byte(`{\n    \"email\": \"user@email.com\",\n    \"registrationCode\": \"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\",\n    \"language\": \"EN\"\n  }`)\n  req, err := http.NewRequest(\"POST\", reqUrl, bytes.NewBuffer(data))\n  if err != nil {\n    panic(err)\n  }\n  req.Header.Add(\"Content-Type\", \"application/json\")\n  req.Header.Add(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n  req.Header.Add(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"ruby","title":"Ruby","source":"require 'json'\nrequire 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI('https://api.wise.com/2026Q3/user/signup/registration_code')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['Content-Type'] = 'application/json'\nrequest['X-External-Correlation-Id'] = 'f47ac10b-58cc-4372-a567-0e02b2c3d479'\nrequest['Authorization'] = 'Bearer <YOUR_JWT_HERE>'\nrequest.body = {\n  email: 'user@email.com',\n  registrationCode: 'a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr',\n  language: 'EN'\n}.to_json\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"r","title":"R","source":"library(httr)\n\nbody = '{\n   \"email\": \"user@email.com\",\n   \"registrationCode\": \"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\",\n   \"language\": \"EN\"\n}'\n\nurl = \"https://api.wise.com/2026Q3/user/signup/registration_code\"\n\ndata_req <- POST(\n  url,\n  add_headers(\"Content-Type\" = \"application/json\", \"X-External-Correlation-Id\" = \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"Authorization\" = \"Bearer <YOUR_JWT_HERE>\"),\n  body = body,\n  encode = \"json\",\n  verbose()\n)\n\ncontent(data_req)"},{"lang":"json","title":"Payload application/json","source":"{\n  \"email\": \"user@email.com\",\n  \"registrationCode\": \"a]#Et6(yLW@mq4Ky_+EAjXxpHGq7*&lr\",\n  \"language\": \"EN\"\n}"}]},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required request body fields"]},":"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"width":"25%","data-label":"Field"},"children":["Field "]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The email address of the user (acts as the unique identifier for a user resource).",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"Correspondent partners use the dummy email Wise provides, in the format ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<unique-identifier>@partner.wise.com"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["registrationCode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Generate a secure, random string of ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["at least 32 characters"]},". This code acts as the single point of access for the Wise account. Wise does not have access to this code."]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Keep your registration code secure and encrypted!"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Should the need to generate a new refresh token arise, you ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["must"]}," have the registration code used to create the user resource. Without it, you must contact Wise support to assist with generating a new refresh token, which can result in disruption to your integration."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"potential-user-account-creation-errors","__idx":4},"children":["Potential user account creation errors"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"HTTP status"},"children":["HTTP status"]},{"$$mdtype":"Tag","name":"th","attributes":{"width":"15%","data-label":"Error code"},"children":["Error code "]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause and resolution"},"children":["Cause and resolution"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["NotNull"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["registrationCode"]}," field is missing from the request body. Ensure both fields are provided in every request."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Size"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The registration code is shorter than 32 characters. Generate a registration code that is at least 32 characters long."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["409"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["NOT_UNIQUE"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The email address is already associated with an existing account. Use a different email address, or use the authorisation code flow to access the existing account."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["422"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ERROR"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The email address is poorly formatted. Provide a valid email address."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"step-3-retrieve-user-tokens","__idx":5},"children":["Step 3: Retrieve user tokens"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The user access token allows your application to make requests to the Wise Platform API on behalf of the user you just created, including the next step of creating a profile."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Send a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/oauth-token/oauthtokencreate"},"children":["create OAuth token request"]}," with the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["registration_code"]}," grant type to exchange the registration code for the tokens."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl -i -X POST \\\n  -u <client_id>:<client_secret> \\\n  https://api.wise.com/oauth/token \\\n  -H 'Content-Type: application/x-www-form-urlencoded' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -d grant_type=registration_code \\\n  -d client_id=string \\\n  -d email=user@example.com \\\n  -d registration_code=string\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Required data for this request:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["client_id"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["client_secret"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["grant_type"]}," is always ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["registration_code"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["registration_code"]}," is the same registration code value generated for the create user account request."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["The response includes"]},":"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["access_token"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The user access token, valid for ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["12 hours"]}," by default."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["refresh_token"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A long-lived token, valid for ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["20 years"]}," by default, used to generate new user access tokens."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Store the refresh token securely and ensure it is never visible to a human. Using a vault service is generally ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/developer/auth-and-security#security-best-practices"},"children":["good practice"]}," to ensure token security as well as accessibility throughout your systems."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can now use the user access token to create a business profile."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"potential-registration-code-errors","__idx":6},"children":["Potential registration code errors"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"HTTP status"},"children":["HTTP status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Error"},"children":["Error"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Cause and resolution"},"children":["Cause and resolution"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["401"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["invalid_grant"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"Invalid user credentials.\""]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The registration code is incorrect, or the user has reclaimed the account. Verify the registration code. If the account was reclaimed, contact Wise."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["invalid_request"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"Missing grant type\""]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["grant_type"]}," parameter is missing from the request body. Include ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["grant_type=registration_code"]}," in the request."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"step-4-create-business-profile","__idx":7},"children":["Step 4: Create business profile"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The business profile and its authorised representative are created together in a single request, so there is no need to create a separate personal profile first. Once you create the business profile, you must then add at least one director and ultimate beneficial owner (UBO) to it."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-business-profile-request","__idx":8},"children":["Create business profile request"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Send the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/profile/profilebusinesscreatev3"},"children":["Create business profile request"]}," with the required properties."]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Sample request","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Guidance"]},":"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Use the registered business name when creating the profile."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Provide the authorised signatory's details (name, date of birth, address, and contact details) in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["businessRepresentative"]}," object."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Date of birth and phone number are used for verification only."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["To reuse a representative already created for another business, pass their ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["businessRepresentativeId"]}," instead of the full details."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["You can use the optional ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["X-idempotence-uuid"]}," header (unique per profile creation) to safely handle retries. If omitted and a matching profile already exists, the request returns a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["409"]},"."]}]},{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"profileBusinessCreateV3","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  https://api.wise.com/2026Q3/profiles/business-profile \\\n  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -H 'X-idempotence-uuid: 497f6eca-6276-4993-bfeb-53cbbbba6f08' \\\n  -d '{\n    \"businessName\": \"ABC Logistics Ltd\",\n    \"businessNameInKatakana\": null,\n    \"businessFreeFormDescription\": \"Biz free form desc\",\n    \"registrationNumber\": \"12144939\",\n    \"acn\": null,\n    \"abn\": null,\n    \"arbn\": null,\n    \"companyType\": \"LIMITED\",\n    \"companyRole\": \"OWNER\",\n    \"address\": {\n      \"addressFirstLine\": \"1 A road\",\n      \"city\": \"London\",\n      \"countryIso2Code\": \"gb\",\n      \"countryIso3Code\": \"gbr\",\n      \"postCode\": \"11111\"\n    },\n    \"externalCustomerId\": \"67890-biz-acct\",\n    \"actorEmail\": \"biz-acct@abcl.com\",\n    \"industryCategories\": [\n      \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n      \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n    ],\n    \"operationalAddresses\": [\n      {\n        \"addressFirstLine\": \"1 A road\",\n        \"city\": \"London\",\n        \"countryIso2Code\": \"gb\",\n        \"countryIso3Code\": \"gbr\",\n        \"postCode\": \"11111\"\n      }\n    ],\n    \"webpage\": \"https://abc-logistics.com\",\n    \"businessRepresentative\": {\n      \"firstName\": \"Oliver\",\n      \"lastName\": \"Wilson\",\n      \"preferredName\": \"Olivia\",\n      \"address\": {\n        \"addressFirstLine\": \"50 Sunflower Ave\",\n        \"city\": \"Phoenix\",\n        \"countryIso3Code\": \"usa\",\n        \"postCode\": \"10025\",\n        \"stateCode\": \"AZ\"\n      },\n      \"dateOfBirth\": \"1977-07-01\",\n      \"contactDetails\": {\n        \"email\": \"o.wilson@example.com\",\n        \"phoneNumber\": \"+3725064992\"\n      }\n    }\n  }'"},{"lang":"javascript","title":"JavaScript","source":"const resp = await fetch(\n  `https://api.wise.com/2026Q3/profiles/business-profile`,\n  {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application/json',\n      'X-idempotence-uuid': '497f6eca-6276-4993-bfeb-53cbbbba6f08',\n      'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n      Authorization: 'Bearer <YOUR_JWT_HERE>'\n    },\n    body: JSON.stringify({\n      businessName: 'ABC Logistics Ltd',\n      businessNameInKatakana: null,\n      businessFreeFormDescription: 'Biz free form desc',\n      registrationNumber: '12144939',\n      acn: null,\n      abn: null,\n      arbn: null,\n      companyType: 'LIMITED',\n      companyRole: 'OWNER',\n      address: {\n        addressFirstLine: '1 A road',\n        city: 'London',\n        countryIso2Code: 'gb',\n        countryIso3Code: 'gbr',\n        postCode: '11111'\n      },\n      externalCustomerId: '67890-biz-acct',\n      actorEmail: 'biz-acct@abcl.com',\n      industryCategories: [\n        'SOFTWARE_DEVELOPMENT_PUBLISHING',\n        'IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES'\n      ],\n      operationalAddresses: [\n        {\n          addressFirstLine: '1 A road',\n          city: 'London',\n          countryIso2Code: 'gb',\n          countryIso3Code: 'gbr',\n          postCode: '11111'\n        }\n      ],\n      webpage: 'https://abc-logistics.com',\n      businessRepresentative: {\n        firstName: 'Oliver',\n        lastName: 'Wilson',\n        preferredName: 'Olivia',\n        address: {\n          addressFirstLine: '50 Sunflower Ave',\n          city: 'Phoenix',\n          countryIso3Code: 'usa',\n          postCode: '10025',\n          stateCode: 'AZ'\n        },\n        dateOfBirth: '1977-07-01',\n        contactDetails: {\n          email: 'o.wilson@example.com',\n          phoneNumber: '+3725064992'\n        }\n      }\n    })\n  }\n);\n\nconst data = await resp.json();\nconsole.log(data);"},{"lang":"javascript","title":"Node.js","source":"import fetch from 'node-fetch';\n\nasync function run() {\n  const resp = await fetch(\n    `https://api.wise.com/2026Q3/profiles/business-profile`,\n    {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/json',\n        'X-idempotence-uuid': '497f6eca-6276-4993-bfeb-53cbbbba6f08',\n        'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n        Authorization: 'Bearer <YOUR_JWT_HERE>'\n      },\n      body: JSON.stringify({\n        businessName: 'ABC Logistics Ltd',\n        businessNameInKatakana: null,\n        businessFreeFormDescription: 'Biz free form desc',\n        registrationNumber: '12144939',\n        acn: null,\n        abn: null,\n        arbn: null,\n        companyType: 'LIMITED',\n        companyRole: 'OWNER',\n        address: {\n          addressFirstLine: '1 A road',\n          city: 'London',\n          countryIso2Code: 'gb',\n          countryIso3Code: 'gbr',\n          postCode: '11111'\n        },\n        externalCustomerId: '67890-biz-acct',\n        actorEmail: 'biz-acct@abcl.com',\n        industryCategories: [\n          'SOFTWARE_DEVELOPMENT_PUBLISHING',\n          'IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES'\n        ],\n        operationalAddresses: [\n          {\n            addressFirstLine: '1 A road',\n            city: 'London',\n            countryIso2Code: 'gb',\n            countryIso3Code: 'gbr',\n            postCode: '11111'\n          }\n        ],\n        webpage: 'https://abc-logistics.com',\n        businessRepresentative: {\n          firstName: 'Oliver',\n          lastName: 'Wilson',\n          preferredName: 'Olivia',\n          address: {\n            addressFirstLine: '50 Sunflower Ave',\n            city: 'Phoenix',\n            countryIso3Code: 'usa',\n            postCode: '10025',\n            stateCode: 'AZ'\n          },\n          dateOfBirth: '1977-07-01',\n          contactDetails: {\n            email: 'o.wilson@example.com',\n            phoneNumber: '+3725064992'\n          }\n        }\n      })\n    }\n  );\n\n  const data = await resp.json();\n  console.log(data);\n}\n\nrun();"},{"lang":"python","title":"Python","source":"import requests\n\nurl = \"https://api.wise.com/2026Q3/profiles/business-profile\"\n\npayload = {\n  \"businessName\": \"ABC Logistics Ltd\",\n  \"businessNameInKatakana\": None,\n  \"businessFreeFormDescription\": \"Biz free form desc\",\n  \"registrationNumber\": \"12144939\",\n  \"acn\": None,\n  \"abn\": None,\n  \"arbn\": None,\n  \"companyType\": \"LIMITED\",\n  \"companyRole\": \"OWNER\",\n  \"address\": {\n    \"addressFirstLine\": \"1 A road\",\n    \"city\": \"London\",\n    \"countryIso2Code\": \"gb\",\n    \"countryIso3Code\": \"gbr\",\n    \"postCode\": \"11111\"\n  },\n  \"externalCustomerId\": \"67890-biz-acct\",\n  \"actorEmail\": \"biz-acct@abcl.com\",\n  \"industryCategories\": [\n    \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n    \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n  ],\n  \"operationalAddresses\": [\n    {\n      \"addressFirstLine\": \"1 A road\",\n      \"city\": \"London\",\n      \"countryIso2Code\": \"gb\",\n      \"countryIso3Code\": \"gbr\",\n      \"postCode\": \"11111\"\n    }\n  ],\n  \"webpage\": \"https://abc-logistics.com\",\n  \"businessRepresentative\": {\n    \"firstName\": \"Oliver\",\n    \"lastName\": \"Wilson\",\n    \"preferredName\": \"Olivia\",\n    \"address\": {\n      \"addressFirstLine\": \"50 Sunflower Ave\",\n      \"city\": \"Phoenix\",\n      \"countryIso3Code\": \"usa\",\n      \"postCode\": \"10025\",\n      \"stateCode\": \"AZ\"\n    },\n    \"dateOfBirth\": \"1977-07-01\",\n    \"contactDetails\": {\n      \"email\": \"o.wilson@example.com\",\n      \"phoneNumber\": \"+3725064992\"\n    }\n  }\n}\n\nheaders = {\n  \"Content-Type\": \"application/json\",\n  \"X-idempotence-uuid\": \"497f6eca-6276-4993-bfeb-53cbbbba6f08\",\n  \"X-External-Correlation-Id\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n  \"Authorization\": \"Bearer <YOUR_JWT_HERE>\"\n}\n\nresponse = requests.post(url, json=payload, headers=headers)\n\ndata = response.json()\nprint(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    var payload = String.join(\"\\n\"\n      , \"{\"\n      , \" \\\"businessName\\\": \\\"ABC Logistics Ltd\\\",\"\n      , \" \\\"businessNameInKatakana\\\": null,\"\n      , \" \\\"businessFreeFormDescription\\\": \\\"Biz free form desc\\\",\"\n      , \" \\\"registrationNumber\\\": \\\"12144939\\\",\"\n      , \" \\\"acn\\\": null,\"\n      , \" \\\"abn\\\": null,\"\n      , \" \\\"arbn\\\": null,\"\n      , \" \\\"companyType\\\": \\\"LIMITED\\\",\"\n      , \" \\\"companyRole\\\": \\\"OWNER\\\",\"\n      , \" \\\"address\\\": {\"\n      , \"  \\\"addressFirstLine\\\": \\\"1 A road\\\",\"\n      , \"  \\\"city\\\": \\\"London\\\",\"\n      , \"  \\\"countryIso2Code\\\": \\\"gb\\\",\"\n      , \"  \\\"countryIso3Code\\\": \\\"gbr\\\",\"\n      , \"  \\\"postCode\\\": \\\"11111\\\"\"\n      , \" },\"\n      , \" \\\"externalCustomerId\\\": \\\"67890-biz-acct\\\",\"\n      , \" \\\"actorEmail\\\": \\\"biz-acct@abcl.com\\\",\"\n      , \" \\\"industryCategories\\\": [\"\n      , \"  \\\"SOFTWARE_DEVELOPMENT_PUBLISHING\\\",\"\n      , \"  \\\"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\\\"\"\n      , \" ],\"\n      , \" \\\"operationalAddresses\\\": [\"\n      , \"  {\"\n      , \"   \\\"addressFirstLine\\\": \\\"1 A road\\\",\"\n      , \"   \\\"city\\\": \\\"London\\\",\"\n      , \"   \\\"countryIso2Code\\\": \\\"gb\\\",\"\n      , \"   \\\"countryIso3Code\\\": \\\"gbr\\\",\"\n      , \"   \\\"postCode\\\": \\\"11111\\\"\"\n      , \"  }\"\n      , \" ],\"\n      , \" \\\"webpage\\\": \\\"https://abc-logistics.com\\\",\"\n      , \" \\\"businessRepresentative\\\": {\"\n      , \"  \\\"firstName\\\": \\\"Oliver\\\",\"\n      , \"  \\\"lastName\\\": \\\"Wilson\\\",\"\n      , \"  \\\"preferredName\\\": \\\"Olivia\\\",\"\n      , \"  \\\"address\\\": {\"\n      , \"   \\\"addressFirstLine\\\": \\\"50 Sunflower Ave\\\",\"\n      , \"   \\\"city\\\": \\\"Phoenix\\\",\"\n      , \"   \\\"countryIso3Code\\\": \\\"usa\\\",\"\n      , \"   \\\"postCode\\\": \\\"10025\\\",\"\n      , \"   \\\"stateCode\\\": \\\"AZ\\\"\"\n      , \"  },\"\n      , \"  \\\"dateOfBirth\\\": \\\"1977-07-01\\\",\"\n      , \"  \\\"contactDetails\\\": {\"\n      , \"   \\\"email\\\": \\\"o.wilson@example.com\\\",\"\n      , \"   \\\"phoneNumber\\\": \\\"+3725064992\\\"\"\n      , \"  }\"\n      , \" }\"\n      , \"}\"\n    );\n\n    var host = \"https://api.wise.com\";\n    var pathname = \"/2026Q3/profiles/business-profile\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(payload))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"application/json\")\n      .header(\"X-idempotence-uuid\", \"497f6eca-6276-4993-bfeb-53cbbbba6f08\")\n      .header(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n      .header(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\nusing System.Text;\nusing System.Text.Json;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"X-idempotence-uuid\", \"497f6eca-6276-4993-bfeb-53cbbbba6f08\"},\n        {\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\n        {\"Authorization\", \"Bearer <YOUR_JWT_HERE>\"},\n      }\n    };\n\n    string json = JsonSerializer.Serialize(new\n    {\n      businessName = \"ABC Logistics Ltd\",\n      businessNameInKatakana = \"null\",\n      businessFreeFormDescription = \"Biz free form desc\",\n      registrationNumber = \"12144939\",\n      acn = \"null\",\n      abn = \"null\",\n      arbn = \"null\",\n      companyType = \"LIMITED\",\n      companyRole = \"OWNER\",\n      address = new {\n        addressFirstLine = \"1 A road\",\n        city = \"London\",\n        countryIso2Code = \"gb\",\n        countryIso3Code = \"gbr\",\n        postCode = \"11111\"\n      },\n      externalCustomerId = \"67890-biz-acct\",\n      actorEmail = \"biz-acct@abcl.com\",\n      industryCategories = new[] {\n        \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n        \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n      },\n      operationalAddresses = new[] {\n        new {\n          addressFirstLine = \"1 A road\",\n          city = \"London\",\n          countryIso2Code = \"gb\",\n          countryIso3Code = \"gbr\",\n          postCode = \"11111\"\n        }\n      },\n      webpage = \"https://abc-logistics.com\",\n      businessRepresentative = new {\n        firstName = \"Oliver\",\n        lastName = \"Wilson\",\n        preferredName = \"Olivia\",\n        address = new {\n          addressFirstLine = \"50 Sunflower Ave\",\n          city = \"Phoenix\",\n          countryIso3Code = \"usa\",\n          postCode = \"10025\",\n          stateCode = \"AZ\"\n        },\n        dateOfBirth = \"1977-07-01\",\n        contactDetails = new {\n          email = \"o.wilson@example.com\",\n          phoneNumber = \"+3725064992\"\n        }\n      }\n    });\n\n    using StringContent postData = new(json, Encoding.UTF8, \"application/json\");\n    using HttpResponseMessage request = await client.PostAsync(\"https://api.wise.com/2026Q3/profiles/business-profile\", postData);\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\n$curl = curl_init();\n\n$payload = array(\n  \"businessName\" => \"ABC Logistics Ltd\",\n  \"businessNameInKatakana\" => NULL,\n  \"businessFreeFormDescription\" => \"Biz free form desc\",\n  \"registrationNumber\" => \"12144939\",\n  \"acn\" => NULL,\n  \"abn\" => NULL,\n  \"arbn\" => NULL,\n  \"companyType\" => \"LIMITED\",\n  \"companyRole\" => \"OWNER\",\n  \"address\" => array(\n    \"addressFirstLine\" => \"1 A road\",\n    \"city\" => \"London\",\n    \"countryIso2Code\" => \"gb\",\n    \"countryIso3Code\" => \"gbr\",\n    \"postCode\" => \"11111\"\n  ),\n  \"externalCustomerId\" => \"67890-biz-acct\",\n  \"actorEmail\" => \"biz-acct@abcl.com\",\n  \"industryCategories\" => array(\n    \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n    \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n  ),\n  \"operationalAddresses\" => array(\n    array(\n      \"addressFirstLine\" => \"1 A road\",\n      \"city\" => \"London\",\n      \"countryIso2Code\" => \"gb\",\n      \"countryIso3Code\" => \"gbr\",\n      \"postCode\" => \"11111\"\n    )\n  ),\n  \"webpage\" => \"https://abc-logistics.com\",\n  \"businessRepresentative\" => array(\n    \"firstName\" => \"Oliver\",\n    \"lastName\" => \"Wilson\",\n    \"preferredName\" => \"Olivia\",\n    \"address\" => array(\n      \"addressFirstLine\" => \"50 Sunflower Ave\",\n      \"city\" => \"Phoenix\",\n      \"countryIso3Code\" => \"usa\",\n      \"postCode\" => \"10025\",\n      \"stateCode\" => \"AZ\"\n    ),\n    \"dateOfBirth\" => \"1977-07-01\",\n    \"contactDetails\" => array(\n      \"email\" => \"o.wilson@example.com\",\n      \"phoneNumber\" => \"+3725064992\"\n    )\n  )\n);\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Authorization: Bearer <YOUR_JWT_HERE>\",\n    \"Content-Type: application/json\",\n    \"X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n    \"X-idempotence-uuid: 497f6eca-6276-4993-bfeb-53cbbbba6f08\"\n  ],\n  CURLOPT_POSTFIELDS => json_encode($payload),\n  CURLOPT_URL => \"https://api.wise.com/2026Q3/profiles/business-profile\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"bytes\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  reqUrl := \"https://api.wise.com/2026Q3/profiles/business-profile\"\n  var data = []byte(`{\n    \"businessName\": \"ABC Logistics Ltd\",\n    \"businessNameInKatakana\": null,\n    \"businessFreeFormDescription\": \"Biz free form desc\",\n    \"registrationNumber\": \"12144939\",\n    \"acn\": null,\n    \"abn\": null,\n    \"arbn\": null,\n    \"companyType\": \"LIMITED\",\n    \"companyRole\": \"OWNER\",\n    \"address\": {\n      \"addressFirstLine\": \"1 A road\",\n      \"city\": \"London\",\n      \"countryIso2Code\": \"gb\",\n      \"countryIso3Code\": \"gbr\",\n      \"postCode\": \"11111\"\n    },\n    \"externalCustomerId\": \"67890-biz-acct\",\n    \"actorEmail\": \"biz-acct@abcl.com\",\n    \"industryCategories\": [\n      \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n      \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n    ],\n    \"operationalAddresses\": [\n      {\n        \"addressFirstLine\": \"1 A road\",\n        \"city\": \"London\",\n        \"countryIso2Code\": \"gb\",\n        \"countryIso3Code\": \"gbr\",\n        \"postCode\": \"11111\"\n      }\n    ],\n    \"webpage\": \"https://abc-logistics.com\",\n    \"businessRepresentative\": {\n      \"firstName\": \"Oliver\",\n      \"lastName\": \"Wilson\",\n      \"preferredName\": \"Olivia\",\n      \"address\": {\n        \"addressFirstLine\": \"50 Sunflower Ave\",\n        \"city\": \"Phoenix\",\n        \"countryIso3Code\": \"usa\",\n        \"postCode\": \"10025\",\n        \"stateCode\": \"AZ\"\n      },\n      \"dateOfBirth\": \"1977-07-01\",\n      \"contactDetails\": {\n        \"email\": \"o.wilson@example.com\",\n        \"phoneNumber\": \"+3725064992\"\n      }\n    }\n  }`)\n  req, err := http.NewRequest(\"POST\", reqUrl, bytes.NewBuffer(data))\n  if err != nil {\n    panic(err)\n  }\n  req.Header.Add(\"Content-Type\", \"application/json\")\n  req.Header.Add(\"X-idempotence-uuid\", \"497f6eca-6276-4993-bfeb-53cbbbba6f08\")\n  req.Header.Add(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n  req.Header.Add(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"ruby","title":"Ruby","source":"require 'json'\nrequire 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI('https://api.wise.com/2026Q3/profiles/business-profile')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['Content-Type'] = 'application/json'\nrequest['X-idempotence-uuid'] = '497f6eca-6276-4993-bfeb-53cbbbba6f08'\nrequest['X-External-Correlation-Id'] = 'f47ac10b-58cc-4372-a567-0e02b2c3d479'\nrequest['Authorization'] = 'Bearer <YOUR_JWT_HERE>'\nrequest.body = {\n  businessName: 'ABC Logistics Ltd',\n  businessNameInKatakana: nil,\n  businessFreeFormDescription: 'Biz free form desc',\n  registrationNumber: '12144939',\n  acn: nil,\n  abn: nil,\n  arbn: nil,\n  companyType: 'LIMITED',\n  companyRole: 'OWNER',\n  address: {\n    addressFirstLine: '1 A road',\n    city: 'London',\n    countryIso2Code: 'gb',\n    countryIso3Code: 'gbr',\n    postCode: '11111'\n  },\n  externalCustomerId: '67890-biz-acct',\n  actorEmail: 'biz-acct@abcl.com',\n  industryCategories: [\n    'SOFTWARE_DEVELOPMENT_PUBLISHING',\n    'IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES'\n  ],\n  operationalAddresses: [\n    {\n      addressFirstLine: '1 A road',\n      city: 'London',\n      countryIso2Code: 'gb',\n      countryIso3Code: 'gbr',\n      postCode: '11111'\n    }\n  ],\n  webpage: 'https://abc-logistics.com',\n  businessRepresentative: {\n    firstName: 'Oliver',\n    lastName: 'Wilson',\n    preferredName: 'Olivia',\n    address: {\n      addressFirstLine: '50 Sunflower Ave',\n      city: 'Phoenix',\n      countryIso3Code: 'usa',\n      postCode: '10025',\n      stateCode: 'AZ'\n    },\n    dateOfBirth: '1977-07-01',\n    contactDetails: {\n      email: 'o.wilson@example.com',\n      phoneNumber: '+3725064992'\n    }\n  }\n}.to_json\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"r","title":"R","source":"library(httr)\n\nbody = '{\n   \"businessName\": \"ABC Logistics Ltd\",\n   \"businessNameInKatakana\": null,\n   \"businessFreeFormDescription\": \"Biz free form desc\",\n   \"registrationNumber\": \"12144939\",\n   \"acn\": null,\n   \"abn\": null,\n   \"arbn\": null,\n   \"companyType\": \"LIMITED\",\n   \"companyRole\": \"OWNER\",\n   \"address\": {\n    \"addressFirstLine\": \"1 A road\",\n    \"city\": \"London\",\n    \"countryIso2Code\": \"gb\",\n    \"countryIso3Code\": \"gbr\",\n    \"postCode\": \"11111\"\n   },\n   \"externalCustomerId\": \"67890-biz-acct\",\n   \"actorEmail\": \"biz-acct@abcl.com\",\n   \"industryCategories\": [\n    \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n    \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n   ],\n   \"operationalAddresses\": [\n    {\n     \"addressFirstLine\": \"1 A road\",\n     \"city\": \"London\",\n     \"countryIso2Code\": \"gb\",\n     \"countryIso3Code\": \"gbr\",\n     \"postCode\": \"11111\"\n    }\n   ],\n   \"webpage\": \"https://abc-logistics.com\",\n   \"businessRepresentative\": {\n    \"firstName\": \"Oliver\",\n    \"lastName\": \"Wilson\",\n    \"preferredName\": \"Olivia\",\n    \"address\": {\n     \"addressFirstLine\": \"50 Sunflower Ave\",\n     \"city\": \"Phoenix\",\n     \"countryIso3Code\": \"usa\",\n     \"postCode\": \"10025\",\n     \"stateCode\": \"AZ\"\n    },\n    \"dateOfBirth\": \"1977-07-01\",\n    \"contactDetails\": {\n     \"email\": \"o.wilson@example.com\",\n     \"phoneNumber\": \"+3725064992\"\n    }\n   }\n}'\n\nurl = \"https://api.wise.com/2026Q3/profiles/business-profile\"\n\ndata_req <- POST(\n  url,\n  add_headers(\"Content-Type\" = \"application/json\", \"X-idempotence-uuid\" = \"497f6eca-6276-4993-bfeb-53cbbbba6f08\", \"X-External-Correlation-Id\" = \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"Authorization\" = \"Bearer <YOUR_JWT_HERE>\"),\n  body = body,\n  encode = \"json\",\n  verbose()\n)\n\ncontent(data_req)"},{"lang":"json","title":"Payload application/json","source":"{\n  \"businessName\": \"ABC Logistics Ltd\",\n  \"businessNameInKatakana\": null,\n  \"businessFreeFormDescription\": \"Biz free form desc\",\n  \"registrationNumber\": \"12144939\",\n  \"acn\": null,\n  \"abn\": null,\n  \"arbn\": null,\n  \"companyType\": \"LIMITED\",\n  \"companyRole\": \"OWNER\",\n  \"address\": {\n    \"addressFirstLine\": \"1 A road\",\n    \"city\": \"London\",\n    \"countryIso2Code\": \"gb\",\n    \"countryIso3Code\": \"gbr\",\n    \"postCode\": \"11111\"\n  },\n  \"externalCustomerId\": \"67890-biz-acct\",\n  \"actorEmail\": \"biz-acct@abcl.com\",\n  \"industryCategories\": [\n    \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n    \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n  ],\n  \"operationalAddresses\": [\n    {\n      \"addressFirstLine\": \"1 A road\",\n      \"city\": \"London\",\n      \"countryIso2Code\": \"gb\",\n      \"countryIso3Code\": \"gbr\",\n      \"postCode\": \"11111\"\n    }\n  ],\n  \"webpage\": \"https://abc-logistics.com\",\n  \"businessRepresentative\": {\n    \"firstName\": \"Oliver\",\n    \"lastName\": \"Wilson\",\n    \"preferredName\": \"Olivia\",\n    \"address\": {\n      \"addressFirstLine\": \"50 Sunflower Ave\",\n      \"city\": \"Phoenix\",\n      \"countryIso3Code\": \"usa\",\n      \"postCode\": \"10025\",\n      \"stateCode\": \"AZ\"\n    },\n    \"dateOfBirth\": \"1977-07-01\",\n    \"contactDetails\": {\n      \"email\": \"o.wilson@example.com\",\n      \"phoneNumber\": \"+3725064992\"\n    }\n  }\n}"}]},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Sample response","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," value from the response as the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{profileId}"]}," value in future requests, including transfer activities."]},{"$$mdtype":"Tag","name":"OpenApiResponseSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"profileBusinessCreateV3","responseSamplesResolved":[{"lang":"json","title":"200 application/json","source":"{\n  \"type\": \"BUSINESS\",\n  \"id\": 14599371,\n  \"publicId\": \"f0e9d8c7-b6a5-4321-fedc-ba9876543210\",\n  \"userId\": 9889627,\n  \"address\": {\n    \"id\": 36086782,\n    \"addressFirstLine\": \"24 Willow Creek Lane\",\n    \"city\": \"Bristol\",\n    \"countryIso2Code\": \"GB\",\n    \"countryIso3Code\": \"gbr\",\n    \"postCode\": \"BS1 6AE\",\n    \"stateCode\": null\n  },\n  \"email\": \"info@innovate-solutions.co.uk\",\n  \"createdAt\": \"2024-03-10T09:00:00\",\n  \"updatedAt\": \"2025-06-18T14:22:00\",\n  \"currentState\": \"VISIBLE\",\n  \"contactDetails\": {\n    \"email\": \"contact@innovate-solutions.co.uk\",\n    \"phoneNumber\": \"+441617891234\"\n  },\n  \"businessName\": \"Innovate Solutions Ltd\",\n  \"registrationNumber\": \"SC1234567890ABCD\",\n  \"descriptionOfBusiness\": \"IT_DEVELOPMENT\",\n  \"webpage\": \"https://www.innovate-solutions.co.uk\",\n  \"companyType\": \"LIMITED_COMPANY\",\n  \"companyRole\": \"OWNER\",\n  \"businessFreeFormDescription\": \"We create cutting-edge software for businesses.\",\n  \"firstLevelCategory\": \"CONSULTING_IT_BUSINESS_SERVICES\",\n  \"secondLevelCategory\": \"IT_DEVELOPMENT\",\n  \"industryCategories\": [\n    \"SOFTWARE_DEVELOPMENT_PUBLISHING\",\n    \"IT_CONSULTANCY_TECHNICAL_SUPPORT_SERVICES\"\n  ],\n  \"operationalAddresses\": [\n    {\n      \"id\": 36086782,\n      \"addressFirstLine\": \"24 Willow Creek Lane\",\n      \"city\": \"Bristol\",\n      \"countryIso2Code\": \"GB\",\n      \"countryIso3Code\": \"gbr\",\n      \"postCode\": \"BS1 6AE\",\n      \"stateCode\": null\n    }\n  ],\n  \"fullName\": \"Innovate Solutions Ltd\"\n}"},{"lang":"json","title":"429 application/json","source":"{}"}]},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"add-a-director","__idx":9},"children":["Add a director"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Send a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/profile/profiledirectorcreate"},"children":["Create director request"]}," to add at least one director to the business profile."]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Sample request","disable":false},"children":[{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"profileDirectorCreate","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  'https://api.wise.com/2026Q3/profiles/{profileId}/directors' \\\n  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -d '[\n    {\n      \"firstName\": \"John\",\n      \"lastName\": \"Doe\",\n      \"dateOfBirth\": \"1982-05-20\",\n      \"countryOfResidenceIso3Code\": \"usa\"\n    },\n    {\n      \"firstName\": \"Jane\",\n      \"lastName\": \"Doe\",\n      \"dateOfBirth\": \"1981-12-07\",\n      \"countryOfResidenceIso3Code\": \"usa\"\n    }\n  ]'"},{"lang":"javascript","title":"JavaScript","source":"const profileId = 'YOUR_profileId_PARAMETER';\nconst resp = await fetch(\n  `https://api.wise.com/2026Q3/profiles/${profileId}/directors`,\n  {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application/json',\n      'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n      Authorization: 'Bearer <YOUR_JWT_HERE>'\n    }\n  }\n);\n\nconst data = await resp.json();\nconsole.log(data);"},{"lang":"javascript","title":"Node.js","source":"import fetch from 'node-fetch';\n\nasync function run() {\n  const profileId = 'YOUR_profileId_PARAMETER';\n  const resp = await fetch(\n    `https://api.wise.com/2026Q3/profiles/${profileId}/directors`,\n    {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/json',\n        'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n        Authorization: 'Bearer <YOUR_JWT_HERE>'\n      }\n    }\n  );\n\n  const data = await resp.json();\n  console.log(data);\n}\n\nrun();"},{"lang":"python","title":"Python","source":"import requests\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\nurl = \"https://api.wise.com/2026Q3/profiles/\" + profile_id + \"/directors\"\n\nheaders = {\n  \"Content-Type\": \"application/json\",\n  \"X-External-Correlation-Id\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n  \"Authorization\": \"Bearer <YOUR_JWT_HERE>\"\n}\n\nresponse = requests.post(url, headers=headers)\n\ndata = response.json()\nprint(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    var host = \"https://api.wise.com\";\n    var profileId = \"YOUR_profileId_PARAMETER\";\n    var pathname = \"/2026Q3/profiles/%7BprofileId%7D/directors\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(payload))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"application/json\")\n      .header(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n      .header(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\nusing System.Text;\nusing System.Text.Json;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\n        {\"Authorization\", \"Bearer <YOUR_JWT_HERE>\"},\n      }\n    };\n\n      var ProfileId = \"YOUR_profileId_PARAMETER\";\n    using HttpResponseMessage request = await client.PostAsync(\"https://api.wise.com/2026Q3/profiles/\" + ProfileId + \"/directors\", postData);\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\nconst profileId = \"YOUR_profileId_PARAMETER\";\n$curl = curl_init();\n\n$payload = (object)[];\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Authorization: Bearer <YOUR_JWT_HERE>\",\n    \"Content-Type: application/json\",\n    \"X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479\"\n  ],\n  CURLOPT_POSTFIELDS => json_encode($payload),\n  CURLOPT_URL => \"https://api.wise.com/2026Q3/profiles/\" . profileId . \"/directors\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"bytes\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  profileId := \"YOUR_profileId_PARAMETER\";\n  reqUrl := \"https://api.wise.com/2026Q3/profiles/\" + profileId + \"/directors\"\n  var data = []byte(`[\n    {\n      \"firstName\": \"John\",\n      \"lastName\": \"Doe\",\n      \"dateOfBirth\": \"1982-05-20\",\n      \"countryOfResidenceIso3Code\": \"usa\"\n    },\n    {\n      \"firstName\": \"Jane\",\n      \"lastName\": \"Doe\",\n      \"dateOfBirth\": \"1981-12-07\",\n      \"countryOfResidenceIso3Code\": \"usa\"\n    }\n  ]`)\n  req, err := http.NewRequest(\"POST\", reqUrl, bytes.NewBuffer(data))\n  if err != nil {\n    panic(err)\n  }\n  req.Header.Add(\"Content-Type\", \"application/json\")\n  req.Header.Add(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n  req.Header.Add(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"ruby","title":"Ruby","source":"require 'json'\nrequire 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nprofile_id = 'YOUR_profileId_PARAMETER'\nurl = URI('https://api.wise.com/2026Q3/profiles/' + profile_id + '/directors')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['Content-Type'] = 'application/json'\nrequest['X-External-Correlation-Id'] = 'f47ac10b-58cc-4372-a567-0e02b2c3d479'\nrequest['Authorization'] = 'Bearer <YOUR_JWT_HERE>'\nrequest.body = [\n  {\n    firstName: 'John',\n    lastName: 'Doe',\n    dateOfBirth: '1982-05-20',\n    countryOfResidenceIso3Code: 'usa'\n  },\n  {\n    firstName: 'Jane',\n    lastName: 'Doe',\n    dateOfBirth: '1981-12-07',\n    countryOfResidenceIso3Code: 'usa'\n  }\n].to_json\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"r","title":"R","source":"library(httr)\n\nbody = ''\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\n\n# create you own operator\n\"%&%\" <- function(x, y)paste0(x,y)\n\nurl = \"https://api.wise.com/2026Q3/profiles/\" %&% profile_id %&% \"/directors\"\n\ndata_req <- POST(\n  url,\n  add_headers(\"Content-Type\" = \"application/json\", \"X-External-Correlation-Id\" = \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"Authorization\" = \"Bearer <YOUR_JWT_HERE>\"),\n  body = body,\n  encode = \"json\",\n  verbose()\n)\n\ncontent(data_req)"},{"lang":"json","title":"Payload application/json","source":"[\n  {\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"dateOfBirth\": \"1982-05-20\",\n    \"countryOfResidenceIso3Code\": \"usa\"\n  },\n  {\n    \"firstName\": \"Jane\",\n    \"lastName\": \"Doe\",\n    \"dateOfBirth\": \"1981-12-07\",\n    \"countryOfResidenceIso3Code\": \"usa\"\n  }\n]"}]},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Sample response","disable":false},"children":[{"$$mdtype":"Tag","name":"OpenApiResponseSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"profileDirectorCreate","responseSamplesResolved":[{"lang":"json","title":"200 application/json","source":"[\n  {\n    \"id\": 10,\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"dateOfBirth\": \"1982-05-20\",\n    \"countryOfResidenceIso3Code\": \"usa\"\n  },\n  {\n    \"id\": 11,\n    \"firstName\": \"Jane\",\n    \"lastName\": \"Doe\",\n    \"dateOfBirth\": \"1981-12-07\",\n    \"countryOfResidenceIso3Code\": \"usa\"\n  }\n]"},{"lang":"json","title":"429 application/json","source":"{}"}]},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"add-a-ubo","__idx":10},"children":["Add a UBO"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Send a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/profile/profileubocreate"},"children":["Create UBO request"]}," to add at least one ultimate beneficial owner (UBO) to the business profile."]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Sample request","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All the shareholders that have at least 25% ownership should be submitted via this request. If ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ownershipPercentage"]}," is not required, pass ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," as the value."]},{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"profileUboCreate","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  'https://api.wise.com/2026Q3/profiles/{profileId}/ubos' \\\n  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -d '[\n    {\n      \"name\": \"John Doe\",\n      \"dateOfBirth\": \"1982-05-20\",\n      \"countryOfResidenceIso3Code\": \"usa\",\n      \"addressFirstLine\": \"123 Fake St\",\n      \"postCode\": \"FK 12345\",\n      \"ownershipPercentage\": 30\n    },\n    {\n      \"name\": \"Jane Doe\",\n      \"dateOfBirth\": \"1981-12-07\",\n      \"countryOfResidenceIso3Code\": \"usa\",\n      \"addressFirstLine\": \"125 Fake St\",\n      \"postCode\": \"FK 12545\",\n      \"ownershipPercentage\": 70\n    }\n  ]'"},{"lang":"javascript","title":"JavaScript","source":"const profileId = 'YOUR_profileId_PARAMETER';\nconst resp = await fetch(\n  `https://api.wise.com/2026Q3/profiles/${profileId}/ubos`,\n  {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application/json',\n      'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n      Authorization: 'Bearer <YOUR_JWT_HERE>'\n    }\n  }\n);\n\nconst data = await resp.json();\nconsole.log(data);"},{"lang":"javascript","title":"Node.js","source":"import fetch from 'node-fetch';\n\nasync function run() {\n  const profileId = 'YOUR_profileId_PARAMETER';\n  const resp = await fetch(\n    `https://api.wise.com/2026Q3/profiles/${profileId}/ubos`,\n    {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/json',\n        'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n        Authorization: 'Bearer <YOUR_JWT_HERE>'\n      }\n    }\n  );\n\n  const data = await resp.json();\n  console.log(data);\n}\n\nrun();"},{"lang":"python","title":"Python","source":"import requests\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\nurl = \"https://api.wise.com/2026Q3/profiles/\" + profile_id + \"/ubos\"\n\nheaders = {\n  \"Content-Type\": \"application/json\",\n  \"X-External-Correlation-Id\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n  \"Authorization\": \"Bearer <YOUR_JWT_HERE>\"\n}\n\nresponse = requests.post(url, headers=headers)\n\ndata = response.json()\nprint(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    var host = \"https://api.wise.com\";\n    var profileId = \"YOUR_profileId_PARAMETER\";\n    var pathname = \"/2026Q3/profiles/%7BprofileId%7D/ubos\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(payload))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"application/json\")\n      .header(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n      .header(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\nusing System.Text;\nusing System.Text.Json;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\n        {\"Authorization\", \"Bearer <YOUR_JWT_HERE>\"},\n      }\n    };\n\n      var ProfileId = \"YOUR_profileId_PARAMETER\";\n    using HttpResponseMessage request = await client.PostAsync(\"https://api.wise.com/2026Q3/profiles/\" + ProfileId + \"/ubos\", postData);\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\nconst profileId = \"YOUR_profileId_PARAMETER\";\n$curl = curl_init();\n\n$payload = (object)[];\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Authorization: Bearer <YOUR_JWT_HERE>\",\n    \"Content-Type: application/json\",\n    \"X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479\"\n  ],\n  CURLOPT_POSTFIELDS => json_encode($payload),\n  CURLOPT_URL => \"https://api.wise.com/2026Q3/profiles/\" . profileId . \"/ubos\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"bytes\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  profileId := \"YOUR_profileId_PARAMETER\";\n  reqUrl := \"https://api.wise.com/2026Q3/profiles/\" + profileId + \"/ubos\"\n  var data = []byte(`[\n    {\n      \"name\": \"John Doe\",\n      \"dateOfBirth\": \"1982-05-20\",\n      \"countryOfResidenceIso3Code\": \"usa\",\n      \"addressFirstLine\": \"123 Fake St\",\n      \"postCode\": \"FK 12345\",\n      \"ownershipPercentage\": 30\n    },\n    {\n      \"name\": \"Jane Doe\",\n      \"dateOfBirth\": \"1981-12-07\",\n      \"countryOfResidenceIso3Code\": \"usa\",\n      \"addressFirstLine\": \"125 Fake St\",\n      \"postCode\": \"FK 12545\",\n      \"ownershipPercentage\": 70\n    }\n  ]`)\n  req, err := http.NewRequest(\"POST\", reqUrl, bytes.NewBuffer(data))\n  if err != nil {\n    panic(err)\n  }\n  req.Header.Add(\"Content-Type\", \"application/json\")\n  req.Header.Add(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n  req.Header.Add(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"ruby","title":"Ruby","source":"require 'json'\nrequire 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nprofile_id = 'YOUR_profileId_PARAMETER'\nurl = URI('https://api.wise.com/2026Q3/profiles/' + profile_id + '/ubos')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['Content-Type'] = 'application/json'\nrequest['X-External-Correlation-Id'] = 'f47ac10b-58cc-4372-a567-0e02b2c3d479'\nrequest['Authorization'] = 'Bearer <YOUR_JWT_HERE>'\nrequest.body = [\n  {\n    name: 'John Doe',\n    dateOfBirth: '1982-05-20',\n    countryOfResidenceIso3Code: 'usa',\n    addressFirstLine: '123 Fake St',\n    postCode: 'FK 12345',\n    ownershipPercentage: 30\n  },\n  {\n    name: 'Jane Doe',\n    dateOfBirth: '1981-12-07',\n    countryOfResidenceIso3Code: 'usa',\n    addressFirstLine: '125 Fake St',\n    postCode: 'FK 12545',\n    ownershipPercentage: 70\n  }\n].to_json\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"r","title":"R","source":"library(httr)\n\nbody = ''\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\n\n# create you own operator\n\"%&%\" <- function(x, y)paste0(x,y)\n\nurl = \"https://api.wise.com/2026Q3/profiles/\" %&% profile_id %&% \"/ubos\"\n\ndata_req <- POST(\n  url,\n  add_headers(\"Content-Type\" = \"application/json\", \"X-External-Correlation-Id\" = \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"Authorization\" = \"Bearer <YOUR_JWT_HERE>\"),\n  body = body,\n  encode = \"json\",\n  verbose()\n)\n\ncontent(data_req)"},{"lang":"json","title":"Payload application/json","source":"[\n  {\n    \"name\": \"John Doe\",\n    \"dateOfBirth\": \"1982-05-20\",\n    \"countryOfResidenceIso3Code\": \"usa\",\n    \"addressFirstLine\": \"123 Fake St\",\n    \"postCode\": \"FK 12345\",\n    \"ownershipPercentage\": 30\n  },\n  {\n    \"name\": \"Jane Doe\",\n    \"dateOfBirth\": \"1981-12-07\",\n    \"countryOfResidenceIso3Code\": \"usa\",\n    \"addressFirstLine\": \"125 Fake St\",\n    \"postCode\": \"FK 12545\",\n    \"ownershipPercentage\": 70\n  }\n]"}]},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Sample response","disable":false},"children":[{"$$mdtype":"Tag","name":"OpenApiResponseSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"profileUboCreate","responseSamplesResolved":[{"lang":"json","title":"200 application/json","source":"[\n  {\n    \"id\": \"013ab1c2688d0185b582ee7e0bcb28b2\",\n    \"name\": \"John Doe\",\n    \"dateOfBirth\": \"1982-05-20\",\n    \"countryOfResidenceIso3Code\": \"usa\",\n    \"addressFirstLine\": \"123 Fake St\",\n    \"postCode\": \"FK 12345\",\n    \"ownershipPercentage\": 30\n  },\n  {\n    \"id\": \"912ce3f31c8b3a10572137e78417caa3\",\n    \"name\": \"Jane Doe\",\n    \"dateOfBirth\": \"1981-12-07\",\n    \"countryOfResidenceIso3Code\": \"usa\",\n    \"addressFirstLine\": \"125 Fake St\",\n    \"postCode\": \"FK 12545\",\n    \"ownershipPercentage\": 70\n  }\n]"},{"lang":"json","title":"429 application/json","source":"{}"}]},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"verification-and-activation","__idx":11},"children":["Verification and activation"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Wise reviews the profiles and informs you when the account is fully verified and ready for use."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In some cases, Wise may request additional verification documents for enhanced due diligence (EDD). If additional verification is requested, use the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/verification/verificationuploadevidences"},"children":["upload evidences endpoint"]}," to send the requested data, and use the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/api-reference/verification/verificationuploaddocument"},"children":["upload documentation endpoint"]}," to send related documentation."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Do not use the account until Wise notifies you that verification is complete."]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Evidences example","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Note that the request bodies vary depending on whether the evidence is for a personal or business profile."]},{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"verificationUploadEvidences","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  'https://api.wise.com/2026Q3/profiles/{profileId}/additional-verification/upload-evidences' \\\n  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -d '{\n    \"accountPurpose\": \"MOVING_SAVINGS\",\n    \"intendedCountries\": [\n      \"deu\",\n      \"esp\"\n    ],\n    \"yearlyAnticipatedVolume\": \"0_2350\",\n    \"mainSourceOfIncome\": \"SALARY\",\n    \"annualIncome\": \"0_11500\"\n  }'"},{"lang":"javascript","title":"JavaScript","source":"const profileId = 'YOUR_profileId_PARAMETER';\nconst resp = await fetch(\n  `https://api.wise.com/2026Q3/profiles/${profileId}/additional-verification/upload-evidences`,\n  {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application/json',\n      'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n      Authorization: 'Bearer <YOUR_JWT_HERE>'\n    },\n    body: JSON.stringify({\n      accountPurpose: 'MOVING_SAVINGS',\n      intendedCountries: ['deu', 'esp'],\n      yearlyAnticipatedVolume: '0_2350',\n      mainSourceOfIncome: 'SALARY',\n      annualIncome: '0_11500'\n    })\n  }\n);\n\nconst data = await resp.json();\nconsole.log(data);"},{"lang":"javascript","title":"Node.js","source":"import fetch from 'node-fetch';\n\nasync function run() {\n  const profileId = 'YOUR_profileId_PARAMETER';\n  const resp = await fetch(\n    `https://api.wise.com/2026Q3/profiles/${profileId}/additional-verification/upload-evidences`,\n    {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/json',\n        'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n        Authorization: 'Bearer <YOUR_JWT_HERE>'\n      },\n      body: JSON.stringify({\n        accountPurpose: 'MOVING_SAVINGS',\n        intendedCountries: ['deu', 'esp'],\n        yearlyAnticipatedVolume: '0_2350',\n        mainSourceOfIncome: 'SALARY',\n        annualIncome: '0_11500'\n      })\n    }\n  );\n\n  const data = await resp.json();\n  console.log(data);\n}\n\nrun();"},{"lang":"python","title":"Python","source":"import requests\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\nurl = \"https://api.wise.com/2026Q3/profiles/\" + profile_id + \"/additional-verification/upload-evidences\"\n\npayload = {\n  \"accountPurpose\": \"MOVING_SAVINGS\",\n  \"intendedCountries\": [\n    \"deu\",\n    \"esp\"\n  ],\n  \"yearlyAnticipatedVolume\": \"0_2350\",\n  \"mainSourceOfIncome\": \"SALARY\",\n  \"annualIncome\": \"0_11500\"\n}\n\nheaders = {\n  \"Content-Type\": \"application/json\",\n  \"X-External-Correlation-Id\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n  \"Authorization\": \"Bearer <YOUR_JWT_HERE>\"\n}\n\nresponse = requests.post(url, json=payload, headers=headers)\n\ndata = response.json()\nprint(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    var payload = String.join(\"\\n\"\n      , \"{\"\n      , \" \\\"accountPurpose\\\": \\\"MOVING_SAVINGS\\\",\"\n      , \" \\\"intendedCountries\\\": [\"\n      , \"  \\\"deu\\\",\"\n      , \"  \\\"esp\\\"\"\n      , \" ],\"\n      , \" \\\"yearlyAnticipatedVolume\\\": \\\"0_2350\\\",\"\n      , \" \\\"mainSourceOfIncome\\\": \\\"SALARY\\\",\"\n      , \" \\\"annualIncome\\\": \\\"0_11500\\\"\"\n      , \"}\"\n    );\n\n    var host = \"https://api.wise.com\";\n    var profileId = \"YOUR_profileId_PARAMETER\";\n    var pathname = \"/2026Q3/profiles/%7BprofileId%7D/additional-verification/upload-evidences\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(payload))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"application/json\")\n      .header(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n      .header(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\nusing System.Text;\nusing System.Text.Json;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\n        {\"Authorization\", \"Bearer <YOUR_JWT_HERE>\"},\n      }\n    };\n\n    string json = JsonSerializer.Serialize(new\n    {\n      accountPurpose = \"MOVING_SAVINGS\",\n      intendedCountries = new[] {\n        \"deu\",\n        \"esp\"\n      },\n      yearlyAnticipatedVolume = \"0_2350\",\n      mainSourceOfIncome = \"SALARY\",\n      annualIncome = \"0_11500\"\n    });\n\n    using StringContent postData = new(json, Encoding.UTF8, \"application/json\");\n      var ProfileId = \"YOUR_profileId_PARAMETER\";\n    using HttpResponseMessage request = await client.PostAsync(\"https://api.wise.com/2026Q3/profiles/\" + ProfileId + \"/additional-verification/upload-evidences\", postData);\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\nconst profileId = \"YOUR_profileId_PARAMETER\";\n$curl = curl_init();\n\n$payload = array(\n  \"accountPurpose\" => \"MOVING_SAVINGS\",\n  \"intendedCountries\" => array(\n    \"deu\",\n    \"esp\"\n  ),\n  \"yearlyAnticipatedVolume\" => \"0_2350\",\n  \"mainSourceOfIncome\" => \"SALARY\",\n  \"annualIncome\" => \"0_11500\"\n);\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Authorization: Bearer <YOUR_JWT_HERE>\",\n    \"Content-Type: application/json\",\n    \"X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479\"\n  ],\n  CURLOPT_POSTFIELDS => json_encode($payload),\n  CURLOPT_URL => \"https://api.wise.com/2026Q3/profiles/\" . profileId . \"/additional-verification/upload-evidences\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"bytes\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  profileId := \"YOUR_profileId_PARAMETER\";\n  reqUrl := \"https://api.wise.com/2026Q3/profiles/\" + profileId + \"/additional-verification/upload-evidences\"\n  var data = []byte(`{\n    \"accountPurpose\": \"MOVING_SAVINGS\",\n    \"intendedCountries\": [\n      \"deu\",\n      \"esp\"\n    ],\n    \"yearlyAnticipatedVolume\": \"0_2350\",\n    \"mainSourceOfIncome\": \"SALARY\",\n    \"annualIncome\": \"0_11500\"\n  }`)\n  req, err := http.NewRequest(\"POST\", reqUrl, bytes.NewBuffer(data))\n  if err != nil {\n    panic(err)\n  }\n  req.Header.Add(\"Content-Type\", \"application/json\")\n  req.Header.Add(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n  req.Header.Add(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"ruby","title":"Ruby","source":"require 'json'\nrequire 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nprofile_id = 'YOUR_profileId_PARAMETER'\nurl = URI('https://api.wise.com/2026Q3/profiles/' + profile_id + '/additional-verification/upload-evidences')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['Content-Type'] = 'application/json'\nrequest['X-External-Correlation-Id'] = 'f47ac10b-58cc-4372-a567-0e02b2c3d479'\nrequest['Authorization'] = 'Bearer <YOUR_JWT_HERE>'\nrequest.body = {\n  accountPurpose: 'MOVING_SAVINGS',\n  intendedCountries: ['deu', 'esp'],\n  yearlyAnticipatedVolume: '0_2350',\n  mainSourceOfIncome: 'SALARY',\n  annualIncome: '0_11500'\n}.to_json\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"r","title":"R","source":"library(httr)\n\nbody = '{\n   \"accountPurpose\": \"MOVING_SAVINGS\",\n   \"intendedCountries\": [\n    \"deu\",\n    \"esp\"\n   ],\n   \"yearlyAnticipatedVolume\": \"0_2350\",\n   \"mainSourceOfIncome\": \"SALARY\",\n   \"annualIncome\": \"0_11500\"\n}'\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\n\n# create you own operator\n\"%&%\" <- function(x, y)paste0(x,y)\n\nurl = \"https://api.wise.com/2026Q3/profiles/\" %&% profile_id %&% \"/additional-verification/upload-evidences\"\n\ndata_req <- POST(\n  url,\n  add_headers(\"Content-Type\" = \"application/json\", \"X-External-Correlation-Id\" = \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"Authorization\" = \"Bearer <YOUR_JWT_HERE>\"),\n  body = body,\n  encode = \"json\",\n  verbose()\n)\n\ncontent(data_req)"},{"lang":"json","title":"Payload application/json","source":"{\n  \"accountPurpose\": \"MOVING_SAVINGS\",\n  \"intendedCountries\": [\n    \"deu\",\n    \"esp\"\n  ],\n  \"yearlyAnticipatedVolume\": \"0_2350\",\n  \"mainSourceOfIncome\": \"SALARY\",\n  \"annualIncome\": \"0_11500\"\n}"}]},"children":[]}]},{"$$mdtype":"Tag","name":"TabItemFragment","attributes":{"label":"Documents example","disable":false},"children":[{"$$mdtype":"Tag","name":"OpenApiCodeSample","attributes":{"descriptionFile":"api-docs-api-reference/@latest/index.yaml","operationId":"verificationUploadDocument","parameters":{},"environments":{},"codeSamplesResolved":[{"lang":"shell","title":"curl","source":"curl -i -X POST \\\n  'https://api.wise.com/2026Q3/profiles/{profileId}/verification-status/upload-document' \\\n  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \\\n  -H 'Content-Type: multipart/form-data' \\\n  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \\\n  -F files=@/Users/test/file.png \\\n  -F documentType=SOURCE_OF_WEALTH"},{"lang":"javascript","title":"JavaScript","source":"const form = new FormData();\nform.append(\"files\", \"@/Users/test/file.png\");\nform.append(\"documentType\", \"SOURCE_OF_WEALTH\");\n\nconst profileId = 'YOUR_profileId_PARAMETER';\nconst resp = await fetch(\n  `https://api.wise.com/2026Q3/profiles/${profileId}/verification-status/upload-document`,\n  {\n    method: 'POST',\n    headers: {\n      'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n      Authorization: 'Bearer <YOUR_JWT_HERE>'\n    },\n    body: form\n  }\n);\n\nif (resp.status === 204) {\n  console.log('success');\n} else {\n  const data = await resp.text();\n  console.log(data);\n}"},{"lang":"javascript","title":"Node.js","source":"import FormData from 'form-data';\nimport fetch from 'node-fetch';\n\nasync function run() {\n  const form = new FormData();\n  form.append('files', '@/Users/test/file.png');\n  form.append('documentType', 'SOURCE_OF_WEALTH');\n\n  const profileId = 'YOUR_profileId_PARAMETER';\n  const resp = await fetch(\n    `https://api.wise.com/2026Q3/profiles/${profileId}/verification-status/upload-document`,\n    {\n      method: 'POST',\n      headers: {\n        'X-External-Correlation-Id': 'f47ac10b-58cc-4372-a567-0e02b2c3d479',\n        Authorization: 'Bearer <YOUR_JWT_HERE>'\n      },\n      body: form\n    }\n  );\n\n  if (resp.status === 204) {\n    console.log('success');\n  } else {\n    const data = await resp.text();\n    console.log(data);\n  }\n}\n\nrun();"},{"lang":"python","title":"Python","source":"import requests\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\nurl = \"https://api.wise.com/2026Q3/profiles/\" + profile_id + \"/verification-status/upload-document\"\n\ndata = {\n  \"files\": \"@/Users/test/file.png\",\n  \"documentType\": \"SOURCE_OF_WEALTH\"\n}\n\nheaders = {\n  \"Content-Type\": \"multipart/form-data\",\n  \"X-External-Correlation-Id\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n  \"Authorization\": \"Bearer <YOUR_JWT_HERE>\"\n}\n\nresponse = requests.post(url, data=data, headers=headers)\n\nif response.status_code == 204:\n  print(\"success\")\nelse:\n  data = response.json()\n  print(data)"},{"lang":"java","title":"Java","source":"import java.net.*;\nimport java.net.http.*;\nimport java.util.*;\n\npublic class App {\n  public static void main(String[] args) throws Exception {\n    var httpClient = HttpClient.newBuilder().build();\n\n    var multipartBody = MultipartBodyPublisher.newBuilder();\n    multipartBody.append(\"files\", \"@/Users/test/file.png\");\n    multipartBody.append(\"documentType\", \"SOURCE_OF_WEALTH\");\n    var body = multipartBody.build();\n\n    var host = \"https://api.wise.com\";\n    var profileId = \"YOUR_profileId_PARAMETER\";\n    var pathname = \"/2026Q3/profiles/%7BprofileId%7D/verification-status/upload-document\";\n    var request = HttpRequest.newBuilder()\n      .POST(HttpRequest.BodyPublishers.ofString(payload))\n      .uri(URI.create(host + pathname ))\n      .header(\"Content-Type\", \"multipart/form-data\")\n      .header(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n      .header(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n      .build();\n\n    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());\n\n    System.out.println(response.body());\n  }\n}"},{"lang":"csharp","title":"C#","source":"using System;\nusing System.Net.Http;\nusing System.Threading.Tasks;\n\npublic class Program\n{\n  public static async Task Main()\n  {\n    System.Net.Http.HttpClient client = new()\n    {\n      DefaultRequestHeaders =\n      {\n        {\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\n        {\"Authorization\", \"Bearer <YOUR_JWT_HERE>\"},\n      }\n    };\n\n\n    MultipartFormDataContent postData = new MultipartFormDataContent();\n    postData.Add(new StringContent(\"@/Users/test/file.png\"), \"files\");\n    postData.Add(new StringContent(\"SOURCE_OF_WEALTH\"), \"documentType\");\n      var ProfileId = \"YOUR_profileId_PARAMETER\";\n    using HttpResponseMessage request = await client.PostAsync(\"https://api.wise.com/2026Q3/profiles/\" + ProfileId + \"/verification-status/upload-document\", postData);\n    string response = await request.Content.ReadAsStringAsync();\n\n    Console.WriteLine(response);\n  }\n}"},{"lang":"php","title":"PHP","source":"/**\n * Requires libcurl\n */\n\nconst profileId = \"YOUR_profileId_PARAMETER\";\n$curl = curl_init();\n\n$payload = array(\n  \"files\" => \"@/Users/test/file.png\",\n  \"documentType\" => \"SOURCE_OF_WEALTH\",\n);\n\ncurl_setopt_array($curl, [\n  CURLOPT_HTTPHEADER => [\n    \"Authorization: Bearer <YOUR_JWT_HERE>\",\n    \"Content-Type: multipart/form-data\",\n    \"X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479\"\n  ],\n  CURLOPT_POSTFIELDS => $payload,\n  CURLOPT_URL => \"https://api.wise.com/2026Q3/profiles/\" . profileId . \"/verification-status/upload-document\",\n  CURLOPT_RETURNTRANSFER => true,\n  CURLOPT_CUSTOMREQUEST => \"POST\",\n]);\n\n$response = curl_exec($curl);\n$error = curl_error($curl);\n\ncurl_close($curl);\n\nif ($error) {\n  echo \"cURL Error #:\" . $error;\n} else {\n  echo $response;\n}"},{"lang":"go","title":"Go","source":"package main\n\nimport (\n  \"fmt\"\n  \"mime/multipart\"\n  \"io\"\n  \"bytes\"\n  \"strings\"\n  \"net/http\"\n  \"io/ioutil\"\n)\n\nfunc main() {\n  profileId := \"YOUR_profileId_PARAMETER\";\n  reqUrl := \"https://api.wise.com/2026Q3/profiles/\" + profileId + \"/verification-status/upload-document\"\n  data := &bytes.Buffer{}\n  writer := multipart.NewWriter(data)\n  filesFw, _ := writer.CreateFormField(\"files\")\n  _, err = io.Copy(filesFw, strings.NewReader(\"@/Users/test/file.png\"))\n  if err != nil {\n    panic(err)\n  }\n  documentTypeFw, _ := writer.CreateFormField(\"documentType\")\n  _, err = io.Copy(documentTypeFw, strings.NewReader(\"SOURCE_OF_WEALTH\"))\n  if err != nil {\n    panic(err)\n  }\n  writer.Close()\n\n  payload := bytes.NewReader(data.Bytes())\n  req, err := http.NewRequest(\"POST\", reqUrl, payload)\n  if err != nil {\n    panic(err)\n  }\n  req.Header.Add(\"Content-Type\", writer.FormDataContentType())\n  req.Header.Add(\"X-External-Correlation-Id\", \"f47ac10b-58cc-4372-a567-0e02b2c3d479\")\n  req.Header.Add(\"Authorization\", \"Bearer <YOUR_JWT_HERE>\")\n  res, err := http.DefaultClient.Do(req)\n  if err != nil {\n    panic(err)\n  }\n  defer res.Body.Close()\n  body, err := ioutil.ReadAll(res.Body)\n  if err != nil {\n    panic(err)\n  }\n\n  fmt.Println(res)\n  fmt.Println(string(body))\n}"},{"lang":"ruby","title":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nprofile_id = 'YOUR_profileId_PARAMETER'\nurl = URI('https://api.wise.com/2026Q3/profiles/' + profile_id + '/verification-status/upload-document')\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest['X-External-Correlation-Id'] = 'f47ac10b-58cc-4372-a567-0e02b2c3d479'\nrequest['Authorization'] = 'Bearer <YOUR_JWT_HERE>'\nform_data = [\n  ['files', '@/Users/test/file.png'],\n  ['documentType', 'SOURCE_OF_WEALTH'],\n]\nrequest.set_form(form_data, 'multipart/form-data')\n\nresponse = http.request(request)\nputs response.read_body\n"},{"lang":"r","title":"R","source":"library(httr)\n\nbody <- list(\n  files = \"@/Users/test/file.png\",\n  documentType = \"SOURCE_OF_WEALTH\"\n)\n\nprofile_id = \"YOUR_profileId_PARAMETER\"\n\n# create you own operator\n\"%&%\" <- function(x, y)paste0(x,y)\n\nurl = \"https://api.wise.com/2026Q3/profiles/\" %&% profile_id %&% \"/verification-status/upload-document\"\n\ndata_req <- POST(\n  url,\n  add_headers(\"Content-Type\" = \"multipart/form-data\", \"X-External-Correlation-Id\" = \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"Authorization\" = \"Bearer <YOUR_JWT_HERE>\"),\n  body = body,\n  encode = \"multipart\",\n  verbose()\n)\n\ncontent(data_req)"},{"lang":"clike","title":"Payload multipart/form-data","source":"{\n  \"files\": \"@/Users/test/file.png\",\n  \"documentType\": \"SOURCE_OF_WEALTH\"\n}"}]},"children":[]}]}]}]},"headings":[{"value":"Registration code grant flow","id":"registration-code-grant-flow","depth":1},{"value":"Step 1: Generate client credentials token","id":"step-1-generate-client-credentials-token","depth":2},{"value":"Potential client credential errors","id":"potential-client-credential-errors","depth":3},{"value":"Step 2: Create user with registration code","id":"step-2-create-user-with-registration-code","depth":2},{"value":"Potential user account creation errors","id":"potential-user-account-creation-errors","depth":3},{"value":"Step 3: Retrieve user tokens","id":"step-3-retrieve-user-tokens","depth":2},{"value":"Potential registration code errors","id":"potential-registration-code-errors","depth":3},{"value":"Step 4: Create business profile","id":"step-4-create-business-profile","depth":2},{"value":"Create business profile request","id":"create-business-profile-request","depth":3},{"value":"Add a director","id":"add-a-director","depth":3},{"value":"Add a UBO","id":"add-a-ubo","depth":3},{"value":"Verification and activation","id":"verification-and-activation","depth":2}],"frontmatter":{"seo":{"description":"Explains how to programmatically create an account and profiles via API for Correspondent and Enterprise partners.","title":"Registration code grant flow"},"markdown":{"toc":{"depth":2}}},"lastModified":"2026-09-23T14:49:17.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/product/account-setup/reg-grant-flow","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}