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

# User Registration

> By consuming this endpoint, you can register users by providing the required user information.

## Request

| Field | **Type** | Required | Description |
| --- | --- | --- | --- |
| Authorization | Header | Yes | The access token that authenticates the request. |
| x-integration-register | Header | Yes | Unique integration identifier provided by Kravata |

#### Request Body

| **Field** | **Type** | **Required** | **Description** |
| --- | --- | --- | --- |
| external_user_id | UUID | No | External unique identifier assigned to the user. |
| first_name | String | Yes | User's first given name. |
| second_name | String | Yes | User's second given name, if applicable. |
| first_surname | String | Yes | User's first surname (family name). |
| second_surname | String | Yes | User's second surname, if applicable. |
| birth_date | String | Yes | User's date of birth. Format: YYYY-MM-DD. |
| cell_phone_number | String | Yes | User's primary mobile phone number, including area code if applicable. |
| email | String | Yes | User's email address used for communication and identification. Must be a valid email format. |
| home_info | Object | Yes | Contains the user's residential address information. |
| home_info.neighborhood | String | Yes | Neighborhood or district where the user resides. |
| home_info.address_home | String | Yes | User's complete residential address. |
| home_info.country_home | String | Yes | Country of residence. |
| home_info.city_home | String | Yes | City of residence. |
| home_info.department | String | Yes | State, department, or province of residence. |
| document_type | String | Yes | Type of identification document. Allowed values: CC |
| document_number | String | Yes | Identification number corresponding to the specified identification type. |
| document_issue_date | String | Yes | Date on which the identification document was issued. Format: YYYY-MM-DD. |
| document_issuance_country | String | Yes | Country where the identification document was issued. |
| occupation | String | Yes | User's current occupation. |
| incomes | Object | Yes | Contains information related to the user's declared income. |
| incomes.monthly_incomes | Number | Yes | User's declared average monthly income, expressed in the local currency. |
| expenses | Object | Yes | Contains information related to the user's declared expenses. |
| expenses.month_expenses | Number | Yes | User's declared average monthly expenses, expressed in the local currency. |
| total_assets | Number | Yes | Total estimated value of the user's assets. |
| total_liabilities | Number | Yes | Total estimated value of the user's liabilities or financial obligations. |
| international_operations_info | Object | No | Contains information about the user's international financial operations. |
| international_operations_info.foreign_currency_products | String | No | Indicates whether the user owns foreign currency products (e.g., foreign bank accounts or investments). Example values: Yes, No |
| is_pep | Boolean | Yes | Indicates whether the user is a Politically Exposed Person (PEP). Accepted values: true or false. |
| identity_verification_result | String | No | Result of the identity verification process performed by the identity verification provider. Example values: Success, Failed, Pending. |
| document_verification_result | String | No | Result of the document authenticity verification. Example values: Success, Failed, Pending. |
| identity_verification_id | String | No | Unique identifier returned by the identity verification provider for the verification process. |
| identity_verification_date | String | No | Date when the identity verification was completed. |
| identity_verification_provider | String | No | Name of the identity verification provider used to validate the user's identity. |
| origins_founds | String | No | Declared source of funds. Indicates the primary origin of the user's financial resources. |
| kyc_validations | String | Yes | Contains the results of the user's KYC validations. The information may be provided as a structured JSON object or as a Base64-encoded file containing the complete validation results. |
| identity_verification | String | Yes | Contains the results and evidence of the user's identity verification process. The information may be provided as a structured JSON object or as a Base64-encoded file generated by the identity verification provider. |
| supporting_documents | Array | Yes | List of additional supporting documents associated with the user registration. |



## OpenAPI

````yaml /stack/openapi.json post /api/v1/users/register
openapi: 3.1.0
info:
  title: Kravata Stack API
  version: '2.0'
  description: >-
    Kravata Stack API: users, accounts, custody wallets, liquidity ramps and
    fiat payments.
servers:
  - url: https://test-api-kore.kravata.co
    description: Test
  - url: https://partners-api.kravata.co
    description: Production (mTLS + IP allowlist)
security:
  - bearerAuth: []
tags:
  - name: Authentication
  - name: Users
  - name: Accounts
  - name: Earn
  - name: Custody
  - name: Liquidity Ramps
  - name: Payments
  - name: Webhooks
paths:
  /api/v1/users/register:
    post:
      tags:
        - Users
      summary: User Registration
      description: >-
        By consuming this endpoint, you can register users by providing the
        required user information.


        ## Request


        | Field | **Type** | Required | Description |

        | --- | --- | --- | --- |

        | Authorization | Header | Yes | The access token that authenticates the
        request. |

        | x-integration-register | Header | Yes | Unique integration identifier
        provided by Kravata |


        #### Request Body


        | **Field** | **Type** | **Required** | **Description** |

        | --- | --- | --- | --- |

        | external_user_id | UUID | No | External unique identifier assigned to
        the user. |

        | first_name | String | Yes | User's first given name. |

        | second_name | String | Yes | User's second given name, if applicable.
        |

        | first_surname | String | Yes | User's first surname (family name). |

        | second_surname | String | Yes | User's second surname, if applicable.
        |

        | birth_date | String | Yes | User's date of birth. Format: YYYY-MM-DD.
        |

        | cell_phone_number | String | Yes | User's primary mobile phone number,
        including area code if applicable. |

        | email | String | Yes | User's email address used for communication and
        identification. Must be a valid email format. |

        | home_info | Object | Yes | Contains the user's residential address
        information. |

        | home_info.neighborhood | String | Yes | Neighborhood or district where
        the user resides. |

        | home_info.address_home | String | Yes | User's complete residential
        address. |

        | home_info.country_home | String | Yes | Country of residence. |

        | home_info.city_home | String | Yes | City of residence. |

        | home_info.department | String | Yes | State, department, or province
        of residence. |

        | document_type | String | Yes | Type of identification document.
        Allowed values: CC |

        | document_number | String | Yes | Identification number corresponding
        to the specified identification type. |

        | document_issue_date | String | Yes | Date on which the identification
        document was issued. Format: YYYY-MM-DD. |

        | document_issuance_country | String | Yes | Country where the
        identification document was issued. |

        | occupation | String | Yes | User's current occupation. |

        | incomes | Object | Yes | Contains information related to the user's
        declared income. |

        | incomes.monthly_incomes | Number | Yes | User's declared average
        monthly income, expressed in the local currency. |

        | expenses | Object | Yes | Contains information related to the user's
        declared expenses. |

        | expenses.month_expenses | Number | Yes | User's declared average
        monthly expenses, expressed in the local currency. |

        | total_assets | Number | Yes | Total estimated value of the user's
        assets. |

        | total_liabilities | Number | Yes | Total estimated value of the user's
        liabilities or financial obligations. |

        | international_operations_info | Object | No | Contains information
        about the user's international financial operations. |

        | international_operations_info.foreign_currency_products | String | No
        | Indicates whether the user owns foreign currency products (e.g.,
        foreign bank accounts or investments). Example values: Yes, No |

        | is_pep | Boolean | Yes | Indicates whether the user is a Politically
        Exposed Person (PEP). Accepted values: true or false. |

        | identity_verification_result | String | No | Result of the identity
        verification process performed by the identity verification provider.
        Example values: Success, Failed, Pending. |

        | document_verification_result | String | No | Result of the document
        authenticity verification. Example values: Success, Failed, Pending. |

        | identity_verification_id | String | No | Unique identifier returned by
        the identity verification provider for the verification process. |

        | identity_verification_date | String | No | Date when the identity
        verification was completed. |

        | identity_verification_provider | String | No | Name of the identity
        verification provider used to validate the user's identity. |

        | origins_founds | String | No | Declared source of funds. Indicates the
        primary origin of the user's financial resources. |

        | kyc_validations | String | Yes | Contains the results of the user's
        KYC validations. The information may be provided as a structured JSON
        object or as a Base64-encoded file containing the complete validation
        results. |

        | identity_verification | String | Yes | Contains the results and
        evidence of the user's identity verification process. The information
        may be provided as a structured JSON object or as a Base64-encoded file
        generated by the identity verification provider. |

        | supporting_documents | Array | Yes | List of additional supporting
        documents associated with the user registration. |
      operationId: user-registration
      parameters:
        - name: x-integration-register
          in: header
          required: true
          description: ''
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                external_user_id:
                  type: string
                first_name:
                  type: string
                second_name:
                  type: string
                first_surname:
                  type: string
                second_surname:
                  type: string
                birth_date:
                  type: string
                cell_phone_number:
                  type: string
                email:
                  type: string
                home_info:
                  type: object
                  properties:
                    neighborhood:
                      type: string
                    address_home:
                      type: string
                    country_home:
                      type: string
                    city_home:
                      type: string
                    department:
                      type: string
                document_type:
                  type: string
                document_number:
                  type: string
                document_issue_date:
                  type: string
                document_issuance_country:
                  type: string
                occupation:
                  type: string
                incomes:
                  type: object
                  properties:
                    monthly_incomes:
                      type: integer
                expenses:
                  type: object
                  properties:
                    month_expenses:
                      type: integer
                total_assets:
                  type: integer
                total_liabilities:
                  type: integer
                is_pep:
                  type: boolean
                kyc_validations:
                  type: string
            example:
              external_user_id: 3f1a9c2e-7b6d-4e11-9a3f-2c8d6e0b5a17
              first_name: John
              second_name: Michael
              first_surname: Doe
              second_surname: Smith
              birth_date: '1988-11-02'
              cell_phone_number: '3009876543'
              email: john.doe@example.com
              home_info:
                neighborhood: Downtown
                address_home: 123 Main Street
                country_home: Colombia
                city_home: Medellin
                department: Antioquia
              document_type: CC
              document_number: '1029384756'
              document_issue_date: '2015-03-22'
              document_issuance_country: Colombia
              occupation: Desempleado
              incomes:
                monthly_incomes: 7200000
              expenses:
                month_expenses: 4100000
              total_assets: 60000000
              total_liabilities: 12000000
              is_pep: false
              kyc_validations: '{''status'':''APPROVED''}'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  user_id:
                    type: string
                  status:
                    type: string
                  message:
                    type: string
                  data:
                    type: object
                    properties:
                      person:
                        type: object
                        properties:
                          id:
                            type: string
                          isJuridic: {}
                          identificationType:
                            type: string
                          identificationNro:
                            type: string
                          verificateDigit: {}
                          firstName:
                            type: string
                          firstSurname:
                            type: string
                          lastName:
                            type: string
                          middleName:
                            type: string
                          businessName:
                            type: string
                          tradeName: {}
                          pep:
                            type: boolean
                          nationality: {}
                          contactsData:
                            type: array
                            items:
                              type: object
                              properties:
                                dataTypeContact:
                                  type: string
                                dataValue:
                                  type: string
                                isVerified:
                                  type: boolean
                                personId:
                                  type: string
                          additionalInfo:
                            type: array
                            items:
                              type: object
                              properties:
                                additionalInfoTypeSku:
                                  type: string
                                infoName:
                                  type: string
                                infoType:
                                  type: string
                                infoValue:
                                  type: string
                                personId:
                                  type: string
                          personFiles:
                            type: array
                            items: {}
                          persons:
                            type: array
                            items: {}
                      status:
                        type: string
                      complianceStatus:
                        type: string
                      id:
                        type: string
                      isVip:
                        type: boolean
                      tradeName: {}
                      clientType: {}
                      constitutionDate:
                        type: string
                      constitutionCountryId: {}
                      constitutionCity:
                        type: string
                      constitutionState:
                        type: string
                      countriesOperation:
                        type: array
                        items: {}
              examples:
                user-registration-kg:
                  summary: User Registration | KG
                  value:
                    user_id: 75fd9334-498d-473a-ab8b-b82bd94a5c6d
                    status: success
                    message: User registered successfully
                    data:
                      person:
                        id: 75fd9334-498d-473a-ab8b-b82bd94a5c6d
                        isJuridic: null
                        identificationType: cc
                        identificationNro: '1000000001'
                        verificateDigit: null
                        firstName: John
                        firstSurname: Doe
                        lastName: Smith
                        middleName: Michael
                        businessName: John Michael Doe Smith
                        tradeName: null
                        pep: false
                        nationality: null
                        contactsData:
                          - dataTypeContact: email
                            dataValue: john.doe@example.com
                            isVerified: true
                            personId: 75fd9334-498d-473a-ab8b-b82bd94a5c6d
                          - dataTypeContact: phone
                            dataValue: '+573001234567'
                            isVerified: true
                            personId: 75fd9334-498d-473a-ab8b-b82bd94a5c6d
                        additionalInfo:
                          - additionalInfoTypeSku: onrampmultiplier
                            infoName: on ramp multiplier
                            infoType: number
                            infoValue: None
                            personId: 75fd9334-498d-473a-ab8b-b82bd94a5c6d
                          - additionalInfoTypeSku: offrampmultiplier
                            infoName: off ramp multiplier
                            infoType: number
                            infoValue: None
                            personId: 75fd9334-498d-473a-ab8b-b82bd94a5c6d
                        personFiles: []
                        persons: []
                      status: pending
                      complianceStatus: pending
                      id: 75fd9334-498d-473a-ab8b-b82bd94a5c6d
                      isVip: false
                      tradeName: null
                      clientType: null
                      constitutionDate: '2026-07-03T14:41:13.466072'
                      constitutionCountryId: null
                      constitutionCity: Bogotá
                      constitutionState: Colombia
                      countriesOperation: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Access token from POST /api/v1/client/token.

````