Promo codes
Menu: Promotions Management → Promo codes
Create and manage promo codes (coupons) for one location at a time: percentage or fixed discounts, free items, cart rules, customer groups, which order types and payment methods qualify, date ranges, weekday/time windows, and which menu items count toward the offer.
List screen
Filters
| Filter | Options | What it does |
|---|---|---|
| Location | Your outlets | Which store’s promo codes you are viewing. The first outlet is usually selected automatically when the page opens. You must pick a location before the list loads. |
| Status | All, Active (default), Inactive | Show only live codes, only turned-off codes, or everything. |
| Expired | All, Not expired (default), Expired | Whether the code is past its end date in the system. This is separate from Validity periods you set in the form (see below). |
Refresh reloads the list. It is disabled until a location is chosen.
Add Promo opens the form to create a new code (your role must allow adding promo codes).
Changing location, status, or expired jumps back to the first page of the table.
Table columns
| Column | Meaning |
|---|---|
| ID | Internal reference number for support (you rarely need this day to day). |
| Code | What the customer or staff types at checkout. Can be left blank when creating — the system can generate one for you. |
| Title | Short name for the promotion. Shows - if empty. |
| Discount type | Fixed (dollar amount off) or Percent (% off), shown as a coloured label. |
| Offer scope | Order (whole order) or Item (specific lines) — see form section below. |
| Available days | All Days & Times, or which weekdays and hours the code works (e.g. Friday 09:00–17:00). |
| Discount amount | The number shown: dollars off or percent off, depending on discount type. |
| Used / limit | How many times the code has been used, compared to the maximum you allowed. No limit means unlimited uses. |
| Status | Active (can be used) or Inactive (turned off). |
| Actions | View, Edit, Delete — see below. |
While loading: “Loading…”
If empty: “No promo codes found”
Use the controls at the bottom of the table to change page and how many rows per page.
Row actions
| Button | What it does |
|---|---|
| View (eye) | Opens a read-only summary of that promo. Always open this from the list — if you bookmark the page or refresh, you may see a message to go back to the list first. |
| Edit (pencil) | Opens the same large form as Add Promo, filled in with that code’s settings. |
| Delete (trash) | Asks you to confirm, then removes the code permanently. To stop use but keep the record, turn Active status off in Edit instead. |
Add or edit a promo code
The window title is Add Promo Code or Edit Promo Code. Scroll down to see all sections.
Basic information
| Field | Required? | What to enter |
|---|---|---|
| Title | Yes | A short name you will recognise (e.g. “Summer 10% off”). |
| Location | Yes | Which store this code belongs to. Changing location refreshes the menu list and customer groups for item picking. |
| Promo code | No | The code customers type. Leave blank to let the system create a unique code automatically. |
| Promotion type | Yes | Discount — money or % off. Free — give items at no charge (price becomes zero on the free lines). |
| Offer scope | Yes | Order level — applies to the whole order (e.g. 10% off the bill). Item level — applies to specific products or categories. Free promotions must use Item level only. |
| Description | No | Notes for your team; may also appear to customers depending on channel. |
Discount settings (only when type is Discount)
| Field | What to enter |
|---|---|
| Discount type | Fixed amount — e.g. $5 off. Percentage — e.g. 10% off. |
| Amount | The discount value. Required. Must be at least 0.1 (10 cents or 0.1%). For percent, you cannot enter more than 100. |
Usage limits
| Field | What to enter |
|---|---|
| Minimum order | Optional. Cart must reach this subtotal before the promo applies. |
| Maximum discount | Optional. Stops the discount growing too large (especially for % off). |
| Maximum uses | Optional. Total times anyone can use this code across all customers. Leave blank for unlimited. |
Customer restrictions
| Field | Default | What it does |
|---|---|---|
| Customer groups | None selected | Only customers in the groups you pick (for that location) can use the code. |
| Once per customer | On | Each customer can use it only once. |
| Logged in only | On | Guest checkouts may not qualify, depending on POS/online setup. |
| Auto apply | Off | When on, the system can apply the promo automatically when the cart matches all rules (where the channel supports it). |
| First-time only | Off | When on, only first-time buyers can use it. |
Order and payment restrictions
| Field | What to enter |
|---|---|
| Order types | Optional. Limit to certain services (e.g. delivery only). If you pick nothing, all order types at that location are allowed. |
| Payment methods | Optional. Limit to certain ways of paying (e.g. card only). If you pick nothing, all payment methods are allowed. |
If you select both order types and payment methods, the code only works when both match (e.g. delivery and card). Leave both empty for no restriction.
Weekday and time restrictions
- Add day — restrict the promo to certain days and hours (default slot 09:00–17:00).
- Each weekday can only appear once.
- You can add more than one time slot on the same day.
- No days added — the promo is valid any day, any time (as long as other rules pass).
Validity periods
- Add period — set Valid from and Valid to (date and time).
- Valid to must be after Valid from.
- You can add several periods if needed; delete a row with the trash icon on that row.
- No periods — the promo can stay available indefinitely while Active, subject to usage limits and weekday rules.
There is no single “expiry date” box on this form. Use Validity periods for calendar windows, and use the list filter Expired to find codes the system marks as expired.
Applicable items
You must add at least one eligible item before saving.
| Button | When you can use it | What it does |
|---|---|---|
| Add eligible items | After you choose a location | Opens Select items — pick categories or products the customer must buy (or that qualify for the deal). |
| Add offer items | After you choose a location | Same picker, for the free or discounted “reward” lines (buy X get Y). |
| On full menu | Only when Offer scope is Order level | Quickly selects every menu category at that location as eligible (whole-menu promotion). |
Eligible items (required)
- What the customer needs in the cart (categories or individual products).
- Required qty — how many they must buy. If several rows share the same group, changing quantity on one updates the others in that group.
- Group (link icon) — link items so the customer can choose any one in the group (e.g. “any pizza” counts). Use None, an existing Group 1 / Group 2…, or + New group.
Offer items (optional)
- What they get as the deal (e.g. free fries). Set Free qty or Offer qty per line.
- For Free promotions, add offer lines for what is given away free.
Buy X get discount
If type is Discount and you add no offer items, a blue note explains: the discount applies to the eligible items once the required quantity is in the cart.
Tips when picking items
- Picking a whole category means you do not need to tick every product under it separately.
- If you save from Select items, it replaces the previous list for that section (eligible or offer) — it does not add on top of old picks.
Active status and buttons
| Control | What it does |
|---|---|
| Active status | On = customers can use the code (if all other rules match). Off = deactivated without deleting. |
| Reset form | Clears many fields and restrictions. Does not remove the items you already picked or change location — adjust those manually if needed. |
| Create promo / Update promo | Saves your changes and closes the window. The list refreshes. If something is wrong, a message appears at the top of the screen. |
Messages you may see when saving
- No eligible items — you must add at least one under Applicable items.
- Discount amount missing or too small — enter at least 0.1 for fixed or percent.
- Validity dates — “Valid to” must be after “Valid from”.
Select items (picker)
Opened from Add eligible items or Add offer items.
| Part of the window | What to do |
|---|---|
| Search | Type to find categories or product names. |
| Select all categories | Ticks every category currently shown (after search, only visible ones). |
| Category row | Tick the box to include the whole category; click the arrow to expand and pick individual products. |
| Product row | Tick one product at that location. |
| Variants | Some products show sizes/options underneath — tick the exact variant if the deal applies to one size only. |
| Category vs product | Ticking the category clears individual products under it, and vice versa — you use one or the other. |
| Footer | Shows how many you selected; Save returns to the promo form, Cancel discards changes. |
Only active menu items at the chosen location appear. Items not set up at that store are not listed.
Common setups (examples)
| What you want | Type | Scope | Eligible | Offer | Also set |
|---|---|---|---|---|---|
| 10% off the whole bill | Discount | Order | On full menu or all categories | — | Percent amount; optional min order / max discount |
| $5 off when they buy pizza | Discount | Item | Pizza category, qty 1 | — | Fixed or % amount |
| Buy 2 burgers, get 1 free fries | Free | Item | Burgers, qty 2 | Fries, free qty 1 | Offer items |
| Buy dessert or coffee (either counts) | Discount | Item | Both in the same group, qty 1 each | — | Group link icon |
| Lunch deal hours only | Any | Any | As needed | As needed | Weekdays + times (e.g. Mon–Fri 11:00–14:00) |
| Runs 1 Dec – 31 Dec only | Any | Any | As needed | As needed | Validity periods |
| VIP members only | Any | Any | As needed | As needed | Customer groups |
| Delivery paid by card only | Any | Any | As needed | As needed | Order types + payment methods |
Promo code details (read-only)
Open with View from the list. You will see:
- Summary — code, name, description, discount, scope, days, uses, limits, customer rules, active/inactive, when it was created and last updated.
- Conditions — which order types and payment methods apply (if you restricted them).
- Validity periods — start and end date/time for each window.
- Available days and times — weekdays and slots, or all day.
- Eligible items — what must be bought, group name, required quantity.
- Offer items — what is free or discounted, and quantity.
- Linked customer groups — which groups may use this code.
Use Back to return to the list. To change anything, use Edit on the list — there is no edit button on the details page.
Who can do what
| Task | Usually needs |
|---|---|
| View the list and details | Access to Promo codes |
| Add Promo | Permission to create promo codes |
| Edit and Active toggle | Permission to update promo codes |
| Delete | Permission to delete promo codes |
If a button is greyed out, your role may not include that action — ask an administrator.
Tips
- Choose location first, then pick menu items.
- Turn Active off instead of Delete if you might reuse the code later.
- Expired on the list and Validity periods in the form work together — set dates in the form if the deal must stop on a calendar day.
- After a complex setup, use View to double-check eligible items, offer items, and conditions.
- Test with a small real order on POS or online before sharing the code publicly.
Related
- Promotions Management — campaigns, online promotions, displays, and more.
- Promotional groups (separate menu item) — groups products for other marketing tools; not the same as item groups inside a promo code form.
