# Kortingen

Kortingen vind je onder **Webshop → Kortingen**. Een korting is óf een code die de koper bij het afrekenen invoert, óf een automatische promotie die vanzelf wordt toegepast, en kan gelden voor de hele bestelling, specifieke producten of de verzending, of werken als een koop-X-krijg-Y-deal.

## De kortingenlijst

De lijst toont 25 kortingen per pagina (aan te passen met **Rijen per pagina**) met zoeken (matcht terwijl je typt), drie filterknoppen en een sorteerbare kolom **Naam**.

- **Methode**-filter: Code / Automatisch.
- **Type**-filter: Bestelling / Producten / Verzending / Koop X krijg Y.
- **Status**-filter: Actief / Inactief (vink er een of beide aan). Dit filter kijkt alleen naar de aan/uit-vlag, dus filteren op **Actief** kan ook kortingen opleveren waarvan de badge Gepland of Verlopen toont.

| Kolom | Beschrijving |
| --- | --- |
| Naam | De naam van de korting, gelinkt naar de bewerkpagina |
| Methode | De code zelf (bij codekortingen) of "Automatisch" |
| Type | Bestelling / Producten / Verzending / Koop X krijg Y |
| Waarde | `10%` bij procentuele kortingen, een geldbedrag bij vaste |
| Gebruik | Gebruik ten opzichte van de totale limiet, bijvoorbeeld `3/100`, of `3/∞` bij onbeperkt |
| Periode | Het venster van start- tot einddatum; een gedachtestreepje bij een ontbrekende kant |
| Status | Afgeleide statusbadge (zie hieronder) |

### Kortingsstatus

De badge wordt afgeleid uit de aan/uit-vlag van de korting en het datumvenster:

| Status | Betekenis |
| --- | --- |
| Actief | Ingeschakeld en binnen (of zonder) een datumvenster |
| Gepland | Ingeschakeld, maar de startdatum ligt in de toekomst |
| Verlopen | Ingeschakeld, maar de einddatum is verstreken |
| Uitgeschakeld | Uitgezet |

### Bulkacties

Selecteer rijen met de selectievakjes om **Activeren**, **Deactiveren** of **Verwijderen** (destructief) te gebruiken. Elke actie vraagt om bevestiging en meldt het resultaat als "{n} updated, {m} failed" met per rij de reden van mislukken. Bulk-**Verwijderen** is de enige manier om een korting te verwijderen; het bewerkformulier heeft geen verwijderknop.

## Een korting aanmaken

Klik op **Nieuwe korting**. Het formulier is gegroepeerd in kaarten; **Korting aanmaken** blijft uitgeschakeld totdat aan de vereisten is voldaan, met een hint die uitlegt wat er nog ontbreekt.

### Basis

| Veld | Beschrijving |
| --- | --- |
| Naam | Verplicht |
| Methode | **Code** (de koper voert een code in) of **Automatisch** (wordt vanzelf toegepast). Standaard: Code |
| Code | Alleen zichtbaar bij de methode Code, en daarvoor verplicht. Wordt automatisch in hoofdletters gezet terwijl je typt (bijvoorbeeld `SUMMER10`) |
| Actief | Schakelaar, standaard aan |

### Waarde

| Veld | Beschrijving |
| --- | --- |
| Type | **Bestelling**, **Producten**, **Verzending** of **Koop X krijg Y**. Standaard: Bestelling |
| Waardetype | Tabbladen **Percentage** of **Vast bedrag**. Verborgen bij Verzending en Koop X krijg Y, die altijd op een percentage werken |
| Percentage | Het percentage, wanneer het waardetype Percentage is |
| Bedrag | Het vaste bedrag in hoofdeenheden (bijvoorbeeld `10.50`), wanneer het waardetype Vast bedrag is |

Twee typen gedragen zich bijzonder:

- **Verzending** heeft helemaal geen waarde-invoer: het is altijd gratis verzending. Het formulier zegt het zelf: "Gratis verzending — deze korting laat de verzendkosten volledig vervallen."
- **Koop X krijg Y** past een percentage toe op de gratis/afgeprijsde artikelen, standaard `100` ("Korting toegepast op elk gratis artikel, 100% maakt het gratis.").

### Doelgroep (alleen bij Producten en Koop X krijg Y)

Bij **Producten**-kortingen heet deze kaart Doelgroep; bij **Koop X krijg Y** heet hij **Kopen** en bepaalt hij wat de klant moet aanschaffen.

| Veld | Beschrijving |
| --- | --- |
| Producten | Zoekgestuurde meervoudige selectie: typ 2+ tekens en kies uit de resultaten (naam + SKU). Geselecteerde producten verschijnen als verwijderbare badges |
| Categorieën | Boom met selectievakjes van je categoriehiërarchie (verborgen wanneer je geen categorieën hebt) |
| Minimale koopaantal | Alleen bij Koop X krijg Y; hoeveel kwalificerende artikelen gekocht moeten worden. Standaard 1 |

Laat je de doelgroep leeg, dan geldt een Producten-korting voor de hele bestelling.

### Krijgen (alleen bij Koop X krijg Y)

| Veld | Beschrijving |
| --- | --- |
| Gratis/korting producten | Welke producten de klant krijgt, via dezelfde productkiezer |
| Aantal ontvangen | Hoeveel afgeprijsde artikelen de klant ontvangt. Standaard 1 |

Het aantal ontvangen geldt per kwalificatie: de engine deelt het kwalificerende koopaantal in de cart door het minimale koopaantal (naar beneden afgerond) en vermenigvuldigt het aantal ontvangen met dat getal, begrensd door het aantal op de goedkoopste ontvangregel. Koop 2 krijg 1 met 6 kwalificerende artikelen en 3 ontvangartikelen geeft korting op alle 3; met 5 kwalificerende artikelen op 2.

### Voorwaarden

| Veld | Beschrijving |
| --- | --- |
| Minimaal bestelbedrag | Besteltotaal dat vereist is voordat de korting geldt, in hoofdeenheden. Leeg = geen minimum |
| Doelgroep | **Alle klanten**, **Alleen B2B** of **Alleen B2C**. Standaard: Alle klanten |
| Totaal gebruikslimiet | Maximaal totaal aantal keer te gebruiken. Leeg = onbeperkt |
| Gebruikslimiet per klant | Maximaal aantal keer per klant. Leeg = onbeperkt |
| Start op / Eindigt op | Optioneel datum-tijdvenster |
| Alleen eerste bestelling | Schakelaar: beperk tot de eerste bestelling van een klant |
| Klantgroepen | Selectievakjes om de korting te beperken tot specifieke groepen. Deze sectie verschijnt alleen wanneer de module Klanten beschikbaar is en er minstens één actieve groep bestaat |

### Combinaties

Drie schakelaars bepalen of deze korting kan stapelen met andere kortingen op dezelfde bestelling:

| Veld | Beschrijving |
| --- | --- |
| Combineren met bestelkortingen | Standaard uit |
| Combineren met productkortingen | Standaard uit |
| Combineren met verzendkortingen | Standaard aan |

Klik op **Korting aanmaken** om op te slaan. Bij succes zie je de melding "Korting aangemaakt." en keer je terug naar de lijst. Validatieproblemen verschijnen onder het bijbehorende veld.

## Een korting bewerken

Open een korting vanuit de lijst. De bewerkpagina gebruikt hetzelfde formulier, volledig vooraf ingevuld. Klik op **Wijzigingen opslaan**; bij succes ("Korting opgeslagen.") keer je terug naar de lijst.
