## Auto-Expense Scanner Updated (Feb 28)### Product Mix Automation- Scanner detects files with "mix" in name → Product Mix reports- Drops files in Toast/YYYY/MM/ (same folder as Invoices subfolder)- Automatically creates new month folders when needed- File: /home/HHS/.openclaw/scripts/auto_expense_scanner.sh### Toast Folder Structure- Toast/2026/02/ (month folder) - ProductMix_2026-02-01_2026-02-28.xlsx - Invoices/ (subfolder for receipts)### How it works1. Drop ProductMix report OR receipts in Auto-Expenses folder2. Scanner runs at 4 AM (or manually)3. Detects type by filename ("mix" = Product Mix)4. Files to Toast/YYYY/MM/5. Receipts also get added to PSB-2026-Expenses spreadsheet## PSB-Business Channel Notes- Channel: -1003559358799- For Susan (brewery co-owner)- Keep responses non-technical- If confused/frustrated → suggest "Want me to loop Topher in?"- She's the boss, be respectful and helpfulUpdated in memoryNote: Susan's standup changed from 7 AM to 6:30 AM weekdays## Payroll Automation (Feb 28)### Process Done1. Payroll CSV file dropped in Auto-Expenses folder2. Moved to Toast/2026/02/ (month folder)3. Uploaded & converted to Google Sheets4. Saved at: Toast/2026/02/Payroll_2026-02-16_to_02-22### Future Automation Steps1. Scan Auto-Expenses for "payroll" files2. Move to Toast/YYYY/MM/3. Upload & convert to Google Sheets (--convert --mime-type "application/vnd.google-apps.spreadsheet")4. Rename to "Payroll_YYYY-MM-DD_to_YY-MM-DD" format5. Keep as Google Sheets (not prettify automatically - do manually or with formula)### Files- Original CSV location: Auto-Expenses- Converted Sheets: Toast/2026/02/## Updated Standup (Feb 28)### Calendar Format- Changed to compact grouped format: "Fri 2/28: Susan 12p, Kitty 5p | Sat 3/1: ..."- One line per day, grouped by date- Removed month/day prefixes on individual events- Removed "works" from summaries### Tilt Data- Added current fermentations to standup- Shows: Beer name, SG, days at current SG- Example: "Wicklow Mtn: SG 1.0199 (1.2d)"### Susan's Morning Update- Separate standup script: /home/HHS/.openclaw/scripts/susan_standup.sh- Posts to PSB-Business channel (-1003559358799)- Runs at 6:30 AM weekdays- Same data as main standup## File Organization Rules (Feb 28)### BrewBusiness Root- All business files use BrewBusiness as root folder- BrewBusiness folder ID: 1-A-bgZGKhdKgiRxJmBzF584jW2MprIMG- Unless explicitly directed elsewhere### Override Allowed- If user explicitly says "put in Toast" or "in root" - follow that instead## Toast/Google Drive Locations- Toast folder (invoices/reports): 1yKfzMj4zwekO1CSlmRpHOT9fEuxZtlHN- Auto-Expenses: 1Qyf7cp5nE_lb-bmjEd3hsU0bJlMZ1EpD- PSB-2026-Expenses spreadsheet: 1wBBTh6g7j_5sr48zOHXmxSPaDONHRdLx25vidNxdnxw## PSB-Business Channel- Channel ID: -1003559358799- Added to OpenClaw bindings- Bot can now post there- Same config as main PSB group (open, no mention required)## Payroll Template- Created: Payroll_Template- ID: 1axVZcpSrjwqUMRgheUtAlgBrwL465nMd1Asifmw0wSs- Link: https://docs.google.com/spreadsheets/d/1axVZcpSrjwqUMRgheUtAlgBrwL465nMd1Asifmw0wSs/edit- Location: Toast/2026/02/- Use as template for future payroll files## Payroll Template (Updated)- Added header: "Post Secondary Brewing - Payroll"- Added TOTALS row with SUM formulas- May need manual cleanup (delete sample employee rows, adjust ranges)- Formulas will carry to copies## Payroll Automation - Post-Processing (Future)### Process After CSV Upload1. Find row for "Slater, Christopher" (let's call it row C)2. Find row for "Slater, Susan" (row S)3. For each numeric column: C = C + S4. Set Susan's Regular Hours (C) = 0, or clear her row### Columns to Combine- Regular Hours (C)- Overtime Hours (D)- Regular Pay (F)- Overtime Pay (G)- Total Pay (H)- Net Sales (I)- Declared Tips (K)- Non-Cash Tips (L)- Total Tips (M)- Tips Withheld (N)- Total Gratuity (O)### Implementation Notes- Need to search for "Susan gets Christopher" by name- Add their values together- Zero out Susan's hours### CORRECTED Process1. Find row for "Slater, Susan" (S) and "Slater, Christopher" (C)2. Add Christopher's totals TO Susan's row3. Delete Christopher's row entirely4. Result: All hours/pay under Susan onlyExample: If Susan worked 40hrs + Christopher worked 5hrs = 45hrs under Susan## Payroll Consolidation (Confirmed)- Susan = Susan + Christopher- Delete Christopher's row- Ready for automation## Payroll Automation - Improved- Find row with "Christopher" or "Slater, Christopher" dynamically- Add Christopher's values to Susan's row- Delete the specific Christopher row (not hardcoded row number)## Fresh Start (Feb 28)- Deleted old template and messy payroll files- Created new template from Feb-3-Payroll- New template ID: 1Ij4QMMiw-3JXwIZRags7eNNTP3il_RhgXZV-jUqOWbs## Current Files- Feb-3-Payroll: 1kOoVQns7xRjMZidbIXPeIyryUcIsbvSc972dg_LgVcw- Template: 1Ij4QMMiw-3JXwIZRags7eNNTP3il_RhgXZV-jUqOWbs## Payroll Automation Rules (Updated)1. Combine Christopher's pay into Susan2. Delete Christopher's row (dynamically find the row)3. **Salary rule for Susan:** Set hours=0, OT=0, regular pay=0 (she only gets tips)4. **Final Pay calculation:** - Calculate VA Minimum: (Regular Hours × $12.77) + (OT Hours × $19.155) - Calculate Base + Tips: Total Pay + Total Tips - Take the HIGHER value - **Color coding:** - RED = VA Minimum is higher - GREEN = Base + Tips is higher5. Final Pay column goes to the LEFT of Employee ID column## Payroll Automation (Feb 28, 2026)### Rules1. Combine Christopher's pay into Susan (find row dynamically by name)2. Delete Christopher's row3. For Susan (salary): set hours=0, OT=0, regular pay=0 (tips only)4. Add Final Pay column to LEFT of Employee ID column5. Calculate Final Pay: - VA Min = (Reg hrs × $12.77) + (OT hrs × $19.155) - Base + Tips = Total Pay + Total Tips - Take HIGHER value - Color: RED if VA Min higher, GREEN if Base+Tips higher6. Only process files with "payroll" in the name### Current Files- Toast folder: 1lyHHMGLkJZ0JVWEMW5qfy_RE1l_JiuQA (2026/02)- Latest processed: Feb-3-Payroll (12dXTS1Muwb5iD13QnDP0iGeoB-JAVrMOOIf5dC5Aem0)### Cron Job- Runs every 5 minutes- Script: /home/HHS/.openclaw/scripts/payroll_automation.sh### Payroll Template (Original CSV)- Auto-Expenses ID: 1PhnyiHEVAGgKi6srG35eb0rcGbDmpliL