# `LatticeStripe.TaxId.Owner`
[🔗](https://github.com/szTheory/lattice_stripe/blob/v2.2.2/lib/lattice_stripe/tax_id/owner.ex#L1)

The `owner` object embedded in a Stripe Tax ID.

Reachable from `t:LatticeStripe.TaxId.t/0`. `:type` says which of the sibling fields is
populated — a tax ID may belong to an account, an application, or a customer — so
match on `:type` rather than probing the fields for a non-nil value.

Embedded value struct: fields are additive. Keys Stripe adds later appear under
`:extra` rather than being dropped, so a new field never breaks decoding.

# `t`

```elixir
@type t() :: %LatticeStripe.TaxId.Owner{
  account: struct() | String.t() | nil,
  application: struct() | String.t() | nil,
  customer: struct() | String.t() | nil,
  customer_account: String.t() | nil,
  extra: map(),
  type: atom() | String.t() | nil
}
```

# `from_map`

```elixir
@spec from_map(map() | nil) :: t() | nil
```

---

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