> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fungies.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Discount

> The Discount object represents a price reduction that can be applied to purchases.

A Discount object represents a price reduction that can be applied to customer purchases. Discounts can be either coupon codes that customers enter at checkout, or automatic sales that apply based on configured rules.

Discounts support both fixed amounts and percentage-based reductions, with optional validity periods and usage limits. You can target discounts to specific [Offers](/core-resources/offer) or apply them store-wide. Applied discounts are visible on [Payment](/core-resources/payment) objects.

## Endpoints

| Method  | Endpoint                             | Description               |
| ------- | ------------------------------------ | ------------------------- |
| `GET`   | `/v0/discounts/list`                 | List and filter discounts |
| `POST`  | `/v0/discounts/create`               | Create a new discount     |
| `GET`   | `/v0/discounts/{discountId}`         | Retrieve a discount       |
| `PATCH` | `/v0/discounts/{discountId}/update`  | Update a discount         |
| `PATCH` | `/v0/discounts/{discountId}/archive` | Archive a discount        |

## The Discount object

<ResponseField name="object" type="string">
  Object type identifier. Always `"discount"` for Discount objects.
</ResponseField>

<ResponseField name="id" type="string" required>
  Unique identifier (UUID) for this discount.
</ResponseField>

<ResponseField name="type" type="string" required>
  Discount type. Possible values: `code` (coupon code), `sale` (automatic discount)
</ResponseField>

<ResponseField name="name" type="string | null">
  Display name of the discount (e.g., "Summer Sale", "10% Off").
</ResponseField>

<ResponseField name="amount" type="number" required>
  Discount amount. For `fixed`: amount in currency units (e.g., `10.00` for \$10). For `percentage`: percentage value (e.g., `15` for 15% off).
</ResponseField>

<ResponseField name="amountType" type="string" required>
  How the amount is applied. Possible values: `fixed`, `percentage`
</ResponseField>

<ResponseField name="discountCode" type="string | null">
  The coupon code customers enter. Only set when `type` is `"code"`.
</ResponseField>

<ResponseField name="currency" type="string" required>
  Three-letter ISO 4217 currency code. Required for fixed-amount discounts.
</ResponseField>

<ResponseField name="status" type="string" required>
  Current discount status. Possible values: `active`, `inactive`
</ResponseField>

<ResponseField name="validFrom" type="integer | null">
  Unix timestamp (milliseconds) when the discount becomes valid. `null` means immediately valid.
</ResponseField>

<ResponseField name="validUntil" type="integer | null">
  Unix timestamp (milliseconds) when the discount expires. `null` means no expiration.
</ResponseField>

<ResponseField name="purchaseLimit" type="integer | null">
  Maximum number of times this discount can be used. `null` means unlimited.
</ResponseField>

<ResponseField name="timesUsed" type="integer">
  Number of times this discount has been used. Defaults to `0`.
</ResponseField>

<ResponseField name="includesAllOffers" type="boolean">
  Whether this discount applies to all [Offers](/core-resources/offer). Defaults to `false`.
</ResponseField>

<ResponseField name="excludedOffers" type="array">
  Array of [Offer](/core-resources/offer) IDs that are excluded from this discount when `includesAllOffers` is `true`.
</ResponseField>

***

## Discount types

### Coupon codes

Coupon codes require customers to enter a code at checkout. They're ideal for:

* Marketing campaigns
* Influencer partnerships
* Customer retention offers
* Limited-time promotions

### Automatic sales

Sales apply automatically without customer action. They're ideal for:

* Site-wide promotions
* Product launches
* Holiday sales
* Flash sales

***

## Example response

```json theme={null}
{
  "status": "success",
  "data": {
    "discount": {
      "object": "discount",
      "id": "880e8400-e29b-41d4-a716-446655440003",
      "type": "code",
      "name": "Summer Sale 2024",
      "amount": 15,
      "amountType": "percentage",
      "discountCode": "SUMMER15",
      "currency": "USD",
      "status": "active",
      "validFrom": 1717200000000,
      "validUntil": 1725148800000,
      "purchaseLimit": 1000,
      "timesUsed": 247,
      "includesAllOffers": true,
      "excludedOffers": []
    }
  }
}
```

***

## Related resources

<CardGroup cols={2}>
  <Card title="Offers" icon="tag" href="/core-resources/offer">
    Offers that discounts apply to
  </Card>

  <Card title="Payments" icon="credit-card" href="/core-resources/payment">
    Payments with discounts applied
  </Card>

  <Card title="Products" icon="box" href="/core-resources/product">
    Products discounted via offers
  </Card>

  <Card title="Orders" icon="receipt" href="/core-resources/order">
    Orders with discounts
  </Card>
</CardGroup>
