Match settled purchases
Use gross settled purchase volume and its matching purchase count for one USD period. Exclude refunds, chargebacks, declines, voids, reserves, and funding adjustments.
Turn a dense merchant processing statement into a reconciled cost record with a processor-neutral method, open CSV template, JSON Schema, Decimal-safe validator, and synthetic rejection tests you can reproduce.
Package 1.1.7 preserves the schema 1.1.0 record contract and contains no real merchant or cardholder data. All example and test-vector content is synthetic data; the validator rejects unreconciled arithmetic, invalid dates, ambiguous zero-activity records, unsafe precision, unknown fields, likely sensitive data, and spreadsheet-formula payloads.
Licensed under CC BY 4.0. Attribute “Lifted Payments payment statement audit model” and link to this page.
Use gross settled purchase volume and its matching purchase count for one USD period. Exclude refunds, chargebacks, declines, voids, reserves, and funding adjustments.
Assign each gross processing charge once, total the fee groups, report processing-fee credits separately, and subtract them to produce net processing fees.
Divide net fees by gross settled volume and round half up to six decimal places. Keep the decimal in data; multiply by 100 only for percentage display.
The exact v1.1.7 merge worktree passed 95 automated tests and 71 subtests. Package mode passed 15/15 internal checks, the clean tagged candidate passed 16/16 readiness checks, and the published release passed 17/17 checks only after GitHub, Zenodo, DOI resolution, Hugging Face, Kaggle, and Software Heritage matched the reviewed release identity and bytes.
Before candidate Python can run, the gate checks the complete manifest, canonical paths, bounded sizes, UTF-8 and LF portability, SHA-256 coverage, credential signatures, release identity, clean committed tree, authoritative origin, complete remote tag inventory, exact tag alignment, and monotonic version. Public attestation is bounded and non-executing; it rejects unsafe redirects, oversized responses, archive traversal, case-fold aliases, symlinks, undeclared members, digest drift, and mismatched public identities. For Kaggle, it selects one unique latest public Ready version, verifies the exact version page, and compares every intact or platform-expanded byte even when the anonymous top-level pointer is stale. The released corpus accepts two valid synthetic records and rejects seventeen adversarial records for their expected rules.
A lower headline rate can hide higher per-item, monthly, compliance, or equipment charges. Group the full statement consistently before deciding what is actually expensive.
| Fee group | What belongs here | What to inspect |
|---|---|---|
| Interchange | Card-type and transaction-specific wholesale costs. | Downgrades, commercial-card qualification, keyed vs card-present mix. |
| Assessments | Network assessments and access charges. | Whether they are passed through clearly or bundled. |
| Processor markup | Percentage markup and per-transaction markup. | The contractual markup and any inconsistent application. |
| Authorization | Approval, decline, AVS, gateway, and batch items. | Per-attempt charges and duplicate fee labels. |
| Monthly / PCI | Account, statement, minimum, compliance, and noncompliance fees. | Recurring charges that do not scale with volume. |
| Equipment / other | Terminal leases, software, chargebacks, and uncategorized adjustments. | Long contracts, early termination, and vague labels. |
For supporting math, use the effective-rate calculator. B2B sellers should also review commercial-card processing and Level 2/3 data.
A merchant statement audit reviews one processing statement on a consistent basis, reconciles its fee groups and credits, and calculates the effective rate from net processing fees and gross settled purchase volume.
Compare gross settled purchase volume, matching purchase count, gross processing fees, processing-fee credits, net processing fees, effective rate, average ticket, and each fee group for the same statement period.
No. Effective rate normalizes included costs, but it does not prove provider margin, interchange qualification, contractual compliance, future pricing, or whether a source statement was mapped correctly.
No. The model validates its declared structure and arithmetic. It is not an accounting opinion, legal review, interchange-qualification determination, processing quote, or guarantee of savings.
Lifted can pair merchant processing with Lifted Pay, LiftedPOS and Lifted POS Connect, Lifted Gateway, a compatible integration, or custom payment software.