Multi-location bakery · Los Angeles

Order to fulfillment, automatically.

One submitted order becomes a commissary production sheet and per-store fulfillment lists — no manual sorting.

Google Apps Script Google Sheets Gmail
The problem

Every order meant re-sorting a spreadsheet, by hand.

Orders came in through a shared form, but turning them into what each location needed to prep — and what the commissary needed to bake — meant manually re-sorting a spreadsheet by store and by item, every single day, across four locations.

Nothing was wrong with the process exactly. It just didn't scale, and it ate an hour or more every morning before anyone could start baking.

What I built

A script that sorts every order the moment it lands.

An Apps Script suite watches the order sheet, splits every new order out by store and by item, and generates two things automatically: a commissary production sheet totaling everything that needs to be baked across all locations, and a per-store fulfillment list showing what's coming and when.

Commissary_Production — Nov 18
Item Hillcrest Riverside Downtown Westgate Total
1 Baguette 18 22 14 20 74
2 Croissant 30 36 24 28 118
3 Sourdough Loaf 12 15 9 11 47
4 Cinnamon Roll 16 20 10 14 60
Commissary Hillcrest Riverside Downtown Westgate

Sample pattern, not real data. Store and item names are illustrative.

How it works

From order form to production list, in four steps.

1

Order comes in

A customer submits an order through the shared intake form.

2

Script sorts it

Apps Script reads the new row and matches each item to its store and the commissary.

3

Sheets update

The commissary production sheet and every store's fulfillment list update automatically.

4

Team gets notified

An email goes out with the day's production totals, ready before the shift starts.

Results

What changed.

6 hrs/week saved on manual order sorting
4 locations covered automatically, same script
90% fewer fulfillment errors
← All projects