This is the whole season, screen by screen. It assumes nothing except that you have a TallyTill account and a catalog with some products in it.
The short version: you set up a season once, the software draws the boxes every week, and your weekly job is three screens on pickup day. Everything below is the detail behind that sentence.
Part one — setting the season up
Turn the module on
Settings → Business → CSA Members → CSA Members and Boxes.
It ships switched off, and until you turn it on there is no CSA menu and the server refuses every CSA request. It's included on every plan.
Turning it back off later hides the module and stops its writes — it deletes no member, no order and no balance. Switch off in November, back on in March, everything is where you left it.
Add your pickup sites
A pickup site is a stock location: Products → Stock. You already have your own default site, so this is only for the other places — a church car park, a shop, a delivery zone.
Then configure each one for the share on CSA → Shares & sites: a kind (farm, drop or delivery), how many shares it holds, its pickup window, its address, notes for your packers, and whether members see it listed.
A site can add a surcharge or set its own price. This is the honest answer to a cross-town drop that costs you an hour of driving. Instalments are worked out for the site a member actually collects from.
Add the product that is the box
One product in your catalog stands for the whole share — "Full veg share". That's what members are billed for. The actual vegetables get put in later by the box builder and they don't change what the member owes. A heavy tomato week doesn't cost them more.
Create the share
CSA → Shares & sites → New share. Name, box product, price, how often boxes go out, which weekday, and the season's start and end dates.
The single most useful idea in the whole module: a share is a season, not a product. From the cadence, the weekday and the two dates, TallyTill works out every collection day in the season and shows them on the share's page. Those exact days are what boxes get drawn for.
Check that list of dates the moment you save. If it's wrong, the cadence or the dates are wrong — fix those, never individual orders.
Next year is a new share, not an edit to this one. That's what keeps this year's boxes and statements saying what they said.
When members pay
You choose Paid in on the share:
- In instalments — one payment up front, or two, three, four or six, spaced however you set them. Each lands on that member's balance on the day it's due.
- When they collect — nothing goes on a balance in advance; the box is paid for at pickup like any other sale.
Nothing chases anybody. An instalment is a balance, not a direct debit — no card is charged automatically. Build a monthly habit of looking at Customers, which shows who owes what.
On an instalment share, the terms lock the moment the first instalment lands on somebody's balance: price, season, collection day, payment plan and box product are fixed. You can still rename it and change its note. That's a feature — a member who signed up for twenty weeks at a price shouldn't find those numbers different in August.
Claim your member page address
Still on Shares & sites. Your farm needs a short web address before anyone can use the member page, and until you claim it the page, the sign-up form, member sign-in and every box-label QR return Not found. Not an error — just Not found. It's the most common reason a farm thinks the member page is broken.
The screen shows you the full address, ready to paste into an email.
Get members on
You add them — add the person under Customers, then open the share, find them under Members, pick where they collect, add. Works immediately.
They add themselves — on your member page, once the address is claimed.
Note what the form does not ask for. There's no terms checkbox and no signature — TallyTill doesn't store your membership agreement. Most CSA farms run one, and the non-refundable clause is the one that matters most when somebody asks for money back in July. Keep using whatever you use today; nothing here replaces it.
Part two — the weekly work
Build the boxes
CSA → Build the boxes, then pick the pickup day. One screen, top to bottom, in the order the work happens.
1 · What did you pick?
It starts from what your stock says and lets you correct it, because the field is right and the shelf is not. Tick Perishable for anything that has to go out this week — perishables get pushed out first, one notch above wanted, in every box.
Read the banner. Three numbers matter, and the middle one is the trap: an order that doesn't have exactly one share line is not a box, is never filled and never packed, and that tally is your only warning. If it isn't zero, go and fix those orders before you build.
2 · How should it be shared out?
Every dial is a sentence with named stops and a unit. No bare number to guess at — "Indulgence Factor 0.5" is the thing this screen exists not to be.
A per-box setting always states its total across the run: "No more than 6 per box of any one item. That's up to about 576 items across 96 boxes."
There is deliberately no "honour preferences" dial. The builder's preference weights are fixed, and a control that changed nothing would be worse than no control at all. The nearest honest lever is Clear the glut, which at full tilt does outrank what members asked for — and its help text says so.
What preferences actually are
A member's opinion of a crop is one of five levels — never · less · ok · more · love — and an unrated crop counts as ok. Never is a hard constraint the builder may not trade away, because the reason people mark a crop Never is usually an allergy.
A preference can also carry a free-text note: "makes me itch", "my daughter is the one who eats these". That note never reaches the builder. It's packer-facing — it shows on the pack screen and the customer record, where a human reads it.
That line is deliberate, and it's a safety decision rather than a technical one. A free-text allergy note that software claims to "consider" is a liability: a farmer would reasonably believe it had been honoured, and software cannot read English. So the level is machine input and the note is human output. If a member's constraint genuinely matters, record it as a level.
3 · What that would do
Two things to notice.
The preview is a sample and says so — "Tried on 50 boxes of 96 boxes — a direction, not the final answer." It's computed on a sample so dragging a dial answers in under a second. The full run happens once, on build.
The compromise list is the point of the screen. You're not supposed to get a clean run. You're supposed to read what it gave up and decide whether you care. Each line has a button that moves the dial that would fix it and tells you what that costs elsewhere before you take it — "Fixes 4 boxes on this sample, and makes 2 boxes under value."
Every number carries a comparison to last week, because a number with nothing to compare it to isn't information.
4 · The boxes
Group by whatever you're about to do: packing order, share size, or problem. Clicking a compromise line filters the grid to the boxes it affected.
Colour is the category and intensity is the severity, and every cell carries its text label — the legend is always on screen. Nothing here is colour-only.
What building writes: it replaces the contents of every box not yet locked and leaves locked ones alone. It changes contents, not money. No stock moves — stock comes off the shelf when a box is rung up. You can still edit any box by hand and undo, right up until you lock.
Lock the run
CSA → Orders → set Show the run for to the pickup day → Lock this run. Locking freezes what's in every box and gives each one its code — the code a member is told and the code on the label.
Preview it first. Preview lock says how many boxes would be locked, how many already are, and anything you're short on. Shortages are what your shelf says, not what's in the field, so you can lock anyway.
It covers the whole day, not the rows on screen. The list is narrowed by the status filter and page size; locking reaches every box for that date, and the page tells you when the two numbers differ.
Reopening puts a locked run back to draft. It asks twice on purpose: the first click gets the server's count and puts it on the button, the second does it — and if a box was locked in between, the write is refused rather than quietly doing something bigger than you agreed to. Every box keeps the code it already had. Once anything that day has been packed, the server refuses and says which reason it was.
Pack day
CSA → Pack day, then pick the day. You get one sheet per site — not one list sorted by site, because that's how a box ends up in the wrong van.
A collected box stays on the sheet with its time, so "who hasn't been?" is still answerable at the end of the afternoon.
At the table, a tablet can be set up as a pickup station: it opens on a scan-a-box screen, finds the member by the code on the label, shows what's in the box and what they owe, and checks them in. It works with no signal — the box list is pulled ahead and check-ins queue and send themselves later. It does not take money; take payment on the checkout screen and put it on the member's account.
A balance shown on a station with no signal is a snapshot and says when it was taken. Don't tell somebody they owe money on a six-day-old number.
Boxes nobody collected follow a farm-wide choice — hold, donate, or write off. It ships as hold, because that's the only one you can undo the next morning. It decides where the box goes, not whether anybody is refunded.
Part three — the things that catch people
A hold doesn't stop the money. Putting a member on hold stops boxes being drawn but they still owe the season. For one week away, hold that box on the order instead.
A hand-taken order needs exactly one product. Two or more and it's never filled and never packed, with no error.
The order note is published. It's printed on the label and shown on the box's public page. "Two shares, one bag" is what it's for; keep addresses out of it.
Some settings need a support ticket. Members Can Swap An Item · Taking New Members · CSA Pickup Station · Boxes Nobody Collected are advanced settings and aren't on your settings page yet. Contact us and we'll set them.
CSA Members and Boxes is included on every plan including the free Stand plan — no monthly fee, no credit card required to create an account, and nothing expires. Card sales carry a small per-sale platform fee; cash and check carry no platform fee. Current numbers are on pricing.
Create a free account and work down part one. It's an afternoon.
Next: how TallyTill sits between Square and Barn2Door, and the member's own guide you can send to your members.