All articles

The Customer Portal: Let Your Customers Look Up Their Own Orders

By Andrew Hemphill · 14 September 2026

“What did we order for the board lunch last March?” It is a small question, and answering it costs you ten minutes: find the customer, scroll back through their orders, work out which one they mean, send it on. Puree now has a customer portal — a page of their own where they sign in and look it up themselves.

The portal is in beta. Version one is read-only order history, and it is switched on account by account.

No password, ever

This is the part worth explaining first, because it is the part that decides whether a portal is any use.

Your customer does not create an account, choose a password, or reset one at eleven at night before an event. They type their email address and a link arrives that signs them in. The link works once and lasts half an hour.

Access follows the email address rather than a secret. When the office manager who orders your Friday lunches moves on, she loses her work inbox, and she loses the portal with it — without you doing anything, and without a password that still works sitting in somebody’s notes app.

You decide who gets in

Nobody is let in by the portal existing. You choose between two ways of running it in Settings → Customer Portal.

Only the contacts I choose means nobody signs in until you tick portal access on their contact. Every contact, unless I say otherwise means any contact of a live customer can sign in, and you untick the ones who should not.

The Customer Portal settings page: the portal address field prefixed with puree.app/portal/, the Enable customer portal switch, the two Who can sign in choices, and the sign-off name and email notes below them.

Whichever you pick, the tick on each contact still wins, so one person can always be let in or shut out on their own. Untick somebody and they are out immediately — the portal checks every time a page loads, not once when they signed in.

You can flip that switch from the contact itself, or straight from the contact block on a quote, which is usually where you are standing when the thought occurs to you.

What they see

Their order book. The next order is a docket at the top — the day, the time, the address, the total, whether you have accepted it — because that is what somebody signs in to check. Under it, everything else, grouped by month and filterable by upcoming, past, or kind of order.

A customer portal order book: a dark Next order docket showing the date, event name, time, address, status and total, then All / Upcoming / Past filters and rows grouped by month, each with its date, order reference, time, address, total and status.

Opening one takes them to the quote you sent, on the template you sent it on — not a flattened copy that loses your branding.

It works the other way too: every quote you send carries a View customer portal prompt, on the standard customer view and on all of the bespoke templates, so a customer reading a proposal is one click from the rest of their history.

A bespoke quote template with a View customer portal button in its top left corner, above the caterer's logo and the proposal itself.

What is deliberately not there: anything you have hidden from the customer view, expired quotes, and drafts you have not sent. Your working notes stay yours.

It makes the next order faster, too

Your online order form now carries a Have an account? Sign in here button. A regular signs in without leaving the form, and the form fills itself in — their name, email, company and phone from last time, and a picker holding every delivery address you have on file for them.

An online order form with a Have an account? Sign in here button above the order information fields.

Somebody who orders to two offices picks between them instead of retyping either. It is the difference between a repeat order taking four minutes and forty seconds.

There is more to it than saving typing, though. Each saved address can carry its own delivery fee, and when a signed-in customer picks that address, that is what they are charged — instead of your postcode rules working it out from whatever they typed. So the client you agreed a flat rate with gets that rate, and the office two streets away that happens to fall in a zone you charge for can be set to free, without you touching the quote afterwards.

A fee you have typed onto a quote yourself still wins over everything, and your free-delivery threshold still applies on top. What changes is that the common case stops needing you at all.

The small print your customers will care about

A contact can hide their own orders from colleagues at the same company, in their own settings. Their orders are always visible to themselves; the setting only hides them from other people who order from you under the same customer.

And if somebody asks for a link with an address you have not given access to, they are not left guessing: they get a short email telling them to get in touch with you. The screen says “check your inbox” either way, because whether an address is known is a fact for the inbox’s owner, not for whoever is standing at the form.

What is coming

Version one is read-only on purpose — there is no point building a portal that lets customers change orders before anyone has used one that lets them read them. Next are feedback left directly on a quote, and asking for a past order again.

If you would like the portal switched on for your account, get in touch. And if there is something your customers would find useful there, we would rather hear it now than after it is built: Customer Portal has the detail, and the beta accounts are shaping what comes next.