View Source Stripe.Person (stripity_stripe v3.1.1)

This is an object representing a person associated with a Stripe account.

A platform cannot access a Standard or Express account's persons after the account starts onboarding, such as after generating an account link for the account. See the Standard onboarding or Express onboarding documentation for information about platform prefilling and account onboarding steps.

Related guide: Handling identity verification with the API

Link to this section Summary

Types

Details on the legal guardian's acceptance of the main Stripe service agreement.

A document showing address, either a passport, local ID card, or utility bill from a well-known utility company.

Details on the legal guardian's acceptance of the required Stripe agreements.

The person's address.

The Kana variation of the person's address (Japan only).

The Kanji variation of the person's address (Japan only).

One or more documents that demonstrate proof that this person is authorized to represent the company.

An identifying document, either a passport or local ID card.

Documents that may be submitted to satisfy various informational requests.

One or more documents showing the person's passport page with photo and personal data.

The person's registered address.

t()

The person type.

The person's verification status.

One or more documents showing the person's visa required for living in the country where they are residing.

Functions

Deletes an existing person’s relationship to the account’s legal entity. Any person with a relationship for an account can be deleted through the API, except if the person is the account_opener. If your integration is using the executive parameter, you cannot delete the only verified executive on file.

Returns a list of people associated with the account’s legal entity. The people are returned sorted by creation date, with the most recent people appearing first.

Link to this section Types

@type account() :: %{
  optional(:date) => integer(),
  optional(:ip) => binary(),
  optional(:user_agent) => binary() | binary()
}

Details on the legal guardian's acceptance of the main Stripe service agreement.

@type additional_document() :: %{
  optional(:back) => binary(),
  optional(:front) => binary()
}

A document showing address, either a passport, local ID card, or utility bill from a well-known utility company.

Link to this type

additional_tos_acceptances()

View Source
@type additional_tos_acceptances() :: %{optional(:account) => account()}

Details on the legal guardian's acceptance of the required Stripe agreements.

@type address() :: %{
  optional(:city) => binary(),
  optional(:country) => binary(),
  optional(:line1) => binary(),
  optional(:line2) => binary(),
  optional(:postal_code) => binary(),
  optional(:state) => binary()
}

The person's address.

@type address_kana() :: %{
  optional(:city) => binary(),
  optional(:country) => binary(),
  optional(:line1) => binary(),
  optional(:line2) => binary(),
  optional(:postal_code) => binary(),
  optional(:state) => binary(),
  optional(:town) => binary()
}

The Kana variation of the person's address (Japan only).

@type address_kanji() :: %{
  optional(:city) => binary(),
  optional(:country) => binary(),
  optional(:line1) => binary(),
  optional(:line2) => binary(),
  optional(:postal_code) => binary(),
  optional(:state) => binary(),
  optional(:town) => binary()
}

The Kanji variation of the person's address (Japan only).

Link to this type

company_authorization()

View Source
@type company_authorization() :: %{optional(:files) => [binary() | binary()]}

One or more documents that demonstrate proof that this person is authorized to represent the company.

@type dob() :: %{
  optional(:day) => integer(),
  optional(:month) => integer(),
  optional(:year) => integer()
}
@type document() :: %{optional(:back) => binary(), optional(:front) => binary()}

An identifying document, either a passport or local ID card.

@type documents() :: %{
  optional(:company_authorization) => company_authorization(),
  optional(:passport) => passport(),
  optional(:visa) => visa()
}

Documents that may be submitted to satisfy various informational requests.

@type passport() :: %{optional(:files) => [binary() | binary()]}

One or more documents showing the person's passport page with photo and personal data.

@type registered_address() :: %{
  optional(:city) => binary(),
  optional(:country) => binary(),
  optional(:line1) => binary(),
  optional(:line2) => binary(),
  optional(:postal_code) => binary(),
  optional(:state) => binary()
}

The person's registered address.

@type relationship() :: %{
  optional(:director) => boolean(),
  optional(:executive) => boolean(),
  optional(:legal_guardian) => boolean(),
  optional(:owner) => boolean(),
  optional(:representative) => boolean()
}
@type t() :: %Stripe.Person{
  account: binary(),
  additional_tos_acceptances: term(),
  address: term(),
  address_kana: term() | nil,
  address_kanji: term() | nil,
  created: integer(),
  dob: term(),
  email: binary() | nil,
  first_name: binary() | nil,
  first_name_kana: binary() | nil,
  first_name_kanji: binary() | nil,
  full_name_aliases: term(),
  future_requirements: term() | nil,
  gender: binary() | nil,
  id: binary(),
  id_number_provided: boolean(),
  id_number_secondary_provided: boolean(),
  last_name: binary() | nil,
  last_name_kana: binary() | nil,
  last_name_kanji: binary() | nil,
  maiden_name: binary() | nil,
  metadata: term(),
  nationality: binary() | nil,
  object: binary(),
  phone: binary() | nil,
  political_exposure: binary(),
  registered_address: term(),
  relationship: term(),
  requirements: term() | nil,
  ssn_last_4_provided: boolean(),
  verification: term()
}

The person type.

  • account The account the person is associated with.
  • additional_tos_acceptances
  • address
  • address_kana The Kana variation of the person's address (Japan only).
  • address_kanji The Kanji variation of the person's address (Japan only).
  • created Time at which the object was created. Measured in seconds since the Unix epoch.
  • dob
  • email The person's email address.
  • first_name The person's first name.
  • first_name_kana The Kana variation of the person's first name (Japan only).
  • first_name_kanji The Kanji variation of the person's first name (Japan only).
  • full_name_aliases A list of alternate names or aliases that the person is known by.
  • future_requirements Information about the upcoming new requirements for this person, including what information needs to be collected, and by when.
  • gender The person's gender (International regulations require either "male" or "female").
  • id Unique identifier for the object.
  • id_number_provided Whether the person's id_number was provided. True if either the full ID number was provided or if only the required part of the ID number was provided (ex. last four of an individual's SSN for the US indicated by ssn_last_4_provided).
  • id_number_secondary_provided Whether the person's id_number_secondary was provided.
  • last_name The person's last name.
  • last_name_kana The Kana variation of the person's last name (Japan only).
  • last_name_kanji The Kanji variation of the person's last name (Japan only).
  • maiden_name The person's maiden name.
  • metadata 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.
  • nationality The country where the person is a national.
  • object String representing the object's type. Objects of the same type share the same value.
  • phone The person's phone number.
  • political_exposure Indicates if the person or any of their representatives, family members, or other closely related persons, declares that they hold or have held an important public job or function, in any jurisdiction.
  • registered_address
  • relationship
  • requirements Information about the requirements for this person, including what information needs to be collected, and by when.
  • ssn_last_4_provided Whether the last four digits of the person's Social Security number have been provided (U.S. only).
  • verification
@type verification() :: %{
  optional(:additional_document) => additional_document(),
  optional(:document) => document()
}

The person's verification status.

@type visa() :: %{optional(:files) => [binary() | binary()]}

One or more documents showing the person's visa required for living in the country where they are residing.

Link to this section Functions

Link to this function

create(account, params \\ %{}, opts \\ [])

View Source
@spec create(
  account :: binary(),
  params :: %{
    optional(:additional_tos_acceptances) => additional_tos_acceptances(),
    optional(:address) => address(),
    optional(:address_kana) => address_kana(),
    optional(:address_kanji) => address_kanji(),
    optional(:dob) => dob() | binary(),
    optional(:documents) => documents(),
    optional(:email) => binary(),
    optional(:expand) => [binary()],
    optional(:first_name) => binary(),
    optional(:first_name_kana) => binary(),
    optional(:first_name_kanji) => binary(),
    optional(:full_name_aliases) => [binary()] | binary(),
    optional(:gender) => binary(),
    optional(:id_number) => binary(),
    optional(:id_number_secondary) => binary(),
    optional(:last_name) => binary(),
    optional(:last_name_kana) => binary(),
    optional(:last_name_kanji) => binary(),
    optional(:maiden_name) => binary(),
    optional(:metadata) => %{optional(binary()) => binary()} | binary(),
    optional(:nationality) => binary(),
    optional(:person_token) => binary(),
    optional(:phone) => binary(),
    optional(:political_exposure) => binary(),
    optional(:registered_address) => registered_address(),
    optional(:relationship) => relationship(),
    optional(:ssn_last_4) => binary(),
    optional(:verification) => verification()
  },
  opts :: Keyword.t()
) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Creates a new person.

Details

  • Method: post
  • Path: /v1/accounts/{account}/persons
Link to this function

delete(account, person, opts \\ [])

View Source
@spec delete(account :: binary(), person :: binary(), opts :: Keyword.t()) ::
  {:ok, Stripe.DeletedPerson.t()}
  | {:error, Stripe.ApiErrors.t()}
  | {:error, term()}

Deletes an existing person’s relationship to the account’s legal entity. Any person with a relationship for an account can be deleted through the API, except if the person is the account_opener. If your integration is using the executive parameter, you cannot delete the only verified executive on file.

Details

  • Method: delete
  • Path: /v1/accounts/{account}/persons/{person}
Link to this function

list(account, params \\ %{}, opts \\ [])

View Source
@spec list(
  account :: binary(),
  params :: %{
    optional(:ending_before) => binary(),
    optional(:expand) => [binary()],
    optional(:limit) => integer(),
    optional(:relationship) => relationship(),
    optional(:starting_after) => binary()
  },
  opts :: Keyword.t()
) ::
  {:ok, Stripe.List.t(t())} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Returns a list of people associated with the account’s legal entity. The people are returned sorted by creation date, with the most recent people appearing first.

Details

  • Method: get
  • Path: /v1/accounts/{account}/persons
Link to this function

retrieve(account, person, params \\ %{}, opts \\ [])

View Source
@spec retrieve(
  account :: binary(),
  person :: binary(),
  params :: %{optional(:expand) => [binary()]},
  opts :: Keyword.t()
) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Retrieves an existing person.

Details

  • Method: get
  • Path: /v1/accounts/{account}/persons/{person}
Link to this function

update(account, person, params \\ %{}, opts \\ [])

View Source
@spec update(
  account :: binary(),
  person :: binary(),
  params :: %{
    optional(:additional_tos_acceptances) => additional_tos_acceptances(),
    optional(:address) => address(),
    optional(:address_kana) => address_kana(),
    optional(:address_kanji) => address_kanji(),
    optional(:dob) => dob() | binary(),
    optional(:documents) => documents(),
    optional(:email) => binary(),
    optional(:expand) => [binary()],
    optional(:first_name) => binary(),
    optional(:first_name_kana) => binary(),
    optional(:first_name_kanji) => binary(),
    optional(:full_name_aliases) => [binary()] | binary(),
    optional(:gender) => binary(),
    optional(:id_number) => binary(),
    optional(:id_number_secondary) => binary(),
    optional(:last_name) => binary(),
    optional(:last_name_kana) => binary(),
    optional(:last_name_kanji) => binary(),
    optional(:maiden_name) => binary(),
    optional(:metadata) => %{optional(binary()) => binary()} | binary(),
    optional(:nationality) => binary(),
    optional(:person_token) => binary(),
    optional(:phone) => binary(),
    optional(:political_exposure) => binary(),
    optional(:registered_address) => registered_address(),
    optional(:relationship) => relationship(),
    optional(:ssn_last_4) => binary(),
    optional(:verification) => verification()
  },
  opts :: Keyword.t()
) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Updates an existing person.

Details

  • Method: post
  • Path: /v1/accounts/{account}/persons/{person}