> ## Documentation Index
> Fetch the complete documentation index at: https://docs.byzantine.fi/llms.txt
> Use this file to discover all available pages before exploring further.

# Update an individual account's user details

> It is possible to call this endpoint as many times as necessary to submit additional information/documents to complete the account.
Only the `accountId` is required.



## OpenAPI

````yaml /api-reference/openapi-integrator.json patch /v1/submit/update-individual-account
openapi: 3.0.3
info:
  title: Byzantine Integrator API
  description: Byzantine REST API for integrators.
  license:
    name: ''
  version: 0.2.0
servers:
  - url: https://sandbox.api.byzantine.fi
    description: Sandbox
security: []
tags:
  - name: API health
    description: Check API status.
  - name: Customer management
    description: Endpoints to create, update, and retrieve customer information.
  - name: Account management
    description: Endpoints to manage accounts, bank accounts, invitations, and user roles.
  - name: Products
    description: Endpoints to get data about products and vaults.
  - name: Transactions
    description: Endpoints to create and manage transactions.
  - name: OTP authentication
    description: Endpoints to initialize and manage user authentication with OTP.
  - name: Webhooks
    description: Integrator-managed outbound webhook subscriptions and delivery history.
paths:
  /v1/submit/update-individual-account:
    patch:
      tags:
        - Customer management
      summary: Update an individual account's user details
      description: >-
        It is possible to call this endpoint as many times as necessary to
        submit additional information/documents to complete the account.

        Only the `accountId` is required.
      operationId: update_individual_account
      parameters:
        - name: X-Pubkey
          in: header
          description: >-
            Integrator's ECDSA public key (P-256 curve, compressed SEC1 format).
            Example:
            0x038fedef7c12f93bbf342ad8943b7a825a3b41f61c9dc118b2c718efebabbf62fd
          required: true
          schema:
            type: string
        - name: X-Timestamp
          in: header
          description: >-
            Unix timestamp in seconds (UTC). Must be within tolerance window (1
            minute) to prevent replay attacks. Example: 1760375826
          required: true
          schema:
            type: string
        - name: X-Signature
          in: header
          description: >-
            ECDSA signature (DER-encoded, hex with 0x prefix). Signs the
            message: {timestamp}{METHOD}{path_and_query}{json_body}. Example:
            0x3045022100...
          required: true
          schema:
            type: string
      requestBody:
        description: Update individual account details
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateIndividualAccountRequest'
        required: true
      responses:
        '200':
          description: Individual account updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateIndividualAccountResponse'
        '400':
          description: Invalid request payload
        '404':
          description: Account not found
        '500':
          description: Internal server error
      security:
        - integrator_auth: []
components:
  schemas:
    UpdateIndividualAccountRequest:
      type: object
      description: >-
        Request body for updating an individual account's user details.

        Only the provided fields will be updated. Mirrors
        `CreateIndividualAccountRequest` structure.
      required:
        - accountId
      properties:
        accountId:
          $ref: '#/components/schemas/Uuid'
        userInfo:
          allOf:
            - $ref: '#/components/schemas/UpdateUserInfo'
          nullable: true
        additionalUserInfo:
          allOf:
            - $ref: '#/components/schemas/AdditionalUserInfo'
          nullable: true
        verificationDocuments:
          type: array
          items:
            $ref: '#/components/schemas/UserVerificationDocument'
          nullable: true
    UpdateIndividualAccountResponse:
      type: object
      description: Response body for updating an individual account
      required:
        - userId
        - accountId
        - verificationStatus
      properties:
        userId:
          $ref: '#/components/schemas/Uuid'
        accountId:
          $ref: '#/components/schemas/Uuid'
        verificationStatus:
          $ref: '#/components/schemas/VerificationStatus'
        userInfo:
          allOf:
            - $ref: '#/components/schemas/UpdateUserInfo'
          nullable: true
        additionalUserInfo:
          allOf:
            - $ref: '#/components/schemas/AdditionalUserInfo'
          nullable: true
        verificationDocuments:
          type: array
          items:
            $ref: '#/components/schemas/VerificationDocumentResponse'
          nullable: true
        missingDocuments:
          type: array
          items:
            type: string
          description: >-
            List of missing required verification steps. Present only if not all
            required documents have been submitted.
          nullable: true
    Uuid:
      type: string
      format: uuid
      description: A UUID string
      example: 550e8400-e29b-41d4-a716-446655440000
    UpdateUserInfo:
      type: object
      description: >-
        Personal information about the user for update. All fields are optional
        — only provided fields are updated.

        Same as `UserInfo` but without `email` (email cannot be changed).
      properties:
        firstName:
          type: string
          description: First name of the user.
          example: John
          nullable: true
        middleName:
          type: string
          description: Middle name of the user.
          example: William
          nullable: true
        lastName:
          type: string
          description: Last name of the user.
          example: Smith
          nullable: true
        phone:
          type: string
          description: Phone number of the user.
          example: +33 123 456 789
          nullable: true
        birthDate:
          type: string
          description: User's date of birth.
          example: '1990-01-01'
          nullable: true
        nationality:
          allOf:
            - $ref: '#/components/schemas/CountryCode'
          nullable: true
        residentialAddress:
          allOf:
            - $ref: '#/components/schemas/Address'
          nullable: true
        socialSecurityNumber:
          type: string
          description: >-
            Required exclusively for USA-based users. Must be the full social
            security number.
          example: 123-45-6789
          nullable: true
        profilePictureUrl:
          type: string
          description: URL of the user's profile picture (can be an avatar)
          nullable: true
        countryOfBirth:
          allOf:
            - $ref: '#/components/schemas/CountryCode'
          nullable: true
    AdditionalUserInfo:
      type: object
      description: >-
        Additional user information for KYC. All fields are required when
        provided.
      required:
        - employmentStatus
        - expectedMonthlyPaymentsUsd
        - sourceOfFunds
        - mostRecentOccupation
      properties:
        employmentStatus:
          $ref: '#/components/schemas/EmploymentStatus'
        expectedMonthlyPaymentsUsd:
          $ref: '#/components/schemas/ExpectedMonthlyPayments'
        sourceOfFunds:
          $ref: '#/components/schemas/UserSourceOfFunds'
        mostRecentOccupation:
          type: string
          description: >-
            Must be a valid six-digit occupation code. See the full list of
            [occupation
            codes](https://docs.byzantine.fi/api-reference/lists/occupation-codes).
          example: '151252'
          maxLength: 6
          minLength: 6
    UserVerificationDocument:
      type: object
      description: Document(s) to verify the identity of the user.
      required:
        - documentType
        - issuingCountry
        - document
      properties:
        documentType:
          $ref: '#/components/schemas/UserDocumentType'
        documentNumber:
          type: string
          description: >-
            Required for identity documents (passport, national ID). Must be the
            full document number.
          example: FR1234567890
          nullable: true
        description:
          type: string
          description: Required if document type is 'other'.
          example: Additional supporting document
          nullable: true
        issuingCountry:
          $ref: '#/components/schemas/CountryCode'
        document:
          type: string
          format: data:[MIME];base64,[base64-encoded-data]
          description: >-
            The document to be uploaded.


            Supported MIME types: image/jpeg, image/png, image/heic, image/tiff,
            application/pdf
          example: data:image/png;base64,iVBORw0lFTkSuQmCC...
    VerificationStatus:
      type: string
      description: The identity verification status of the user.
      enum:
        - not_started
        - init
        - under_review
        - awaiting_associated_person_information
        - awaiting_information
        - resubmission_requested
        - active
        - rejected
        - inactive
      example: active
    VerificationDocumentResponse:
      type: object
      description: Response body for verification documents.
      required:
        - documentType
        - issuingCountry
        - documentId
      properties:
        documentType:
          $ref: '#/components/schemas/DocumentType'
        documentNumber:
          type: string
          description: The full document number sent with the document.
          example: FR1234567890
          nullable: true
        description:
          type: string
          example: Additional supporting document
          nullable: true
        issuingCountry:
          type: string
          description: >-
            The ISO 3166-1 (three-character) country code of the relevant
            country. See the full list of
            [countries](https://docs.byzantine.fi/api-reference/lists/countries).
          example: FRA
        documentId:
          type: string
          description: Unique identifier assigned to the document.
          example: 830c219c-d197-451d-b879-77936a80c452
        warnings:
          type: array
          items:
            type: string
          nullable: true
        errors:
          type: array
          items:
            type: string
          nullable: true
    CountryCode:
      type: string
      description: >-
        The ISO 3166-1 (three-character) country code of the relevant country.
        See the full list of
        [countries](https://docs.byzantine.fi/api-reference/lists/countries).
      enum:
        - ABW
        - AFG
        - AGO
        - ALB
        - AND
        - ARG
        - ARM
        - AUS
        - AUT
        - AZE
        - BEL
        - BGD
        - BGR
        - BHR
        - BHS
        - BIH
        - BLZ
        - BMU
        - BOL
        - BRA
        - BRB
        - BWA
        - CAN
        - CHL
        - CHN
        - CIV
        - CMR
        - COL
        - COM
        - CRI
        - CUW
        - CXR
        - CYM
        - CYP
        - CZE
        - DEU
        - DMA
        - DNK
        - DOM
        - DZA
        - ECU
        - EGY
        - ESP
        - EST
        - ETH
        - FIN
        - FJI
        - FRA
        - GBR
        - GEO
        - GHA
        - GIB
        - GRC
        - GTM
        - HKG
        - HND
        - HRV
        - HTI
        - HUN
        - IDN
        - IMN
        - IND
        - IRL
        - IRQ
        - ISL
        - ISR
        - ITA
        - JAM
        - JOR
        - JPN
        - KAZ
        - KEN
        - KGZ
        - KHM
        - KNA
        - KOR
        - KWT
        - LAO
        - LBN
        - LBR
        - LCA
        - LKA
        - LTU
        - LUX
        - LVA
        - MAR
        - MCO
        - MDA
        - MDG
        - MEX
        - MHL
        - MKD
        - MLT
        - MNE
        - MOZ
        - MRT
        - MUS
        - MWI
        - MYS
        - NAM
        - NGA
        - NIC
        - NLD
        - NOR
        - NPL
        - NZL
        - OMN
        - PAN
        - PER
        - PHL
        - PAK
        - POL
        - PRT
        - QAT
        - ROU
        - RUS
        - SAU
        - SEN
        - SGP
        - SVK
        - SVN
        - ZAF
        - SWE
        - CHE
        - THA
        - TUN
        - TUR
        - UGA
        - UKR
        - ARE
        - USA
        - URY
        - UZB
        - VEN
        - VNM
        - YEM
        - ZMB
        - ZWE
        - SMR
      example: FRA
    Address:
      type: object
      description: Address information. Must be a valid address in the relevant country.
      required:
        - streetLine1
        - city
        - postalCode
        - country
      properties:
        streetLine1:
          type: string
          example: 33 Rue La Fayette
        streetLine2:
          type: string
          description: Optional additional details to the street name and number.
          example: WeWork
          nullable: true
        city:
          type: string
          example: Paris
        state:
          type: string
          description: >-
            Required for US addresses. Should be a valid ISO 3166-2 subdivision
            code.
          example: IDF
          nullable: true
        postalCode:
          type: string
          description: Postal code.
          example: '75009'
        country:
          $ref: '#/components/schemas/CountryCode'
    EmploymentStatus:
      type: string
      description: Employment status of a user. Required for high risk users.
      enum:
        - employed
        - homemaker
        - retired
        - self_employed
        - student
        - unemployed
      example: employed
    ExpectedMonthlyPayments:
      type: string
      description: Expected monthly payments in USD. Required for high risk users.
      enum:
        - '0_4999'
        - '5000_9999'
        - '10000_49999'
        - 50000_plus
      example: '5000_9999'
    UserSourceOfFunds:
      type: string
      description: Source of funds for users. Required for high risk users.
      enum:
        - company_funds
        - ecommerce_reseller
        - gambling_proceeds
        - gifts
        - government_benefits
        - inheritance
        - investments_loans
        - pension_retirement
        - salary
        - sale_of_assets_real_estate
        - savings
        - someone_elses_funds
      example: salary
    UserDocumentType:
      type: string
      description: >-
        Type of the document. See the full list of [accepted
        documents](https://docs.byzantine.fi/api-reference/documents).
      enum:
        - passport
        - national_id_front
        - national_id_back
        - proof_of_address
        - other
    DocumentType:
      oneOf:
        - $ref: '#/components/schemas/UserDocumentType'
        - $ref: '#/components/schemas/EntityDocumentType'
      description: Type of verification document.
    EntityDocumentType:
      type: string
      description: >-
        Entity document type. For a full list of accepted document types, see
        [accepted documents](https://docs.byzantine.fi/api-reference/documents).
      enum:
        - directors_registry
        - good_standing_cert
        - incorporation_articles
        - incorporation_cert
        - incumbency_cert
        - information_statement
        - partnership_agreement
        - power_of_attorney
        - proof_of_address
        - shareholder_registry
        - source_of_funds
        - state_registry
        - trust_agreement
        - other
      example: incorporation_cert
  securitySchemes:
    integrator_auth:
      type: apiKey
      in: header
      name: X-Pubkey, X-Timestamp, X-Signature

````