Skip to content

Create a person token

Creates a single-use token that represents the details for a person. Use this when you create or update persons associated with an Account v2. Learn more about account tokens. You can only create person tokens with your application’s publishable key and in live mode. You can use your application’s secret key to create person tokens only in test mode.

Parameters

  • additional_addresses (array of objects, optional) Additional addresses associated with the person.

    • additional_addresses.purpose (enum, required) Purpose of additional address. Possible enum values:

      • registered The registered address.
    • additional_addresses.city (string, optional) City, district, suburb, town, or village.

    • additional_addresses.country (enum, optional) Two-letter country code (ISO 3166-1 alpha-2).

    • additional_addresses.line1 (string, optional) Address line 1 (e.g., street, PO Box, or company name).

    • additional_addresses.line2 (string, optional) Address line 2 (e.g., apartment, suite, unit, or building).

    • additional_addresses.postal_code (string, optional) ZIP or postal code.

    • additional_addresses.state (string, optional) State, county, province, or region.

    • additional_addresses.town (string, optional) Town or district.

  • additional_names (array of objects, optional) Additional names (e.g. aliases) associated with the person.

    • additional_names.purpose (enum, required) The purpose or type of the additional name. Possible enum values:

      • alias An alias for the individual’s name.

      • maiden The maiden name of the individual.

    • additional_names.full_name (string, optional) The person’s full name.

    • additional_names.given_name (string, optional) The person’s first or given name.

    • additional_names.surname (string, optional) The person’s last or family name.

  • additional_terms_of_service (object, optional) Attestations of accepted terms of service agreements.

    • additional_terms_of_service.account (object, optional) Details on the Person’s acceptance of the [Stripe Services Agreement]; IP, date, and User Agent are expanded by Stripe.

      • additional_terms_of_service.account.shown_and_accepted (boolean, optional) The boolean value indicating if the terms of service have been accepted.
  • address (object, optional) The person’s residential address.

    • address.city (string, optional) City, district, suburb, town, or village.

    • address.country (enum, optional) Two-letter country code (ISO 3166-1 alpha-2).

    • address.line1 (string, optional) Address line 1 (e.g., street, PO Box, or company name).

    • address.line2 (string, optional) Address line 2 (e.g., apartment, suite, unit, or building).

    • address.postal_code (string, optional) ZIP or postal code.

    • address.state (string, optional) State, county, province, or region.

    • address.town (string, optional) Town or district.

  • date_of_birth (object, optional) The person’s date of birth.

    • date_of_birth.day (integer, required) The day of the birth.

    • date_of_birth.month (integer, required) The month of birth.

    • date_of_birth.year (integer, required) The year of birth.

  • documents (object, optional) Documents that may be submitted to satisfy various informational requests.

    • documents.company_authorization (object, optional) One or more documents that demonstrate proof that this person is authorized to represent the company.

      • documents.company_authorization.files (array of strings, required) One or more document IDs returned by a file upload with a purpose value of account_requirement.

      • documents.company_authorization.type (enum, required) The format of the document. Currently supports files only. Possible enum values:

        • files Document type with multiple files.
    • documents.passport (object, optional) One or more documents showing the person’s passport page with photo and personal data.

      • documents.passport.files (array of strings, required) One or more document IDs returned by a file upload with a purpose value of account_requirement.

      • documents.passport.type (enum, required) The format of the document. Currently supports files only. Possible enum values:

        • files Document type with multiple files.
    • documents.primary_verification (object, optional) An identifying document showing the person’s name, either a passport or local ID card.

      • documents.primary_verification.front_back (object, required) The file upload tokens referring to each side of the document.

        • documents.primary_verification.front_back.back (string, optional) A file upload token representing the back of the verification document. The purpose of the uploaded file should be ‘identity_document’. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.

        • documents.primary_verification.front_back.front (string, optional) A file upload token representing the front of the verification document. The purpose of the uploaded file should be ‘identity_document’. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.

      • documents.primary_verification.type (enum, required) The format of the verification document. Currently supports front_back only. Possible enum values:

        • front_back Document type with both front and back sides.
    • documents.secondary_verification (object, optional) A document showing address, either a passport, local ID card, or utility bill from a well-known utility company.

      • documents.secondary_verification.front_back (object, required) The file upload tokens referring to each side of the document.

        • documents.secondary_verification.front_back.back (string, optional) A file upload token representing the back of the verification document. The purpose of the uploaded file should be ‘identity_document’. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.

        • documents.secondary_verification.front_back.front (string, optional) A file upload token representing the front of the verification document. The purpose of the uploaded file should be ‘identity_document’. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.

      • documents.secondary_verification.type (enum, required) The format of the verification document. Currently supports front_back only. Possible enum values:

        • front_back Document type with both front and back sides.
    • documents.visa (object, optional) One or more documents showing the person’s visa required for living in the country where they are residing.

      • documents.visa.files (array of strings, required) One or more document IDs returned by a file upload with a purpose value of account_requirement.

      • documents.visa.type (enum, required) The format of the document. Currently supports files only. Possible enum values:

        • files Document type with multiple files.
  • email (string, optional) Email.

  • given_name (string, optional) The person’s first name.

  • id_numbers (array of objects, optional) The identification numbers (e.g., SSN) associated with the person.

    • id_numbers.type (enum, required) The ID number type of an individual. Possible enum values:

      • ae_eid Emirates ID - United Arab Emirates.

      • ao_nif Número de Identificação Fiscal (Tax Identification Number) - Angola.

      • ar_cuil Código Único de Identificación Laboral (CUIL) - Argentina.

      • ar_dni Documento Nacional de Identidad (DNI) - Argentina.

      • at_stn Steuernummer - Austria.

      • az_tin Tax Identification Number - Azerbaijan.

      • bd_brc Birth Registration Certificate (BRC) - Bangladesh.

      • bd_etin Electronic Tax Identification Number (ETIN) - Bangladesh.

      • bd_nid National Identification Number (NID) - Bangladesh.

      • be_nrn National Registration Number (NRN) - Belgium.

      • bg_ucn Unified Civil Number (Единен граждански номер) - Bulgaria.

      • bn_nric National Registration Identity Card number (NRIC) - Brunei Darussalam.

      • br_cpf Cadastro de Pessoas Físicas - Brazil.

      • ca_sin Social Insurance Number (SIN) - Canada.

      • ch_oasi OASI / AHV / AVS - Switzerland.

      • cl_rut Rol Único Tributario (RUT) - Chile.

      • cn_pp Passport number (护照号码) - China.

      • co_nuip Número Único de Identificación Personal (NUIP) - Colombia.

      • cr_ci Número de cédula de identidad - Costa Rica.

      • cr_cpf Cédula de Persona Fisica (CPF) - Costa Rica.

      • cr_dimex Documento de Identidad Migratorio para Extranjeros (DIMEX) - Costa Rica.

      • cr_nite Número de Indetificación Tributario Especial (NITE) - Costa Rica.

      • cy_tic Tax Identification Code (TIC) - Cyprus.

      • cz_rc Rodné číslo - Czech Republic.

      • de_stn Tax Identification Number (Steuer-ID) - Germany.

      • dk_cpr Personnummer (CPR) - Denmark.

      • do_cie Número de cédula de identidad y electoral - Dominican Republic.

      • do_rcn Registro Nacional del Contribuyente (RNC) - Dominican Republic.

      • ec_ci Número de Cédula de Identidad - Ecuador.

      • ee_ik Isikukood (PIC) - Estonia.

      • es_nif Número de Identificación Fiscal (NIF) - Spain.

      • fi_hetu Henkilötunnus (HETU) - Finland.

      • fr_nir Numéro d’inscription au répertoire (NIR) - France.

      • gb_nino National Insurance Number (NINO) - United Kingdom.

      • gr_afm Tax Identification Number (ΑΦΜ) - Greece.

      • gt_nit Número de Identificación Tributaria (NIT) - Guatemala.

      • hk_id Hong Kong Identity Card Number - Hong Kong.

      • hr_oib Osobni identifikacijski broj (OIB) - Croatia.

      • hu_ad Adóazonosító - Hungary.

      • id_nik Nomor Induk Kependudukan (NIK) - Indonesia.

      • ie_ppsn Personal Public Service Number (PPSN) - Ireland.

      • is_kt Kennitala - Iceland.

      • it_cf Codice fiscale - Italy.

      • jp_inc Individual Number Card (個人番号) - Japan.

      • ke_pin Kenya Revenue Authority PIN - Kenya.

      • kz_iin Identification Number (IIN) - Kazakhstan.

      • li_peid Personenidentifikationsnummer (PEID) - Liechtenstein.

      • lt_ak Asmens kodas - Lithuania.

      • lu_nif Numéro d’Identification Personnelle (NIF) - Luxembourg.

      • lv_pk Personas kods - Latvia.

      • mx_rfc Personal RFC - Mexico.

      • my_nric National Registration Identity Card Number - Malaysia.

      • mz_nuit Mozambique Taxpayer Single ID Number (NUIT) - Mozambique.

      • ng_nin National Identity Number (NIN) - Nigeria.

      • nl_bsn Citizen Service Number (BSN) - Netherlands.

      • no_nin Fødselsnummer (NIN) - Norway.

      • nz_ird IRD number - New Zealand.

      • pe_dni Documento Nacional de Identidad (DNI) - Peru.

      • pk_cnic Computerized National Identity Card Number (CNIC) - Pakistan.

      • pk_snic Smart National Identity Card Number (SNIC) - Pakistan.

      • pl_pesel PESEL number - Poland.

      • pt_nif Número de Identificação Fiscal (NIF) - Portugal.

      • ro_cnp Codul Numeric Personal (CNP) - Romania.

      • sa_tin ZATCA-Issued Tax Identification Number - Saudi Arabia.

      • se_pin Personnummer (PIN) - Sweden.

      • sg_fin Foreign Identification Number - Singapore.

      • sg_nric National Registration Identity Card - Singapore.

      • sk_dic Daňové Identifikačné Číslo (DIC) - Slovakia.

      • th_lc Laser Code (เลเซอร์ ไอดี) - Thailand.

      • th_pin Personal Identification Number (เลขประจำตัวประชาชน) - Thailand.

      • tr_tin Tax Identification Number (TIN) - Turkey.

      • us_itin Individual Taxpayer Identification Number - United States.

      • us_itin_last_4 Last 4 digits of Individual Taxpayer Identification Number - United States.

      • us_ssn Social Security Number - United States. If the us_ssn_last_4 is verified, this value populates automatically.

      • us_ssn_last_4 Last 4 digits of Social Security Number - United States.

      • uy_dni Número de Documento Nacional de Identidad - Uruguay.

      • za_id South African ID Number - South Africa.

    • id_numbers.value (string, required) The value of the ID number.

  • legal_gender (enum, optional) The person’s gender (International regulations require either “male” or “female”). Possible enum values:

    • female Female gender person.

    • male Male gender person.

  • metadata (map, optional) Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

  • nationalities (array of enums, optional) The nationalities (countries) this person is associated with.

  • phone (string, optional) The phone number for this person.

  • political_exposure (enum, optional) The person’s political exposure. Possible enum values:

    • existing The person has disclosed that they do have political exposure.

    • none The person has disclosed that they have no political exposure.

  • relationship (object, optional) The relationship that this person has with the Account’s business or legal entity.

    • relationship.authorizer (boolean, optional) Whether the individual is an authorizer of the Account’s identity.

    • relationship.director (boolean, optional) Indicates whether the person is a director of the associated legal entity.

    • relationship.executive (boolean, optional) Indicates whether the person is an executive of the associated legal entity.

    • relationship.legal_guardian (boolean, optional) Indicates whether the person is a legal guardian of the associated legal entity.

    • relationship.owner (boolean, optional) Indicates whether the person is an owner of the associated legal entity.

    • relationship.percent_ownership (decimal, optional) The percentage of ownership the person has in the associated legal entity.

    • relationship.representative (boolean, optional) Indicates whether the person is a representative of the associated legal entity.

    • relationship.title (string, optional) The title or position the person holds in the associated legal entity.

  • script_addresses (object, optional) The script addresses (e.g., non-Latin characters) associated with the person.

    • script_addresses.kana (object, optional) Kana Address.

      • script_addresses.kana.city (string, optional) City, district, suburb, town, or village.

      • script_addresses.kana.country (enum, optional) Two-letter country code (ISO 3166-1 alpha-2).

      • script_addresses.kana.line1 (string, optional) Address line 1 (e.g., street, PO Box, or company name).

      • script_addresses.kana.line2 (string, optional) Address line 2 (e.g., apartment, suite, unit, or building).

      • script_addresses.kana.postal_code (string, optional) ZIP or postal code.

      • script_addresses.kana.state (string, optional) State, county, province, or region.

      • script_addresses.kana.town (string, optional) Town or district.

    • script_addresses.kanji (object, optional) Kanji Address.

      • script_addresses.kanji.city (string, optional) City, district, suburb, town, or village.

      • script_addresses.kanji.country (enum, optional) Two-letter country code (ISO 3166-1 alpha-2).

      • script_addresses.kanji.line1 (string, optional) Address line 1 (e.g., street, PO Box, or company name).

      • script_addresses.kanji.line2 (string, optional) Address line 2 (e.g., apartment, suite, unit, or building).

      • script_addresses.kanji.postal_code (string, optional) ZIP or postal code.

      • script_addresses.kanji.state (string, optional) State, county, province, or region.

      • script_addresses.kanji.town (string, optional) Town or district.

  • script_names (object, optional) The script names (e.g. non-Latin characters) associated with the person.

    • script_names.kana (object, optional) Persons name in kana script.

      • script_names.kana.given_name (string, optional) The person’s first or given name.

      • script_names.kana.surname (string, optional) The person’s last or family name.

    • script_names.kanji (object, optional) Persons name in kanji script.

      • script_names.kanji.given_name (string, optional) The person’s first or given name.

      • script_names.kanji.surname (string, optional) The person’s last or family name.

  • surname (string, optional) The person’s last name.

Returns

Response attributes

  • id (string) Unique identifier for the token.

  • object (string, value is "v2.core.account_person_token") String representing the object’s type. Objects of the same type share the same value of the object field.

  • created (timestamp) Time at which the token was created. Represented as a RFC 3339 date & time UTC value in millisecond precision, for example: 2022-09-18T13:22:18.123Z.

  • expires_at (timestamp) Time at which the token will expire.

  • livemode (boolean) Has the value true if the token exists in live mode or the value false if the object exists in test mode.

  • used (boolean) Determines if the token has already been used (tokens can only be used once).

Error Codes

HTTP status codeCodeDescription
400non_connect_platform_accounts_v2_access_blockedNeeds to use the newer API version or onboard to Connect.
400platform_registration_requiredThe direct merchant has not signed up for Connect and cannot create connected accounts.
400token_must_be_created_with_publishable_keyToken must be created with publishable key.
429account_rate_limit_exceededAccount cannot exceed a configured concurrency rate limit on updates.
curl
curl -X POST https://api.stripe.com/v2/core/accounts/{{ACCOUNT_ID}}/person_tokens \
  -H "Authorization: Bearer <<YOUR_SECRET_KEY>>" \
  -H "Stripe-Version: 2026-04-22.dahlia" \
  --json '{
    "given_name": "Jenny",
    "surname": "Rosen",
    "email": "jenny.rosen@example.com",
    "address": {
        "line1": "27 Fredrick Ave",
        "city": "Brothers",
        "postal_code": "97712",
        "state": "OR",
        "country": "US"
    },
    "id_numbers": [
        {
            "type": "us_ssn_last_4",
            "value": "0000"
        }
    ],
    "relationship": {
        "owner": true,
        "percent_ownership": "0.8",
        "representative": true,
        "title": "CEO"
    }
  }'

Response

json
{
  "id": "perstok_61RS0CgWt1xBt8M1Q16RS0Cg0WSQO5ZXUVpZxZ9tAIbY",
  "object": "v2.core.account_person_token",
  "created": "2025-11-17T14:00:00.000Z",
  "expires_at": "2025-11-17T14:10:00.000Z",
  "livemode": true,
  "used": false
}

Stripe API Reference - Self-contained docs reference, refreshed 2026-05-18