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

# Create SubAccount

> This endpoint allows you to create sub-accounts under one of the following supported business lines:

- `ACQUIRING`
- `BANKING`
- `ISSUING`

Each sub-account must be classified as either a `COMPANY` or an `INDIVIDUAL` entity.

Once the sub-account is created, it must pass review and be activated before it can be used.

For sub-accounts of type `COMPANY`, additional documents are typically required to complete onboarding. Please use the [Get Additional Documents](/account-center/v1.6/api-reference/get-additional-documents) endpoint to retrieve the list of required and optional documents for your scenario.




## OpenAPI

````yaml /account-center/v1.6/connect.yaml post /v1/accounts/create_accounts
openapi: 3.0.2
info:
  version: 0.0.1
  title: Connect
  description: These APIs are designed for management of connected accounts.
servers:
  - url: https://api-sandbox.uqpaytech.com/api
    description: Sandbox base URL.
  - url: https://api.uqpay.com/api
    description: Production base URL.
security: []
tags:
  - name: Account Center
    description: >-
      Create and manage sub-accounts under supported business lines (Acquiring,
      Banking, Issuing).
  - name: Accounts
    description: >-
      With Connect, you can create UQPAY accounts for your users. To do this,
      you'll first need to register your platform.
  - name: Request for Information (RFI)
    description: >-
      Retrieve and answer Requests for Information (RFI) raised against your
      account during onboarding or ongoing review.
paths:
  /v1/accounts/create_accounts:
    post:
      tags:
        - Account Center
      summary: Create SubAccount
      description: >
        This endpoint allows you to create sub-accounts under one of the
        following supported business lines:


        - `ACQUIRING`

        - `BANKING`

        - `ISSUING`


        Each sub-account must be classified as either a `COMPANY` or an
        `INDIVIDUAL` entity.


        Once the sub-account is created, it must pass review and be activated
        before it can be used.


        For sub-accounts of type `COMPANY`, additional documents are typically
        required to complete onboarding. Please use the [Get Additional
        Documents](/account-center/v1.6/api-reference/get-additional-documents)
        endpoint to retrieve the list of required and optional documents for
        your scenario.
      operationId: create-sub-account
      requestBody:
        description: Select one of the following entity type.
        content:
          application/json:
            schema:
              type: object
              discriminator:
                propertyName: entity_type
                mapping:
                  INDIVIDUAL:
                    $ref: '#/components/schemas/ACCOUNTCENTER_INDIVIDUAL'
                  COMPANY:
                    $ref: '#/components/schemas/ACCOUNTCENTER_COMPANY'
              properties:
                entity_type:
                  type: string
              oneOf:
                - $ref: '#/components/schemas/ACCOUNTCENTER_INDIVIDUAL'
                  title: Individual Account
                - $ref: '#/components/schemas/ACCOUNTCENTER_COMPANY'
                  title: Company Account
      responses:
        '200':
          headers:
            x-response-id:
              $ref: '#/components/headers/XResponseId'
          description: Account creation successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountCreateResponse'
                title: AccountCreateResponse
      security:
        - XAuthToken: []
components:
  schemas:
    ACCOUNTCENTER_INDIVIDUAL:
      type: object
      description: Information about the individual applying for the account.
      required:
        - entity_type
        - nickname
      properties:
        entity_type:
          $ref: '#/components/schemas/ACCOUNTCENTER_EntityType'
        nickname:
          $ref: '#/components/schemas/ACCOUNTCENTER_Nickname'
        individual_info:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualInfo'
        identity_verification:
          $ref: '#/components/schemas/ACCOUNTCENTER_IdentityVerification'
        expected_activity:
          $ref: '#/components/schemas/ACCOUNTCENTER_ExpectedActivity'
        proof_documents:
          $ref: '#/components/schemas/ACCOUNTCENTER_ProofDocuments'
        tos_acceptance:
          $ref: '#/components/schemas/ACCOUNTCENTER_TosAcceptance'
    ACCOUNTCENTER_COMPANY:
      type: object
      description: Information about the company applying for the account.
      required:
        - entity_type
        - nickname
        - inherit
      properties:
        entity_type:
          $ref: '#/components/schemas/ACCOUNTCENTER_EntityType'
        inherit:
          $ref: '#/components/schemas/ACCOUNTCENTER_Inherit'
        nickname:
          $ref: '#/components/schemas/ACCOUNTCENTER_Nickname'
        company_info:
          $ref: '#/components/schemas/ACCOUNTCENTER_CompanyInfo'
        company_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_CompanyAddress'
        ownership_details:
          $ref: '#/components/schemas/ACCOUNTCENTER_OwnershipDetails'
        business_details:
          $ref: '#/components/schemas/ACCOUNTCENTER_BusinessDetails'
        additional_documents:
          $ref: '#/components/schemas/ACCOUNTCENTER_AdditionalDocuments'
        tos_acceptance:
          $ref: '#/components/schemas/ACCOUNTCENTER_TosAcceptance'
    AccountCreateResponse:
      type: object
      required:
        - account_id
        - short_reference_id
        - status
        - verification_status
      properties:
        account_id:
          $ref: '#/components/schemas/AccountId'
        short_reference_id:
          type: string
          example: P220406-LLCVLRM
          description: The short reference ID of the account.
        status:
          $ref: '#/components/schemas/AccountStatus'
        verification_status:
          $ref: '#/components/schemas/VerificationStatus'
    ACCOUNTCENTER_EntityType:
      type: string
      description: |
        The type of entity for the account.
      enum:
        - COMPANY
        - INDIVIDUAL
      example: COMPANY
    ACCOUNTCENTER_Nickname:
      type: string
      description: Nickname for the account.
      example: MyTechCorp
      maxLength: 100
    ACCOUNTCENTER_IndividualInfo:
      type: object
      description: >
        Personal information for individual account registration.


        - Required when `entity_type` is `INDIVIDUAL`.

        - `gender` and `annual_income` are required for individual SubAccounts
        created on or after 2026-07-02.
      properties:
        first_name_english:
          $ref: '#/components/schemas/ACCOUNTCENTER_FirstNameEnglish'
        last_name_english:
          $ref: '#/components/schemas/ACCOUNTCENTER_LastNameEnglish'
        name_in_other_language:
          $ref: '#/components/schemas/ACCOUNTCENTER_NameInOtherLanguage'
        nationality:
          $ref: '#/components/schemas/ACCOUNTCENTER_Nationality'
        tax_number:
          $ref: '#/components/schemas/ACCOUNTCENTER_TaxNumber'
        phone_number:
          $ref: '#/components/schemas/ACCOUNTCENTER_PhoneNumber'
        email_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_EmailAddress'
        date_of_birth:
          $ref: '#/components/schemas/ACCOUNTCENTER_DateOfBirth'
        gender:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualGender'
        country_or_territory:
          $ref: '#/components/schemas/ACCOUNTCENTER_CountryOrTerritory'
        street_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_StreetAddress'
        apartment_suite_or_floor:
          $ref: '#/components/schemas/ACCOUNTCENTER_ApartmentSuiteOrFloor'
        city:
          $ref: '#/components/schemas/ACCOUNTCENTER_City'
        state:
          $ref: '#/components/schemas/ACCOUNTCENTER_State'
        postal_code:
          $ref: '#/components/schemas/ACCOUNTCENTER_PostalCode'
        employment_status:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualEmploymentStatus'
        industry:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualIndustry'
        job_title:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualJobTitle'
        company_name:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualCompanyName'
        annual_income:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualAnnualIncome'
      required:
        - first_name_english
        - last_name_english
        - nationality
        - phone_number
        - email_address
        - date_of_birth
        - country_or_territory
        - street_address
        - city
        - state
        - postal_code
        - employment_status
        - industry
        - job_title
        - company_name
        - gender
        - annual_income
    ACCOUNTCENTER_IdentityVerification:
      type: object
      description: |
        Identity verification information for individuals.

        - Required when `entity_type` is `INDIVIDUAL`.
      properties:
        identification_type:
          $ref: '#/components/schemas/ACCOUNTCENTER_IdentificationType'
        identification_value:
          $ref: '#/components/schemas/ACCOUNTCENTER_IdentificationValue'
        identity_docs:
          $ref: '#/components/schemas/ACCOUNTCENTER_IdentityDocs'
        face_docs:
          $ref: '#/components/schemas/ACCOUNTCENTER_FaceDocs'
      required:
        - identification_type
        - identification_value
        - identity_docs
    ACCOUNTCENTER_ExpectedActivity:
      type: object
      description: |
        - Required when `entity_type` is `INDIVIDUAL`.
      required:
        - account_purpose
        - banking_countries
        - banking_currencies
        - internationally
        - turnover_monthly
        - turnover_monthly_currency
      properties:
        account_purpose:
          $ref: '#/components/schemas/ACCOUNTCENTER_IndividualAccountPurposeArray'
        other_purpose:
          $ref: '#/components/schemas/ACCOUNTCENTER_OtherPurpose'
        banking_countries:
          $ref: '#/components/schemas/ACCOUNTCENTER_BankingCountries'
        banking_currencies:
          $ref: '#/components/schemas/ACCOUNTCENTER_BankingCurrencies'
        internationally:
          $ref: '#/components/schemas/ACCOUNTCENTER_Internationally'
        turnover_monthly:
          $ref: '#/components/schemas/ACCOUNTCENTER_TurnoverMonthly'
        turnover_monthly_currency:
          $ref: '#/components/schemas/ACCOUNTCENTER_TurnoverMonthlyCurrency'
    ACCOUNTCENTER_ProofDocuments:
      type: object
      description: |
        - Required when `entity_type` is `INDIVIDUAL`.
      properties:
        proof_of_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_ProofOfAddress'
        source_of_funds:
          $ref: '#/components/schemas/ACCOUNTCENTER_SourceOfFunds'
          description: >
            File reference. Supports base64-encoded content or a file ID issued
            by UQPAY.


            - Required when the sub-account needs to apply for a Virtual Account
            (VA).
        proof_of_position_and_income:
          $ref: '#/components/schemas/ACCOUNTCENTER_ProofOfPositionAndIncome'
        other_proof:
          description: Optional supporting document not covered by other fields.
          type: array
          items:
            $ref: '#/components/schemas/ACCOUNTCENTER_OtherProof'
    ACCOUNTCENTER_TosAcceptance:
      type: object
      description: >-
        Details on the account's acceptance of the UQPAY Services Agreement This
        property can only be updated for Custom accounts.
      required:
        - ip
        - date
        - user_agent
      properties:
        ip:
          $ref: '#/components/schemas/ACCOUNTCENTER_TosIp'
        date:
          $ref: '#/components/schemas/ACCOUNTCENTER_TosDate'
        user_agent:
          $ref: '#/components/schemas/ACCOUNTCENTER_TosUserAgent'
        tos_agreement:
          $ref: '#/components/schemas/ACCOUNTCENTER_TosAgreement'
    ACCOUNTCENTER_Inherit:
      type: integer
      description: >
        Indicates whether the sub-account inherits information from the master
        account.  

        - `1`: Inherits information from the master account.  

        - `-1`: Does not inherit from the master account.  


        Leave empty if `entity_type` is `INDIVIDUAL`.
      enum:
        - 1
        - -1
      example: 1
    ACCOUNTCENTER_CompanyInfo:
      type: object
      description: |
        Merchant company information.

        - Leave empty if `inherit` is `1`.
      properties:
        legal_business_name:
          $ref: '#/components/schemas/ACCOUNTCENTER_LegalBusinessName'
        legal_business_name_english:
          $ref: '#/components/schemas/ACCOUNTCENTER_LegalBusinessNameEnglish'
        country_of_incorporation:
          $ref: '#/components/schemas/ACCOUNTCENTER_CountryOfIncorporation'
        company_type:
          $ref: '#/components/schemas/ACCOUNTCENTER_CompanyType'
        phone_number:
          $ref: '#/components/schemas/ACCOUNTCENTER_PhoneNumber'
        email_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_EmailAddress'
        company_registration_number:
          $ref: '#/components/schemas/ACCOUNTCENTER_CompanyRegistrationNumber'
        tax_type:
          $ref: '#/components/schemas/ACCOUNTCENTER_TaxType'
        tax_number:
          $ref: '#/components/schemas/ACCOUNTCENTER_TaxNumber'
        incorparate_date:
          $ref: '#/components/schemas/ACCOUNTCENTER_IncorporateDate'
        certification_of_incorporation:
          $ref: '#/components/schemas/ACCOUNTCENTER_CertificationOfIncorporation'
      required:
        - legal_business_name
        - legal_business_name_english
        - country_of_incorporation
        - company_type
        - phone_number
        - email_address
        - company_registration_number
        - incorparate_date
        - certification_of_incorporation
    ACCOUNTCENTER_CompanyAddress:
      type: object
      description: |
        Your company's legal address.

        - Leave empty if `inherit` is `1`.
      properties:
        street_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_StreetAddress'
        apartment_suite_or_floor:
          $ref: '#/components/schemas/ACCOUNTCENTER_ApartmentSuiteOrFloor'
        city:
          $ref: '#/components/schemas/ACCOUNTCENTER_City'
        state:
          $ref: '#/components/schemas/ACCOUNTCENTER_State'
        postal_code:
          $ref: '#/components/schemas/ACCOUNTCENTER_PostalCode'
      required:
        - street_address
        - city
        - state
        - postal_code
    ACCOUNTCENTER_OwnershipDetails:
      type: object
      description: >
        Ownership information, including representatives and supporting
        documents.


        - Leave empty if `inherit` is `1`.
      properties:
        representatives:
          $ref: '#/components/schemas/ACCOUNTCENTER_Representatives'
        shareholder_docs:
          $ref: '#/components/schemas/ACCOUNTCENTER_ShareholderDocs'
      required:
        - representatives
        - shareholder_docs
    ACCOUNTCENTER_BusinessDetails:
      type: object
      description: Company business details.
      properties:
        country_or_territory:
          $ref: '#/components/schemas/ACCOUNTCENTER_CountryOrTerritory'
        street_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_StreetAddress'
        apartment_suite_or_floor:
          $ref: '#/components/schemas/ACCOUNTCENTER_ApartmentSuiteOrFloor'
        city:
          $ref: '#/components/schemas/ACCOUNTCENTER_City'
        state:
          $ref: '#/components/schemas/ACCOUNTCENTER_State'
        postal_code:
          $ref: '#/components/schemas/ACCOUNTCENTER_PostalCode'
        industry:
          $ref: '#/components/schemas/ACCOUNTCENTER_Industry'
        turnover_monthly:
          $ref: '#/components/schemas/ACCOUNTCENTER_TurnoverMonthly'
        number_of_employee:
          $ref: '#/components/schemas/ACCOUNTCENTER_NumberOfEmployee'
        website_url:
          $ref: '#/components/schemas/ACCOUNTCENTER_WebsiteUrl'
        company_description:
          $ref: '#/components/schemas/ACCOUNTCENTER_CompanyDescription'
        account_purpose:
          $ref: '#/components/schemas/ACCOUNTCENTER_CompanyAccountPurposeArray'
        banking_currencies:
          $ref: '#/components/schemas/ACCOUNTCENTER_BankingCurrencies'
        banking_countries:
          $ref: '#/components/schemas/ACCOUNTCENTER_BankingCountries'
        issuing_countries:
          $ref: '#/components/schemas/ACCOUNTCENTER_IssuingCountries'
        issuing_monthly:
          $ref: '#/components/schemas/ACCOUNTCENTER_IssuingMonthly'
      required:
        - country_or_territory
        - street_address
        - city
        - state
        - postal_code
        - industry
        - turnover_monthly
        - number_of_employee
    ACCOUNTCENTER_AdditionalDocuments:
      type: object
      description: >
        Additional supporting documents for account application.


        You can retrieve the required and optional document types using the [Get
        Additional
        Documents](/account-center/v1.6/api-reference/get-additional-documents)
        endpoint.


        It is generally used when creating sub-accounts of type COMPANY under
        the BANKING business lines.
      properties:
        required_docs:
          type: array
          description: List of mandatory supporting documents.
          items:
            $ref: '#/components/schemas/ACCOUNTCENTER_DocumentItem'
        option_docs:
          type: array
          description: List of optional supporting documents.
          items:
            $ref: '#/components/schemas/ACCOUNTCENTER_DocumentItem'
      required:
        - required_docs
    AccountId:
      type: string
      example: f5bb6498-552e-40a5-b14b-616aa04ac1c1
      description: A unique identifier of the account.
    AccountStatus:
      type: string
      example: PROCESSING
      description: |
        Status of the account. One of the following:

          * ACTIVE - The account has been activated.
          * PROCESSING - The account is currently undergoing review and processing.
          * INACTIVE - The account temporarily inactive
          * CLOSED - The account has been closed.
    VerificationStatus:
      type: string
      example: APPROVED
      enum:
        - APPROVED
        - PENDING
        - REJECT
        - EXPIRED
        - RETURN
      description: |
        Status of the KYC/KYB. One of the following:

          * REJECT - The account has been rejected during identity verification.
          * APPROVED -  The account has been verified and is active.
          * PENDING - The account is currently undergoing identity verification.
          * EXPIRED - The verification has expired.
          * RETURN -  The account has been returned for identity verification and needs to be re-uploaded.

          **Webhook note:** In the `accountStatus` webhook notification, these two
          states are delivered as `REJECTED` and `RETURNED` respectively (rather than
          `REJECT` / `RETURN`). All other values are identical. See
          [Account Status webhook](/account-center/v1.6/webhooks/account-status).
    ACCOUNTCENTER_FirstNameEnglish:
      type: string
      description: Individual's first name in English.
      example: Zhang
    ACCOUNTCENTER_LastNameEnglish:
      type: string
      description: Individual's last name in English.
      example: Wei
    ACCOUNTCENTER_NameInOtherLanguage:
      type: string
      description: |
        Name in other language (if applicable).
      example: 张伟
      maxLength: 100
    ACCOUNTCENTER_Nationality:
      type: string
      description: Nationality (ISO 3166-1 alpha-2 code).
      example: SG
    ACCOUNTCENTER_TaxNumber:
      type: string
      description: |
        Tax identification number.
        The total length must not exceed 100 characters.
      example: '440300074445'
      maxLength: 100
    ACCOUNTCENTER_PhoneNumber:
      type: string
      description: Business contact phone number, including country code.
      example: '+12025550123'
      maxLength: 25
    ACCOUNTCENTER_EmailAddress:
      type: string
      format: email
      description: Business contact email address.
      example: admin@example.com
      maxLength: 100
    ACCOUNTCENTER_DateOfBirth:
      type: string
      format: date
      description: Date of birth (YYYY-MM-DD).
      example: '1980-01-01'
    ACCOUNTCENTER_IndividualGender:
      type: string
      description: Individual's gender.
      enum:
        - MALE
        - FEMALE
      example: MALE
    ACCOUNTCENTER_CountryOrTerritory:
      type: string
      description: Country or territory (ISO 3166-1 alpha-2 code).
      example: SG
    ACCOUNTCENTER_StreetAddress:
      type: string
      description: >
        Street address of the company. The address where you do most of your
        work.     
      example: 123 Orchard Road
      maxLength: 100
    ACCOUNTCENTER_ApartmentSuiteOrFloor:
      type: string
      description: |
        Apartment, suite, unit, or floor (if applicable).
      example: Suite 88, Level 10
      maxLength: 100
    ACCOUNTCENTER_City:
      type: string
      description: |
        City of the company address.
      example: San Francisco
      maxLength: 100
    ACCOUNTCENTER_State:
      type: string
      description: State or province of the company address.
      example: CA
    ACCOUNTCENTER_PostalCode:
      type: string
      description: |
        Postal code of the company address.
      example: '238888'
      maxLength: 100
    ACCOUNTCENTER_IndividualEmploymentStatus:
      type: string
      description: >
        The individual's current employment status. Must be one of the supported
        values.
      enum:
        - Employed
        - Self-Employed
        - Unemployed
        - Student
        - Retired
        - Homemaker
        - Other
      example: Employed
    ACCOUNTCENTER_IndividualIndustry:
      type: string
      description: >
        The industry in which the individual works. Must be one of the supported
        values.

        See [Enum Reference — Individual Account
        Fields](/account-center/v1.6/guide/enum-reference) for the full list of
        accepted values.
      example: Information Technology/IT
    ACCOUNTCENTER_IndividualJobTitle:
      type: string
      description: >
        The individual's job title or role. Must be one of the supported values.

        See [Enum Reference — Individual Account
        Fields](/account-center/v1.6/guide/enum-reference) for the full list of
        accepted values.
      example: Business and administration professionals
    ACCOUNTCENTER_IndividualCompanyName:
      type: string
      description: |
        The name of the company or organization the individual works for.
        Allowed characters: letters, numbers, spaces, and `.,&()\-+%#@*!$^_?~\`.
      maxLength: 100
      pattern: ^[a-zA-Z0-9 .,&()\-+%#@*!$^_?~\\]+$
      example: Acme Corp.
    ACCOUNTCENTER_IndividualAnnualIncome:
      type: string
      description: Individual's annual income, denominated in USD.
      example: '85000'
    ACCOUNTCENTER_IdentificationType:
      type: string
      description: |
        Type of identification document.
      enum:
        - PASSPORT
        - DRIVERS_LICENSE
        - NATIONAL_ID
      example: PASSPORT
    ACCOUNTCENTER_IdentificationValue:
      type: string
      description: Identification document number.
      example: E12345678
      maxLength: 100
    ACCOUNTCENTER_IdentityDocs:
      type: array
      items:
        type: string
      description: |
        Identity document, supports base64-encoded content or file id.
    ACCOUNTCENTER_FaceDocs:
      type: array
      items:
        type: string
        example: b3d9d2d5-4c12-4946-a09d-953e82sed2b0
      description: >
        Face verification documents of the individual.  

        Accepts a base64-encoded file or a file ID.


        Requirements:

        - If the **master account type = TPSP**, KYC is mandatory during
        sub-account creation. In this case, at least one person must provide
        `face_docs`.

        - For `entity_type = COMPANY`: At least one representative with
        `job_title` = `DIRECTOR`, `BENEFICIAL_OWNER`, or `AUTHORISED_PERSON`
        must provide `face_docs`.

        - For `entity_type = INDIVIDUAL`: `face_docs` is mandatory.  
    ACCOUNTCENTER_IndividualAccountPurposeArray:
      type: array
      description: >-
        Declared purposes for opening the account (for `INDIVIDUAL` entity
        type).
      items:
        $ref: '#/components/schemas/ACCOUNTCENTER_IndividualAccountPurpose'
    ACCOUNTCENTER_OtherPurpose:
      type: string
      description: If `account_purpose` includes `OTHERS`, specify the actual purpose.
      example: freelance payment collection
    ACCOUNTCENTER_BankingCountries:
      type: array
      description: |
        Countries involved in the user's banking activities.

        Leave empty if `business_type` is `ACQUIRING` or `ISSUING`.
      items:
        type: string
        example: SG
    ACCOUNTCENTER_BankingCurrencies:
      type: array
      description: |
        Currencies used in banking transactions.

        Leave empty if `business_type` is `ACQUIRING` or `ISSUING`.
      items:
        type: string
        example: SGD
    ACCOUNTCENTER_Internationally:
      type: number
      description: >
        Indicates whether the account will be involved in international
        transactions, including sending or receiving money across borders.  

        - `0`: No

        - `1`: Yes
      enum:
        - 0
        - 1
      example: 1
    ACCOUNTCENTER_TurnoverMonthly:
      type: string
      example: TM001
      description: |
        The total business income for the month, estimated in USD.

        - `TM001`: Less than 50,000
        - `TM002`: 50,000 to 100,000
        - `TM003`: 100,000 to 250,000
        - `TM004`: 250,000 to 500,000
        - `TM005`: Over 500,000
      enum:
        - TM001
        - TM002
        - TM003
        - TM004
        - TM005
    ACCOUNTCENTER_TurnoverMonthlyCurrency:
      type: string
      description: Currency for estimated monthly transaction volume.
      example: USD
    ACCOUNTCENTER_ProofOfAddress:
      type: array
      items:
        type: string
      description: Proof of address document. Optional for INDIVIDUAL entity type.
    ACCOUNTCENTER_SourceOfFunds:
      type: array
      items:
        type: string
      description: >
        File reference. Supports base64-encoded content or a file ID issued by
        UQPAY.


        - Required when the sub-account needs to apply for a Virtual Account
        (VA).
    ACCOUNTCENTER_ProofOfPositionAndIncome:
      type: array
      items:
        type: string
      description: Optional document proving employment or income.
    ACCOUNTCENTER_OtherProof:
      allOf:
        - $ref: '#/components/schemas/ACCOUNTCENTER_FileReference'
      description: Optional supporting document not covered by other fields.
    ACCOUNTCENTER_TosIp:
      type: string
      format: ipv4
      description: >-
        The IP address from which the account representative accepted their
        service agreement.
      example: 192.168.1.1
    ACCOUNTCENTER_TosDate:
      type: string
      format: date-time
      description: >-
        The date when the account representative accepted their service
        agreement.
      example: '2025-07-17T08:00:00Z'
    ACCOUNTCENTER_TosUserAgent:
      type: string
      description: >-
        The user agent of the browser from which the account representative
        accepted their service agreement.
      example: >-
        Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36
        (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36
    ACCOUNTCENTER_TosAgreement:
      type: integer
      description: >
        Indicates whether the TPSP Terms of Service (ToS) should be
        automatically signed.  


        - **Applicable only when** `master account type = TPSP`.  

        - If the value is set to `1`, the TPSP agreement will be automatically
        signed.

        - Any other value (including omitted) has no effect.  
      example: 1
    ACCOUNTCENTER_LegalBusinessName:
      type: string
      description: |
        Legal name of the business in its country of incorporation.
      example: Tech Innovations Ltd
      maxLength: 100
    ACCOUNTCENTER_LegalBusinessNameEnglish:
      type: string
      description: |
        Legal business name in English. 
      example: Tech Innovations Limited
      pattern: ^[A-Za-z0-9!@#$%^&*()\-_=+,.?/:;{}\[\]'~\s]+$
      maxLength: 100
    ACCOUNTCENTER_CountryOfIncorporation:
      type: string
      description: Country where the business is incorporated (ISO 3166-1 alpha-2 code).
      example: US
    ACCOUNTCENTER_CompanyType:
      type: string
      description: |
        Type of company entity.
      enum:
        - SOLE_PROPRIETOR
        - LIMITED_COMPANY
        - PARTNERSHIP
        - LISTED
        - OTHERS
      example: LIMITED_COMPANY
    ACCOUNTCENTER_CompanyRegistrationNumber:
      type: string
      description: |
        Official company registration number.
        The total length must not exceed 100 characters.
      example: '123456789'
      pattern: ^[a-zA-Z0-9.\-()/]+$
      maxLength: 100
    ACCOUNTCENTER_TaxType:
      type: string
      description: Type of tax registration.
      enum:
        - VAT
        - GST
        - TAX
      example: VAT
    ACCOUNTCENTER_IncorporateDate:
      type: string
      format: date
      description: Date of company incorporation (YYYY-MM-DD).
      example: '2010-09-20'
    ACCOUNTCENTER_CertificationOfIncorporation:
      type: array
      items:
        type: string
        example: b3d9d2d5-4c12-4946-a09d-953e82sed2b0
      description: |
        Certificate of incorporation.
        Accepts base64-encoded file or file id.
    ACCOUNTCENTER_Representatives:
      type: array
      description: List of company representatives.
      items:
        $ref: '#/components/schemas/ACCOUNTCENTER_Representative'
    ACCOUNTCENTER_ShareholderDocs:
      type: array
      items:
        type: string
        example: b3d9d2d5-4c12-4946-a09d-953e82sed2b0
      description: |
        Shareholder supporting documents.
        Accepts base64-encoded file or file id.
    ACCOUNTCENTER_Industry:
      type: string
      description: >
        The primary industry of the company. It only accepts a number value with
        string type.


        See [Industry Code
        Mapping](/account-center/v1.6/guide/industry-code-mapping) for the full
        list of codes.
      example: '0742'
    ACCOUNTCENTER_NumberOfEmployee:
      type: string
      example: BS001
      description: >
        An estimated upper bound of employees, contractors, vendors, etc.
        currently working for the business.


        - `BS001`: 0-1 Employee

        - `BS002`: 2-10 Employees

        - `BS003`: 11-50 Employees

        - `BS004`: 51-200 Employees

        - `BS005`: Over 200 Employees
      enum:
        - BS001
        - BS002
        - BS003
        - BS004
        - BS005
    ACCOUNTCENTER_WebsiteUrl:
      type: string
      description: |
        Official website URL of the company.    
      example: https://www.example.com
      maxLength: 100
    ACCOUNTCENTER_CompanyDescription:
      type: string
      description: Brief description of the company's business.
      example: Leading provider of digital payment solutions.
    ACCOUNTCENTER_CompanyAccountPurposeArray:
      type: array
      description: Declared purposes for opening the account (for `COMPANY` entity type).
      items:
        $ref: '#/components/schemas/ACCOUNTCENTER_CompanyAccountPurpose'
    ACCOUNTCENTER_IssuingCountries:
      type: array
      description: |
        Supported issuing countries (comma-separated or as required by system).

        Leave empty if `business_type` is `ACQUIRING` or `BANKING`.
      items:
        type: string
        example: SG
    ACCOUNTCENTER_IssuingMonthly:
      type: string
      example: TM001
      description: >
        Estimated monthly volume of card transactions across all currencies,
        expressed in USD. Required when `business_type` is `ISSUING`.


        - `TM001`: Less than 50,000

        - `TM002`: 50,000 to 100,000

        - `TM003`: 100,000 to 250,000

        - `TM004`: 250,000 to 500,000

        - `TM005`: Over 500,000
      enum:
        - TM001
        - TM002
        - TM003
        - TM004
        - TM005
    ACCOUNTCENTER_DocumentItem:
      type: object
      description: Document information item.
      properties:
        profile_key:
          $ref: '#/components/schemas/ACCOUNTCENTER_ProfileKey'
        doc_str:
          $ref: '#/components/schemas/ACCOUNTCENTER_DocStr'
      required:
        - profile_key
        - doc_str
    ACCOUNTCENTER_IndividualAccountPurpose:
      type: string
      description: >
        Purpose of opening the account. Available when `entity_type` is
        `INDIVIDUAL`.


        Leave empty if `business_type` is `ACQUIRING` or `ISSUING`.
      enum:
        - PURCHASE
        - BILL_PAYMENT
        - EDUCATIONAL_EXPENSES
        - PERSONAL_REMITTANCE
        - CHARITABLE_DONATION
        - LOAN_REPAYMENT
        - INVESTMENT
        - OTHERS
    ACCOUNTCENTER_FileReference:
      type: string
      description: >
        File reference. Supports base64-encoded content or a file ID issued by
        UQPAY.
      example: b3d9d2d5-4c12-4946-a09d-953e82sed2b0
    ACCOUNTCENTER_Representative:
      type: object
      description: |
        Company representative information.
      properties:
        legal_first_name_english:
          $ref: '#/components/schemas/ACCOUNTCENTER_LegalFirstNameEnglish'
        legal_last_name_english:
          $ref: '#/components/schemas/ACCOUNTCENTER_LegalLastNameEnglish'
        name_in_other_language:
          $ref: '#/components/schemas/ACCOUNTCENTER_NameInOtherLanguage'
        email_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_EmailAddress'
        is_applicant:
          $ref: '#/components/schemas/ACCOUNTCENTER_IsApplicant'
        job_title:
          $ref: '#/components/schemas/ACCOUNTCENTER_JobTitle'
        ownership_percentage:
          $ref: '#/components/schemas/ACCOUNTCENTER_OwnershipPercentage'
        nationality:
          $ref: '#/components/schemas/ACCOUNTCENTER_Nationality'
        tax_number:
          $ref: '#/components/schemas/ACCOUNTCENTER_TaxNumber'
        phone_number:
          $ref: '#/components/schemas/ACCOUNTCENTER_PhoneNumber'
        date_of_birth:
          $ref: '#/components/schemas/ACCOUNTCENTER_DateOfBirth'
        country_or_territory:
          $ref: '#/components/schemas/ACCOUNTCENTER_CountryOrTerritory'
        street_address:
          $ref: '#/components/schemas/ACCOUNTCENTER_StreetAddress'
        apartment_suite_or_floor:
          $ref: '#/components/schemas/ACCOUNTCENTER_ApartmentSuiteOrFloor'
        city:
          $ref: '#/components/schemas/ACCOUNTCENTER_City'
        state:
          $ref: '#/components/schemas/ACCOUNTCENTER_State'
        postal_code:
          $ref: '#/components/schemas/ACCOUNTCENTER_PostalCode'
        identification_type:
          $ref: '#/components/schemas/ACCOUNTCENTER_IdentificationType'
        identification_value:
          $ref: '#/components/schemas/ACCOUNTCENTER_IdentificationValue'
        identity_docs:
          $ref: '#/components/schemas/ACCOUNTCENTER_IdentityDocs'
        other_documents:
          $ref: '#/components/schemas/ACCOUNTCENTER_OtherDocuments'
        face_docs:
          $ref: '#/components/schemas/ACCOUNTCENTER_FaceDocs'
      required:
        - legal_first_name_english
        - legal_last_name_english
        - is_applicant
        - job_title
        - nationality
        - date_of_birth
        - country_or_territory
        - street_address
        - city
        - state
        - postal_code
        - identification_type
        - identification_value
        - identity_docs
    ACCOUNTCENTER_CompanyAccountPurpose:
      type: string
      description: >
        Purpose of opening the account. Available when `entity_type` is
        `COMPANY`.


        Leave empty if `business_type` is `ACQUIRING` or `ISSUING`.
      enum:
        - BUSINESS_PAYMENT
        - BILL_PAYMENT
        - CHARITABLE_DONATION
        - LOAN_REPAYMENT
        - INVESTMENT
        - COLLECTION_OF_BUSINESS
        - OTHERS
      example: PURCHASE
    ACCOUNTCENTER_ProfileKey:
      type: string
      description: Unique key representing the profile or document type.
      example: ARTICLES_OF_ASSOCIATION
    ACCOUNTCENTER_DocStr:
      type: string
      description: Document value, supports base64 or file id.
      example: 5135e6cc-28b6-4889-81dc-3b86a09e1395
    ACCOUNTCENTER_LegalFirstNameEnglish:
      type: string
      description: |
        Legal first name in English.
      example: John
      maxLength: 100
    ACCOUNTCENTER_LegalLastNameEnglish:
      type: string
      description: |
        Legal last name in English.
      example: Doe
      maxLength: 100
    ACCOUNTCENTER_IsApplicant:
      type: string
      description: >
        Whether this representative is the applicant. Only one representative
        can be 1.
      enum:
        - '0'
        - '1'
      example: '1'
    ACCOUNTCENTER_JobTitle:
      type: string
      description: |
        Job title of the representative.
      enum:
        - DIRECTOR
        - BENEFICIAL_OWNER
        - BENEFICIAL_OWNER_AND_DIRECTOR
        - AUTHORISED_PERSON
      example: DIRECTOR
    ACCOUNTCENTER_OwnershipPercentage:
      type: string
      description: Ownership percentage (when applicable).
      example: '50.0'
    ACCOUNTCENTER_OtherDocuments:
      type: array
      description: |
        Other documents, supports base64-encoded content or file id.
      items:
        $ref: '#/components/schemas/ACCOUNTCENTER_OtherDocumentsItem'
    ACCOUNTCENTER_OtherDocumentsItem:
      type: object
      required:
        - type
        - doc_str
      properties:
        type:
          type: string
          enum:
            - PROOF_OF_ADDRESS
            - OTHERS
          description: Type of document.
          example: PROOF_OF_ADDRESS
        doc_str:
          $ref: '#/components/schemas/ACCOUNTCENTER_FileReference'
  headers:
    XResponseId:
      description: >-
        Universally unique identifier (UUID v4) for the response. Helpful for
        identifying a request when communicating with UQPAY support.
      schema:
        type: string
        format: uuid
        example: 2adba88e-9d63-44bc-b975-9b6ae3440dde
  securitySchemes:
    XAuthToken:
      type: apiKey
      in: header
      name: x-auth-token
      description: The API token for login provided by UQPay.

````