- Open Menu Builder.
- Select Promotion Codes in the left-hand list.
- Select New Promotion Code.
Choose the code type
Code Type* decides everything else on the form:
- Discount amount
- Discount amount with min. order amount
- Discount percent
- Discount percent with min. order amount
- Free delivery
- Free menu item
- Free menu item with min. order amount
- Lowest value menu item free
- Lowest value menu item free with min. order amount
- Loyalty Reward
Fill in the rest
- Code* — what the customer types at checkout.
- Description* — for your own reference.
- Free Menu Item* or Loyalty Reward* — shown only for the code types that need them.
- Value — the dollar amount or the percentage, depending on the type.
- Min. Order Amount* and Max. Order Amount.
- Menu* — All menus, Daily Menu only or Catering Menu only.
- Fulfilment Type* — All fulfilment types, Pickup only, Delivery only, Dine-in only or Bookings only.
- One use per customer* — No, or Yes (requires account). The "requires account" wording is literal: a code limited to one use each cannot be enforced against a guest checkout.
- First order only* — No or Yes.
- Expiry Date.
Save when you are done. The list shows Code, Description, One use, 1st order, Expiry and Status, each row with Edit.
Retiring a code
Select the coloured Status label on the code's row and choose Inactive. Retiring a code rather than deleting it keeps your past orders making sense in reports.
Sending a code out
The New Announcement form has a Promo Code field that picks from this list. Its help text: "If you are sending out a promotion include the promo code in the message and in this box." See Send an announcement to your customers.
You can also bake a code into a QR code — see Create a QR code for a table or a promotion. Both of those Promo Code pickers are hidden unless the promotion codes module is enabled for your store, even though the Menu Builder tab itself is always there.