← 返回 Skills 市场
samledger67-dotcom

Bank Reconciliation

作者 samledger67-dotcom · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
196
总下载
0
收藏
1
当前安装
1
版本数
在 OpenClaw 中安装
/install bank-reconciliation
功能描述
Reconcile bank accounts against QuickBooks Online (QBO) for monthly close, discrepancy investigation, or audit workpapers. Use when a client needs GL vs bank...
使用说明 (SKILL.md)

Bank Reconciliation Skill

Pipeline: scripts/pipelines/bank-reconciliation.py
Day: 2 of 14-Day Deterministic Pipeline Build


When to Use This Skill

Use when a client needs their bank account reconciled against QBO:

  • Monthly close reconciliation
  • Investigating GL/bank balance discrepancies
  • Catching unrecorded bank fees, interest, or deposits
  • Producing auditor-ready reconciliation workpapers
  • Tracking outstanding checks or deposits in transit

NOT for:

  • Payroll reconciliation (use payroll-recon pipeline)
  • AR/AP aging (use ar-collections pipeline)
  • Investment/brokerage accounts
  • Intercompany eliminations

Requirements

pip install openpyxl
# Node.js QBO client must be connected:
node integrations/qbo-client/bin/qbo connect \x3Cslug>

Usage Patterns

1. Standard Run (Chase, auto-detected)

python3 scripts/pipelines/bank-reconciliation.py \
    --slug sb-paulson \
    --end-date 2026-02-28 \
    --bank-csv ~/Downloads/chase_feb2026.csv \
    --bank-ending-balance 42531.87

2. Specific Account Name

python3 scripts/pipelines/bank-reconciliation.py \
    --slug glowlabs \
    --end-date 2026-02-28 \
    --bank-csv ~/Downloads/boa_feb2026.csv \
    --account "Business Checking" \
    --bank-ending-balance 18250.00

3. Wells Fargo (separate debit/credit columns)

python3 scripts/pipelines/bank-reconciliation.py \
    --slug sb-paulson \
    --end-date 2026-02-28 \
    --bank-csv ~/Downloads/wf_feb.csv \
    --bank-format wellsfargo \
    --bank-ending-balance 55000.00

4. Custom Column Mapping (unknown CSV format)

python3 scripts/pipelines/bank-reconciliation.py \
    --slug sb-paulson \
    --end-date 2026-02-28 \
    --bank-csv ~/Downloads/stmt.csv \
    --col-date "Trans Date" \
    --col-desc "Narrative" \
    --col-amount "Net Amount" \
    --bank-ending-balance 28000.00

5. Wider Date Window + Custom Output

python3 scripts/pipelines/bank-reconciliation.py \
    --slug sb-paulson \
    --end-date 2026-02-28 \
    --bank-csv ~/Downloads/chase_feb.csv \
    --date-window 5 \
    --bank-ending-balance 42531.87 \
    --out ~/Desktop/recon

Arguments Reference

Argument Required Description
--slug Company slug (must be connected in qbo-client)
--end-date Reconciliation as-of date (YYYY-MM-DD)
--bank-csv Path to bank statement CSV file
--bank-ending-balance Recommended Bank statement ending balance (float)
--account Optional Account name to match on Balance Sheet
--bank-format Optional auto (default), chase, bofa, wellsfargo, generic
--col-date Optional Override date column header
--col-desc Override Override description column header
--col-amount Optional Override single amount column header
--col-debit Optional Override debit/withdrawal column header
--col-credit Optional Override credit/deposit column header
--date-window Optional Days for exact match window (default: 3, fuzzy: 2×)
--out Optional Output directory (default: ~/Desktop)
--sandbox Optional Use QBO sandbox environment

Supported Bank CSV Formats

Format Date Column Amount Column Notes
chase Transaction Date Amount Negative = withdrawal
bofa Date Amount Negative = withdrawal
wellsfargo Date Withdrawals + Deposits Two separate columns
generic Tries common names Tries common names Use --col-* if fails

Auto-detection reads column headers and picks the best format. Use --bank-format to override.


Matching Logic

Pass 1 — Exact: Amount match within ±$0.01, date within ±date-window days (default 3).

Pass 2 — Fuzzy Date: Amount match within ±$0.01, date within ±2×date-window days (default 6).

Pass 3 — Fuzzy Vendor: Amount within ±$1.00, vendor key substring match (strips check numbers, dates, ref numbers), any date.

Unmatched after all 3 passes → flagged in Unmatched tabs.


Reconciliation Equation

Book Balance (QBO BS)
+ Deposits in Transit     (book has it, bank hasn't cleared it)
- Outstanding Checks      (book has it, bank hasn't cleared it)
= Adjusted Book Balance

Bank Statement Ending Balance
+ Bank Credits Not in Book  (bank has it, not yet in QBO)
+ Bank Charges Not in Book  (negative; bank has it, not yet in QBO)
= Adjusted Bank Balance

Adjusted Book Balance = Adjusted Bank Balance → RECONCILED ✅

Adjusting Entry Auto-Suggestions

The pipeline auto-classifies unmatched bank transactions into:

Category Keywords Suggested Entry
Bank Fee "service charge", "monthly fee", "wire fee", "nsf fee" DR Bank Service Charges / CR Checking
Interest Earned "interest", "dividend" DR Checking / CR Interest Income
Direct Deposit "payroll", "ach credit", "zelle" DR Checking / CR AR/Revenue
Payment Processor "stripe", "square", "paypal" DR Checking / CR Undeposited Funds
NSF Returned "returned item", "returned check" DR Returned Check Expense / CR Checking
Unclassified (no keyword match) TBD — review manually

Output: Excel Workbook

File: BankRecon_{slug}_{YYYYMMDD}.xlsx (saved to --out or ~/Desktop)

Tab Contents
Reconciliation Summary Book/bank balance sections, stats, reconciled status badge
Matched All matched pairs with match type (exact/fuzzy), amounts, date diff
Unmatched (Book) Outstanding checks + deposits in transit (in QBO, not cleared)
Unmatched (Bank) Bank items not in QBO (fees, interest, unrecorded deposits)
Adjusting Entries Suggested DR/CR journal entries for each unmatched bank item
CDC Log Changes since last reconciliation run (book balance, diff, etc.)

CDC (Change Data Capture)

Cache stored at: .cache/bank-reconciliation/{slug}.json

Tracks changes in:

  • Book Balance
  • Adjusted Book/Bank Balance
  • Deposits in Transit
  • Outstanding Checks
  • Reconciling Difference

On first run: "First run — snapshot saved." On subsequent runs: only changed fields shown. Saves 90%+ API calls on recurring monthly reconciliations.


Design Notes

  • All financial math uses Python Decimal — no float drift
  • Amount sign convention: positive = deposit/inflow, negative = payment/outflow (both book and bank)
  • GL pull uses QBO GeneralLedger report filtered to the reconciliation period
  • If GL pull fails (e.g. permissions), pipeline falls back to Balance Sheet only (matching disabled)
  • Bank CSV preamble rows (Chase header lines before data) are auto-skipped

Typical Workflow

1. Client sends bank statement PDF → export as CSV from bank website
2. Run pipeline with --slug, --end-date, --bank-csv, --bank-ending-balance
3. Review Reconciliation Summary tab — check RECONCILED badge
4. If difference exists: check Unmatched (Book) for outstanding items, Unmatched (Bank) for unrecorded items
5. Post adjusting entries from Adjusting Entries tab
6. Re-run pipeline — difference should clear to $0.00
7. Save Excel to client Google Drive folder
安全使用建议
This instruction-only skill appears coherent, but before running it: (1) inspect scripts/pipelines/bank-reconciliation.py locally to confirm it only reads your bank CSV and QBO data and writes the Excel file (look for unexpected network or file operations); (2) ensure the Node qbo-client you connect is a trusted integration because it will hold tokens that grant access to QBO data; (3) run in a safe environment or sandbox first if you are unsure; (4) back up sensitive files before running and verify output goes to a safe --out path. If you want additional assurance, share the referenced pipeline file for a deeper review.
功能分析
Type: OpenClaw Skill Name: bank-reconciliation Version: 1.0.0 The skill bundle describes a legitimate financial tool for reconciling bank statements with QuickBooks Online (QBO). The documentation in SKILL.md outlines standard accounting logic, including transaction matching and Excel report generation, and does not contain any suspicious commands, data exfiltration patterns, or prompt-injection attacks.
能力评估
Purpose & Capability
Name/description (bank reconciliation vs QBO) align with the instructions: running a local Python pipeline that reads bank CSVs and queries QBO via a Node qbo-client. Required packages (openpyxl) and the qbo-client connect step are consistent with producing Excel output and accessing QBO.
Instruction Scope
Instructions tell the operator to run scripts/pipelines/bank-reconciliation.py with a local bank CSV and to use a connected qbo-client. The skill expects access to local files (bank CSVs) and to QBO account data via the qbo-client. It also writes an Excel file to disk. Recommend reviewing the referenced script (scripts/pipelines/bank-reconciliation.py) before running to confirm it only does reconciliation and no unexpected I/O or network calls.
Install Mechanism
No automated install spec; instruction-only. The README asks to pip install openpyxl and to ensure a Node qbo-client is connected. Both are reasonable and low-risk by themselves; there is no arbitrary download URL or archive extraction in the skill.
Credentials
The skill declares no environment variables or credentials. It relies on a pre-existing Node qbo-client connection for QBO access, which is proportionate to the task. There are no requests for unrelated secrets or system config paths.
Persistence & Privilege
always is false and the skill is user-invocable. It does not request permanent/always-on presence or modification of other skill configs. Autonomous invocation is allowed by default but is not combined with other red flags here.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install bank-reconciliation
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /bank-reconciliation 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release: QBO bank reconciliation pipeline skill
元数据
Slug bank-reconciliation
版本 1.0.0
许可证 MIT-0
累计安装 1
当前安装数 1
历史版本数 1
常见问题

Bank Reconciliation 是什么?

Reconcile bank accounts against QuickBooks Online (QBO) for monthly close, discrepancy investigation, or audit workpapers. Use when a client needs GL vs bank... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 196 次。

如何安装 Bank Reconciliation?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install bank-reconciliation」即可一键安装,无需额外配置。

Bank Reconciliation 是免费的吗?

是的,Bank Reconciliation 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Bank Reconciliation 支持哪些平台?

Bank Reconciliation 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Bank Reconciliation?

由 samledger67-dotcom(@samledger67-dotcom)开发并维护,当前版本 v1.0.0。

💬 留言讨论