Split a bank CSV by account: prove complete row coverage

Updated · 2 min read

To split a reviewed bank dataset by account, require verified account and currency labels before filtering. LocalExtract’s CSV contains date,description,amount; those three fields do not identify the source account automatically. Add provenance from the retained statement or export, not from guessed descriptions.

Official reference.

The desktop apps export date, description, and amount as CSV. Open CSV in Excel to save an XLSX workbook. Statement support varies: verify the result against your own PDF.

Define disjoint working outputs

  1. Keep the reviewed base query with source-version and row keys. Qualify reused local IDs with their source before partitioning.
  2. Create Reference queries from that reviewed base for the intended account/currency outputs.
  3. Apply exact account-and-currency filters to each output. Create an explicit quarantine query for unknown labels.
  4. Verify disjoint memberships and that outputs plus quarantine cover every input identity. Preserve the reviewed source revision because a Reference follows its source query.

Microsoft’s query-management guide explains Reference dependency; its filter guide documents filtering. The chosen account/currency values must come from verified source evidence, not guessed descriptions.

Check each output’s key and currency. These are working copies, not a promise that a particular financial application accepts their upload format. A source correction can flow through Reference queries, so preserve a reviewed source revision and recheck after refresh.

Prove the partition

Read the fixture’s source-qualified identities before filtering. The colon notation below represents source plus local ID, not a required Power Query key syntax:

Composite identityVerified accountCurrencyAmountWorking destination
A:1AEUR25A / EUR
B:1BEUR25B / EUR
C:1UnknownEUR10Quarantine

Two output memberships plus one quarantined membership cover all three input identities. Using only local ID 1 would collapse distinct sources; dropping quarantine would lose one input event.

The synthetic account-split exercise contains account A and B events with the same amount and reused local row ID 1. Their source-qualified identities keep them distinct. A third event with no verified account remains quarantined.

The reference checks require disjoint output identities and prove that the union of outputs plus quarantine equals the full input. They reject a split that drops the unknown row or merges the same-looking A and B events. Do not add balances across currencies to “prove” completeness; membership is a separate control.

No Power Query or recipient import is executed by the example. Retain the mapping, source revision and quarantine list with each handoff. For combining files before this step, use the existing multi-file guide; for grouping totals, use the distinct aggregation guide. Splitting establishes account-specific working populations, not duplicate status or target-import readiness.

Related task.

For a PDF-only bank source, download LocalExtract. It processes one PDF locally to date,description,amount CSV; it does not access platform accounts or synchronize accounting records.

Official sources and scope

Documentation checked October 16, 2026. Official reference 1 — pq-filter · Official reference 2 — pq-manage

LocalExtract Team

We build LocalExtract, a desktop bank statement converter. Questions or corrections? Contact · Editorial policy

Continue with a related guide