All workflows
Google Sheets logoExtend logo

Turn a bank statement into transaction rows

Reads every transaction line off a bank statement PDF and adds one row per line to your spreadsheet, exactly as printed.

Run manually2 apps5 steps

Apps it connects

Authenticate each one once and the workflow is ready to run.

What it does

Each integration step this workflow runs, in order, what it is for, and the conditions and loops that decide when it runs.

  1. 1Google SheetsRead rowsReads the tab first, to check its headings and to skip lines this account already has from an earlier run.
  2. If tabRows.rows is empty

    1. 2Google SheetsAppend rowAppends one row per new transaction line as plain text, plus an 'INCOMPLETE' row if any line was not written.
  3. 3ExtendExtract dataReads every posted transaction line off the statement PDF, copying the date, description and amount exactly as printed, and whether it was money in or out.
  4. For each line

    1. 4Google SheetsAppend row
  5. If linesDropped is more than 0

    1. 5Google SheetsAppend row

How it works

What happens on each run, in plain English.

Upload one bank statement PDF, run it, and every posted transaction line becomes a row on your spreadsheet under the account label you choose. The date, description and amount are copied exactly as printed, currency symbols, minus signs and brackets included, and saved as plain text so nothing becomes a formula or another date. When the statement prints money in and money out in separate columns, an In/Out column says which one each amount came from.

Nothing is calculated: balances and subtotals are left out. Where part of a line was not printed, the cell is left blank and the notes column says so, and a line that cannot be split into date, description and amount is not written at all. Running the same statement again never writes a line twice: lines already on the tab for that account are skipped. If any line is skipped, fails to write or falls past the row limit, a clearly marked 'INCOMPLETE' row is added with the counts, so a partial run never looks like a complete one.

You need an Extend connection (it reads the PDF) and a Google Sheets connection, the statement PDF, the link to your spreadsheet, the name of the tab, and a label for the account.

bank statementpdfgoogle sheetsbookkeepingreconciliationdocument extraction

Start from a workflow that already works.

Add "Turn a bank statement into transaction rows" to your workspace, connect its apps, and make it yours.

Free plan, no credit card