SeedPro Quick Start
A guided tour of every module. Everything below works against the seeded demo data.
http://localhost:3000 (works the same)Sign-insΒ§
| Login | Password | Use it to see |
|---|---|---|
admin | changeme123 | Everything, incl. Administration |
sales1 | demo1234 | The sales agent's world |
agro1 | demo1234 | Production, filtered to seedlings |
store1 | demo1234 | Stores + procurement |
finance1 | demo1234 | The money side + approvals |
driver1 | demo1234 | Mobile-only driver flow |
Tips that apply everywhereΒ§
- Universal search (top bar): type or scan any ref β
CO-β¦orders,PO-β¦batches,INV-β¦,DN-β¦,ITM-β¦,REQ-β¦, client names, phone numbers, ID numbers. Exact refs jump straight to the record. Every printed document carries a scannable barcode of its ref. - Grids are spreadsheets: click a header to sort, type in the row beneath it to filter, drag the header edge to resize, use Columns to hide/reorder (saved per user), Paste from Excel to import, Export CSV to get data out. Numeric columns are right-aligned and formatted.
- Cells you changed this session are tinted amber for verification.
1.Sales: CRM β Order β Quotesales1Β§
- CRM β open Kericho Blooms Ltd: phones, farms with GPS map links, interaction log. Try adding a client named "Kericho Bloom Ltd" β the duplicate detector flags the near-match before it's created.
- Order registration β + New order β start typing "Wanjiru": the client card pops up with contact info and "50% deposit required before production". Create the order.
- On the order page, Paste from Excel (or add lines): try crop
Tomatooβ the name check highlights it amber with "Did you mean Tomato Anna F1?" and one click fixes it. An unknown crop goes red and (for authorized users) offers Create crop card without leaving the page. - Enter just plants on a line β plugs and trays fill themselves using that crop's real factors; the Seeds (est.) column and per-line prices + running total (client price list first) update live. Give each line its own Deliver by date.
- Quotation strip β View / Print / Save PDF for the customer-ready quote, or Email to customer.
2.Finance gate: depositsfinance1Β§
- Financial β the amber "Deposits required before production" queue lists non-corporate orders without credit terms. Click one: the modal shows the order's lines, value, and the suggested 50%. Record the deposit (M-Pesa ref).
- Until that's done, planning that order is blocked β try it as
agro1and read the refusal.
3.Production: plan β seed β confirm β growagro1Β§
- Production planning β the sowings timeline stacks planned (green) vs still-unplanned (amber) trays/day (sow-by = line delivery β crop lead time); overdue dates flash red. The planning queue sorts most-urgent first, and every card shows its finance verdict (deposit gate β blocked orders can't generate) plus a per-line seed-on-hand chip (β / βN% / no seed, matched by crop + client-vs-company ownership). When seed only partially covers a line, the batch split is pre-suggested with a live preview ("3 + 2 trays Β· 07-10 β 07-11"). Pick Send batches to to assign the warehouse right at generation, or use the warehouse tabs + bulk assign on the planned grid below. Print planting list groups by warehouse for hard copies.
- Seed store β Receiving: receive seed (count β grams auto-convert via 1000-seed weight) β a lot number + printable label. To issue: each batch shows a dropdown of received lots only, flagged β/β against what the order specifies (crop + client vs company seed) with remaining grams. Issuing a β lot is refused unless an authorized user overrides (audited). Returns: leftover grams back to store.
- Planting confirmation β confirm planted quantity (carry-overs just confirm the remainder tomorrow).
- Production floor β per batch: relocate (3-level locations), log special treatments, set plant health (overgrown alerts Agronomy + Logistics + Sales), advance growing phases with the admin-configured confirmation fields, discard (permission-gated), and set the ready date (β€ 15 days early, anchored to planting + lead time).
- Production master list β every batch, every status, one grid.
4.Fulfilment: dispatch β deliveradminfinance1Β§
- Logistics β select ready batches for one client, assign truck + date, Create delivery note. Overplanted surplus auto-flags into Extras; returnable trays auto-open a Tray control record.
- Driver driver1 (on mobile.planseedgrow.com) β Deliveries tab: pick or scan the DN, confirm counts, capture the receiver's name + signature, optional photo, done. The printed DN then shows the proof.
- Extras stock β oldest first with age badges: sell (partial ok β DN β invoice), gap-fill, or trash (discard permission).
- Tray control β escalating alerts at 30/45/60 days, every phone chase logged, and an approver-gated container invoice that archives the row.
5.Money: invoice β pay β reconcilefinance1Β§
- Financial β create the invoice from a DN: Plantech-sourced seed splits into two lines (propagation service + seeds). Approve it (approver-gated), print it β clean PDF with barcode.
- On the printed invoice, use Pay via M-Pesa (demo): enter any phone β mock STK push β paid instantly, receipt recorded, Finance + Sales notified. (Live Daraja swaps in behind the same connector later.)
- Reconcile statement β paste rows (
reference, account, amount, phone); preview shows each row matching an invoice / an order deposit / a client by phone / unmatched; Apply records them (duplicates skipped). - Client accounts β AR aging buckets (0-30/31-60/61-90/90+), printable statement per client, filtered QuickBooks CSV export.
- CRM client page doubles as the account 360: open orders, history, balance, containers held β panels appear per the viewer's permissions.
6.Supply: store β procurement β projectsstore1finance1 approvesΒ§
- Main store β standardized item register (near-duplicate names are flagged), min/max levels with a Low stock tab, shelf barcode labels, stock by location.
- Procurement β raise a requisition with an allocation (project / farm location / department) + category;
finance1approves issue from stock or purchase; create the PO (PUR-β¦), confirm it; the store receives it without seeing prices, flagging wrong qty/quality/item β issues alert Procurement, clean receipts notify the requester. - Projects β a rank-3+ user submits; Engineering fills the BOQ grouped by category and budget; on approval the ERP auto-generates the requisition from the BOQ.
- Raw materials β scan a container code to consume; FIFO is enforced (the older peat lot must go first β try consuming the newer one), min levels alert Procurement.
- Maintenance β machines ranked by 90-day job count ("high maintenance" badge); mechanics log work from the mobile π§ tab.
7.AdministrationadminΒ§
Administration is the single control point: create users (PWA-only toggle for issued devices), set per-module read/edit + per-function permissions, designate approvers (primary + backups) for every approval chain, manage departments, the 3-level location tree, currencies, and settings β CRM mandatory fields, growing-phase confirm fields, Extras weekly caps, tray alert days, UI colours, and module on/off switches.
8.Mobile PWAΒ§
https://mobile.planseedgrow.com β installable (Add to Home Screen). Same credentials as desktop. Tabs by permission: Scan (camera or hardware scanner β batch card), Approve (field orders, amendments, requisitions, POs), Deliver (driver flow), Floor, Harvest, Fix (maintenance).
LAN_ONLY=on restricts logins to the ops network.Demo storyline (5 minutes, in order)Β§
- sales1 new Wanjiru order + typo fix + quote
- finance1 record the 50% deposit
- agro1 generate batches, assign warehouse, issue matching seed lot, confirm planting, mark ready
- admin create the DN (watch Extras + Tray control auto-fill)
- driver1 on mobile: sign & deliver
- finance1 invoice (two-line split)
- Pay via M-Pesa on the invoice
- Dashboard shows the money landing