Problem
An insurance or benefits agency receives statements from dozens of carriers every month, each with its own column names and layout. Staff re-key them into spreadsheets, cross-check against the book of business, and chase carriers that underpaid. The expensive part is the last one: a carrier that simply omits a policy produces no row to notice. Nobody catches an absence by reading harder.
System
Ingestion routes each file by type (tabular parsers for CSV and XLSX, text extraction for PDFs, OCR for scans) into one normalized statement schema. Reconciliation joins every row against the agency’s commission schedules and the book of business, flagging underpayments, rate mismatches, and, crucially, policies that should have appeared and didn’t. Output is a short flagged list per carrier, not a re-keyed spreadsheet.
Worth knowing
This was built to replace a paid commission-tracking SaaS with something that fits the agency’s real rate structure instead of the other way around. Tiered rates, first-year versus renewal splits, and carrier-specific quirks live in config, so the reconciliation is exact for that agency rather than approximately right for every agency.