67 lines
2.3 KiB
Markdown
67 lines
2.3 KiB
Markdown
---
|
|
title: Inventory Management
|
|
description: Google Sheets master inventory, Square POS, and sales workflow
|
|
published: true
|
|
date: 2026-04-12T00:00:00.000Z
|
|
tags: pncfish, inventory, square
|
|
editor: markdown
|
|
dateCreated: 2026-04-12T00:00:00.000Z
|
|
---
|
|
|
|
# Inventory Management
|
|
|
|
## Source of Truth
|
|
|
|
**Google Sheets is the master inventory.** Square is a downstream target. Never update Square first and then try to sync back to Sheets — always update Sheets first.
|
|
|
|
## Google Sheets Structure
|
|
|
|
| Column | Field | Notes |
|
|
|--------|-------|-------|
|
|
| A | SKU | Unique identifier |
|
|
| B | Display name | Name shown on price board |
|
|
| C | Price | Retail price |
|
|
| D | Tank designator(s) | Space-separated: `T4 T5`. Drives which TV slide shows the item. Remove when sold. |
|
|
|
|
A separate tab tracks **livestock deaths** — used for inventory shrinkage journal entries in Bigcapital. See [Accounting](/PNC-Fish/Accounting/Overview).
|
|
|
|
## Square POS Integration
|
|
|
|
### Current State (Manual)
|
|
|
|
New inventory added to Square via CSV catalog upload. Sales are recorded in Square, then manually reconciled against Google Sheets.
|
|
|
|
### Planned Automation
|
|
|
|
| Direction | Method | Status |
|
|
|-----------|--------|--------|
|
|
| Sale → Sheet | Square webhook → Google Apps Script → remove tank designator | Designed, not deployed |
|
|
| Sheet → Square | "Push to Square" Apps Script button | Planned, not built |
|
|
|
|
### Square API Notes
|
|
|
|
- Square API access is free — no additional cost beyond transaction fees
|
|
- Webhook + Apps Script integration has zero incremental cost
|
|
- Apps Script is deployed as a Google Web App to receive Square webhook POSTs
|
|
|
|
## Adding New Livestock
|
|
|
|
1. Add row to Google Sheet: SKU, display name, price, tank designator
|
|
2. Slides auto-update → TV price board updates within 5 minutes
|
|
3. Push to Square: CSV upload to Square catalog (manual until automation is live)
|
|
|
|
## When Item Sells
|
|
|
|
**With automation (planned):** Square fires webhook → Apps Script removes tank designator → done
|
|
|
|
**Manual fallback (current):**
|
|
1. Process sale in Square
|
|
2. Open Google Sheet
|
|
3. Remove tank designator from col D for that item
|
|
4. Slides auto-update, TV picks up within 5 minutes
|
|
|
|
## Livestock Death Tracking
|
|
|
|
1. Record death in dedicated Google Sheet tab (date, species, SKU, cost)
|
|
2. Enter as inventory shrinkage journal entry in Bigcapital
|
|
3. Do NOT process through Square
|