Settings

Create, Test, Redeem and Manage Coupon Codes

Coupons are server-validated bill discounts. Operators define the offer in Marketing, then cashiers type or scan its code on New Sale and accept only the discount returned by Posnic.

Menu path
Manage -> Marketing -> Coupons; Sales -> New Sale -> Coupon
Verified from
Posnic demo and current POS source reviewed on 2026-09-08
Technical source evidence

Live Posnic demo reviewed 2026-09-04, frontend/modules/settings_write.html Coupons tab, frontend/static/script/js/modules/js/coupons.js, frontend/static/script/js/modules/js/sales.js coupon payload and totals

Create a couponThe current coupon form keeps value, eligibility dates and usage limits together so the offer can be checked before activation.
Redeem at the tillThe cashier enters or scans the code on New Sale; Posnic validates it against the live bill and selected customer.

Before You Create the Offer

  • Enable Marketing in Manage -> Features; the Marketing page and till coupon control depend on this switch.
  • Write down the offer value, minimum bill, date window, total redemptions and per-customer rule before entering it.
  • Decide whether Walk-in customers may use the offer. A per-customer limit needs an identified customer to be meaningful.
  • Use a short code that is easy to read, type and print without confusing letters or spaces.

Create a Coupon Step by Step

  1. Open Manage -> Marketing -> Coupons.
  2. Click New coupon.
  3. Enter the Code and a staff-readable Description.
  4. Choose Percentage off or Fixed amount off, then enter Value.
  5. Enter Min spend when the bill must reach a threshold.
  6. For a percentage offer, enter Max discount to cap the currency amount; 0 means no cap.
  7. Set Valid from and Valid until for a timed offer, or leave them empty for no date boundary.
  8. Set Total uses and Per customer. In either field, 0 means unlimited; Total uses 1 creates a one-use code.
  9. Keep Active selected only when cashiers should accept the code.
  10. Save, then run a training sale that meets the rules and one that intentionally fails them.

Understand Every Limit

ControlWhat Posnic checksCommon use
Min spendCurrent eligible bill total reaches the threshold.Discount only on bills above a chosen amount.
Max discountPercentage discount cannot exceed this currency amount.10% off, capped at 500.
Valid datesRedemption is inside the configured date window.Weekend or seasonal offer.
Total usesAll successful uses have not reached the campaign limit.First 100 redemptions.
Per customerThe selected customer has not reached their own limit.Once per member.
ActiveCoupon is currently allowed for validation.Pause an offer without deleting it.

Redeem the Coupon on New Sale

  1. Build the sale and select the customer when the offer has a customer limit.
  2. Type the code in the Coupon control, or scan a printed voucher barcode while that field is ready.
  3. Apply the code and read the status returned by Posnic.
  4. Confirm the applied discount and new payable total with the customer.
  5. Complete payment normally. The saved sale carries the coupon code so the server can record its use.
  6. Use the clear control before payment if the customer changes offers or the sale contents change materially.

When a Coupon Is Rejected

  • Recheck the exact code and remove accidental spaces.
  • Confirm the coupon is Active and today is within its validity dates.
  • Check Min spend against the current bill, not the amount the customer plans to tender.
  • Attach the correct customer when a per-customer rule or customer-bound voucher applies.
  • Check whether total or per-customer uses are exhausted.
  • Do not replace a rejected coupon with an unauthorized manual discount; ask a manager to inspect the rule.

Edit, Pause and Delete Safely

The Coupons table shows code, value, validity, usage and status. Edit an upcoming offer before it starts, or turn Active off to pause acceptance. Deleting a coupon does not erase past redemption records, but operators should avoid deleting active offers customers still possess.