# `Worldpay.Schema.CustomerAgreement`
[🔗](https://github.com/iamkanishka/worldpay/blob/v1.0.0/lib/worldpay/schema.ex#L87)

Stored credential agreement types:
`:card_on_file` | `:subscription` | `:installment` | `:unscheduled`

# `agreement_type`

```elixir
@type agreement_type() :: :card_on_file | :subscription | :installment | :unscheduled
```

# `stored_card_usage`

```elixir
@type stored_card_usage() :: :first | :subsequent
```

# `t`

```elixir
@type t() :: %Worldpay.Schema.CustomerAgreement{
  scheme_reference: String.t() | nil,
  stored_card_usage: stored_card_usage() | nil,
  type: agreement_type()
}
```

# `to_map`

```elixir
@spec to_map(t()) :: %{required(String.t()) =&gt; String.t()}
```

Serialize to a string-keyed map.

---

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