Daily Sales Reconciler Skill
End-of-day sales processing from register tape or POS photos. Manager photographs the closing summary, sends it via WhatsApp or any channel. AI extracts totals, calculates payment breakdown, flags discrepancies. Owner gets a clean daily summary every morning.
The Problem
Restaurant and retail owners want to know how the day went — but they're not at the register at closing time. The closing manager either calls with numbers (interrupting the owner's evening), texts a blurry photo (owner squints at it), or nobody reports until the owner asks the next day. Cash discrepancies go unnoticed. High discount rates slip by. The owner is always one day behind.
How It Works
- Closing manager photographs the register tape or POS daily summary screen
- Sends it via WhatsApp/SMS/Slack with
@daily-sales-reconciler - AI extracts all sales data — gross, net, tax, payments, cash count
- Flags anomalies — cash short, high discounts, high refunds, unusual ticket average
- Owner receives a clean, formatted daily summary
Setup
1. Enable Inbound Messaging
Enable the channel your closing manager uses:
- WhatsApp (recommended — photo quality is good)
- SMS (works but photo quality varies)
- Slack / Teams (if your staff uses these)
2. Contact Profiles
Create profiles for: - Closing managers — inbound enabled, so they can send photos - Owner — receives the daily summary via their preferred channel
3. AI Assistant
Must support image analysis: - Anthropic Claude — recommended, excellent at reading receipts and register tapes - OpenAI GPT-4o — good alternative - Ollama — only if using a vision-capable model (e.g., llava)
4. Install the Skill
Pre-installed at INTOUCH_HOME/skills/daily-sales-reconciler/SKILL.md.
Usage
Closing Manager Sends Photo
@daily-sales-reconciler [attach photo of register tape or POS summary]
Or with a cash count:
@daily-sales-reconciler Cash in drawer: $840.00 [attach photo]
Owner Receives Summary
Via their preferred channel (WhatsApp, email, Slack, SMS):
DAILY SALES SUMMARY — 2026-04-14
Net Sales: $4,118.20
Tax Collected: $339.75
TOTAL RECEIPTS: $4,457.95
Transactions: 187
Avg Ticket: $23.84
Credit/Debit: $3,562.40 (79.9%)
Cash: $845.55 (19.0%)
Cash Over/(Short): ($5.55)
FLAGS: Cash short $5.55
Flags
| Flag | Trigger | Why It Matters |
|---|---|---|
| Cash discrepancy | Over/short exceeds $10 | Theft, errors, or training issues |
| High discount rate | Discounts over 5% of gross | Unauthorized discounts or coupon abuse |
| High refund rate | Refunds over 3% of gross | Return fraud or service problems |
| Unusual average ticket | Below $10 or above $100 | Pricing errors or unusual sales mix |
| Low transaction count | Significantly below typical | Staffing issue, early close, or system problem |
Customization
Edit SKILL.md to change:
- Cash discrepancy threshold — change $10 to your tolerance
- Discount threshold — change 5% based on your promotion frequency
- Refund threshold — change 3% based on your return policy
- Average ticket range — adjust $10-$100 to your business's normal range
- Additional fields — add tip tracking, labor hours, food cost percentage
- Multiple locations — have each location manager prefix with the location name
Multi-Location Setup
For businesses with multiple locations:
- Create a contact group per location
- Closing manager includes location:
@daily-sales-reconciler Store #2 [photo] - Owner gets summaries tagged by location
- Create a morning YAML job that queries all previous day's summaries and generates a consolidated multi-location report
Cost
- Claude: ~$0.02-0.05 per photo (image analysis)
- GPT-4o: ~$0.02-0.05 per photo
- 30 days/month: $0.60-1.50/month
Pairing with Historical Tracking
For trend analysis, pair with a YAML job:
daily-sales-reconcilerskill extracts the datasqltask inserts into adaily_salestable (date, gross, net, tax, transactions, cash_variance)- Weekly: Claude analyzes the last 7 days vs prior 7 days, flags trends
- Monthly: generates a report with charts description (sales trend, avg ticket trend, cash variance pattern)
This turns a simple daily check into business intelligence — "Tuesday evenings are your weakest period" or "discounts have increased 40% since the new cashier started."