← Back to Skills Marketplace
samledger67-dotcom

Bs Quick Compare

by samledger67-dotcom · GitHub ↗ · v1.0.2 · MIT-0
cross-platform ⚠ suspicious
225
Downloads
0
Stars
1
Active Installs
3
Versions
Install in OpenClaw
/install bs-quick-compare
Description
Period-over-period variance analysis on the Balance Sheet pulled from QuickBooks Online. Outputs a 4-tab Excel workbook: Summary, Detail, Flags, CDC Log. Cov...
README (SKILL.md)

BS Quick Compare — Skill

What This Skill Does

Runs a period-over-period variance analysis on the Balance Sheet (BS) pulled directly from QuickBooks Online. Outputs a 4-tab Excel workbook: Summary | Detail | Flags | CDC Log.

Mirrors the pl-quick-compare and scf-quick-compare patterns but for the Balance Sheet — Assets / Liabilities / Equity sections, accounting equation validation, and BS-specific analysis notes on flagged items tying changes to SCF, AR/AP aging, capex, debt schedule, and equity activity.

When to Use

Use when:

  • A client needs month-end or YTD balance sheet comparison
  • Reviewing BS as part of monthly close deliverables
  • Investigating material shifts in assets, liabilities, or equity
  • Client asks: "why did our AR/AP/cash/debt change?" or "what happened to our equity?"
  • Pre-loan/investor analysis requiring clear BS trend visibility

NOT for:

  • P&L variance analysis → use pl-quick-compare.py
  • Cash flow analysis → use scf-quick-compare.py
  • AR aging deep-dive → use ar-collections
  • Financial projections or forecasting → use cash-flow-forecast.py
  • Full three-statement analysis (run all three compare pipelines and cross-reference)

Script Location

scripts/pipelines/bs-quick-compare.py

Requirements

  • pip install openpyxl (already installed in workspace)
  • Node.js QBO client with valid auth token
  • QBO credentials configured

Usage

# Current month-end vs. prior month-end (auto-detects prior)
python3 scripts/pipelines/bs-quick-compare.py \
    --slug sb-paulson \
    --current-end 2026-03-31

# Explicit prior period
python3 scripts/pipelines/bs-quick-compare.py \
    --slug sb-paulson \
    --current-end 2026-02-28 --prior-end 2026-01-31

# YTD (as of end of last completed month vs. same date prior year)
python3 scripts/pipelines/bs-quick-compare.py \
    --slug sb-paulson --ytd --year 2026

# Full date control (for QBO BS reports needing explicit start dates)
python3 scripts/pipelines/bs-quick-compare.py \
    --slug sb-paulson \
    --current-start 2026-01-01 --current-end 2026-03-31 \
    --prior-start 2025-01-01 --prior-end 2025-03-31

# Custom output directory
python3 scripts/pipelines/bs-quick-compare.py \
    --slug glowlabs \
    --current-end 2026-03-31 \
    --out ~/Desktop/reports

# Sandbox mode (QBO sandbox environment)
python3 scripts/pipelines/bs-quick-compare.py \
    --slug glowlabs \
    --current-end 2026-03-31 \
    --sandbox

Arguments

Flag Required Description
--slug Company slug (must be connected in qbo-client)
--current-end ✅* Current period "as of" date (YYYY-MM-DD)
--current-start Current period start (default: Jan 1 same year)
--prior-end Prior period "as of" date (default: 1 month back)
--prior-start Prior period start (default: Jan 1 same year as prior-end)
--ytd ✅* YTD mode (alternative to explicit dates)
--year Year for --ytd (default: current year)
--out Output directory (default: ~/Desktop)
--sandbox Use QBO sandbox environment

*Either --current-end OR --ytd is required.

Balance Sheet date note: BS is a point-in-time statement. --current-end and --prior-end are the "as of" dates. The QBO CLI requires start/end dates even for BS — the script defaults --current-start to Jan 1 of the same year if omitted.

Output

Excel file: BS_QuickCompare_{slug}_{as-of-date}.xlsx saved to Desktop (or --out directory).

Tab 1: Summary

  • Total Assets / Total Liabilities / Total Equity (current vs prior, $ change, % change, F/U)
  • Total Liabilities + Equity (cross-check row)
  • Accounting equation validation: Total Assets = Total Liabilities + Total Equity (both periods, ≤$1 tolerance)

Tab 2: Detail

  • Every BS line item with hierarchy preserved
  • Prior period | Current period | $ Change | % Change | F/U label
  • Color-coded by section (Assets = blue, Liabilities = gold, Equity = purple)

Tab 3: ⚠ Flags

  • Material changes: ≥10% change OR ≥$2,500 absolute
  • Analysis note for each flagged item — plain-English explanation tying the change to relevant follow-up actions
  • BS-specific cross-references (see Analysis Notes section below)

Tab 4: CDC Log

  • Change Data Capture: compares current BS flat map against last cached run
  • First run: full snapshot saved (no deltas)
  • Subsequent runs: shows exactly what line items changed since last run
  • Cache location: .cache/bs-quick-compare/{slug}.json

BS Logic

Section Classification

Each QBO BS row is classified into sections by keyword matching:

  • Assets: cash, bank, accounts receivable, inventory, prepaid, property, equipment, fixed asset, accumulated depreciation, investment, due from, notes receivable
  • Liabilities: liabilit, accounts payable, accrued, loan, note payable, line of credit, mortgage, deferred revenue, sales tax, payroll, credit card, due to
  • Equity: equity, owner, capital, retained earnings, net income, distribution, contribution, member, shareholder, partner, opening balance equity, paid-in, common stock

Children inherit their parent section classification.

Variance F/U Logic

Section Increase = Decrease =
Assets ✓ Favorable ✗ Unfavorable
Liabilities ✗ Unfavorable ✓ Favorable
Equity ✓ Favorable ✗ Unfavorable

Strategic exceptions (new LOC for growth, timely AP buildup) are noted in the analysis notes column.

Accounting Equation Validation

Total Assets = Total Liabilities + Total Equity   (≤$1 tolerance)

Runs on both periods and displayed in Summary tab with pass/fail icons.

YTD Mode

--ytd: Current = as of end of last completed month. Prior = same date in prior year. Example: run on March 17, 2026 → Current = as of Feb 28, 2026 | Prior = as of Feb 28, 2025.

Analysis Notes (Flags Tab)

The Flags tab includes an Analysis Note column with BS-specific interpretation for each material change:

Line Item Analysis Note Focus
Cash / Bank Tie to SCF — identify source: operating CF, capex, debt, distribution
Accounts Receivable Run AR aging — check DSO, past-due balances, collection trends
Inventory Monitor turnover — buildup vs. drawdown relative to sales pace
Prepaid Expenses Amortization vs. new prepaid spend
Fixed Assets / PP&E Capex vs. disposal — verify depreciation schedule updated
Accumulated Depreciation Confirm D&A add-back in SCF operating section
Related-party Receivables Repayment terms and tax treatment of officer/shareholder loans
Accounts Payable Run AP aging — confirm no overdue payables; payment terms intact
Credit Cards Full payment schedule; confirm all charges categorized
Loans / Notes Payable New borrowing vs. paydown — tie to SCF financing; verify debt schedule
Line of Credit Draw vs. paydown — monitor utilization rate and available capacity
Mortgage Normal amortization vs. lump-sum payment — confirm against schedule
Deferred Revenue Cash received vs. revenue not yet earned — monitor recognition schedule
Payroll / Accrued Settlement timing — verify no aged accruals outstanding
Sales Tax Payable Confirm remittance current; no penalties
Retained Earnings Tie to net income in P&L
Current Year Net Income Deep-dive in P&L quick compare
Distributions / Draws Verify cash availability; tie to SCF financing section
Equity Contributions Tie to SCF financing; confirm cap table updated
Opening Balance Equity Should zero out once books are fully set up

CDC Cache

.cache/bs-quick-compare/{slug}.json

Stores the flat map of all BS line names → balances for the most recent run. On re-run, diffs against the prior cache and shows exactly what changed. Useful for catching mid-month QBO adjustments, journal entries, or bank feed imports.

Decimal Math

All calculations use Python Decimal with ROUND_HALF_UP — no floating-point rounding errors in financial outputs.

Related Pipelines

Run all three compare pipelines for a complete monthly close package:

Pipeline Script What it covers
P&L Quick Compare pl-quick-compare.py Revenue, COGS, expenses, net income
SCF Quick Compare scf-quick-compare.py Cash flows: operating, investing, financing
BS Quick Compare bs-quick-compare.py Assets, liabilities, equity positions

Cross-reference flags across all three:

  • Cash change on BS → tie to SCF net change
  • AR/AP change on BS → tie to aging pipelines
  • Net income on BS → tie to P&L net income
  • Loan changes on BS → tie to SCF financing section
Usage Guidance
This package is incomplete or mispackaged. Before installing or running it: (1) ask the publisher for the missing scripts (scripts/pipelines/bs-quick-compare.py) and an explicit list of required environment variables (e.g., QBO client id/secret/refresh token or the qbo-client configuration); (2) do not paste QuickBooks credentials into an unverified prompt — verify the code that will use them; (3) if you must run it, review the Python script and any Node client code locally to ensure no unexpected network exfiltration or credential upload occurs; (4) consider running in an isolated environment (sandbox or VM) and point output/cache to a controlled directory rather than your Desktop; (5) if you cannot obtain the source or a trustworthy homepage, treat this skill as untrusted and avoid providing secrets.
Capability Analysis
Type: OpenClaw Skill Name: bs-quick-compare Version: 1.0.2 The skill bundle contains metadata and documentation for a financial analysis tool that performs variance analysis on QuickBooks Online balance sheets. The documentation (SKILL.md) describes standard accounting logic, such as validating the accounting equation and classifying assets/liabilities, and provides clear usage instructions for a Python-based pipeline. No malicious code, suspicious prompt injections, or indicators of unauthorized data access were found in the provided files.
Capability Assessment
Purpose & Capability
The skill's stated purpose (Balance Sheet variance analysis from QuickBooks Online) legitimately requires QBO credentials and a client library. However the registry metadata lists no required environment variables or binaries, and the package contains no code files. The instructions reference a local script path (scripts/pipelines/bs-quick-compare.py) and a Node.js QBO client — neither the script nor any install steps or credential declarations are bundled. This mismatch suggests the skill as published is incomplete or misdescribed.
Instruction Scope
SKILL.md tells the agent/user to run a local Python script, to use a Node.js QBO client with a valid auth token, to read/write a cache at .cache/bs-quick-compare/{slug}.json and to write an Excel file to the Desktop (or --out). Those runtime actions access QuickBooks data and the local filesystem. While those actions match the stated task, the instructions expect files/credentials outside the published bundle and do not declare how the agent should obtain or store QBO secrets.
Install Mechanism
There is no install spec (instruction-only), which minimizes what the bundle writes to disk. However SKILL.md lists a Python dependency (openpyxl) and a Node.js QBO client; it does not provide commands to install the Node client or the Python script. That omission makes the skill unusable as-published and is an operational/integrity concern (missing code or missing provenance).
Credentials
The runtime clearly requires QuickBooks Online credentials (auth token) and a configured qbo-client, but the skill metadata declares no required environment variables or primary credential. Requiring financial-service credentials is proportionate to the purpose, but failing to declare them in the package is an incoherence that increases risk (the agent or instructions may ask you to provide secrets interactively or expect them to exist elsewhere).
Persistence & Privilege
The skill does not request 'always: true' and is user-invocable only. It writes a local cache under .cache/bs-quick-compare and outputs files to a user-specified directory (default ~/Desktop). Those are normal for a reporting pipeline and do not indicate elevated privileges or modification of other skills.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install bs-quick-compare
  3. After installation, invoke the skill by name or use /bs-quick-compare
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.2
Final scrub verification - all internal references confirmed removed
v1.0.1
Security cleanup: removed internal references, genericized examples
v1.0.0
Initial release
Metadata
Slug bs-quick-compare
Version 1.0.2
License MIT-0
All-time Installs 1
Active Installs 1
Total Versions 3
Frequently Asked Questions

What is Bs Quick Compare?

Period-over-period variance analysis on the Balance Sheet pulled from QuickBooks Online. Outputs a 4-tab Excel workbook: Summary, Detail, Flags, CDC Log. Cov... It is an AI Agent Skill for Claude Code / OpenClaw, with 225 downloads so far.

How do I install Bs Quick Compare?

Run "/install bs-quick-compare" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Bs Quick Compare free?

Yes, Bs Quick Compare is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Bs Quick Compare support?

Bs Quick Compare is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Bs Quick Compare?

It is built and maintained by samledger67-dotcom (@samledger67-dotcom); the current version is v1.0.2.

💬 Comments