Skip to content
Portal templates

Sparkasse online banking: download account statements with a workflow

Statements sit in the electronic mailbox of your Sparkasse's online banking, one PDF per account and month. This template signs in with a vaulted login name and PIN, waits for the pushTAN you release on your phone, lists the month's statements and downloads each one.

Who downloads statements, and why it is still a person

The statement is the document; the PIN and the phone are why a person is in the loop.

Bookkeeping, monthly
On the first working day someone signs in, releases the pushTAN, opens the mailbox and downloads last month's statements per account for the accounting file. Five accounts, five downloads, one login.
The tax advisor
Advisors ask for the statements as PDF, month by month, and chase the ones that are missing. A folder that fills itself on the first of the month ends the chasing.
Audit and lending
A lender or auditor wants twelve months of statements. Somebody spends an afternoon in the mailbox with the date filter.
What breaks
The phone with the pushTAN app belongs to one person; the electronic statement has to be enabled per account first; and a statement downloaded twice under two names is a reconciliation problem later.

The manual route in online banking

From the public pages of the Sparkassen-Finanzgruppe. Every Sparkasse runs its own instance, so the address differs and a label may too.

  1. Sign in

    Open your Sparkasse's online banking, enter the login name (or Legitimations-ID) and the PIN.

  2. Release the login in the pushTAN app

    The S-pushTAN app on the registered phone shows the login request; the person confirms it. Under the payment services rules a login is confirmed with a second factor at least every so often, and many Sparkassen ask every time.

  3. Open the electronic mailbox

    The mailbox (Postfach) holds account statements, messages and documents. Statements appear there once the electronic statement is switched on for the account.

  4. Filter and download

    Filter the statements by account and period and download each as PDF. The public pages describe the statement as a PDF per statement date; a select-all download is not something this page has confirmed.

  5. Sign out

    Use the sign-out; online banking also ends a session after a few minutes without activity.

Template, credential and a run with a person on the phone

The banking address is a parameter and the login block's URL at once, so one template serves any Sparkasse; the credential's grant URL has to match it.

{
  "title": "Sparkasse online banking: account statements of a month as PDF",
  "parameters": [
    {
      "key": "banking_url",
      "description": "The online banking address of your Sparkasse, which is also the credential's grant URL",
      "required": true
    },
    {
      "key": "month",
      "description": "The statement month to download (YYYY-MM)",
      "required": true
    },
    {
      "key": "archive_webhook",
      "description": "Endpoint that receives the list of statements",
      "required": true
    }
  ],
  "runSequentially": true,
  "sequentialKey": "cred_sparkasse",
  "blocks": [
    {
      "blockType": "login",
      "label": "Sign_in",
      "credentialId": "cred_sparkasse",
      "url": "{{ banking_url }}"
    },
    {
      "blockType": "validation",
      "label": "Overview_shown",
      "criterion": "The financial overview (Finanzübersicht) of the signed-in customer is shown; no PIN entry and no pending pushTAN release remain on the page"
    },
    {
      "blockType": "action",
      "label": "Open_mailbox",
      "instruction": "Open the electronic mailbox (Postfach) and its account statements (Kontoauszüge), filtered to the month {{ month }}"
    },
    {
      "blockType": "extraction",
      "label": "Statements",
      "instruction": "Every account statement listed for {{ month }}: account (IBAN or name), statement number, statement date, whether a PDF is offered",
      "schema": {
        "type": "object",
        "properties": {
          "statements": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "account": {
                  "type": "string"
                },
                "number": {
                  "type": "string"
                },
                "date": {
                  "type": "string"
                },
                "hasPdf": {
                  "type": "boolean"
                }
              },
              "required": [
                "account",
                "date"
              ]
            }
          }
        },
        "required": [
          "statements"
        ]
      }
    },
    {
      "blockType": "loop",
      "label": "Each_statement",
      "over": "{{ Statements_output.statements }}",
      "maxIterations": 30,
      "blocks": [
        {
          "blockType": "action",
          "label": "Download_statement",
          "nextLoopOnFailure": true,
          "instruction": "Download the statement {{ loopValue.number }} dated {{ loopValue.date }} for account {{ loopValue.account }} as PDF"
        }
      ]
    },
    {
      "blockType": "http_request",
      "label": "Post_list",
      "method": "POST",
      "url": "{{ archive_webhook }}",
      "headers": {
        "content-type": "application/json"
      },
      "body": "{{ Statements_output }}"
    }
  ]
}

Note · Drafted from public pages; not verified in a live account

Login fields, the pushTAN release and the mailbox are described as the Sparkassen-Finanzgruppe's public pages present them on the date above. The template has not been run against a live Sparkasse account while writing this page; each Sparkasse's online banking can differ in labels and in where the statements filter sits.

Facts from the public Sparkasse pages

Login Login name or Legitimations-ID plus PIN, confirmed with a TAN method Sparkasse
pushTAN The S-pushTAN app on a registered smartphone releases logins and orders Sparkasse
Electronic statements Account statements are delivered to the electronic mailbox as PDF once enabled for the account Sparkasse
Instance Each Sparkasse operates its own online banking at its own address; the template takes it as a parameter
Vault fields loginName and pin, released only on the Sparkasse's own address; no TAN is ever stored

As of 2026-09-08

PIN, pushTAN, session, and the payments the run will never make

Browserberg is not affiliated with any Sparkasse, the Sparkassen-Finanzgruppe or the DSGV; this page describes reading your own online banking with your own access.

Where the PIN goes and where it does not

The credential is created for your Sparkasse's banking address, and the PIN is released only there, inside the executor, at the moment of typing. It is not in the template, not in the run output and not in any model's context. The vault never stores a TAN, because a TAN is not a secret you hold; it is a release you give.

The pushTAN is a person's release

After the login block types name and PIN, the banking page waits for the release in the S-pushTAN app. The person with the phone watches the sign-in in the live view (the script prints a read-only watch link) and confirms in the app. The validation block then requires the financial overview with no pending release; if the person did not confirm in time, the run fails there and says so. Nothing in the product can produce a TAN, and nothing should.

Session

Online banking ends a session after a few minutes without activity, sooner than most portals. The template does its work in one pass; a loop over thirty statements is well within that. runSequentially keyed on the credential keeps two runs from signing in at once, which a bank would treat as a conflict.

What the effect gates refuse

Everything the template clicks is a read effect: a mailbox, a filter, a download. Online banking is also where the payment effect lives, and the gates classify each element: a control whose label reads as a transfer, a standing order, a release or a deletion is refused under the default policy, however an instruction is phrased. The run cannot submit a payment unattended, and that is not a property of this template but of the gate that every click passes.

Questions from bookkeeping

Can it run on the first of the month by itself?

The login needs a pushTAN release from a person, so a scheduled firing would stop at the validation block with nobody to confirm. Start the run when the phone's owner is ready; the rest is automatic.

Is my PIN ever visible?

Not in the template, not in the run and not to a model. It is released inside the executor on the granted address only. Revoking the credential ends its use immediately.

Could the run make a transfer?

No. A transfer control is classified as a payment effect and refused under the default policy regardless of the instruction; and a transfer would need a TAN, which nothing in the product can produce.

Where do the PDFs go?

Each download inside the loop becomes an artifact of the run. The webhook receives the list as JSON; your DMS fetches the files under your own retention rules.

Our Sparkasse uses chipTAN, not pushTAN

Then the release needs a card reader in a person's hand, which works the same way from the person's side: watch the sign-in, generate the TAN, type it through a takeover of the live view. The template is unchanged.

Fetch last month's statements

Five browser hours, no card. Vault the login, keep the phone nearby, and let the folder fill itself.