upscaler
uwg · Kit
Holds a set of image upscaling models gathered from the OpenModelDB community, for people who want to enlarge low-resolution pictures with AI on their own comp…
An n8n workflow that turns a bank statement PDF from Google Drive into Markdown, page by page, with Gemini reading each page as a picture. It then lists every deposit with its date, description and amount.
Bank statement PDF turned into Markdown by Gemini vision is an n8n workflow in the Finance & accounting category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.
You run it by hand
It starts when you press Test workflow. It reads:
The statement as Markdown, page by page, and a list of its deposits with date, description and amount
What you need before you start.
Statement source
Downloads the PDF statement.
NeedsA Google Drive OAuth2 credential and the file’s id
PDF to pictures
Turns each page of the PDF into a JPG picture.
NeedsA Stirling PDF server that you run
Page reader
Reads each page picture, writes it as Markdown and lists the deposits.
NeedsA Google Gemini API key
Checked by Mindket on 13 Nov 2026
This n8n workflow reads a bank statement the way a person would, by looking at it. It downloads a PDF from Google Drive and sends it to a Stirling PDF server, which returns one picture for each page. The pages are numbered, put in order and shrunk to three quarters of their size. Gemini then looks at each picture and writes the page out as Markdown, with the tables kept as tables. A second Gemini step reads all the pages together and lists every deposit with its date, description and amount. Twelve nodes run it, beside two sticky notes.
Bookkeepers, analysts and anyone with PDF statements who needs the text, or the deposit lines, as data. Skip it if your bank offers a CSV download, which is exact and free. Skip it too if the statement may not leave your control, because every page goes to Google’s Gemini service as a picture.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Accounting | Bookkeepers | Turn clients’ PDF statements into text they can search and paste | A bookkeeper runs a client’s October statement and pastes the Markdown into a working file. |
| Lending | Loan officers | Pull the deposits out of a statement to check regular income | An officer reads the deposit list and spots the monthly payroll line. |
| Personal finance | Households | Move old paper statements into notes or a spreadsheet | A user scans last year’s statements and keeps the Markdown beside the receipts. |
| Audit | Reviewers | Get every table of a statement as plain text for sampling | A reviewer compares the Markdown tables with the ledger for one month. |
You need to know n8n’s settings: import a file, add two credentials and run a small server of your own.
Any n8n that can reach Google Drive, Gemini and your Stirling PDF server will run it.
Download saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Setup is two credentials, a file id and the address of your Stirling PDF server.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own. The Edit Image step needs GraphicsMagick, which n8n’s Docker image includes |
| Google Drive | An OAuth2 credential and a PDF statement in your Drive |
| Stirling PDF | A server that you run yourself, started from its Docker image, so the statement stays with you |
| Gemini | An API key from Google AI Studio, added in n8n as a Google Gemini credential |
workflow.json.Get Bank Statement. Replace <YOUR_BANK_STATEMENT_FILE_ID> with the id of your PDF, the part of its share link after /d/.Split PDF Into Page Images, replace <YOUR_STIRLING_PDF_URL> with its address, with no slash at the end.Gemini Model for Pages and Gemini Model for Deposits.Put the file id of each new statement in Get Bank Statement and run the workflow by hand. Read the Markdown in Transcribe to Markdown and the deposit list in the last step.
| To change | Where |
|---|---|
| The statement | The file id in Get Bank Statement |
| The sharpness of the page pictures | The dpi in Split PDF Into Page Images |
| How small the pictures get | The percentage in Resize Images For AI |
| How the Markdown is written | The message in Transcribe to Markdown |
| What the last step lists | The instruction and the fields in Extract All Deposit Table Rows |
| The Gemini model | Gemini Model for Pages and Gemini Model for Deposits |
You point the workflow at a three-page statement and run it.
[{"date": "03/10/2026", "description": "Payroll", "amount": 2450.00}]The chain writes three Markdown pages, with the tables kept. The last step lists the deposits as rows like this one, and leaves the withdrawals out.
If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. This one turns a PDF into pictures, then asks an AI that can see pictures to type out each one. Start with a short statement and compare the result with the PDF.
For experts. The pages travel as binary data under the name data.
| Node | What it does | What to know |
|---|---|---|
Split PDF Into Page Images | Posts the PDF as a form to Stirling PDF | It asks for one JPG for each page at 300 dpi, and the reply is a zip file |
Images To List | Gives each page a number read from its file name | If a name has no number, the page keeps its place in the list |
Sort Pages | Puts the pages in order by that number | The original sorted file names as text, so page 10 came before page 2 |
Resize Images For AI | Shrinks each picture to 75% | It needs GraphicsMagick on the n8n machine |
Transcribe to Markdown | Sends each picture to Gemini with an instruction | One call for each page, and a scanned check becomes a short marker |
Combine All Pages | Joins the page texts into one list called pages | The last step reads them in page order |
Extract All Deposit Table Rows | Asks Gemini for a list of deposits | The deposit model has one safety category set to block nothing |
A bank statement is private, so read what leaves your computer.
models/gemini-3.8-flash, which takes images. The page numbers are new. The folder, the file id and the server address are placeholders. A typo in the instruction is correctedAn n8n workflow that reads a bank statement by looking at it. It downloads a PDF from Google Drive and has a Stirling PDF
server turn each page into a picture. Gemini writes every page out as Markdown with its tables, and a second Gemini step
lists each deposit with its date, description and amount.
workflow.json: the workflow as n8n exports it, fourteen nodes. Two are sticky notes. It holds no credential.README.md: these notes.models/gemini-3.8-flash,<YOUR_STIRLING_PDF_URL> and <YOUR_BANK_STATEMENT_FILE_ID>.Images To List now reads theSort Pages sorts by that number. If a name has no number, the page keeps its placeTranscribe to Markdown had a typo, and the deposit instruction is reworded.workflow.json.Get Bank Statement. Replace <YOUR_BANK_STATEMENT_FILE_ID> with the id/d/.Split PDF Into Page Images, replace <YOUR_STIRLING_PDF_URL> with its address,Gemini Model for Pages and Gemini Model for Deposits.Get Bank Statement downloads the PDF.Split PDF Into Page Images posts it to Stirling PDF and asks for one JPG for each page at 300 dpi. The reply is a zipExtract Zip File opens it.Images To List makes one item for each picture and gives it a page number. Sort Pages puts the items in page order.Resize Images For AI shrinks each picture to 75%.Transcribe to Markdown sends each picture to Gemini and gets the page back as Markdown, with tables as Markdown tables.Combine All Pages joins the page texts into one list called pages.Extract All Deposit Table Rows sends all pages together to a second Gemini model and returns a list of deposits withGet Bank Statement.dpi field in Split PDF Into Page Images.Resize Images For AI.Transcribe to Markdown.Extract All Deposit Table Rows.NOTICE.md 672 B README.md 5 KB workflow.json 10 KB
uwg · Kit
Holds a set of image upscaling models gathered from the OpenModelDB community, for people who want to enlarge low-resolution pictures with AI on their own comp…
nerijs · Kit
A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…
microsoft · Kit
Turns written conversations into spoken audio with up to four speakers and about 90 minutes of speech, an open Microsoft text-to-speech model for research on p…
NeoQuasar · Kit
Forecasts financial candlestick series with a 4.1M-parameter foundation model trained on data from over 45 exchanges. For quant researchers and developers who…
An n8n workflow that sends a Hebrew WhatsApp reminder for an unpaid invoice 7, 14 and 30 days after its due date. It reads the open invoices from a Google Shee…
An n8n workflow that files invoices. It watches a Google Drive folder, has LlamaParse read each new file and an OpenAI model pick out the line items. Airtable…