---
title: "Create a customer"
method: POST
path: "/customers"
tags: ["Customers"]
---

# Create a customer

`POST /customers`

## Headers

- `Idempotency-Key` string, required

## Request body

- union
  - CreateIndividualCustomerPayload
    - `type` 'individual', required — Type of the customer (individual vs. business).
    - `first_name` string — The first name of the individual.
    - `middle_name` string — The middle name of the individual.
    - `last_name` string — The last name of the individual.
    - `transliterated_first_name` string — Required when the `first_name` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
    - `transliterated_middle_name` string — Required when the `middle_name` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
    - `transliterated_last_name` string — Required when the `last_name` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
    - `email` string — The individuals primary email address
    - `phone` string — The individuals primary phone number in format "+12223334444"
    - `residential_address` Address2025WinterRefresh
      - `street_line_1` string, required
      - `street_line_2` string
      - `city` string, required
      - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
      - `postal_code` string — Must be supplied for countries that use postal codes.
      - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
    - `transliterated_residential_address` Address2025WinterRefresh
      - `street_line_1` string, required
      - `street_line_2` string
      - `city` string, required
      - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
      - `postal_code` string — Must be supplied for countries that use postal codes.
      - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
    - `birth_date` string — Date of birth in format yyyy-mm-dd. Must be at least 18 years old.
    - `signed_agreement_id` string — The ID of the signed agreement that the customer completed. You can get a signed agreement id for a _new_ customer by following this guide [here](https://apidocs.bridge.xyz/docs/terms-of-service#tos-acceptance-for-a-new-customer).
    - `endorsements` EndorsementType[] — List of endorsements to request for this customer. If omitted, we'll attempt to grant `base` and `sepa`.
    - `account_purpose` 'charitable_donations' | 'ecommerce_retail_payments' | 'investment_purposes' | 'operating_a_company' | 'other' | 'payments_to_friends_or_family_abroad' | 'personal_or_living_expenses' | 'protect_wealth' | 'purchase_goods_and_services' | 'receive_payment_for_freelancing' | 'receive_salary' — What is the primary purpose of the customer's account? _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/individuals)._ **EEA / BBSA in-scope individuals:** also required under program rules (not for associated persons). See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#account-purpose-and-employment-status).
    - `account_purpose_other` string — A supplemental description of the `account_purpose`. _Required if the `account_purpose` is `other`._
    - `employment_status` 'employed' | 'homemaker' | 'retired' | 'self_employed' | 'student' | 'unemployed' — What is the customer's current employment status? _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/individuals)._ **EEA / BBSA in-scope individuals:** also required under program rules (not for associated persons). See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#account-purpose-and-employment-status).
    - `expected_monthly_payments_usd` '0_4999' | '5000_9999' | '10000_49999' | '50000_plus' — What is the expected monthly volume of payments the customer will be sending or receiving? _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/individuals)_
    - `acting_as_intermediary` boolean — Is the customer acting as an intermediary for a third party? _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/individuals)_
    - `most_recent_occupation` string — What is the customer's most recent occupation? Specify the relevant alphanumeric occupation code. See the [list of occupations](https://apidocs.bridge.xyz/page/sof-eu-most-recent-occupation-list) for the complete list of valid occupations and codes. _Required for Restricted countries._ _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/individuals)_
    - `source_of_funds` 'company_funds' | 'ecommerce_reseller' | 'gambling_proceeds' | 'gifts' | 'government_benefits' | 'inheritance' | 'investments_loans' | 'pension_retirement' | 'salary' | 'sale_of_assets_real_estate' | 'savings' | 'someone_elses_funds' — The individuals source of funds, e.g. government_benefits, investments_loans, salary, etc. _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/individuals)_
    - `nationality` string — Legacy single nationality as ISO 3166-1 alpha-3. Prefer `nationalities` to send **all** nationalities. During migration Bridge honors either field; `nationality` will be deprecated after migration. **EEA / BBSA program:** see [Nationalities](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#nationalities).
    - `nationalities` string[] — All nationalities held by the customer (ISO 3166-1 alpha-3 codes). **EEA / BBSA in-scope individuals:** required. See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#nationalities).
    - `place_of_birth` PlaceOfBirthInput — Country (and optionally city) of birth. **EEA / BBSA in-scope customers:** supply when onboarding individuals or associated persons under the [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#country-of-birth-and-city-of-birth). This is a sparse address — no street address. At least `country` should be present when the object is sent; `city` is recommended and will be required by EU law in 2027.
      - `country` string — ISO 3166-1 alpha-3 country code for the place of birth.
      - `city` string — City of birth (recommended for EEA).
    - `verified_database_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** customers on **reliance** (`TWO_FORMS_OF_ID_RELIANCE` in `eea_requirements.rb`), may stand in for a database identity check together with `verified_govid_at`. See [EEA updated requirements — identity](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements).
    - `verified_govid_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** customers on **reliance**, use with a second factor (`verified_selfie_at` or `verified_database_at`) per `TWO_FORMS_OF_ID_RELIANCE`. See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements).
    - `verified_selfie_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** customers on **reliance**, pairs with `verified_govid_at` or `verified_database_at` under `TWO_FORMS_OF_ID_RELIANCE`.
    - `liveness_check_selfies` object[] — Selfie images to submit for Bridge's liveness verification. Use this when you are collecting the customer's selfie on behalf of Bridge. **EEA in-scope** customers: selfies submitted via this field are not sufficient. The selfie must be collected through the Persona hosted flow (via a KYC link). See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements).
      - `image` string, required — Base64 encoded image* of the selfie, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px *Maximum File Size: 15MB *Valid file types: .jpeg, .jpg, .png, .heic, .heif, .tif, .tiff
    - `identifying_information` object[]
      - `type` 'drivers_license' | 'matriculate_id' | 'military_id' | 'national_id' | 'passport' | 'permanent_residency_id' | 'state_or_provincial_id' | 'visa' | 'abn' | 'acn' | 'ahv' | 'ak' | 'aom' | 'arbn' | 'avs' | 'bc' | 'bce' | 'bin' | 'bir' | 'bp' | 'brn' | 'bsn' | 'bvn' | 'cc' | 'cdi' | 'cedula_juridica' | 'cf' | 'cif' | 'cin' | 'cipc' | 'cn' | 'cnp' | 'cnpj' | 'cpf' | 'cpr' | 'crc' | 'crib' | 'crn' | 'cro' | 'cui' | 'cuil' | 'curp' | 'cuit' | 'cvr' | 'edrpou' | 'ein' | 'embg' | 'emirates_id' | 'en' | 'fin' | 'fn' | 'gstin' | 'gui' | 'hetu' | 'hkid' | 'hn' | 'ic' | 'ico' | 'id' | 'id_broj' | 'idno' | 'idnp' | 'idnr' | 'if' | 'iin' | 'ik' | 'inn' | 'ird' | 'itin' | 'itr' | 'iva' | 'jmbg' | 'kbo' | 'kvk' | 'matricule' | 'mf' | 'mn' | 'ms' | 'mst' | 'nic' | 'nicn' | 'nie' | 'nif' | 'nin' | 'nino' | 'nip' | 'nipc' | 'nipt' | 'nit' | 'npwp' | 'nric' | 'nrn' | 'nrt' | 'ntn' | 'nuit' | 'nzbn' | 'oib' | 'orgnr' | 'other' | 'pan' | 'partita_iva' | 'pesel' | 'pib' | 'pin' | 'pk' | 'ppsn' | 'qid' | 'rc' | 'regon' | 'rfc' | 'ricn' | 'rif' | 'rn' | 'rnc' | 'rnokpp' | 'rp' | 'rrn' | 'rtn' | 'ruc' | 'rut' | 'si' | 'sin' | 'siren' | 'siret' | 'spi' | 'ssm' | 'ssn' | 'steuer_id' | 'strn' | 'tckn' | 'tfn' | 'tin' | 'tpin' | 'trn' | 'ucn' | 'uen' | 'uic' | 'uid' | 'usc' | 'ust_idnr' | 'utr' | 'vat' | 'vkn' | 'voen' | 'y_tunnus', required — Tax identification number type or government-issued ID document type (see enum). Country-specific tax and national ID lists: [Individuals](https://apidocs.bridge.xyz/docs/individual-tax-identification-numbers-by-country), [Businesses](https://apidocs.bridge.xyz/docs/business-tax-identification-numbers-by-country). **EEA / BBSA (policy in `eea_requirements.rb`):** In-scope individuals and UBOs need **both** a valid national-ID-type entry and a valid TIN per [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements). In-scope businesses need business registration **and** business tax ID types per country tables there. **TIN issuing country** must match residence (individuals) or incorporation (businesses). **Foreign tax** outside the incorporation country: set `has_foreign_tax_registration` on the business customer and add TIN objects per jurisdiction ([foreign tax / tax residency](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#tax-residency-status-foreign-tax-registry)).
      - `issuing_country` string, required — The ISO 3166-1 (three-character) country code that issued the provided document.
      - `number` string — The unique identifier of the document. Required if this document is being used as a tax identification number (e.g., you are providing a passport or national_id with no other identification).
      - `description` string — A description describing the provided document. This field is required when `other` is selected.
      - `expiration` string — The expiration date of the given document in yyyy-mm-dd format.
      - `image_front` string — This field is optionally accepted for tax_id types, but required for government_id types. Base64 encoded image* of the front side of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px \n\n*Maximum File Size: 15MB\n\n*Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif _Note: When combined with an `image_back`, the combined size of both images must not exceed 24MB._
      - `image_back` string — Base64 encoded image* of the back side of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px \n\n*Maximum File Size: 15MB\n\n*Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif _Note: When combined with an `image_front`, the combined size of both images must not exceed 24MB._
    - `documents` object[] — Please click "ADD OBJECT" for more information.
      - `purposes` string[], required — A list of purposes that the given document serves. Click "ADD STRING" to see common document purposes for individuals, or view the full list of possible values [here](https://apidocs.bridge.xyz/docs/supported-documents).
      - `file` string, required — Base64 encoded image* of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px *Maximum File Size: 24MB *Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif
      - `description` string — A description describing the provided document. This field is required when `other` is provided as one of the purposes.
    - `client_reference_id` string — A client-provided reference ID that uniquely identifies a resource in the client's system
  - CreateBusinessCustomerPayload
    - `type` 'business' — Type of the customer (individual vs. business)
    - `business_legal_name` string — The official registered name of the business as documented with government authorities.
    - `transliterated_business_legal_name` string — Required if `business_legal_name` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
    - `business_trade_name` string — The trading name or DBA (Doing Business As) name under which the business operates publicly.
    - `transliterated_business_trade_name` string — Required if `business_trade` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
    - `business_description` string — A brief summary of the business
    - `has_foreign_tax_registration` boolean — Whether the business is registered for tax in any jurisdiction **outside** its country of incorporation. When `true`, provide additional tax identifiers in `identifying_information` whose `issuing_country` reflects each foreign registration, per [EEA tax residency](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#tax-residency-status-foreign-tax-registry).
    - `email` string — The business's primary email address
    - `phone` string — The business's primary phone number in format "+12223334444"
    - `business_type` 'cooperative' | 'corporation' | 'llc' | 'other' | 'partnership' | 'sole_prop' | 'trust' — How the business is legally registered
    - `primary_website` string — The business's primary website/web presence. A document with purpose 'proof_of_nature_of_business' is required if this is not provided
    - `other_websites` string[] — The business's other websites and social media handles
    - `registered_address` Address2025WinterRefresh
      - `street_line_1` string, required
      - `street_line_2` string
      - `city` string, required
      - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
      - `postal_code` string — Must be supplied for countries that use postal codes.
      - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
    - `transliterated_registered_address` Address2025WinterRefresh
      - `street_line_1` string, required
      - `street_line_2` string
      - `city` string, required
      - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
      - `postal_code` string — Must be supplied for countries that use postal codes.
      - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
    - `physical_address` Address2025WinterRefresh
      - `street_line_1` string, required
      - `street_line_2` string
      - `city` string, required
      - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
      - `postal_code` string — Must be supplied for countries that use postal codes.
      - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
    - `transliterated_physical_address` Address2025WinterRefresh
      - `street_line_1` string, required
      - `street_line_2` string
      - `city` string, required
      - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
      - `postal_code` string — Must be supplied for countries that use postal codes.
      - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
    - `signed_agreement_id` string — The ID of the signed agreement that the customer completed. You can get a signed agreement id for a _new_ customer by following [this guide](https://apidocs.bridge.xyz/docs/terms-of-service#tos-acceptance-for-a-new-customer).
    - `is_dao` boolean — Whether the business is a DAO (Decentralized Autonomous Organization)
    - `compliance_screening_explanation` string — Required if `conducts_money_services` is true. A detailed description of the business's compliance and anti-money laundering controls and practices.
    - `associated_persons` AssociatedPerson[] — List of notable people associated with the business such as UBOs.
      - `first_name` string, required — The first name of the associated person
      - `middle_name` string — The middle name of the associated person
      - `last_name` string, required — The last name of the associated person
      - `transliterated_first_name` string — Required when the `first_name` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
      - `transliterated_middle_name` string — Required when the `middle_name` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
      - `transliterated_last_name` string — Required when the `last_name` includes any non Latin-1 characters. Acceptable characters - Latin-1 Unicode Character Range: À-ÖØ-ßà-öø-ÿ; Standard Unicode Character Range: -~
      - `email` string, required — The persons primary email address
      - `phone` string — The persons phone in format "+12223334444"
      - `residential_address` Address2025WinterRefresh, required
        - `street_line_1` string, required
        - `street_line_2` string
        - `city` string, required
        - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
        - `postal_code` string — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
      - `transliterated_residential_address` Address2025WinterRefresh
        - `street_line_1` string, required
        - `street_line_2` string
        - `city` string, required
        - `subdivision` string — ISO 3166-2 subdivision code. Must be supplied for US addresses.
        - `postal_code` string — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
      - `birth_date` string, required — Date of birth in format yyyy-mm-dd. Must be at least 18 years old.
      - `nationality` string — Legacy single nationality (ISO 3166-1 alpha-3). Prefer `nationalities` for all nationalities. See individual customer `nationality` / `nationalities` and [EEA nationalities](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#nationalities).
      - `nationalities` string[] — All nationalities for this associated person (ISO 3166-1 alpha-3). **EEA / BBSA in-scope businesses:** required on each UBO / associated person where policy applies.
      - `place_of_birth` PlaceOfBirthInput — Country (and optionally city) of birth. **EEA / BBSA in-scope customers:** supply when onboarding individuals or associated persons under the [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#country-of-birth-and-city-of-birth). This is a sparse address — no street address. At least `country` should be present when the object is sent; `city` is recommended and will be required by EU law in 2027.
        - `country` string — ISO 3166-1 alpha-3 country code for the place of birth.
        - `city` string — City of birth (recommended for EEA).
      - `verified_database_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** associated persons on **reliance**, second factor with `verified_govid_at` under `TWO_FORMS_OF_ID_RELIANCE`.
      - `has_ownership` boolean, required — True if this person has at least 25% ownership of the business.
      - `has_control` boolean, required — True if this is the control person of the company, having significant responsibility to control, manage or influence the activities of the business entity. At least one control person must be specified.
      - `is_signer` boolean, required — True if this person is able to authorize transactions on behalf of the business. At least one signer must be specified.
      - `is_director` boolean — True if this person is an appointed director of the company. **EEA / BBSA in-scope businesses:** must be set for every associated person (complete director list). See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#complete-director-list).
      - `title` string — The title of this associated person at the company, e.g. CEO, CFO, etc. Required if has_control is true.
      - `ownership_percentage` integer — Ultimate ownership percentage of the business. **EEA / BBSA in-scope businesses:** required when `has_ownership` is true for UBOs at or above the configured threshold (default 25%). See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#ownership-percentage-per-ubo).
      - `attested_ownership_structure_at` string — The date or timestamp when this individual attested to the correctness of the ownership structure provided to Bridge. If provided by at least one control person, ownership documents for the business are not required.
      - `verified_account_authorization_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** businesses on **reliance**, may satisfy signatory authority for signers who are not owner, director, or control person (`signature_authority_requirement(for_reliance: true)`); alternative is `documents` with purpose `proof_of_signatory_authority`. See [EEA updated requirements — LOA](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#letter-of-authority-loa).
      - `relationship_established_at` string — The date or timestamp when the associated person relationship was established in format yyyy-mm-dd.
      - `verified_govid_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** associated persons on **reliance**, use with `verified_selfie_at` or `verified_database_at` under `TWO_FORMS_OF_ID_RELIANCE`.
      - `verified_selfie_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** associated persons on **reliance**, pairs with `verified_govid_at` or `verified_database_at` under `TWO_FORMS_OF_ID_RELIANCE`.
      - `identifying_information` object[], required
        - `type` 'drivers_license' | 'matriculate_id' | 'military_id' | 'national_id' | 'passport' | 'permanent_residency_id' | 'state_or_provincial_id' | 'visa' | 'abn' | 'acn' | 'ahv' | 'ak' | 'aom' | 'arbn' | 'avs' | 'bc' | 'bce' | 'bin' | 'bir' | 'bp' | 'brn' | 'bsn' | 'bvn' | 'cc' | 'cdi' | 'cedula_juridica' | 'cf' | 'cif' | 'cin' | 'cipc' | 'cn' | 'cnp' | 'cnpj' | 'cpf' | 'cpr' | 'crc' | 'crib' | 'crn' | 'cro' | 'cui' | 'cuil' | 'curp' | 'cuit' | 'cvr' | 'edrpou' | 'ein' | 'embg' | 'emirates_id' | 'en' | 'fin' | 'fn' | 'gstin' | 'gui' | 'hetu' | 'hkid' | 'hn' | 'ic' | 'ico' | 'id' | 'id_broj' | 'idno' | 'idnp' | 'idnr' | 'if' | 'iin' | 'ik' | 'inn' | 'ird' | 'itin' | 'itr' | 'iva' | 'jmbg' | 'kbo' | 'kvk' | 'matricule' | 'mf' | 'mn' | 'ms' | 'mst' | 'nic' | 'nicn' | 'nie' | 'nif' | 'nin' | 'nino' | 'nip' | 'nipc' | 'nipt' | 'nit' | 'npwp' | 'nric' | 'nrn' | 'nrt' | 'ntn' | 'nuit' | 'nzbn' | 'oib' | 'orgnr' | 'other' | 'pan' | 'partita_iva' | 'pesel' | 'pib' | 'pin' | 'pk' | 'ppsn' | 'qid' | 'rc' | 'regon' | 'rfc' | 'ricn' | 'rif' | 'rn' | 'rnc' | 'rnokpp' | 'rp' | 'rrn' | 'rtn' | 'ruc' | 'rut' | 'si' | 'sin' | 'siren' | 'siret' | 'spi' | 'ssm' | 'ssn' | 'steuer_id' | 'strn' | 'tckn' | 'tfn' | 'tin' | 'tpin' | 'trn' | 'ucn' | 'uen' | 'uic' | 'uid' | 'usc' | 'ust_idnr' | 'utr' | 'vat' | 'vkn' | 'voen' | 'y_tunnus', required — Tax identification number type or government-issued ID document type (see enum). Country-specific tax and national ID lists: [Individuals](https://apidocs.bridge.xyz/docs/individual-tax-identification-numbers-by-country), [Businesses](https://apidocs.bridge.xyz/docs/business-tax-identification-numbers-by-country). **EEA / BBSA (policy in `eea_requirements.rb`):** In-scope individuals and UBOs need **both** a valid national-ID-type entry and a valid TIN per [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements). In-scope businesses need business registration **and** business tax ID types per country tables there. **TIN issuing country** must match residence (individuals) or incorporation (businesses). **Foreign tax** outside the incorporation country: set `has_foreign_tax_registration` on the business customer and add TIN objects per jurisdiction ([foreign tax / tax residency](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#tax-residency-status-foreign-tax-registry)).
        - `issuing_country` string, required — The ISO 3166-1 (three-character) country code that issued the provided document.
        - `number` string — The unique identifier of the document. Required if this document is being used as a tax identification number (e.g., you are providing a passport or national_id with no other identification).
        - `description` string — A description describing the provided document. This field is required when `other` is selected.
        - `expiration` string — The expiration date of the given document in yyyy-mm-dd format.
        - `image_front` string — This field is optionally accepted for tax_id types, but required for government_id types. Base64 encoded image* of the front side of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px \n\n*Maximum File Size: 15MB\n\n*Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif _Note: When combined with an `image_back`, the combined size of both images must not exceed 24MB._
        - `image_back` string — Base64 encoded image* of the back side of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px \n\n*Maximum File Size: 15MB\n\n*Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif _Note: When combined with an `image_front`, the combined size of both images must not exceed 24MB._
      - `documents` object[] — Please click "ADD OBJECT" for more information.
        - `purposes` string[], required — A list of purposes that the given document serves. Click "ADD STRING" to see common document purposes for individuals, or view the full list of possible values [here](https://apidocs.bridge.xyz/docs/supported-documents).
        - `file` string, required — Base64 encoded image* of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px *Maximum File Size: 24MB *Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif
        - `description` string — A description describing the provided document. This field is required when `other` is provided as one of the purposes.
    - `endorsements` EndorsementType[] — List of endorsements to request for this customer. If omitted, we'll attempt to grant `base` and `sepa`.
    - `business_industry` string[] — The industry in which this business operates. Click [here](https://apidocs.bridge.xyz/page/business-industry-list-updated-2022-naics-codes) for the complete list of valid industries and codes.
    - `publicly_traded_listings` object[] — A list of public exchanges that the company is traded on if applicable.
      - `market_identifier_code` string, required — The 4-digit Market Identifier Code (MIC) (ISO 10383) for the venue where the business is publicly listed and traded.
      - `stock_number` string, required — The 12-digit International Securities Identification Number (ISIN) of the company without dashes (-).
      - `ticker` string, required — The ticker for the business's publicly traded listing.
    - `ownership_threshold` integer — The applicable beneficial ownership threshold for the submitted `associated_persons` information. Valid values are between 5 to 25. Default value is 25.
    - `has_material_intermediary_ownership` boolean — The business has at least one intermediate legal entity owner with 25% or more ownership
    - `estimated_annual_revenue_usd` '0_99999' | '100000_999999' | '1000000_9999999' | '10000000_49999999' | '50000000_249999999' | '250000000_plus' — Estimated annual revenue in USD _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/business-accounts)_
    - `expected_monthly_payments_usd` integer — Expected monthly payments in USD _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/business-accounts)_
    - `expected_monthly_swift_transaction_volume` integer — Expected monthly SWIFT transaction volume in USD. _Required for business customers seeking SWIFT endorsement._
    - `operates_in_prohibited_countries` boolean — Does the business operate in any prohibited countries? _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/business-accounts)_
    - `account_purpose` 'charitable_donations' | 'ecommerce_retail_payments' | 'investment_purposes' | 'other' | 'payments_to_friends_or_family_abroad' | 'payroll' | 'personal_or_living_expenses' | 'protect_wealth' | 'purchase_goods_and_services' | 'receive_payments_for_goods_and_services' | 'tax_optimization' | 'third_party_money_transmission' | 'treasury_management' — What is the primary purpose of the business account?
    - `account_purpose_other` string — Required if the primary purpose is 'other'.
    - `high_risk_activities_explanation` string — An explanation of the high risk activities that the business performs. _Required if `high_risk_activities` contains entries other than `none_of_the_above`_
    - `high_risk_activities` string[] — List of high-risk activities the business is involved in. _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/business-accounts)_
    - `source_of_funds` 'business_loans' | 'grants' | 'inter_company_funds' | 'investment_proceeds' | 'legal_settlement' | 'owners_capital' | 'pension_retirement' | 'sale_of_assets' | 'sales_of_goods_and_services' | 'third_party_funds' | 'treasury_reserves' — The source of funds for the business, e.g. profits, income, venture capital, etc.
    - `source_of_funds_description` string — Description of the source of funds for the business' account. _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/business-accounts)_
    - `conducts_money_services` boolean — The business offers money services, investment products, and/or other financial services. _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/business-accounts)_
    - `conducts_money_services_using_bridge` boolean — The business plans to conduct money services, investment products, and/or other financial services using its Bridge account. A document with purpose 'flow_of_funds' is required if this is true. _Required if `conducts_money_services` is true_
    - `conducts_money_services_description` string — Description of the money services offered by the business. _Required if `conducts_money_services` is true_
    - `identifying_information` object[]
      - `type` 'drivers_license' | 'matriculate_id' | 'military_id' | 'national_id' | 'passport' | 'permanent_residency_id' | 'state_or_provincial_id' | 'visa' | 'abn' | 'acn' | 'ahv' | 'ak' | 'aom' | 'arbn' | 'avs' | 'bc' | 'bce' | 'bin' | 'bir' | 'bp' | 'brn' | 'bsn' | 'bvn' | 'cc' | 'cdi' | 'cedula_juridica' | 'cf' | 'cif' | 'cin' | 'cipc' | 'cn' | 'cnp' | 'cnpj' | 'cpf' | 'cpr' | 'crc' | 'crib' | 'crn' | 'cro' | 'cui' | 'cuil' | 'curp' | 'cuit' | 'cvr' | 'edrpou' | 'ein' | 'embg' | 'emirates_id' | 'en' | 'fin' | 'fn' | 'gstin' | 'gui' | 'hetu' | 'hkid' | 'hn' | 'ic' | 'ico' | 'id' | 'id_broj' | 'idno' | 'idnp' | 'idnr' | 'if' | 'iin' | 'ik' | 'inn' | 'ird' | 'itin' | 'itr' | 'iva' | 'jmbg' | 'kbo' | 'kvk' | 'matricule' | 'mf' | 'mn' | 'ms' | 'mst' | 'nic' | 'nicn' | 'nie' | 'nif' | 'nin' | 'nino' | 'nip' | 'nipc' | 'nipt' | 'nit' | 'npwp' | 'nric' | 'nrn' | 'nrt' | 'ntn' | 'nuit' | 'nzbn' | 'oib' | 'orgnr' | 'other' | 'pan' | 'partita_iva' | 'pesel' | 'pib' | 'pin' | 'pk' | 'ppsn' | 'qid' | 'rc' | 'regon' | 'rfc' | 'ricn' | 'rif' | 'rn' | 'rnc' | 'rnokpp' | 'rp' | 'rrn' | 'rtn' | 'ruc' | 'rut' | 'si' | 'sin' | 'siren' | 'siret' | 'spi' | 'ssm' | 'ssn' | 'steuer_id' | 'strn' | 'tckn' | 'tfn' | 'tin' | 'tpin' | 'trn' | 'ucn' | 'uen' | 'uic' | 'uid' | 'usc' | 'ust_idnr' | 'utr' | 'vat' | 'vkn' | 'voen' | 'y_tunnus', required — Tax identification number type or government-issued ID document type (see enum). Country-specific tax and national ID lists: [Individuals](https://apidocs.bridge.xyz/docs/individual-tax-identification-numbers-by-country), [Businesses](https://apidocs.bridge.xyz/docs/business-tax-identification-numbers-by-country). **EEA / BBSA (policy in `eea_requirements.rb`):** In-scope individuals and UBOs need **both** a valid national-ID-type entry and a valid TIN per [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements). In-scope businesses need business registration **and** business tax ID types per country tables there. **TIN issuing country** must match residence (individuals) or incorporation (businesses). **Foreign tax** outside the incorporation country: set `has_foreign_tax_registration` on the business customer and add TIN objects per jurisdiction ([foreign tax / tax residency](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#tax-residency-status-foreign-tax-registry)).
      - `issuing_country` string, required — The ISO 3166-1 (three-character) country code that issued the provided document.
      - `number` string — The unique identifier of the document. Required if this document is being used as a tax identification number (e.g., you are providing a passport or national_id with no other identification).
      - `description` string — A description describing the provided document. This field is required when `other` is selected.
      - `expiration` string — The expiration date of the given document in yyyy-mm-dd format.
      - `image_front` string — This field is optionally accepted for tax_id types, but required for government_id types. Base64 encoded image* of the front side of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px \n\n*Maximum File Size: 15MB\n\n*Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif _Note: When combined with an `image_back`, the combined size of both images must not exceed 24MB._
      - `image_back` string — Base64 encoded image* of the back side of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px \n\n*Maximum File Size: 15MB\n\n*Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif _Note: When combined with an `image_front`, the combined size of both images must not exceed 24MB._
    - `documents` object[] — Please click "ADD OBJECT" for more information.
      - `purposes` string[], required — **EEA / BBSA (business KYB):** purposes used in [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements) include `business_formation`, `evidence_of_good_standing`, `ownership_information`, and `proof_of_signatory_authority` (letter of authorization). See supported-documents for the full enum [here](https://apidocs.bridge.xyz/docs/supported-documents). For **non-reliance** EEA in-scope businesses, `business_formation`, `evidence_of_good_standing`, and `ownership_information` are evaluated **independently** in CPU policy: each may be satisfied by an uploaded/Persona-backed document **or**, when Stripe business-registry verification passes with the required checks and provider metadata, by that verification alone for that document slot (see `BUSINESS_REGISTRY_CHECK` and `BUSINESS_OWNERSHIP` in `eea_requirements.rb`).
      - `file` string, required — Base64 encoded image of the provided document, following the data-uri scheme i.e. data:image/[type];base64,[base_64_encoded_file_contents], with a minimum size of 200px x 200px *Maximum File Size: 24MB *Valid file types: .pdf, .jpeg, .jpg, .png, .heic, .tif
      - `description` string — A description describing the provided document. This field is required when `other` is provided as one of the purposes.
    - `incorporation_date` string, date — The date the business was incorporated, in ISO 8601 format (YYYY-MM-DD).
    - `customer_types_served` 'individuals' | 'businesses' | 'both' — The types of customers served by this business.
    - `verified_business_formation_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** businesses on **reliance**, may satisfy `BUSINESS_REGISTRY_CHECK_RELIANCE` together with good-standing/registry evidence (or use document purpose `business_formation`). See [EEA updated requirements](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#evidence-of-good-standing).
    - `verified_business_registry_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** businesses on **reliance**, registry-side evidence for `BUSINESS_REGISTRY_CHECK_RELIANCE`. Use `verified_evidence_of_good_standing_at` when the artifact maps to purpose `evidence_of_good_standing`.
    - `verified_evidence_of_good_standing_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** businesses on **reliance**, evidence-of-good-standing path (`evidence_of_good_standing`) under `BUSINESS_REGISTRY_CHECK_RELIANCE`.
    - `verified_ownership_at` string, date-time — Write-only ISO 8601 timestamp. For **EEA in-scope** businesses on **reliance**, may satisfy `BUSINESS_OWNERSHIP_RELIANCE` (ownership / cap-table documentation). See [EEA updated requirements — ownership document](https://apidocs.bridge.xyz/platform/customers/customers/eea-updated-requirements#ownership-document-always-required).
    - `regulated_activity` object
      - `regulated_activities_description` string, required — A detailed description of the regulated activities the business is licensed to conduct.
      - `primary_regulatory_authority_country` string, required — The ISO 3166-1 (three-character) country code.
      - `primary_regulatory_authority_name` string, required — The name of the primary regulatory authority that oversees the business's regulated activities.
      - `license_number` string, required — The license number or registration number assigned by the business's primary regulator.
    - `acting_as_intermediary` boolean — Is the customer acting as an intermediary for a third party? _Required for high risk customers. More information found [here](https://apidocs.bridge.xyz/docs/business-accounts)_
    - `client_reference_id` string — A client-provided reference ID that uniquely identifies a resource in the client's system

## Response `201`

Customer object created

- Customer
  - `id` string — A UUID that uniquely identifies a resource
  - `first_name` string
  - `last_name` string
  - `email` string
  - `status` 'active' | 'awaiting_questionnaire' | 'awaiting_ubo' | 'incomplete' | 'not_started' | 'offboarded' | 'paused' | 'rejected' | 'under_review' — `offboarded`: represents a customer's account that was internally reviewed and closed due to suspicious activity. `paused`: represents a customer's account that is currently under review because of activity on the platform.
  - `capabilities` object
    - `payin_crypto` 'pending' | 'active' | 'inactive' | 'rejected' — State of the customer capability
    - `payout_crypto` 'pending' | 'active' | 'inactive' | 'rejected' — State of the customer capability
    - `payin_fiat` 'pending' | 'active' | 'inactive' | 'rejected' — State of the customer capability
    - `payout_fiat` 'pending' | 'active' | 'inactive' | 'rejected' — State of the customer capability
  - `future_requirements_due` string[] — Information about requirements that may be needed in the future for the customer (eg. enhanced KYC checks for high volume transactions etc.). Please consult our KYC guide on how to resolve each requirement.
  - `requirements_due` string[] — KYC requirements still needed to be completed. Please consult our KYC guide on how to resolve each requirement.
  - `created_at` string, date-time — Time of creation of the customer
  - `updated_at` string, date-time — Time of last update of the customer
  - `rejection_reasons` RejectionReason[] — Reasons why a customer KYC was rejected
    - `developer_reason` string — Developer information for why a customer was rejected. Not to be shared with the customer.
    - `reason` string — Reason for why a customer was rejected. To be shared with the customer.
    - `created_at` string, nullable — Time of creation of the rejection reason
  - `has_accepted_terms_of_service` boolean — Whether the customer has accepted the terms of service.
  - `client_reference_id` string — A client-provided reference ID that uniquely identifies a resource in the client's system
  - `endorsements` Endorsement[] — A summary of whether the customer has received approvals to complete onboarding or use certain products/services offered by Bridge.
    - `name` 'base' | 'cards' | 'cop' | 'faster_payments' | 'pix' | 'pix_onramp' | 'pix_offramp' | 'sepa' | 'spei', required — The type of endorsement. Note: `pix_onramp` (BRL deposits via PIX) and `pix_offramp` (BRL withdrawals via PIX) can be requested individually for granular access. Requesting `pix` grants both directional endorsements. `pix_onramp` is not supported for non-BR individuals; if requested (or requested via `pix`) it will remain in an `endorsement_not_available_in_customers_region` state and no action is required.
    - `status` 'incomplete' | 'approved' | 'revoked', required
    - `additional_requirements` EndorsementRequirementEnum[] — This field is deprecated. See endorsement.missing instead. Additional requirements that need to be completed for obtaining the approval for the endorsement. 1. `kyc_approval` and `tos_acceptance` are required for the `base` endorsement. 2. `tos_v2_acceptance` is required for `sepa`. If `tos_v2_acceptance` is not completed, a ToS acceptance link can be retrieved for the current customer from the endpoint `/v0/customers/{customerID}/tos_acceptance_link`. To fulfill the `kyc_with_proof_of_address` requirement, a KYC link can be specifically requested for the current customer via the endpoint `/v0/customers/{customerID}/kyc_link`, with `endorsement=sepa` included in the query string
    - `requirements` object — This object aims to replace the `additional_requirements` attribute as it gives a more comprehensive view into what items are already `complete` or `pending` and which are `missing` or have `issues`.
      - `complete` string[], required — an array of requirements that have already been completed for this endorsement.
      - `pending` string[], required — an array of requirements that are pending review for this endorsement.
      - `missing` object, required — an object that will specify an indepth breakdown of what items are missing for this endorsement.
      - `issues` union[], required — An array of issues preventing this endorsement from being approved. Values in this array can be either a string such as `endorsement_not_available_in_customers_region` or an object that correlates the issue to a particular field such as `{ id_front_photo: "id_expired" }`
        - union
          - string
          - object
    - `future_requirements` object[] — An array of upcoming requirements that will become active on their effective_date. Each entry has the same structure as the current requirements object, plus an effective_date indicating when the requirement takes effect.
      - `effective_date` string, date, required
      - `verification_stage` 'automatic_review' | 'manual_review' | 'post_review' | 'complete' | 'not_applicable', required — The verification stage this future requirement is currently at.
      - `pending` string[], required
      - `missing` object, nullable, required
      - `issues` union[], required
        - union
          - string
          - object

## Other responses

- `400` — Request containing missing or invalid parameters.
- `401` — Missing or invalid API key
- `500` — Unexpected error. User may try and send the request again.

---

[API](https://skmtc.net/bridge/apis/bridge-api.md) · [All operations](https://skmtc.net/bridge/apis/bridge-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bridge/bridge-api/revisions/570998bde3b5/schema)
