← All templates

Retail & Hospitality

Point-of-Sale Daily Close

A café or shop owner knows what today felt like and not what this month is doing. This workflow pulls the day’s takings from the point of sale after closing, appends them to a trading history, sends the numbers to whoever needs them on the phone rather than on a laptop, and flags a day that falls well below the recent average while the reason is still remembered.

9 stepsRequires Zapier Starter or higher20 minEasy
SquareAirtableTelegramXeroSchedule by ZapierFormatter by ZapierFilter by Zapier

What you get

The day’s numbers are recorded without anyone staying late to do it.
Trading history accumulates automatically, so weekday patterns become visible.
A bad day is flagged the same evening, while the cause is still known.

Workflow blueprint

SC
When this happens
Schedule by ZapierEvery Day
1SQ
SquareFind Payments
2AI
AirtableCreate Record
3AI
AirtableFind Records
4FO
Formatter by ZapierNumbers — Spreadsheet-Style Formula
5TE
TelegramSend Message
6FI
Filter by ZapierOnly continue if
7TE
TelegramSend Message
8XE
XeroCreate Bank Transaction

The full blueprint — every field mapping, example value and the written copy for each message — is included with purchase.

Getting it into Zapier

Build this one from the recipe. The blueprint gives you the exact trigger, action events and field mapping for all 9 steps, so it is a copy-and-paste job rather than a design job.

You need your own Zapier account. Zapier’s Free plan runs single-step Zaps only; multi-step Zaps need a paid plan, and Paths and Webhooks need Professional. How this works →

Not on Zapier?

n8n — import and go

An n8n workflow JSON ships with this template. Import it and all 9 steps arrive on the canvas wired in order, and 3 of the 9 nodes arrive with their fields already filled in — the subject lines, the message copy, the delays, the column names. Square has no native n8n node, so that step arrives as an HTTP Request node with the endpoint left for you to fill in.

What an import cannot carry is your credentials, and the IDs that only exist inside your own account — which spreadsheet, which channel, which board. Those stay in a sticky note under the node, listing what is already done so you do not retype it, and what is left so you can see it.

Make — build guide

A Make-specific guide ships with this template: every module in order, every field value, and the concept translations that catch people out — filters live on the links between modules, and the schedule lives on the scenario rather than in a trigger module.

Self-hosted n8n has no per-task fee, which is worth knowing if this workflow runs at volume. Platform coverage →

Setup steps

1
Run after closing

Configure this step using the field mapping in the blueprint.

2
Pull the day’s takings

Configure this step using the field mapping in the blueprint.

3
Append to the trading history

Configure this step using the field mapping in the blueprint.

4
Look up the last four same weekdays

Configure this step using the field mapping in the blueprint.

5
Average them

Configure this step using the field mapping in the blueprint.

6
Send the close summary

Configure this step using the field mapping in the blueprint.

7
Flag a day below the average

Configure this step using the field mapping in the blueprint.

8
Post the takings to the accounts

Configure this step using the field mapping in the blueprint.

Implementation notes

  • Run this an hour after closing, not at closing. Card settlements land late and a summary pulled at the moment the door locks will be short.
  • Compare like weekdays. A Tuesday against a Saturday is noise; a Tuesday against the last four Tuesdays is a signal.
  • The notes column is the whole value of the history. Numbers without reasons produce confident wrong conclusions about what works.
  • Check your POS-to-bank settlement before adding the Xero step. Most modern systems already feed the bank, and posting again gives your bookkeeper a duplicate to unpick.