# `StripeManaged.Customer`
[🔗](https://github.com/safemyprivacy0-bit/stripe_managed/blob/main/lib/stripe_managed/customer.ex#L1)

Retrieve customer records from Stripe.

Customers are created automatically by Checkout Sessions.
Managed Payments handles customer communication (receipts,
renewal notices) through Link.

Note: If a customer requests data deletion, Stripe cancels
their subscriptions and deletes associated objects.

# `list`

```elixir
@spec list(
  map(),
  keyword()
) :: StripeManaged.Client.response()
```

Lists customers.

# `list_all`

```elixir
@spec list_all(
  map(),
  keyword()
) :: Enumerable.t()
```

Returns a lazy Stream of all customers, auto-paginating.

# `retrieve`

```elixir
@spec retrieve(
  String.t(),
  keyword()
) :: StripeManaged.Client.response()
```

Retrieves a customer by ID.

---

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