How DocShape worksPublic beta
From PDF to structured data, with checks before export.
Pulling rows out of a PDF is half the job. DocShape then checks the extracted transactions against independent figures printed on the same statement — the balances and the totals — and tells you plainly when there is nothing to check them against.
Here is what happens to a statement, what the checks compare, and what each outcome does and does not mean.
The public beta runs for a limited time, on a best-effort basis, and the upload on the homepage says whether it is open right now. It takes a text-based PDF statement of up to 10 MB and 8 pages; scanned statements are refused. The full converter remains a private, invite-only beta. No separate DocShape account is required.
From PDF to file
Six stages, in order.
What happens to a statement between the upload and the download — and what is read, extracted and checked along the way.
Upload
A text-based PDF bank statement, up to 10 MB and 8 pages in the public beta. No separate DocShape account is required. Access to the conversion is tied to a temporary key held by your browser session.
Read
Selectable text is read directly where it is usable. The public beta refuses a scanned or image-based page; in the private beta, such pages are read with OCR on DocShape’s own server.
Is an external AI service used?Extract
The transactions — date, description, debit or credit, running balance — and the figures the statement prints about itself: the period, the opening and closing balances, the totals. A value the statement does not print stays empty. A currency the statement gives no evidence for is marked as not determined, and an inferred one says it was inferred.
Check
The extracted transactions are compared with the balances and totals printed on the same statement. Where a consolidated statement’s structure is supported, each account is separated and checked on its own.
The five checksShow the outcome
Each account gets one of three outcomes, with the result of every check beside it, so you can see what was compared and what did not match.
The three outcomesReview, then export
The summary, a sample of the extracted transactions and the outcome are on screen before anything is downloaded. The Excel and CSV files hold the full transaction table, produced from that same conversion — the statement is not processed again to make them.
The checks
Five comparisons, each against a figure the statement printed.
Every check is plain arithmetic on exact decimal amounts, with no tolerance: a difference of one cent is a difference. A check whose figure the statement does not print is shown as unavailable, and never counted as a pass. The opening balance supports the others; only a reconciling check can make an account Verified.
Opening balance
Supportsfirst running balance − first signed amount = reported opening balanceWhen it passes: The reported opening balance agrees with the balance implied by the first transaction and its printed running balance.
Closing balance
Reconcilesreported opening balance + credits − debits = reported closing balanceWhen it passes: The reported opening balance plus every transaction equals the reported closing balance.
Total credits
Reconciles with total debitssum of the credits = reported total creditsWhen it passes: The credits on the extracted transactions add up to the reported total credits.
Total debits
Reconciles with total creditssum of the debits = reported total debitsWhen it passes: The debits on the extracted transactions add up to the reported total debits.
Running balances
Reconcilesreported opening balance + the signed amounts up to each row = that row’s printed balance; the last = reported closing balanceWhen it passes: Every printed running balance follows from the one before it, and the sequence ends at the reported closing balance.
A signed amount is a credit as a positive figure and a debit as a negative one. Every comparison is an exact equality.
The outcome
One of three outcomes, for each account.
A consolidated statement’s accounts are checked separately; there is no single outcome for a whole document. Each outcome carries the same fixed wording wherever it appears.
Verified
When: No check failed, and the closing balance or the running balances matched — or the total credits and total debits both did.
Needs review
When: At least one check did not reconcile.
Could not be verified automatically
When: No check failed, but there was not enough printed evidence to reconcile against.
What verification means
A reconciliation, not a guarantee.
Verified means the extracted amounts agree, exactly, with balances or totals DocShape read from the same statement. It is arithmetic evidence that the figures add up to what the statement says, not an opinion about how plausible the rows look.
What it does not mean
Verification does not authenticate the original bank statement. It does not confirm that every transaction was captured exactly once, that dates and descriptions were read correctly, or that each amount sits on the right row or account. Errors that cancel out in a total can pass. Not every statement prints enough figures to check; those are shown as could not be verified automatically, never as verified.
Refused, or not verifiable
The conversion stops
Refused
When DocShape cannot safely extract a statement — the layout cannot be read reliably, the statement contradicts itself, a password protects it — it stops and says why. No partial result, and no guessed rows.
- Extraction
- Stopped
- Result
- None — the reason is shown instead
- Outcome
- None: there is nothing to verify
The conversion completes
Could not be verified automatically
When there is not enough printed to check the extraction against, the conversion still completes, and the result says plainly that it could not be verified automatically.
- Conversion
- Completed
- Result
- Whatever was extracted, to review before you rely on it
- Outcome
- Could not be verified automatically
Afterwards
Your statement is temporary.
Processing happens on the server. Files are temporary: completed jobs show the exact deletion deadline and can be deleted earlier; failed uploads are removed immediately.
- UploadedThe statement is processed on DocShape’s server.
- Result readyDeletion deadline shown with your result.
- Delete earlyOnce the conversion has finished, you can delete it yourself before then.
- RemovedOtherwise it is removed once that deadline passes.
A failed upload is removed immediately.
Is an external AI service used?
No external AI service is used to convert statements in this beta. Scanned pages are read with OCR on DocShape's own server.