Detect a fake
bank statement

An edited statement reads perfectly. Holofin recomputes every balance, checks the account holder against the rest of the case, and examines the file itself.

✓ Balances recomputed line by line✓ Every signal explained✓ The decision stays yours

Account statement

March · J. MARTIN

… 0189
Balance Mar 11,240.18
Mar 2 Salary+2,486.40
Mar 5 Transfer in+700.00
Mar 9 Rent−1,150.00
Mar 12 Card payments−1,336.40
Mar 15 Direct debits−454.67
Balance Mar 3111,485.51
Recomputed1,485.51
3 signalsReview
The closing balance does not recomputestrong
Different font on the balance linemedium
PDF produced by a consumer editorweak

The problem

Four ways
to fake a statement.

A bank statement is how a lender judges whether someone can repay. That makes it the document most often edited, and each kind of fake is caught a different way.

The edited statement

A real statement with a balance or a salary changed in a PDF editor.

Caught by recomputed balances

The generated statement

Made from scratch with an online generator or an AI model, on a bank's template.

Caught by bank fingerprint

Someone else's statement

Genuine and untouched, but it belongs to a parent or a partner.

Caught by holder vs identity

The cherry-picked statement

Real but old or isolated: the one good month, sent instead of the last three.

Caught by dates and periods

How Holofin checks a statement

Five layers,
one statement.

A forger has to beat every layer at once: the bank's own way of producing statements, the pixels, the registries and the arithmetic. Every alert says which layer fired and where.

  1. 01

    Any bank, any country, any language

    High-street, business and online banks across Europe, the UK, the Americas, the Middle East and Africa, in any language and currency. Holofin knows how each bank builds its statements, from the software that produces the PDF to its fonts and layout, learned from all the statements it has checked, and compares yours with it.

    • Closing balance
    • Solde final
    • Saldo final
    • Endsaldo
    • Saldo finale
    • Eindsaldo
    • الرصيد الختامي
    • BNP ParibasBNP Paribas
    • HSBCHSBC
    • SantanderSantander
    • Société GénéraleSociété Générale
    • Deutsche BankDeutsche Bank
    • RevolutRevolut
    • Crédit AgricoleCrédit Agricole
    • BarclaysBarclays
    • INGING
    • BBVABBVA
    • Emirates NBDEmirates NBD
    • Standard BankStandard Bank
    • LCLLCL
    • Intesa SanpaoloIntesa Sanpaolo
    • N26N26
    • QontoQonto
    • JPMorgan ChaseJPMorgan Chase
    • UniCreditUniCredit
    • BoursoBankBoursoBank
    • MonzoMonzo
    • CommerzbankCommerzbank
    • MashreqMashreq
    • CaixaBankCaixaBank
    • Crédit MutuelCrédit Mutuel

    And any other bank that prints an opening balance, its transactions and a closing balance.

  2. 02

    We spot AI edits and AI-generated documents

    Holograin, our proprietary model trained on financial documents, detects statements generated by AI and statements redrawn by an image model from a photo or a scan of a real one. It reads the texture a generator leaves in every pixel, which no re-save or screenshot removes.

    How Holograin works
    The same bank statement after an AI edit, closing balance 8,589.93 eurosAI detected94/100
    A fictitious statement after one prompt to an image model, as Holograin scored it.
  3. 03

    We spot picture modifications

    On a scan or a photo, the image itself is analysed region by region: an amount cropped out and replaced, an area cloned with Photoshop or GIMP, a white patch over a line, text laid over the original, a font that does not match the rest of the page. The retouched area is located on the page, so a reviewer sees exactly where to look.

    Transaction rows of a fictitious bank statementRetouched area
    Illustration: one amount cropped, changed and pasted back, located on the page.
  4. 04

    We run third-party checks

    The IBAN's check digits are recomputed and the bank it designates must be the bank on the statement. On a business account, the company is looked up in the official registry: it must exist, be active and carry the name printed on the statement.

    Valid IBANCheck digits recomputed, mod 97
    Bank matches the IBANThe bank code designates the bank on the statement
    Company found in the registryActive, same name, same registered address
  5. 05

    We spot numerical and contextual inconsistencies

    An edit rarely stays consistent. Opening balance plus credits minus debits must give the closing balance, every running balance must follow from the one before, dates must run in order. Then the statement meets the rest of the case: the holder is the applicant, the salary credited is the one on the payslips.

Use cases

Wherever a statement
drives a decision.

Consumer lending

Income, outgoings and affordability read from statements you know hold up.

Business lending

SME loans, equipment finance, factoring: declared cash flow against the statements received.

Insurance

Underwriting and claims: the statement offered as proof of payment or income.

KYC and AML

Source of funds and profile consistency, with a trace of every check.

By API, upload portal or SFTP

Send the statement or the whole case; get back the extracted data and the signals, with the page and line of every value. Checked at upload, a doubtful statement can be requested again before the case is opened.

Bank statement extraction API

FAQ

Fake bank statements

Recompute it. Opening balance plus credits minus debits must give the closing balance, and every running balance must follow from the one before. Then check that the account holder is the applicant, that the account matches the rest of the case, and that the statement was produced the way that bank produces its statements. A fraudster who edits one amount has to make all of that agree, and that is rarely done.
Often, but not from the file alone. Editing tools leave traces: a producer that is not the bank's software, a modification date after the creation date, a font on one line that is used nowhere else, text laid over text. Those traces open an enquiry. A re-export or a scan erases them in good faith too, so Holofin never treats them as proof on their own: the recomputed balances and the rest of the case confirm or clear it.
A generated statement can be arithmetically correct, so the balance checks alone will not always catch it. What it rarely gets right is the bank's production fingerprint, and it still has to agree with the payslips, the employment contract and the identity document in the same case. A fabricated salary that no payslip supports is a signal whatever tool made the PDF.
The arithmetic and the consistency checks run on the extracted values, so they work on scans and photos as well as on native PDFs. The file analysis has less to go on with a scan, because a scan has no editing history, and Holofin says so instead of guessing.
The balance recomputation and the case consistency checks work on any statement that prints an opening balance, transactions and a closing balance, whatever the bank or the language. The bank fingerprint check needs genuine statements from that bank to compare against; where it has none, it stays silent rather than raise a false alarm.
No. Holofin raises signals, explains each one with the values compared, and ranks them by strength. The thresholds and the decision stay with your team. In the EU, the GDPR restricts decisions based solely on automated processing that have legal effects on a person (article 22), and calling a document forged is a decision for people, not for an engine.
Yes, in most jurisdictions. In the UK, submitting a falsified statement to obtain credit is fraud by false representation under the Fraud Act 2006. In the US, a false statement on a loan application to a federally insured lender falls under 18 U.S.C. 1014. That is why the signals Holofin returns are evidence for your team to review, with each value traced to its page and line.
Where the applicant can connect their account, data read directly from the bank removes the document and the forgery risk with it. Statements remain for applicants who cannot or will not connect, for accounts the aggregator does not reach, and for files that arrive by email or upload. Those are the statements worth checking.

Test Holofin on your statements

Send us real statements, including the fakes you have already caught. We return the signals statement by statement, and tell you what we missed.

✓ GDPR compliant✓ Hosted in Europe✓ Every signal explained
Holofin