# `Stripe.Resources.Person.Verification.Document`
[🔗](https://github.com/jeffhuen/tiger_stripe/blob/main/lib/stripe/resources/person.ex#L488)

Nested struct within the parent resource.

# `t`

```elixir
@type t() :: %Stripe.Resources.Person.Verification.Document{
  back: String.t() | Stripe.Resources.File.t() | nil,
  details: String.t() | nil,
  details_code: String.t() | nil,
  front: String.t() | Stripe.Resources.File.t() | nil
}
```

* `back` - The back of an ID returned by a [file upload](https://api.stripe.com#create_file) with a `purpose` value of `identity_document`. Nullable.
* `details` - A user-displayable string describing the verification state of this document. For example, if a document is uploaded and the picture is too fuzzy, this may say "Identity document is too unclear to read". Max length: 5000. Nullable.
* `details_code` - One of `document_corrupt`, `document_country_not_supported`, `document_expired`, `document_failed_copy`, `document_failed_other`, `document_failed_test_mode`, `document_fraudulent`, `document_failed_greyscale`, `document_incomplete`, `document_invalid`, `document_manipulated`, `document_missing_back`, `document_missing_front`, `document_not_readable`, `document_not_uploaded`, `document_photo_mismatch`, `document_too_large`, or `document_type_not_supported`. A machine-readable code specifying the verification state for this document. Max length: 5000. Nullable.
* `front` - The front of an ID returned by a [file upload](https://api.stripe.com#create_file) with a `purpose` value of `identity_document`. Nullable.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
