How to Reconcile a Messy AR Spreadsheet With a Browser AI Agent (2026)

Lead
Point a browser AI agent at your accounts receivable spreadsheet and it cross-checks customer emails against your CRM, matches past-due invoices to payments, and flags stale records,all in 20 minutes instead of half a day. The agent writes every change to a sidecar column, logs every action, and stops before overwriting anything.
- Use a browser agent to read multiple SaaS tabs (CRM, billing portal, email, master sheet) at once
- Write proposed fixes to a sidecar column, not live data
- Build a structured audit log with timestamp, source URL, and reviewer signature
Verified against Claude in Chrome and the Claude Agent SDK on 2026-05-04.
Prerequisites
How ScaleIT handles this: See AI Quick-Start
- Accounts receivable spreadsheet (Google Sheets, Excel, or similar)
- Access to 2+ systems: billing portal (Stripe, QuickBooks), CRM (HubSpot, Salesforce), email inbox
- Claude in Chrome extension installed (browser-based) OR Claude Agent SDK with Playwright (unattended)
- 30–60 minutes to build issue list and scope before first run
Steps
1. Build the Issue List
Create a CSV file listing invoices you want fixed. This is your scope boundary,the agent only fixes what's listed.
- Open your AR spreadsheet (master ledger)
- Create new spreadsheet:
ar-issues.csv - Add columns:
invoice_number,customer_name,issue_type,expected_value,notes - Issue types: "stale_email", "status_drift", "missing_po", "currency_mismatch"
- Populate 50–100 rows of invoices you know are wrong (agent runs 15–25 minutes)
- Save CSV to shared location (Google Drive, Dropbox, local folder)
Example row: INV-2025-0412, Acme Corp, stale_email, acme-new@company.com, "Bounced; sales gave me new address"
2. Build the Agent Prompt
Write a single prompt telling the agent the goal, issue types, and tabs to open.
- Create text file:
ar-agent-prompt.txt - Include: goal (fix X invoices), 4 issue types with "check this tab, write to sidecar column" instructions
- List exact tabs to open: CRM URL, billing portal URL, email link, AR sheet link
- Add critical rules: "NEVER delete row, NEVER overwrite original columns, ALWAYS write to agent_fix column (sidecar), ALWAYS log to audit_log sheet"
- Save to same folder as CSV
3. Set Up Sidecar Column and Audit Log
Add columns to spreadsheet to capture proposed changes without touching live data.
- Open AR master spreadsheet
- Add three columns:
agent_fix(agent writes here),reviewed(you mark "approved"/"rejected"),applied_by(your name or date) - Create new sheet tab:
audit_logwith columns:timestamp,invoice_number,url_checked,field,value_read,value_proposed,status
Example audit log: 2025-05-04 14:22:15 | INV-2025-0412 | https://app.hubspot.com/.../acme | email | old@acme.com | new@company.com | approved
4. Run the Agent (Claude in Chrome)
Use browser agent to work through issue list.
Interactive (Claude in Chrome extension):
- Install Claude in Chrome from Chrome Web Store
- Open AR spreadsheet in one tab, ar-issues.csv in another
- Click Claude icon → paste your prompt from Step 2
- Ask: "Start with row 1. For each row, check the relevant tabs and write proposed fixes to agent_fix column. Log every action to audit_log sheet."
- Let agent run 20–30 minutes; it will ask for clarification if needed
- Review work in real time and course-correct
Unattended (Claude Agent SDK + Playwright):
- Install:
npm install @anthropic-ai/sdk @playwright/browser - Write agent script that reads issue CSV, calls Claude with your prompt, controls browser, writes audit log
- Run on schedule:
0 2 * node ar-reconciliation-agent.js(nightly)
5. Review and Approve Changes
Agent finishes and writes proposed changes to sidecar column. You review and copy approved values to live columns.
- Open
agent_fixcolumn in AR sheet - For each proposed change: mark
reviewed = "approved"or "rejected" - For approved rows, copy value from
agent_fixinto live column (email, status, po_number, etc.) - Enter your name or date in
applied_bycolumn - Time estimate: 20–30 minutes for 100 rows
Verify
- Confirm sidecar was used: Check live columns (status, email, amount),they should be unchanged. All proposed changes should be in
agent_fixcolumn. - Confirm audit log is complete: Check
audit_logsheet. Every row agent touched should have timestamp, URL, and proposed value. - Spot-check one approval: Pick an approved row and confirm it applied correctly (e.g., email column shows new email address).
Troubleshooting
Agent gets stuck on "Customer not found in CRM"
- Cause: Customer name in ar-issues.csv doesn't match CRM name (typo, business vs. legal name).
- Fix: Update
customer_namein CSV to match CRM exactly. Re-run that row or fix manually.
Agent overwrites live column instead of using sidecar
- Cause: Agent ignored instruction to use sidecar column.
- Fix: Stop run immediately. Restore from backup. Revise prompt: "NEVER modify live columns. ALWAYS write to agent_fix column." Re-run.
Audit log exists but agent never writes to it
- Cause: Agent doesn't know to log. Tab exists but not mentioned in prompt.
- Fix: Add to prompt: "After every fix, write a row to audit_log sheet with: [timestamp], [invoice], [url], [field], [old], [new], [status]." Re-run.
Agent marks rows "needs_human" without clear reason
- Cause: Agent hit edge case (two matching POs, ambiguous record) and correctly stopped.
- Fix: This is working as designed. Handle manually or ask agent for clarification. Mark as "rejected" in review column.
Work is wrong or incomplete
- Cause: Agent lacked context or prompt was ambiguous.
- Fix: Review
agent_fixandaudit_logsheets to see what agent saw. Revise prompt to clarify ambiguous cases, add examples, narrow issue types. Prepare second issue list with failed rows and re-run.
CTA
Reconciling AR by hand costs hours every month. A well-configured agent run cuts that to 30 minutes and produces a clean audit trail for close. Contact us for a free consultation if you'd like help designing a browser-agent workflow for your AR process.