Resources

Help & articles

Guides, how-tos and news for your catering business.

Help topics

Online Features

Discount Codes

Create discount codes your customers can enter at checkout on your online order forms — percentage or fixed amount, with dates, usage limits and a minimum order.

Promotions your customers can type in at checkout on your online order forms. A code is a percentage or a fixed amount off, with your own dates and limits around it, and what it is worth lands on the order as an ordinary discount — visible on the quote, on the PDF and in your accounting export like any other.

A discount code does nothing on its own. Every order form starts with discount codes switched off, so as well as creating the code you have to turn on Accept discount codes on this form in that form’s settings. Until you do, there is no code box on that form’s checkout.

Where they live

Codes belong to your business rather than to one order form, so a spring promotion is one code however many forms you run. You will find them in the settings menu, from the icon in the top-right corner of any page, under Discount codes.

That makes a working promotion two things rather than one: the code itself, kept once for your whole account, and a switch on each order form saying whether that form honours codes. Both have to be in place before a customer can use anything. The switch starts off, which is what lets the same promotion run on some forms and not others.

Creating a code

New code opens a short form in two halves. The first is the code itself.

  • Code — what the customer types at checkout: letters, numbers and dashes, three characters or more. Their capitals do not have to match yours, and stray spaces are ignored, so spring10 and ` SPRING10 ` both match SPRING10.
  • Description — only you see this. It sits under the code in your list, so a note like “September newsletter” is worth writing.
  • Discount type — Percentage off, from 0 up to 100, or Amount off, a fixed sum in your own currency.
  • Starts and Ends — both days count, and both are your own dates rather than the server’s, so a code advertised as ending on the 30th works all day on the 30th. Leave them blank — Straight away and No end date — and the code runs until you switch it off.

Limits

The second half is limits. All of them are optional, and a blank field means no limit. Create code saves it.

  • Total uses — how many orders may use the code before it stops working for everybody.
  • Uses per customer — counted by email address, so one customer cannot run the same code through five orders.
  • Minimum order — the code is refused on anything smaller, and the customer is told the figure they need to reach.
  • Most it can take off — a ceiling for a percentage code on a large order. 20% off with a $100 ceiling takes $100 off a $900 order, not $180.

When the per-customer limit is checked

Uses per customer counts against the email address on the order, so it depends on Puree knowing who is ordering.

A customer who has signed in, or who has already filled in their details, is told as soon as they try the code that they have used it before. A customer who types the code first and their details afterwards has it accepted at that point — there is no email to count against yet — and it is taken off again when they submit, with a note telling them the code has been fully redeemed and to check their total before confirming.

The limit holds either way. What changes is how early they find out.

The New discount code form: the code itself, a description only you see, the discount type and its percentage, and Starts and Ends dates; then the Limits half, holding Total uses, Uses per customer, Minimum order and Most it can take off.

Switching it on for an order form

This is the step most people miss. Every order form starts with discount codes switched off, including forms you built long before you made your first code, so a new code works nowhere until you say where it should work.

Go to Online → Order Forms, press Manage on the form you want, open its Settings tab, and switch on Accept discount codes on this form. Save, and a Have a discount code? box appears on that form’s checkout.

The order form's Settings tab, with the Accept discount codes on this form switch turned off, sitting below the delivery fee settings and above the unavailable dates option.

Do this for each form that should honour codes. A form left switched off shows no code box at all, and a code typed against it is refused — so if you have created a code, advertised it, and a customer tells you there is nowhere to type it, this switch is almost always the reason.

What the customer sees

On the second step of checkout — Confirm order — a Have a discount code? box sits between the items and the totals. The customer types the code and presses Apply. A code that holds up is confirmed on the spot — “Code SPRING10 applied (10% off)” — and the totals redraw underneath it. A code that does not is refused with the reason: not recognised, not started yet, expired, fully redeemed, already used by them, or an order that has not reached the minimum.

The Confirm order step of an online checkout, with a Have a discount code? box and an Apply button between the ordered items and the delivery fee, subtotal, tax and total.

They can take the code off again, and change their basket afterwards. The discount is worked out again every time the order changes, so a customer who adds or removes items is discounted on what they are actually buying.

What the code takes off

A code is charged against the order subtotal, delivery fee included — the same base as a percentage you type into the discount panel yourself, so 10% means the same thing whoever applied it.

A percentage stays a percentage all the way through. The quote, the PDF and your Xero or QuickBooks export say “10%”, not an amount that has lost the reason behind it. The one exception is a capped code where the cap actually bites: a ceiling cannot be written as a percentage, so it is stored as the capped amount instead.

A fixed amount never exceeds what is being bought. A $50 code on a $30 order takes $30 off rather than handing back change.

On the quote the discount is its own line, and the line names the code — Discount (10.0%) — code SPECIAL10 — so a total that sits under the menu prices explains itself to whoever is reading it. Tax is then charged on the discounted figure rather than the original one.

Quote totals reading Sub Total, then a Discount (10.0%) line labelled with the code SPECIAL10, then Total after discount, GST charged on the discounted amount, and the total including GST.

Only one discount per order

An order carries a single discount or surcharge, so a code cannot be added to an order that already has one. A customer who meets this is told the order already has a discount applied, and nothing you set is quietly written over.

When a use is counted

A use is counted when the order is submitted, not when the code is typed. A customer who applies a code and then closes the tab has not spent one of your fifty.

If the order is later declined, cancelled or deleted, the use goes back into the pool.

If you edit the discount figure yourself in the order builder, the use still stands — the customer really did type the code — but it is marked as overridden in the usage list, so the code is not credited with money it is no longer paying.

Putting a code on a quote yourself

You can also apply a code to a quote by hand. On the details step of the order builder, switch on Add Discount / Surcharge and look at the Visible adjustment panel: under the None / Discount / Surcharge choice there is a Discount code box. Type the code, press Apply, and the discount above fills with what the code is worth. Nothing is saved until you save the quote, as with everything else on that step.

The Add Discount / Surcharge section of the order builder, with a Discount code box and an Apply button in the Visible adjustment panel, beside the hidden adjustment slider.

Applying a code this way still checks that the code exists, is switched on, is inside its dates and has a use left — those are promises you made to somebody. It does not check the minimum order value or the one-per-customer limit, because those are rules for customers helping themselves, and you are making that decision yourself.

An order that came in from your website shows the same panel with the code named on it, so a quote with 12% off it reads as a promotion rather than somebody’s typo.

Seeing who used a code

Click a code in the list to see Who used it: when, which customer, which order, how much the code took off, and whether it still stands or was released or overridden. Your list also shows a running count against the total-uses limit, the code’s dates, and whether it is live, scheduled, expired or switched off.

Switching a code off

Switch off stops a code working immediately without deleting anything, and Switch on brings it back. A code that has never been used can be deleted outright; one that has been used cannot, because its history is the record of what you charged and why.

Related