# Update a corporate

Update the details of the logged-in corporate identity.

The following Corporate details are verified during due diligence (KYB) and cannot be updated via the API once the Corporate has been verified:
  - Root User Name
  - Root User Surname
  - Root User Email
  - Root User Mobile Country Code
  - Root User Mobile Number
  - Business Address
  - Date of birth

If these details need to be changed after due diligence is completed, please contact Customer Support to restart the Due Diligence process.

Endpoint: PATCH /corporates
Version: v3
Security: auth_token, api-key

## Header parameters:

  - `idempotency-ref` (string)
    A unique call reference generated by the caller that, taking into consideration the payload as well as the operation itself, helps avoid duplicate operations. Idempotency reference uniqueness is maintained for at least 24 hours.

## Request fields (application/json):

  - `tag` (string)
    The tag field is a custom field that can be used to search and filter.

  - `companyBusinessAddress` (object)

  - `companyBusinessAddress.addressLine1` (string, required)
    The first line of the address.

  - `companyBusinessAddress.addressLine2` (string)
    The second line of the address.

  - `companyBusinessAddress.city` (string, required)
    The city of the address.

  - `companyBusinessAddress.postCode` (string, required)
    The post code associated with the address.

  - `companyBusinessAddress.state` (string)
    The state of the address.

  - `companyBusinessAddress.country` (string, required)
    The country of the address expressed in ISO 3166 alpha-2 format.

  - `feeGroup` (string)
    The fee group which the Corporate will be bound to. Do not specify this if you are not using fee groups.

  - `baseCurrency` (string)
    The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

  - `name` (string)
    The first name of the Corporate root user.

  - `surname` (string)
    The last name of the Corporate root user.

  - `email` (string)
    E-mail Address of the user

  - `mobile` (object)

  - `mobile.countryCode` (string, required)
    The country code of the user mobile number (e.g. +44).

  - `mobile.number` (string, required)
    The mobile number of the user - excluding country code.

  - `dateOfBirth` (object)
    Date of birth of the authorised user.

  - `dateOfBirth.year` (integer, required)

  - `dateOfBirth.month` (integer, required)

  - `dateOfBirth.day` (integer, required)

  - `resetMobileCounter` (boolean)

  - `userTag` (string)
    The tag to be assigned to the root user.

  - `locale` (string)
    BCP47 locale code (e.g. en, en-US). The locale determines which email and SMS user notification templates are used.

  - `brand` (string)
    Brand identifier used to determine the set of email and SMS user notification templates. Must be alphanumeric, up to 25 characters, and contain no spaces.

  - `industry` (string)
    The industry of the identity.
    Enum: "ACCOUNTING", "AUDIT", "FINANCE", "PUBLIC_SECTOR_ADMINISTRATION", "ART_ENTERTAINMENT", "AUTO_AVIATION", "BANKING_LENDING", "BUSINESS_CONSULTANCY_LEGAL", "CONSTRUCTION_REPAIR", "EDUCATION_PROFESSIONAL_SERVICES", "INFORMATIONAL_TECHNOLOGIES", "TOBACCO_ALCOHOL", "GAMING_GAMBLING", "MEDICAL_SERVICES", "MANUFACTURING", "PR_MARKETING", "PRECIOUS_GOODS_JEWELRY", "NON_GOVERNMENTAL_ORGANIZATION", "INSURANCE_SECURITY", "RETAIL_WHOLESALE", "TRAVEL_TOURISM", "FREELANCER"

  - `sourceOfFunds` (string)
    The corporate's source of funds.
    Enum: "LABOUR_CONTRACT", "CIVIL_CONTRACT", "RENT", "FUNDS_FROM_OTHER_AUXILIARY_SOURCES", "SALE_OF_MOVABLE_ASSETS", "SALE_OF_REAL_ESTATE", "ORDINARY_BUSINESS_ACTIVITY", "DIVIDENDS", "LOAN_FROM_FINANCIAL_INSTITUTIONS_CREDIT_UNIONS", "LOAN_FROM_THIRD_PARTIES", "SALE_OF_COMPANY_SHARES_BUSINESS", "OTHER", "DONATION", "INHERITANCE", "ORIGIN_OF_FUNDS_UNKNOWN"

  - `sourceOfFundsOther` (string)
    Description of source of funds in case OTHER was chosen.

## Response 200 fields (application/json):

  - `id` (object, required)
    The unique identifier of the Corporate Identity.

  - `id.type` (string, required)
    Indicates the identity type.
    Enum: "CONSUMER", "CORPORATE"

  - `id.id` (string, required)
    The identifier for the identity.

  - `profileId` (string, required)
    The profile Id which a specific identity, instrument or transaction type is linked to.

Profiles contain configuration and determine behavioral aspects of the newly created transaction, for example, fees that may apply.

You can have one or more profiles linked to your application, and these can be used to drive different behaviors according to your product's needs.

Profile Ids can be found in the Multi Portal, in the API Credentials page.

  - `tag` (string)
    The tag field is a custom field that can be used to search and filter.

  - `rootUser` (object, required)
    The root user of the Corporate Identity.

  - `rootUser.id` (object, required)

  - `rootUser.name` (string, required)
    First name of the root user.

  - `rootUser.surname` (string, required)
    Last name of the root user.

  - `rootUser.email` (string, required)
    E-mail Address of the user

  - `rootUser.mobile` (object, required)

  - `rootUser.companyPosition` (string, required)
    The company position of the Corporate Root User.
    Enum: "DIRECTOR", "AUTHORISED_REPRESENTATIVE"

  - `rootUser.active` (boolean, required)
    The state of the root user. If false, then the user will not be able to log in.

  - `rootUser.emailVerified` (boolean, required)
    Indicates if the root user's email has been verified.

  - `rootUser.mobileNumberVerified` (boolean, required)
    Indicates if the root user's mobile number has been verified.

  - `rootUser.dateOfBirth` (object)
    Date of birth of the authorised user.

  - `rootUser.tag` (string)
    The tag field is a custom field that can be used to search and filter.

  - `rootUser.locale` (string)
    BCP47 locale code (e.g. en, en-US). The locale determines which email and SMS user notification templates are used.

  - `rootUser.brand` (string)
    Brand identifier used to determine the set of email and SMS user notification templates. Must be alphanumeric, up to 25 characters, and contain no spaces.

  - `company` (object, required)

  - `company.name` (string, required)
    The registered name of the company.

  - `company.type` (string, required)
    Supported company types - if company type is not listed, please contact our support team to check if the company type can be supported.
    Enum: "SOLE_TRADER", "LLC", "PUBLIC_LIMITED_COMPANY", "LIMITED_LIABILITY_PARTNERSHIP", "NON_PROFIT_ORGANISATION"

  - `company.registrationNumber` (string)
    The company registration number.

  - `company.registeredAddress` (object)
    The legal address of the company. This information is captured via the Due Diligence (KYB) process.

  - `company.registeredAddress.addressLine1` (string, required)

  - `company.registeredAddress.addressLine2` (string)

  - `company.registeredAddress.city` (string, required)

  - `company.registeredAddress.postCode` (string)

  - `company.registeredAddress.state` (string)

  - `company.registeredAddress.country` (string, required)
    Country of the identity in ISO 3166 alpha-2 format.

  - `company.businessAddress` (object)
    The address where the business is based.

  - `company.countryOfRegistration` (string, required)
    The country of company registration in ISO 3166 alpha-2.

  - `company.incorporatedOn` (object)
    The company's date of incorporation

  - `acceptedTerms` (boolean)
    Must be set to true to indicate that the root user has accepted the terms and conditions.

  - `ipAddress` (string, required)
    The IP address of the user doing the registration.

  - `baseCurrency` (string, required)
    The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

  - `feeGroup` (string)
    Fee groups allow the possibility to charge different fees to users under the same profile. If fee groups are not required, ignore this field.

  - `creationTimestamp` (integer, required)
    The time when the Corporate was created, expressed in Epoch timestamp using millisecond precision.

  - `retailQualifier` (string)
    Indicates the type of corporate entity based on its retail status.
    Enum: "RETAIL", "NON_RETAIL", "UNKNOWN"

  - `industry` (string)
    The industry of the identity.
    Enum: "ACCOUNTING", "AUDIT", "FINANCE", "PUBLIC_SECTOR_ADMINISTRATION", "ART_ENTERTAINMENT", "AUTO_AVIATION", "BANKING_LENDING", "BUSINESS_CONSULTANCY_LEGAL", "CONSTRUCTION_REPAIR", "EDUCATION_PROFESSIONAL_SERVICES", "INFORMATIONAL_TECHNOLOGIES", "TOBACCO_ALCOHOL", "GAMING_GAMBLING", "MEDICAL_SERVICES", "MANUFACTURING", "PR_MARKETING", "PRECIOUS_GOODS_JEWELRY", "NON_GOVERNMENTAL_ORGANIZATION", "INSURANCE_SECURITY", "RETAIL_WHOLESALE", "TRAVEL_TOURISM", "FREELANCER"

  - `sourceOfFunds` (string)
    The corporate's source of funds.
    Enum: "LABOUR_CONTRACT", "CIVIL_CONTRACT", "RENT", "FUNDS_FROM_OTHER_AUXILIARY_SOURCES", "SALE_OF_MOVABLE_ASSETS", "SALE_OF_REAL_ESTATE", "ORDINARY_BUSINESS_ACTIVITY", "DIVIDENDS", "LOAN_FROM_FINANCIAL_INSTITUTIONS_CREDIT_UNIONS", "LOAN_FROM_THIRD_PARTIES", "SALE_OF_COMPANY_SHARES_BUSINESS", "OTHER", "DONATION", "INHERITANCE", "ORIGIN_OF_FUNDS_UNKNOWN"

  - `sourceOfFundsOther` (string)
    Description of source of funds in case OTHER was chosen.

## Response 400 fields (application/json):

  - `message` (string)
    When present helps to identify and fix the problem.

  - `syntaxErrors` (object)
    Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.

  - `syntaxErrors.invalidFields` (array)

  - `syntaxErrors.invalidFields.params` (array)

  - `syntaxErrors.invalidFields.fieldName` (string)

  - `syntaxErrors.invalidFields.error` (string)
    Enum: "REQUIRED", "HAS_TEXT", "REQUIRES", "SIZE", "RANGE", "IN", "NOT_IN", "REGEX", "EXACTLY", "AT_LEAST", "AT_MOST", "ALL_OR_NONE"

## Response 403 fields (application/json):

  - `errorCode` (string)
    Enum: "INSUFFICIENT_PERMISSIONS"

## Response 404 fields (application/json):

  - `code` (string)

  - `message` (string)

## Response 409 fields (application/json):

  - `errorCode` (string)
    Enum: "FEE_GROUP_INVALID", "COUNTRY_INVALID", "EMAIL_NOT_UNIQUE", "ROOT_USER_ALREADY_VERIFIED", "COUNTRY_UNSUPPORTED", "MOBILE_OR_COUNTRY_CODE_INVALID", "MOBILE_NO_CHANGE_LIMIT_EXCEEDED", "TOO_FREQUENT_EMAIL_CHANGES", "EMAIL_DOMAIN_NOT_ALLOWED", "MOBILE_CHANGE_NOT_ALLOWED", "UNSUPPORTED_CURRENCY", "TERMINATION_DATE_IN_PAST"


## Response 401 fields

## Response 429 fields

## Response 500 fields

## Response 503 fields
