Pick up and finish yesterday's cut-off Tier B pass. - build/: PyInstaller scaffold (datatools.spec + launcher.py + hook-streamlit.py + README) — folder-mode bundle, locked 127.0.0.1, per-OS recipe - marketing/COPY.md: single source of truth for every customer-facing string — landing H1/sub/CTAs, demo CTAs, email subjects, Gumroad listing, banned phrases - marketing/community-posts/: 9 drafts (3 posts × 3 niches: bookkeeper, revops, shopify-pet) — story / tip / soft-offer - marketing/emails/: 18 drafts (Gumroad delivery + 5-touch onboarding × 3 niches), per-niche segmentation guidance - docs/NEXT-STEPS.md: flip 2.2 / 2.4 / 3.1 / 3.4 to done with pointers to the new assets; add Phase 0 inventory rows - .gitignore: narrow `build/` ignore so PyInstaller spec + launcher + hooks get tracked, only generated artifacts (build/build/, build/__pycache__/, build/dist/) stay ignored Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
32 lines
1.6 KiB
Markdown
32 lines
1.6 KiB
Markdown
# Bookkeeper · Day 1 — Try it on this messy bank export first
|
|
|
|
**Subject:** Try it on this messy bank export first
|
|
**Send:** Day 1, ~9am buyer-local-time
|
|
**Goal:** convert "I bought it" → "I ran it on something"
|
|
|
|
---
|
|
|
|
Hi {{first_name}},
|
|
|
|
Yesterday's email had your download. Today's email has a *file* — a sample bank export I built specifically to break things.
|
|
|
|
→ **{{sample_file_url}}** (260 KB CSV, 1,400 rows of synthetic data — no real account info)
|
|
|
|
It's modeled after real exports I've seen from US, UK, and Canadian banks. Hidden in there:
|
|
|
|
- Mixed date formats (some `MM/DD/YYYY`, some `DD-MM-YY`, one row in `YYYY-MM-DD`)
|
|
- Six different spellings of "Amazon" across the merchant column
|
|
- Trailing whitespace + non-breaking spaces in the description column
|
|
- Three obvious duplicate transactions and two non-obvious ones (different timestamps, same amount + merchant)
|
|
- A totals row at the bottom that's not a transaction
|
|
- One row with currency in `€` instead of `$`
|
|
|
|
Drop it into DataTools, click **"Run all"** in the analyzer, and look at the gate report. It'll catch all of the above and tell you exactly what changed and why.
|
|
|
|
The audit trail (a sidecar CSV called `<filename>.audit.csv`) is the part most bookkeepers are surprised by. Open it in Excel — every change has a row: original value, new value, rule that fired, timestamp. That's the file you hand to your client when they ask "wait, why did you re-classify that?".
|
|
|
|
Try it once on the sample, then once on a real client export. Reply and tell me what it caught (or missed) — I'm building the v1.1 detector list from real-world feedback.
|
|
|
|
— Michael
|
|
{{support_email}}
|