# Kortingscodes

Met kortingscodes kunt u uw klanten kortingen aanbieden tijdens de checkout. U kunt kortingscodes aanmaken op basis van een percentage of een vast bedrag, die van toepassing zijn op de volledige bestelling, een specifiek product, of de verzendkosten. Elke kortingscode heeft een unieke code die klanten invoeren bij de checkout om de korting te ontvangen.

Capyshop ondersteunt drie soorten kortingen:

| Type korting          | Waarop van toepassing                                             |
| --------------------- | ----------------------------------------------------------------- |
| **Order Discount**    | Verlaagt het subtotaal van de bestelling (vóór verzending en btw) |
| **Product Discount**  | Verlaagt de prijs van een specifiek product in het winkelmandje   |
| **Shipping Discount** | Verlaagt de verzendkosten                                         |

## Uw kortingscodes bekijken

Open **Coupons** in de beheerdersnavigatie om de volledige lijst te bekijken. De tabel toont voor elke kortingscode de code, naam, type, kortingswaarde, aantal keren gebruikt, status en een actiemenu.

![Coupons list](/features/coupons/coupons-list.png)

| Kolom    | Beschrijving                                                                           |
| -------- | -------------------------------------------------------------------------------------- |
| Code     | De unieke kortingscode (klik om te bewerken)                                           |
| Name     | Weergavenaam van de kortingscode                                                       |
| Type     | Een van: Order Discount, Product Discount of Shipping Discount                         |
| Discount | De kortingswaarde weergegeven als percentage (bijv. 46%) of vast bedrag (bijv. €40,30) |
| Uses     | Hoe vaak de kortingscode is gebruikt                                                   |
| Status   | **Active**, **Inactive** of **Expired**                                                |
| Actions  | Dropdown met de opties Edit en Delete                                                  |

U kunt **sorteren** door op een kolomkop te klikken, **zoeken** door in de zoekbalk te typen en **filteren** op status (All, Active, Inactive, Expired) via de knop **Filter**.

### Bulkacties

Selecteer meerdere kortingscodes via de selectievakjes om de bulkacties zichtbaar te maken:

- **Activate** — geselecteerde kortingscodes inschakelen
- **Deactivate** — geselecteerde kortingscodes uitschakelen
- **Delete** — geselecteerde kortingscodes definitief verwijderen (met bevestiging)

## Een kortingscode aanmaken

Klik op **New Coupon** op de lijstpagina om het aanmaakformulier te openen.

![Create coupon](/features/coupons/create-coupon.png)

### Gegevens van de kortingscode

| Veld   | Verplicht | Beschrijving                                                                                                                    |
| ------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- |
| Name   | Ja        | Een weergavenaam voor de kortingscode (bijv. "Zomeruitverkoop")                                                                 |
| Code   | Ja        | De code die klanten invoeren bij de checkout. Wordt automatisch omgezet naar hoofdletters. Niet hoofdlettergevoelig bij gebruik |
| Active | Nee       | Schakelaar om de kortingscode in of uit te schakelen. Alleen actieve codes kunnen worden toegepast bij de checkout              |

### Regelconfiguratie

| Veld                 | Verplicht      | Beschrijving                                                                                                                                  |
| -------------------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| Discount Type        | Ja             | Kies tussen Order Discount, Product Discount of Shipping Discount                                                                             |
| Value Type           | Ja             | Kies tussen Percentage (%) of Fixed Amount                                                                                                    |
| Value                | Ja             | De kortingswaarde (bijv. 20 voor 20%, of 10,00 voor €10,00 korting)                                                                           |
| Product              | Voorwaardelijk | Alleen zichtbaar wanneer Discount Type is ingesteld op Product Discount. Selecteer het specifieke product dat in het winkelmandje moet zitten |
| Usage Rule           | Ja             | **Multiple Use** (onbeperkt), **Single Per Customer** (eén keer per klant) of **Single Overall** (in totaal één gebruik)                      |
| Minimum Order Amount | Nee            | Het minimale bestelsubtotaal dat vereist is om deze kortingscode toe te passen                                                                |
| Expiration Date      | Nee            | De kortingscode wordt automatisch ongeldig na deze datum                                                                                      |
| Target Countries     | Nee            | Beperk deze kortingscode tot klanten die laten verzenden naar specifieke landen. Als leeg gelaten, is de code geldig voor alle landen         |

## Een kortingscode bewerken

Klik op een kortingscode in de lijst (of kies **Edit** in de actiedropdown) om het bewerkingsformulier te openen. Dit bevat dezelfde velden als het aanmaakformulier, vooraf ingevuld met de huidige gegevens.

![Edit coupon](/features/coupons/edit-coupon.png)

Klik op **Save Changes** wanneer u klaar bent.

## Een kortingscode verwijderen

Om een kortingscode te verwijderen, klikt u op de actiedropdown bij de betreffende rij en selecteert u **Delete**. Er verschijnt een bevestigingsvenster voordat de kortingscode definitief wordt verwijderd.

## Hoe kortingscodes werken bij de checkout

Tijdens de checkout kunnen klanten een kortingscode invoeren in het veld **Coupon Code** in het bestellingsoverzichtspaneel.

![Checkout coupon field](/features/coupons/storefront-checkout-coupon.png)

### Validatie

Wanneer een klant een kortingscode invoert, controleert het systeem het volgende voordat de code wordt toegepast:

1. De kortingscode moet **actief** zijn
2. De kortingscode mag **niet verlopen** zijn
3. De bestelling moet voldoen aan het **minimale bestelbedrag** (indien ingesteld)
4. Het verzendland van de klant moet overeenkomen met de **doellanden** van de kortingscode (indien ingesteld)
5. Bij **Product Discount**-codes moet het opgegeven product in het winkelmandje aanwezig zijn
6. De kortingscode moet voldoen aan de controle van de **gebruiksregel**:
   - **Multiple Use** — slaagt altijd
   - **Single Per Customer** — de klant mag deze kortingscode nog niet eerder hebben gebruikt
   - **Single Overall** — de kortingscode mag door niemand eerder zijn gebruikt

Als een controle mislukt, ziet de klant een foutmelding met de reden waarom de kortingscode niet kan worden toegepast.

### Hoe kortingen worden berekend

| Type korting          | Percentage                     | Vast bedrag                                                    |
| --------------------- | ------------------------------ | -------------------------------------------------------------- |
| **Order Discount**    | Subtotaal x (waarde / 100)     | Vast bedrag van het subtotaal (maximaal het subtotaal)         |
| **Product Discount**  | Producttotaal x (waarde / 100) | Vast bedrag van het producttotaal (maximaal het producttotaal) |
| **Shipping Discount** | Verzendkosten x (waarde / 100) | Vast bedrag van de verzendkosten (maximaal de verzendkosten)   |

> **Belangrijk:** Er kan slechts één kortingscode per bestelling worden toegepast. Klanten kunnen een kortingscode verwijderen en een andere toepassen voordat ze hun bestelling afronden.

> **Tip:** Kortingscodes zijn niet hoofdlettergevoelig. Een klant kan "summer2024" of "SUMMER2024" invoeren en beide werken voor de code `SUMMER2024`.
