Excel · CSV · .qbo · Xero · OFX · QFX · QIF

Convert your statement. Prove it ties. Flag what doesn't.

up to 20 files · 20 MB each · PDF only · bank or credit-card statements

    kept in memory only

    Preview free. First download free after sign-in. A statement that does not tie is not billed.

    Processed in memory, then discarded. See a sample convert — synthetic file, real engine.

    sample-checking-statement.pdf · synthetic, made for this demo · Meridian Commerce Bank · ····3303
    ✓ Ties. Opening 15,800.00 + credits 25,557.89 − debits 32,811.32 = 8,546.57, the printed closing balance.
    DateDescriptionAmount Balance
    2026-05-01STRIPE TRANSFER2,919.2918,719.29
    2026-05-01ACH DEBIT PROPERTY MGMT RENT−4,200.0014,519.29
    2026-05-03POS PURCHASE HOME DEPOT PRO−1,269.5813,249.71
    2026-05-04ZELLE CREDIT3,030.1216,279.83
    2026-05-07SQUARE INC DEPOSIT3,647.5719,927.40
    2026-05-07POS PURCHASE SHELL OIL−1,705.5118,221.89
    2026-05-08POS PURCHASE US FOODS−178.1318,043.76
    2026-05-11MERCHANT BANKCD DEPOSIT3,994.8622,038.62
    2026-05-13REMOTE DEPOSIT CAPTURE2,790.9624,829.58
    2026-05-13POS PURCHASE VERIZON WIRELESS−1,665.9823,163.60
    2026-05-14COUNTER DEPOSIT2,237.7925,401.39
    2026-05-15POS PURCHASE HOME DEPOT PRO−733.8924,667.50
    2026-05-15POS PURCHASE US FOODS−1,225.2123,442.29
    2026-05-15ADP WAGE PAY 00174−6,800.0016,642.29
    2026-05-19COUNTER DEPOSIT3,622.6920,264.98
    2026-05-21POS PURCHASE GRAINGER−1,475.9618,789.02
    2026-05-23POS PURCHASE SYSCO FOODS−989.6117,799.41
    2026-05-23POS PURCHASE GRAINGER−1,221.9716,577.44
    2026-05-29REMOTE DEPOSIT CAPTURE3,314.6119,892.05
    2026-05-29ADP WAGE PAY 00175−6,800.0013,092.05
    2026-05-31POS PURCHASE STATE FARM INS−2,169.8410,922.21
    2026-05-31POS PURCHASE CINTAS CORP−2,375.648,546.57

    22 rows · 2026-05-01 → 2026-05-31 · the running balance chains on every one

    Review notes (2)

    Synthetic sampleThis statement was made for the demo, not by a bank — so the engine's file-quality note below is expected, and correct.
    Possible transfers1 row looks like a movement between accounts, not income or expense.
    File qualityPDF produced by ReportLab, not a bank statement system.
    Open the sample convert →

    Upload the PDF. Every line is checked against the printed opening and closing balance, to the penny. Download Excel, CSV, .qbo, Xero, OFX, QFX or QIF only when it ties. Built for the file you have to stand behind: QuickBooks Desktop, Xero, cards, combined statements, catch-up stacks.

    Preview is free. The first download is free after sign-in. After that, Solo is $29/month, cancel anytime.

    Processed in memory, then discarded
    A statement that does not tie is not billable
    New bank layout in 24 hours on business days
    Customer statements are not used for training

    Where it fits

    QuickBooks Desktop/Online

    Desktop imports a Web Connect .qbo; Online takes the same file. Direct Connect for Desktop ends 30 October 2026.

    Xero

    Xero's own PDF import is US and Canada only, on selected banks, digital files only. Everywhere else takes the Xero CSV or OFX.

    Catch-up stacks

    A year of PDFs, one proof per month, months chained. A month that does not tie is not billed.

    Combined statements

    Several accounts under one cover page, split, each tied to its own printed close.

    A close that must match the paper

    Prove the grid against the printed closing balance, then reconcile to the same number in QuickBooks or Xero.

    Cards, and a second read

    Credit-card statements tie the same way. Analysis is free on the same grid.

    Check it on your own file

    Preview is free. No account.

    Drop a statement you already have. You will see whether it ties to the printed opening and closing balance before you pay for anything.

    The first download is free after sign-in, so you can test the import into your books on a real file.

    What the review catches

    These notes are exceptions for a reviewer, not a verdict. A statement can be genuine and still fail a check. A file can look clean and still be worth a second look.

    Balance does not tie

    Opening + credits − debits must equal the printed closing. If it does not, the export is blocked unless you override it on purpose.

    Running balance breaks

    Each row has to chain to the next. The first broken row is highlighted so you are not hunting through 400 lines.

    Duplicate lines

    Same date, amount, and description appearing twice in one statement — a common paste or parse glitch, and a common doctored-file tell.

    Months that do not chain

    Drop January and February together. February's opening has to be January's closing. Gaps and overlaps get a note.

    Transfer-looking rows

    “TRANSFER,” “ORIG CO NAME,” card payments to yourself. Flagged so they are not booked as income or expense.

    PDF not from a bank system

    The producer string is read off the file. A statement written out of ReportLab, Word, or a home-grown generator is not automatically fraud — but it is not a bank portal PDF either. You see that before you import.

    How it works

    1Upload the PDF A digital file from the bank site, a password-protected file, a scan, or an image-only PDF (OCR on our server). Every file still has to tie.
    2Read the proof The printed balances are the source of truth. Edit a cell if you need to; the proof reruns.
    ✓ Ties. Opening 15,800.00 + credits 25,557.89 − debits 32,811.32 = 8,546.57, the printed closing balance.
    3Download the file Or open Analysis on the same grid first. Excel, CSV, .qbo for QuickBooks Online and Desktop, Xero CSV, OFX, QFX or QIF. A statement that does not tie never counts against your pages.
    2026-05-04ZELLE CREDIT3,030.12
    2026-05-07SQUARE INC DEPOSIT3,647.57
    2026-05-07POS PURCHASE SHELL OIL−1,705.51

    Any US or EU bank or card. Proven on every statement.

    Drop the PDF from the bank or card site. We read it, prove it against the printed opening and closing balance, to the penny, and only then let you download. There is no list of banks to check first. If the layout is new and does not tie, you pay nothing and the layout is added within 24 hours on business days.

    Billing, in writing

    Cancel sits behind Manage billing on your account page. One click there. No email. No call. No retention screen.

    Monthly means monthly. Yearly is paid once, up front, and labeled yearly. We do not sell “annual, billed monthly.”

    The $39 option never renews. It ends on day 30.

    If a statement does not tie, it does not count.

    Solo is $29/month or $240/year. Bookkeeper is $99/month or $990/year. Every plan, side by side →

    Questions

    Does QuickBooks Online already read PDFs?

    Yes. The US edition can upload a PDF or image statement for free. If that covers your case, use it. PennyClose is for QuickBooks Desktop, Xero, cards, combined PDFs, catch-up stacks, and a close that must match the printed statement before anyone books it.

    What if the statement does not tie?

    The proof shows the first row where the chain breaks. Fix a cell and the proof reruns. If it still does not tie, there is no download and no charge. Email the bank name to ville@pennyclose.com and the layout is added within 24 hours on business days.

    Do you store the file?

    No. The PDF is parsed in memory and discarded when the response is sent. There is no workspace and no library of client files. OCR for image-only pages runs on our own server. Customer statements are not used for training. Security notes.

    Desktop or Online?

    Both take the same .qbo. QuickBooks Desktop: File → Utilities → Import → Web Connect Files. QuickBooks Online: Transactions → Bank transactions → Upload from file. Xero takes the Xero bank-import CSV or the OFX. How the import works.

    What is a page?

    A page of the statement PDF. Solo includes 500 a month, about 60 statements. A statement that does not tie never counts. Re-downloading the same statement in the same month does not count twice. Pricing.

    Built by an engineer with a machine-learning background who runs several small businesses and got tired of retyping statements at month end. The person who writes the parser also answers the inbox.

    Security

    The statement is parsed in memory and discarded when the response is sent. Nothing is stored on our side: there is no workspace and no library of client files on this server. OCR, when a page needs it, runs on the same server, in memory, with no third-party AI service in the path. Nothing is used to train anything. Logs are one anonymous line: file count, size, whether it parsed, whether it tied. The only exception: if the layout is new, we keep the column headings so we can support it — never an amount, date, name, or account number.

    Full security notes →

    Convert another statement →

    Swipe sideways to see every column.

    This grid exists only in this tab. Click a cell to edit date, description or amount; ± flips debit/credit. The proof re-runs on every edit.

    Download .qbo

    QuickBooks checks these before accepting the file.

      Not listed? Leave it blank — the file uses a documented generic institution ID and imports under a generic label.

      Download the Xero bank import (.csv)

      Xero's own template columns: Date, Amount (money in positive, money out negative), Payee, Description, Reference, Check Number. The date has to match your Xero organisation's region.

      How to import
      Accounting → Bank accounts → Manage account → Import a statement, choose this file, and confirm the column mapping Xero proposes. Xero also imports the OFX file directly.

      This statement does not tie

      Sign in to download

      No password. We email you a one-time link — new here? The same link creates your account. Your first download is free so you can test the import into QuickBooks.

      Pick a plan

      You only pay for downloads of statements you've already seen tie. A statement that doesn't tie never counts against your pages, and any first charge is refundable within 14 days, no questions — billing & refunds.