Square logo

Log catering enquiries as a customer and a draft invoice

Every catering enquiry lands in Square as a named customer and a draft invoice with the event details already on it.

When this happens

New submission on your "Catering enquiry" form

Do this

Create Customer in Square, then Create Invoice as a draft for the estimated total

One-directional. A submission triggers the action — nothing is written back into your form.

A catering enquiry is a quote and a customer at once. Building both in Square from the same submission means the owner opens the app to a named profile and a draft invoice with the guest count already on it, rather than a voicemail and a note on the back of a receipt.

Restaurants and food trucks that price per event use this for the deposit conversation. The draft is a starting point — the figure is yours to set — and it exists within seconds, which is usually before the next caterer has rung back.

Setting it up

  1. 1

    Publish the catering order form and make Event Date, Guest Count and Menu Package required, since those three decide the number on the invoice.

  2. 2

    Build the Zap on New Submission from the catering form and check the sample data carries the whole Menu Items and Quantities answer, not a truncated version.

  3. 3

    Add Square's Create Customer action first, mapping Customer Name, Email Address and Phone Number, so the invoice has somebody to belong to.

  4. 4

    Add the Create Invoice action second and point it at the customer ID that step returned.

  5. 5

    Build the invoice line from Menu Package as the name and Guest Count as the quantity, leaving the per-head price to be set by hand or by a lookup table of your rates.

  6. 6

    Put Menu Items and Quantities, Special Requests and Venue or Delivery Address in the invoice message, so the customer can check what they asked for.

  7. 7

    Set the due date well ahead of Event Date — a deposit is worth nothing if it clears on the morning of the party.

  8. 8

    Send a test enquiry, price the draft in Square Invoices, then turn the Zap on.

What maps where

Using the Catering Order Form as the starting point. These are its real fields — swap in your own and the mapping works the same way.

Form fieldSquare
Customer NameGiven and family name on the Square customer profile the invoice is addressed to
Email AddressWhere the invoice goes once you have priced it and sent it
Phone NumberPhone on the customer profile — most catering deals get settled on a call
Event DateInvoice message, and the date you count back from when setting the due date
Guest CountQuantity on the invoice line, against your per-head package price
Menu PackageName of the invoice line item

Variations worth knowing

Price per head from a lookup table

A Zapier lookup table turning Menu Package into your per-head rate means the draft arrives with a real total rather than a placeholder. You still open it before sending, but the number is close enough to quote from.

Keep last year's order on the profile

Add a step that appends the full enquiry to the customer note. When the same office books its Christmas lunch again, the conversation starts from what they ordered and how many turned up, not from a blank page.

If something isn't arriving

The invoice is created with no customer attached.

Create Customer has to run first, and the invoice step has to reference the customer ID it returns. If the customer step failed — usually a malformed email address — the invoice step still runs unless you add a filter between the two.

The line total is wrong because the guest count came through as text.

An answer like "about 40-50" is not a number Square can multiply. Constrain Guest Count to a numeric field on the form, and add a Zapier formatter step that pulls the first number out as a fallback.

Frequently asked questions

Does the customer see the invoice straight away?

No. It is created as a draft and nothing leaves Square until you send it. That gap is the point: catering prices depend on the date, the venue and the guest count, and none of those should be quoted automatically.

What if the enquiry is for a date we are already booked?

Nothing in the flow checks a diary. The draft is created anyway, which is easily handled — delete it and reply. If clashes are frequent, name the dates you cannot cover in the form's intro copy so fewer arrive.

Can one form cover catering and table bookings?

Keep them separate. A table booking should not produce an invoice, and a Zap that has to guess which is which will get it wrong. Two forms and two Zaps keep each flow specific and easy to change later.

Related automations

Build the form first

The automation needs somewhere to fire from. Publish a form, connect it once, and every submission from then on runs this flow.

Start free