How couponing promotions work with KORONA Event
Discount codes in KORONA Event are powered by couponing promotions in KORONA.studio. The discount itself, the codes, and the conditions are configured in KORONA.studio; KORONA Event uses them when it calculates an online shop cart, and KORONA POS uses them at the counter. Use this article to understand which part decides what before you set up or troubleshoot a discount code A customer-entered code that activates an eligible promotion. It changes pricing but is not proof of identity or access permission..
Where each part is configured
A working discount code usually needs several parts. Missing any required part is the most common reason a code is rejected.
| Part | Configured in | What it decides | Required |
|---|---|---|---|
| Couponing promotion | KORONA.studio | The discount, which codes unlock it, which items it applies to, and when and where it is valid. | Always |
| Number range | KORONA.studio | How KORONA POS recognizes an entered code as a coupon number instead of a product, customer, or voucher number. | Always |
| External system call | KORONA.studio | Whether KORONA POS asks KORONA Event to check and count each use of a code before it is accepted. | Only to limit redemptions |
| External coupon limits | KORONA Event | How often each individual code may be redeemed, and which codes have already been used. | Only to limit redemptions |
| KORONA.studio synchronization | KORONA Event | When KORONA Event picks up new or changed couponing promotions. | Always |
How a code is checked
In the online shop, the customer enters the code in the cart. KORONA Event sends the cart and the code to the KORONA price calculation, which applies every couponing promotion that matches the code, the cart, and the point of sale assigned to the shop. If the cart price does not change, the code is rejected. If the code has an active, unarchived entry under external coupon limits A KORONA Event record that validates an externally managed code and counts reserved and completed redemptions. It does not create the discount itself., KORONA Event also reserves one use of the code for the open cart and counts it as redeemed when the order is completed.
At KORONA POS, the cashier types or scans the code. The POS compares the input with the configured number ranges and automatically runs the function of the matching range. The cashier does not need to select a function or press a separate coupon button:
- If the matching number range uses Redeem external coupon, the POS adds the code directly to the receipt as a coupon number. The couponing promotion applies whenever its conditions are met, so the code can be used any number of times while the promotion is valid.
- If the matching number range uses External System Call, the POS first sends the code to KORONA Event. KORONA Event checks the code against External coupon limits, reserves one use, and returns the code to the POS as a coupon number. When the receipt is finalized, the use is counted as redeemed; a cancelled receipt releases it. A code that is not listed, inactive, or used up is rejected with the message that the coupon code is unknown or no longer available.
Parts of a couponing promotion
Couponing promotions are created in KORONA.studio under Couponing Promotions in the Promotions menu. For discount codes, these sections matter:
| Section | What to know |
|---|---|
| Type | Use Immediate Discount so the discount applies directly to the current cart or receipt. |
| Validity | Limits when and where the promotion applies. The date range refers to the booking date, not the visit or event date. Include the point of sale assigned to the online shop when the code should work online. |
| Trigger | Optional conditions such as a minimum receipt amount, a product quantity, or a customer group. Do not enter the discount codes here. |
| Benefit | The discount itself. For discount codes, use the Advanced benefit and enter the codes there. |
Choose a benefit
| Goal | Recommended setup |
|---|---|
| Percentage off the whole cart | Percentage discount calculated on the receipt. |
| Fixed amount off the whole cart | Fixed amount subtracted from the selected items, applied as a receipt discount. Avoid a simple fixed discount for this goal. |
| Percentage off one product or ticket type | Percentage discount on that product. |
| Percentage off a group of tickets | Percentage discount on products with a tag. Tags are more reliable than commodity groups when the tickets do not share one group. |
| Most expensive or cheapest ticket free | 100% discount on the most expensive or cheapest product with a tag, limited to one item. |
| Discount only above a cart value or quantity | Add the matching condition under Trigger. The condition and a valid code must both be present. |
| Only one discount may apply | Mark the promotion as exclusive. |
Only products marked as discountable receive a discount. A code can be recognized without reducing the price when no discountable item in the cart matches the benefit.
When a discount applies to several items, KORONA spreads it proportionally across them. The cart total is correct, but individual lines and discount reports can show uneven or fractional amounts.
Common decisions
One promotion per code or per benefit? Create one couponing promotion per benefit, for example one for 10% and one for EUR 25, and list all codes with that benefit in it. Create one promotion per code only when you need KORONA.studio reports to show how often each code was used. External coupon limits in KORONA Event show redeemed and remaining uses per code either way.
Reusable or one-time codes? A campaign code printed on a flyer, such as SUMMER10, can usually stay reusable and needs only the number range function Redeem external coupon. Individual codes that may be used once, or a fixed number of times, need External coupon limits and the external system call. You can use both kinds side by side with separate number ranges.
Discount code or access control? A discount code changes a price. It does not restrict who may register, because a code can be forwarded. See Build a private event registration flow.
When changes take effect
KORONA Event imports changed couponing promotions from KORONA.studio about every 15 minutes. To use a change immediately, open Admin > Integrations in the KORONA Event back office and select Synchronize. Until then, the online shop keeps applying the previous version of the promotion.
KORONA POS loads number ranges and couponing promotions with its master data. After changing them, retrieve the master data on each POS and restart it.