# Kortingsbonnen toepassen aan de kassa

Pro-functie

Het toepassen van kortingsbonnen aan de kassa vereist [WCPOS Pro](/nl/getting-started/pro-license.md). Gratis gebruikers kunnen het scherm [Kortingsbonnen](/nl/coupons/.md) als een vervaagd voorbeeld zien, maar de actie **Kortingsbon toevoegen** is uitgeschakeld in de winkelwagen.

Deze pagina behandelt de workflow aan de kassa — een kortingsbon vinden, toepassen, meerdere kortingsbonnen stapelen en omgaan met fouten. Zie [Kortingsbonnen](/nl/coupons/.md) voor kortingsbontypen, instellingen en validatieregels; zie [Winkelwagenkortingen](/nl/pos/cart/discounts.md) voor ad-hockortingen die een kassamedewerker ter plekke aanmaakt.

## De flow Kortingsbon toevoegen[​](#the-add-coupon-flow "Directe link naar De flow Kortingsbon toevoegen")

Onder de winkelwagenregels bevindt zich een knop **Kortingsbon toevoegen**. Door erop te tikken wordt een klein invoerveld geopend waarin u een code kunt typen of zoeken.

1. Tik op **Kortingsbon toevoegen** in de winkelwagen
2. Begin met typen — het invoerveld werkt ook als zoekveld over alle gesynchroniseerde kortingsbonnen (code en beschrijving)
3. Kies de kortingsbon uit de suggestielijst, of typ de code volledig in en druk op **Enter**

De kortingsbon wordt direct gevalideerd aan de hand van de lokaal gesynchroniseerde gegevens — er is geen retourverzoek naar de server nodig — en de korting verschijnt in het totaal van de winkelwagen. Als daarna de inhoud van de winkelwagen wijzigt (een artikel toevoegen, een aantal aanpassen, een klant wisselen), wordt de korting automatisch opnieuw berekend.

<!-- -->

Code versus zoeken

Kassamedewerkers die de code kennen (bijv. "SUMMER10") kunnen deze intypen en op Enter drukken — de snelste methode. De zoekfunctie is bedoeld voor situaties waarin een klant een afgedrukte kortingsbon overhandigt en de medewerker de exacte code niet meer weet, of wanneer een loyaliteitskorting op klantnaam wordt opgezocht.

## Kortingsbonlabels in de winkelwagen[​](#coupon-pills-in-the-cart "Directe link naar Kortingsbonlabels in de winkelwagen")

Elke toegepaste kortingsbon verschijnt als een klein **label** in de winkelwagen, net boven de totalen. Het label toont de omschrijving van de kortingsbon (of de code, als er geen omschrijving is ingesteld) en het bedrag van de korting. Tik op de **×** op een label om die kortingsbon te verwijderen — het totaal van de winkelwagen wordt direct opnieuw berekend.

<!-- -->

Labels worden verticaal gestapeld wanneer er meer dan één kortingsbon is toegepast. De weergavevolgorde is de volgorde waarin ze zijn toegevoegd — en die volgorde is van belang voor [opeenvolgende kortingen](#sequential-discounts).

Bonlabels

De labeltekst is ook wat op de bon wordt afgedrukt. Als een duidelijker label gewenst is dan de ruwe kortingscode (bijv. *"Loyaliteitskorting"* in plaats van *"LOYAL10"*), stel dan het veld **Omschrijving** in bij de kortingsbon in `WP Admin → Marketing → Coupons`. WCPOS gebruikt de omschrijving als kortingslabel wanneer deze is ingesteld.

## Opeenvolgende kortingen[​](#sequential-discounts "Directe link naar Opeenvolgende kortingen")

U kunt meer dan één kortingsbon op een bestelling toepassen. WooCommerce verwerkt deze **opeenvolgend** — elke kortingsbon wordt berekend over het lopende subtotaal na de vorige korting, niet over het oorspronkelijke winkelmandtotaal.

### Uitgewerkt voorbeeld[​](#worked-example "Directe link naar Uitgewerkt voorbeeld")

Subtotaal winkelmand: **$ 100,00**

| Stap | Kortingsbon                            | Berekening   | Lopend totaal |
| ---- | -------------------------------------- | ------------ | ------------- |
| 1    | `LOYAL10` (10% korting)                | $ 100 × 0,90 | **$ 90,00**   |
| 2    | `WELCOME5` ($ 5 korting op winkelmand) | $ 90 − $ 5   | **$ 85,00**   |
| 3    | `EXTRA20` (20% korting)                | $ 85 × 0,80  | **$ 68,00**   |

De volgorde waarin ze worden toegepast, beïnvloedt het eindbedrag. Twee kortingsbonnen van 10% leveren samen 19% korting op het oorspronkelijke bedrag op (niet 20%), omdat de tweede 10% wordt berekend over het al verlaagde totaal.

### Wanneer kortingsbonnen niet gecombineerd kunnen worden[​](#when-coupons-cant-stack "Directe link naar Wanneer kortingsbonnen niet gecombineerd kunnen worden")

Een kortingsbon die in WooCommerce is ingesteld met **Alleen individueel gebruik** blokkeert het toepassen van andere kortingsbonnen. Als `SUMMER25` is ingesteld voor individueel gebruik:

* Pas eerst `SUMMER25` toe → bij het toevoegen van een andere kortingsbon verschijnt *"Deze kortingsbon kan niet worden gecombineerd met andere kortingsbonnen."*
* Pas eerst andere kortingscodes toe → het toevoegen van `SUMMER25` toont hetzelfde bericht.

Verwijder de conflicterende kortingscode om de andere toe te passen.

### Kortingscodes met vast productbedrag[​](#fixed-product-coupons "Directe link naar Kortingscodes met vast productbedrag")

Een kortingscode met **vast productbedrag** (bijv. *€2 korting per T-shirt*) geeft alleen korting op de regelitems waarop deze van toepassing is — het verlaagt niet het lopende subtotaal voor andere kortingscodes. Combineren met een procentuele winkelwagenkorting is veilig en voorspelbaar.

## Een kortingscode verwijderen[​](#removing-a-coupon "Directe link naar Een kortingscode verwijderen")

* Tik op de **×** op het kortingscodelabel om die ene kortingscode te verwijderen.
* De winkelwagen wissen (menu **Meer** → *Winkelwagen wissen*) verwijdert alle toegepaste kortingscodes.
* Het verwijderen van een regelitem dat het *enige* in aanmerking komende artikel was voor een productbeperkte kortingscode, verwijdert de kortingscode automatisch en toont een korte melding — "Kortingscode verwijderd: geen in aanmerking komende artikelen".

## Validatiefouten en hoe deze op te lossen[​](#validation-errors-and-how-to-resolve-them "Directe link naar Validatiefouten en hoe deze op te lossen")

Het POS past dezelfde validatieregels toe als WooCommerce — zie [Hoe validatie werkt](/nl/coupons/.md#how-validation-works) voor de volledige lijst. Wanneer een kortingscode wordt geweigerd, ziet de kassamedewerker een specifiek bericht:

| Bericht                                                                 | Wat het betekent                                                                                                          | Wat te doen                                                                                                                                                                                                                                   |
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| *"Kortingscode bestaat niet"*                                           | De code is niet gevonden in de gesynchroniseerde gegevens.                                                                | Controleer de spelling. Als de kortingscode zojuist is aangemaakt in WP Admin, voer dan een synchronisatie uit vanuit het scherm [Kortingscodes](/nl/coupons/.md) (houd het synchronisatiepictogram ingedrukt voor **Wissen en vernieuwen**). |
| *"Deze waardebon is verlopen"*                                          | De datum van vandaag ligt na de vervaldatum van de waardebon.                                                             | Verleng de vervaldatum in WP Admin, of gebruik een andere code.                                                                                                                                                                               |
| *"Gebruikslimiet bereikt"*                                              | De totale gebruikslimiet van de waardebon is bereikt.                                                                     | Verhoog de limiet in WP Admin, of gebruik een andere code.                                                                                                                                                                                    |
| *"Klant heeft deze waardebon al gebruikt"*                              | De geselecteerde klant heeft de limiet per gebruiker overschreden.                                                        | Wissel van klant, of verhoog de limiet per gebruiker.                                                                                                                                                                                         |
| *"Minimumbedrag niet bereikt"*                                          | Het subtotaal van de winkelwagen ligt onder het minimum van de waardebon.                                                 | Voeg meer artikelen toe of gebruik een andere code.                                                                                                                                                                                           |
| *"Maximumbedrag overschreden"*                                          | Het subtotaal van de winkelwagen ligt boven het maximum van de waardebon.                                                 | Splits dit op in afzonderlijke bestellingen of gebruik een andere code.                                                                                                                                                                       |
| *"Deze waardebon kan niet worden gecombineerd met andere waardebonnen"* | De nieuwe waardebon of een al toegepaste waardebon is ingesteld op **Alleen individueel gebruik**.                        | Verwijder de conflicterende waardebon en pas vervolgens de gewenste waardebon toe.                                                                                                                                                            |
| *"Waardebon niet geldig voor artikelen in winkelwagen"*                 | Geen van de artikelen in de winkelwagen voldoet aan de product-/categoriebeperkingen van de waardebon.                    | Voeg een geschikt artikel toe, of kies een andere waardebon.                                                                                                                                                                                  |
| *"Waardebon niet geldig voor deze klant"*                               | Het e-mailadres van de geselecteerde klant komt niet overeen met de regel **Toegestane e-mailadressen** van de waardebon. | Wissel naar een klant met een overeenkomend e-mailadres, of verwijder de e-mailbeperking.                                                                                                                                                     |

Als een waardebon lokaal wordt gevalideerd maar de bestelling bij het afrekenen wordt geweigerd, heeft de server de validatie opnieuw uitgevoerd met actuelere gegevens — meestal is de gebruikslimiet bereikt door een andere verkoop tijdens dezelfde dienst. Pas de waardebon opnieuw toe of kies een andere.

## Veelvoorkomende workflows[​](#common-workflows "Directe link naar Veelvoorkomende workflows")

Managerskorting — ad-hoc 10% met een traceerbare code

Maak een waardebon aan in `WP Admin → Marketing → Coupons` met een naam zoals `MGR10`:

* **Kortingstype:** Procentuele korting
* **Kortingsbonbedrag:** 10
* **Gebruikslimiet per kortingsbon:** *(leeg — onbeperkt)*
* **Alleen individueel gebruik:** uit (zodat deze kan worden gecombineerd met loyaliteits-/promotiecodes)
* **Beschrijving:** *"Managerkorting"* (dit wordt op de kassabon afgedrukt)

Deel de code alleen met managers. De kortingsbon verschijnt in WooCommerce-rapporten als een bijgehouden korting, in tegenstelling tot een [POS-prijscorrectie](/nl/pos/cart/discounts.md), die nu alleen de regelprijs verlaagt.

Loyaliteitsbeloning — $5 korting voor terugkerende klanten

Maak `LOYAL5` aan:

* **Kortingstype:** Vaste winkelwagenkorting
* **Kortingsbonbedrag:** 5
* **Minimale besteding:** 25 *(of welke drempel u ook hanteert)*
* **Gebruikslimiet per gebruiker:** 1 *(als de beloning eenmalig is)*
* **Beschrijving:** *"Loyaliteitsbeloning"*

Zoek aan de kassa op "loyaliteit" om deze te vinden zonder de code te hoeven onthouden.

Eenmalige actie — flyer of printcampagne

Maak één waardebon per campagne met **Gebruikslimiet per waardebon: 1** als het om een flyer voor eenmalig inwisselen gaat, of een hoger aantal voor een actie die meerdere keren kan worden gebruikt. Stel een korte **Vervaldatum** in, zodat de code later niet per ongeluk opnieuw kan worden gebruikt.

Stel bij acties voor meervoudig gebruik waarbij elke klant maar één keer mag inwisselen zowel **Gebruikslimiet per waardebon** *als* **Gebruikslimiet per gebruiker: 1** in.

Een managerkorting stapelen bovenop een kortingscode die de klant heeft meegebracht

Pas eerst de code van de klant toe en daarna de managercode. WooCommerce verwerkt ze achtereenvolgens — de managerkorting wordt berekend over het totaal waarop al korting is toegepast, wat meestal is wat klanten verwachten.

Als de waardebon van de klant **Alleen individueel gebruik** is, wordt de managercode geweigerd. Verwijder dan eerst de waardebon van de klant (en pas deze later opnieuw toe indien nodig) of werk de waardebon van de klant bij in WP Admin om stapelen toe te staan.

Een klant wil een deel van een bestelling retourneren en opnieuw aanslaan met een andere waardebon

Terugbetaal eerst de oorspronkelijke bestelling (zie [Terugbetalingen](/nl/orders/refunds.md)) en start daarna een nieuwe verkoop met de nieuwe waardebon. Waardebonnen zijn gekoppeld aan de bestelling op het moment van verkoop — je kunt een waardebon op een afgeronde bestelling niet achteraf vanuit de POS vervangen. De terugbetaling zet het gebruiksaantal van de waardebon terug, zodat deze opnieuw op de nieuwe bestelling kan worden toegepast.

## Interactie met POS-prijswijzigingen[​](#interaction-with-pos-price-changes "Directe link naar Interactie met POS-prijswijzigingen")

Als een kassamedewerker aan de kassa een regelprijs heeft verlaagd (een [POS-prijsovername](/nl/pos/cart/discounts.md)) en daarna een waardebon toepast, wordt de waardebon berekend over de **verlaagde prijs**, niet over de oorspronkelijke prijs. Regels die in POS zijn verlaagd, worden behandeld als "in de uitverkoop", waardoor elke waardebon waarvoor **Afgeprijsde artikelen uitsluiten** is ingeschakeld deze overslaat.

Dit is bewust zo — het voorkomt dat klanten dubbele korting krijgen doordat een kassierskorting en een waardebon worden gestapeld op de oorspronkelijke prijs. Zie [Hoe POS-prijswijzigingen samenwerken met waardebonnen](/nl/pos/cart/discounts.md#how-pos-price-changes-interact-with-coupons) voor de volledige werking.

## Offlinegedrag[​](#offline-behaviour "Directe link naar Offlinegedrag")

* **Waardebonnen toepassen werkt offline** — de validatie wordt uitgevoerd op basis van lokaal gesynchroniseerde waardebongegevens.
* **De verkoop afronden vereist nog steeds een verbinding** wanneer de bestelling wordt ingediend (de server valideert opnieuw en schrijft het gebruiksaantal weg).
* **Een waardebon die u zojuist in WP Admin hebt aangemaakt** kan pas aan de kassa worden toegepast na de volgende synchronisatie. Tik in de voettekst van het scherm [Waardebonnen](/nl/coupons/.md) op het synchronisatiepictogram () — houd lang ingedrukt voor **Wissen en vernieuwen** als u gegevens opnieuw moet ophalen.
