---
title: "Books Audit Python Script | MCC"
description: "A Python script that screens a ledger for duplicates, Benford anomalies, outliers and split deposits, reconciles to the bank and simulates cash runway."
url: "https://mcc-solutionsnj.com/bookkeeping/books-audit-python-script"
---

Paid script

# Books Audit Python script

One file you run on your own computer. Feed it a ledger CSV (and a bank CSV if you have one) and get a plain-English report of what deserves a second look.

[![Intuit ProAdvisor Gold tier badge](/img/credentials/intuit-proadvisor-gold.png)](https://proadvisor.intuit.com/app/accountant/search?searchId=matthew-coleman77)Gold tier in Intuit's ProAdvisor program. [See my Intuit listing](https://proadvisor.intuit.com/app/accountant/search?searchId=matthew-coleman77)

Paid script

## Books Audit Python script

Buy this script on its own for $19, one time. No membership needed. It runs on your own computer and nothing you enter leaves it. Read how it works and the questions below first.

The [Financial Suite](/bookkeeping/financial-suite) includes this and 9 more tools for $49. Members get this included. [See the membership](/membership) or [sign in](/membership/login). Already bought it? Email me my access link.

How it works

## How it works

The script is pure Python with no installs. It runs eight checks: possible duplicates, a **Benford first-digit test** with a chi-square p-value, **robust outliers** by vendor using the median and MAD, amounts just under an approval limit, weekend and month-end timing, vendor names that look like the same vendor, **bank-to-ledger reconciliation** including split deposits, and a **Monte Carlo cash runway** that resamples your own past months. It reads CSV exports from any accounting system, and a built-in `--demo` shows the report on sample data first. Flags are reasons to look, never proof of a problem.

FAQ

## About this calculator

**What do I need to run it?**

Python 3.9 or newer. There is nothing else to install, and the data never leaves your computer.

**What file format does it read?**

CSV exports with a header row: a date, a description or payee, and either one amount column or debit and credit columns. Common column names are recognized automatically.

**Is a flag proof of fraud or an error?**

No. These are statistical screens. A flag means look at the transaction, and most have ordinary explanations.

**Is this audit or accounting advice?**

No. It is a general-information tool. It does not replace a bookkeeper, accountant or auditor.

**Is anything saved?**

No. The math runs in your browser and nothing you enter is sent to us.

**Is this tax or financial advice?**

No. It is a calculator for general information. Check the numbers against your own records, and ask an accountant before you act on them.

Related: [npv irr payback calculator](/bookkeeping/npv-irr-payback-calculator), [altman z score calculator](/bookkeeping/altman-z-score-calculator). See [all free tools](/free-tools). More free tools: [Economic order quantity (EOQ) calculator](/bookkeeping/economic-order-quantity-calculator), [Rental yield and gross rent multiplier calculator](/bookkeeping/rental-yield-and-gross-rent-multiplier-calculator), [Mortgage payment calculator](/bookkeeping/mortgage-payment-calculator), or [see all free tools](/free-tools).

Free

### Month-End Close Checklist (PDF)

The five-day close, one page to print. Enter your email and we send a link to confirm it is yours, then the download. We may email you about new toolkits, and every email has an unsubscribe link.

General information, not tax or legal advice. [How we write and check our tools](/editorial-standards).

Python scripts

### Bookkeeper's Python Starter Scripts

Three small, readable Python scripts that do chores bookkeepers repeat by hand, with sample files so you can see each one work before using your own data.

[See what is inside ($39)](/toolkits/bookkeeper-python-scripts)

## Want your books and numbers handled?

[Free health check](/bookkeeping/health-check)[Call (908) 444-6373](tel:+19084446373)
