---
title: "Update a personal CP+"
method: PATCH
path: "/kyc/customer_profiles/:customer_profile_id"
---

# Update a personal CP+

`PATCH /kyc/customer_profiles/:customer_profile_id`

## Headers

- `X-XFERS-APP-API-KEY` string, required
- `X-PUBLIC-KEY-ID` string
- `X-TIMESTAMP` string
- `X-NONCE` string
- `X-SIGNATURE` string

## Request body

- object
  - `customerName` string — Customer's full name (50 alphanumeric with spaces)<br>Regex: `/^(?=.{1,50}$)[a-zA-Z0-9 ]+$/`
  - `customerFirstName` string — Customer's first name (50 SWIFT characters)<br>Regex: `/^(?=.{1,50}$)[a-zA-Z0-9 ]+$/`
  - `customerLastName` string — Customer's last name (50 SWIFT characters)<br>Regex: `/^(?=.{1,50}$)[a-zA-Z0-9 ]+$/`
  - `customerNativeName` string — Must be within 191 characters<br>Regex: `/^\s*.{1,191}\s*$/`
  - `phoneNo` string — Regex: `/^\+?[1-9]\d{0,3}[\s\-]?\(?\d{1,4}\)?[\s\-]?\d{1,4}[\s\-]?\d{1,4}[\s\-]?\d{0,4}$/`
  - `address` object — Customer's residency address
    - `street` string — Regex: `/^(?=.{1,180}$)[a-zA-Z0-9\-?:().,' +]+$/`
    - `city` string — Regex: `/^(?=.{1,20}$)[a-zA-Z0-9\-?:().,' +]+$/`
    - `postalCode` string — Regex: `/^[A-Za-z0-9\- ]{2,20}$/`
    - `state` string — Regex: `/^(?=.{1,15}$)[a-zA-Z0-9\-?:().,' +]+$/`
    - `country` string — Must be an alpha-2 country code. Please refer to the following document for the accepted values: https://www.iban.com/country-codes <br>Regex: `/^[A-Z]{2}$/`
  - `countryOfResidence` string — Customer's country of residence reflected in ID(Country Name or 2/3 digit ISO country code) from https://www.iban.com/country-codes <br>Regex: `/^[A-Z]{2}$/`
  - `dateOfBirth` string — Customer's date of birth (YYYY-MM-DD) <br>Regex: `/^\d{4}-\d{2}-\d{2}$/`
  - `email` string — Customer's email address <br>Regex: `` %r{^[\w!#$%&'*+/=?`{|}~^-]+(?:\.[\w!#$%&'*+/=?`{|}~^-]+)*@(?:[a-z0-9-]+\.)+[a-z]{2,24}$}i ``
  - `gender` string — Customer's gender. Must be either `MALE` or `FEMALE`.
  - `nationality` string — Customer's nationality (Country Name or 2/3 digit ISO country code) from https://www.iban.com/country-codes <br>Regex: `/^\s*.{1,191}\s*$/`
  - `registrationId` string — Must be within 4-35 characters <br>Regex: `%r{\A[a-zA-Z0-9/\-?:().,'+ ]{4,35}\z}`
  - `registrationIdCountry` string — Customer's registration ID country (2 digit ISO country code) from https://www.iban.com/country-codes <br>Regex: `/^[A-Z]{2}$/`
  - `registrationIdType` string — Accepts either `passport` or `identity_card`
  - `registrationIdExpiryDate` string, date — Must be in 'yyyy-MM-dd' format <br>Regex: `/^\d{4}-\d{2}-\d{2}$/`
  - `businessIndustry` string — Please input 1 value only <br>Refer to "Business Industry Accepted Values" code block for the list of accepted values
  - `occupation` string — Please input 1 value only <br>Refer to "Occupation Accepted Values" code block for the list of accepted values
  - `expectedAnnualTransactionAmount` string — Please input 1 value only<br>Accepted values: `0_TO_1000`, `1001_TO_5000`, `5001_TO_10000`, `10001_TO_30000`, `GT_30000`
  - `expectedTransactionSize` string — Please input 1 value only<br>Accepted values: `0_TO_1000`, `1001_TO_5000`, `5001_TO_10000`, `10001_TO_20000`, `GT_20000`
  - `expectedTransactionFrequency` string — Please input 1 value only<br>Accepted values: `AT_LEAST_ONCE_EVERY_2_WEEKS`, `AT_LEAST_ONCE_A_MONTH`, `AT_LEAST_ONCE_EVERY_6_MONTHS`, `AT_LEAST_ONCE_A_YEAR`
  - `annualIncome` string — Please input 1 value only<br>Accepted values: `0_TO_30000`, `30001_TO_50000`, `50001_TO_100000`, `100001_TO_500000`, `GT_500000`
  - `identityDocuments` object
    - `selfie` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `proofOfAddress` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `passport` string — Required if `registrationIdType` is `passport` <br>File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `idFront` string — Required if `registrationIdType` is `identity_card` <br>File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `idBack` string — Required if `registrationIdType` is `identity_card`<br>File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `livenessSnapshot` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `livenessResult` string — `true` or `false` only<br>Regex: `/^(true|false|1|0)$/i`
  - `totalWealth` string — Accepted values: `0_TO_500000`, `500001_TO_2000000`, `2000001_TO_5000000`, `5000001_TO_10000000`, `GT_10000000`
  - `sourceOfWealth` object
    - `businessOwnership` object
      - `document` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `employmentIncome` object
      - `document` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `propertyOwnership` object
      - `document` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `investmentReturns` object
      - `document` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `lotteryWinnings` object
      - `document` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `inheritanceGifts` object
      - `document` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `cashSavings` object
      - `document` string — File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
    - `others` object
      - `details` string — Required if others object is used<br>Must be between 1 and 255 characters<br>Regex: `/^\s*.{1,255}\s*$/`
      - `document` string — Required if others object is used<br>File link(Valid URL), accepts png/jpg/jpeg/pdf.<br>Regex: `%r{^(https?://)?(([0-9]{1,3}(\.[0-9]{1,3}){3,5})|(([-\p{L}_0-9]{1,256}\.)+[-\p{L}_]{2,6}))(:[0-9]+)?([/?].*)?$}i`
  - `ipAddresses` string — Example: ["8.8.8.8"]

## Response `200`

Success

- object
  - `data` object
    - `id` string
    - `type` string
    - `attributes` object
      - `customerName` string
      - `registrationType` string
      - `registrationId` string
      - `countryOfResidence` string
      - `verificationStatus` string
      - `dateOfBirth` string
      - `gender` string
      - `nationality` string
      - `email` string
      - `phoneNo` string
      - `address` object
        - `city` string
        - `state` string
        - `street` string
        - `country` string
        - `postalCode` string
      - `registrationIdCountry` string
      - `registrationIdType` string
      - `registrationIdExpiryDate` string
      - `businessIndustry` string
      - `occupation` string
      - `expectedAnnualTransactionAmount` string
      - `expectedTransactionSize` string
      - `expectedTransactionFrequency` string
      - `annualIncome` string
      - `identityDocuments` object
        - `livenessResult` boolean
      - `totalWealth` string
      - `ipAddresses` string[]
      - `customerNativeName` string
      - `customerFirstName` string
      - `customerLastName` string
      - `createdAt` string
      - `updatedAt` string
      - `riskRating` object
        - `status` string
        - `rejection_reason` string

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.net/straitsx/apis/straitsx-sandbox-base-url.md) · [All operations](https://skmtc.net/straitsx/apis/straitsx-sandbox-base-url/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/straitsx/straitsx-sandbox-base-url/revisions/9ceee2969aeb/schema)
