# `PolarExpress.Schemas.CheckoutLink`
[🔗](https://github.com/jeffhuen/polar_express/blob/main/lib/polar_express/schemas/checkout_link.ex#L2)

CheckoutLink

Checkout link data.

# `t`

```elixir
@type t() :: %PolarExpress.Schemas.CheckoutLink{
  allow_discount_codes: boolean() | nil,
  client_secret: String.t() | nil,
  created_at: DateTime.t() | nil,
  discount:
    PolarExpress.Schemas.DiscountFixedOnceForeverDurationBase.t()
    | PolarExpress.Schemas.DiscountFixedRepeatDurationBase.t()
    | PolarExpress.Schemas.DiscountPercentageOnceForeverDurationBase.t()
    | PolarExpress.Schemas.DiscountPercentageRepeatDurationBase.t()
    | nil,
  discount_id: String.t() | nil,
  id: String.t() | nil,
  label: String.t() | nil,
  metadata: PolarExpress.Schemas.MetadataOutputType.t() | nil,
  modified_at: DateTime.t() | nil,
  organization_id: String.t() | nil,
  payment_processor: PolarExpress.Schemas.PaymentProcessor.t() | nil,
  products: [PolarExpress.Schemas.CheckoutLinkProduct.t()] | nil,
  require_billing_address: boolean() | nil,
  return_url: String.t() | nil,
  success_url: String.t() | nil,
  trial_interval: PolarExpress.Schemas.TrialInterval.t() | nil,
  trial_interval_count: integer() | nil,
  url: String.t() | nil
}
```

* `allow_discount_codes` - Whether to allow the customer to apply discount codes. If you apply a discount through `discount_id`, it'll still be applied, but the customer won't be able to change it.
* `client_secret` - Client secret used to access the checkout link.
* `created_at` - Creation timestamp of the object. Format: date-time.
* `discount` - Nullable.
* `discount_id` - ID of the discount to apply to the checkout. If the discount is not applicable anymore when opening the checkout link, it'll be ignored. Nullable.
* `id` - The ID of the object. Format: uuid4.
* `label` - Optional label to distinguish links internally Nullable.
* `metadata`
* `modified_at` - Last modification timestamp of the object. Nullable.
* `organization_id` - The organization ID. Format: uuid4.
* `payment_processor` - Payment processor used.
* `products`
* `require_billing_address` - Whether to require the customer to fill their full billing address, instead of just the country. Customers in the US will always be required to fill their full address, regardless of this setting.
* `return_url` - When set, a back button will be shown in the checkout to return to this URL. Nullable.
* `success_url` - URL where the customer will be redirected after a successful payment. Nullable.
* `trial_interval` - The interval unit for the trial period. Nullable.
* `trial_interval_count` - The number of interval units for the trial period. Nullable.
* `url`

# `schema_name`

---

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