parsr.

Germany · Bank statement parser

Parse Sparkasse statements into structured JSON

Germany's largest savings-bank network — DTAUS-style format with verwendungszweck details.

Sparkasse statements use the DTAUS-influenced format that's standard across German savings banks. Transactions carry a four-line 'Verwendungszweck' (purpose of payment) field that often includes structured information: invoice numbers, customer references, end-to-end IDs (SEPA), or free-text from the payer. parsr captures the full Verwendungszweck as a single description string while preserving line breaks. Counterparty IBANs and BIC codes are printed on each transaction; both are extracted. The balance column updates after each transaction. Sparkasse statements often span 3-5 pages for active accounts. The institution name varies by region (Sparkasse Köln-Bonn, Berliner Sparkasse, Hamburger Sparkasse) — parsr extracts the specific regional entity. SEPA Direct Debit transactions show the mandate ID as a separate line under the description.

Format notes

What's specific to Sparkasse

  • Four-line Verwendungszweck preserved with line breaks
  • Counterparty IBAN + BIC extracted per transaction
  • Regional Sparkasse entity name (Köln-Bonn, Berliner, etc.) captured
  • SEPA mandate IDs extracted from Direct Debit transactions
  • End-to-end IDs preserved as part of description

What we extract

Fields you get back

  • Specific Sparkasse entity name + IBAN + BIC
  • Full multi-line Verwendungszweck per transaction
  • Counterparty IBAN + BIC + name
  • SEPA mandate IDs
  • Confidence + bbox per field

Sample response

Real shape, real bank

POST /v1/parse → 200 OKschema bank_statement.v2
{
  "schema_version": "bank_statement.v2",
  "result": {
    "institution_name": "Sparkasse Köln-Bonn",
    "account_holder": "Müller GmbH",
    "account_iban": "DE89370400440532013000",
    "currency": "EUR",
    "transactions": [
      {
        "posted_date": "2026-04-12",
        "description": "SEPA Lastschrift / Vodafone GmbH / Mandat 2024-09-MD123 / RG 2026-04-001",
        "amount":      { "amount": "-89.99", "currency": "EUR" },
        "counterparty": "Vodafone GmbH",
        "counterparty_iban": "DE49500700100123456700",
        "type": "debit"
      }
    ]
  }
}

Try it on a real Sparkasse statement.

200 free pages/mo. No credit card. EU residency by default — your borrowers' data stays in the EU.

Get an API key