Local weekly-report cleanup
Make the bad rows explain themselves.
Upload or paste the recurring sales export. Valid rows become reconciled evidence; rejected rows keep their source value and exact reason.
sales_export.csv sample
Rules: trim headers and values, map five known columns, require customer/amount/status/date, accept paid or refund only, and compute totals from accepted rows only.
Canonical transformation
Reconciliation evidence
No export reconciled yet.Use the bundled sample or paste a CSV to expose accepted and rejected rows.
VALID ROWS
REJECTED ROWS
VALID PAID
VALID REFUND
NET
Rejected rows
| Sheet row | Error code | Original value | Explanation |
|---|
Clean accepted rows
| order_id | customer | amount | status | date |
|---|
Interpretation: spreadsheet rows count the header as row 1. Paid and refund totals use valid integer cents; rejected values never enter either side. This is a local transformation, not a live accounting-system sync.