> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Bankverifizierungsmethoden: Bank-Login oder Kontoprüfung

> Bank-Login oder Konto-Check mit Didit: Was jede Methode nachweist, zurückgibt und wie Sie diese länderspezifisch auswählen und anordnen.

Die Bankverifizierung bestätigt, dass ein Bankkonto der Person oder dem Unternehmen gehört, die bzw. das in einem früheren Schritt Ihres Workflows verifiziert wurde. Es handelt sich um einen einzelnen Workflow-Schritt mit zwei Methoden: Die Person meldet sich entweder bei ihrer Bank an oder gibt ihre Kontodaten ein, woraufhin die Bank den Namen des Kontoinhabers bestätigt. Sie wählen aus, welche Methoden für jedes Land angeboten werden und welche davon an erster Stelle steht.

> [!NOTE]
>
> In der Produktionsumgebung wird die Bank-Anmeldung in Nigeria und Neuseeland ausgeführt, und die Kontoüberprüfung läuft in Nigeria, Ghana und Kenia.
> Im Laufe der Zeit werden weitere Länder freigeschaltet, und die [Preise für die Bankverifizierung](https://docs.didit.me/de/getting-started/bank-verification-pricing.md) zeigen stets den aktuellen Leistungsumfang pro Land.

> [!NOTE]
>
> Die Bankverifizierung vergleicht den Kontoinhaber mit einer Identität, die durch **einen anderen Schritt** festgestellt wurde; sie stellt für sich allein also keinen Identitätsnachweis dar. Platzieren Sie die Ausweisverifizierung, Datenbankvalidierung, einen Fragebogen oder `expected_details` vor diesem Schritt. Die Person gibt den zu prüfenden Namen niemals selbst ein: Didit vergleicht stets den Namen, den die Sitzung bereits verifiziert hat.

## Die beiden Methoden

| | Bank-Anmeldung | Kontoüberprüfung |
| - | - | - |
| Methodenwert | `open_banking` | `account_lookup` |
| Was die Person tut | Meldet sich bei ihrer Bank an und gibt das Konto frei. | Gibt die Kontodaten ein: eine IBAN, eine Bankleitzahl und Kontonummer, eine CLABE usw. Keine Anmeldung erforderlich. |
| Was dadurch nachgewiesen wird | Die Kontrolle über das Konto sowie die von der Bank zurückgegebenen Inhaberdaten. | Dass der bei der Bank hinterlegte Name des Kontoinhabers mit dem verifizierten Namen übereinstimmt. |
| Hinzugefügte Daten | Guthaben, Transaktionen und Einkommen, wenn der Schritt diese anfordert. | Keine: ausschließlich die Kontoinhaberschaft. |
| Typische Verwendung | Onboarding, Kreditvergabe, Prüfung der Zahlungsfähigkeit, Kunden mit hohem Risiko. | Auszahlungen und Abhebungen, reibungsarmes Onboarding, Länder ohne Bank-Anmeldung. |

Beide Methoden liefern dieselbe Art von Ergebnis: ob der Kontoinhaber übereinstimmt, der von der Bank zurückgegebene Kontoinhaber sowie das maskierte Konto. Die Methoden unterscheiden sich je nach Land, und ein Land kann eine von beiden, beide oder beide in beliebiger Reihenfolge anbieten. Unter [Kontoüberprüfung](https://docs.didit.me/de/core-technology/bank-verification/account-check.md) finden Sie die unterstützten Kontoformate, Ergebnisse und Sandbox-Werte.

Das Hochladen von Kontoauszügen und Mikroüberweisungen bleiben Fallbacks nach den beiden Methoden (`bank_statement_enabled`, `bank_microdeposits_enabled`), und die Person kann den Vorgang stets auch ohne Bank fortsetzen. Mikroüberweisungen werden nur nach einer kostenpflichtigen Bank-Anmeldung oder Kontoüberprüfung in derselben Sitzung angeboten, ohne zusätzliche Kosten. Der Upload von Kontoauszügen ist danach ebenfalls enthalten und kann in jedem Land auch ohne vorherigen Bankversuch erfolgen. Siehe [Wenn die Person ihr Bankkonto nicht verifizieren kann](https://docs.didit.me/de/core-technology/bank-verification/fallbacks.md).

## Was die Person sieht

In jedem Land beginnt die Person mit der ersten Methode, die das Land anbietet. Die zweite Methode dient als Absicherung:

* **Bank-Anmeldung zuerst:** Die Bankauswahl öffnet sich. Der letzte Eintrag, **Kontodaten eingeben**, startet die Kontoüberprüfung. Schlägt die Bank-Anmeldung fehl, erscheint derselbe Eintrag erneut unter **Andere Möglichkeiten zur Verifizierung**.
* **Kontoüberprüfung zuerst:** Das Kontoformular öffnet sich, darunter befindet sich der Link **Stattdessen bei Ihrer Bank anmelden**.
* **Nur eine Methode:** Die Person sieht nur diese eine Option.

Bietet ein Land die Kontoüberprüfung an, dient diese auch als Fallback für eine Bank, die per Bank-Anmeldung derzeit nicht erreichbar ist, weil die Bank beeinträchtigt oder ausgefallen ist: Die Person wechselt zum Kontoformular, noch bevor eine Einwilligung eingeholt wird, solange ihr noch Kontoüberprüfungen zur Verfügung stehen. Eine Methode, für die in einem Land keine Route existiert, wird dort weggelassen, sodass die Person niemals eine Methode sieht, die nicht ausgeführt werden kann. Ein Land, für das überhaupt keine Route verfügbar ist, bietet lediglich seine Fallbacks und **Ohne Bank fortfahren** an.

## Methoden pro Land auswählen

### Reihenfolge des Schritts

`bank_method_order` legt fest, welche Methoden der Schritt anbietet und in welcher Reihenfolge – gültig für alle Länder, die keine eigene Konfiguration definieren. Der Parameter listet `open_banking`, `account_lookup` oder beides auf, wobei die primäre Methode zuerst genannt wird.

```json theme={null}
{
  "bank_method_order": ["open_banking", "account_lookup"]
}
```

Wird beim Speichern kein `bank_method_order` übergeben, wird standardmäßig `["open_banking", "account_lookup"]` gesetzt: Bank-Anmeldung zuerst, die Kontoüberprüfung als Ausweichoption. Eine leere Liste wird mit `Choose a method: bank sign-in, account check, or both.` abgelehnt.

Die Schritt-Reihenfolge ist ein Standardwert. In einem Land, in dem keine Route eine dieser Methoden bedient, wird diese Methode ausgelassen, und das Land bietet die verbleibenden an. Ein Land, das von einer Route bedient wird, dem die Reihenfolge jedoch keine Methode zuweist, wird beim Speichern abgelehnt, beispielsweise mit `Choose a method: bank sign-in, account check, or both. ARE offers account check.` Ein Land, für das keinerlei Route existiert, bleibt erhalten, bietet jedoch nur seine Fallbacks an: siehe [Ein Land, das von keiner Bank-Route bedient wird](https://docs.didit.me/de/core-technology/bank-verification/fallbacks.md#ein-land-ohne-bank-route).

### Eigene Reihenfolge eines Landes

`methods` bei einem Land in `bank_countries` überschreibt die Schritt-Reihenfolge für dieses spezifische Land. Die Person beginnt mit der ersten Methode, und die zweite wird ihr als Ausweichoption angeboten.

```json theme={null}
{
  "bank_method_order": ["open_banking", "account_lookup"],
  "bank_countries": {
    "GBR": { "enabled": true, "institutions": "all" },
    "NOR": {
      "enabled": true,
      "institutions": "all",
      "methods": ["open_banking"]
    },
    "MEX": {
      "enabled": true,
      "institutions": "all",
      "methods": ["account_lookup", "open_banking"]
    }
  }
}
```

In diesem Beispiel folgt das Vereinigte Königreich der Schritt-Reihenfolge, Norwegen bietet nur die Bank-Anmeldung an und Mexiko beginnt mit der Kontoüberprüfung, wobei die Bank-Anmeldung als Fallback dient. Ein Land, bei dem `methods` auf `null` gesetzt ist oder dessen Schlüssel fehlt, folgt der Schritt-Reihenfolge. Die Speicherung wird unter `bank_countries.<ISO3>` abgelehnt, wenn ein aktiviertes Land:

* `methods` auf eine leere Liste setzt, selbst in einem Land, das von keiner Route bedient wird, oder
* eine Methode benennt, die dort von keiner Route bedient wird, beispielsweise `Account check is not available in NOR.`

Ein Land, für das überhaupt keine Route existiert, lässt `methods` weg oder setzt den Wert auf `null` und bietet nur seine Fallbacks an: siehe [Ein Land, das von keiner Bank-Route bedient wird](https://docs.didit.me/de/core-technology/bank-verification/fallbacks.md#ein-land-ohne-bank-route).

### In der Konsole

Im Bankverifizierungsschritt führt **Länder und Methoden** jedes Land mit den dort verfügbaren Optionen für die Bank-Anmeldung und Kontoüberprüfung auf sowie mit der Angabe, welche Methode an erster Stelle steht. Die Voreinstellungen konfigurieren alle Länder auf einmal:

| Voreinstellung | Reihenfolge |
| - | - |
| Bank-Anmeldung, Kontoüberprüfung als Backup (Standard) | `["open_banking", "account_lookup"]` |
| Nur Bank-Anmeldung | `["open_banking"]` |
| Nur Kontoüberprüfung | `["account_lookup"]` |
| Kontoüberprüfung, Bank-Anmeldung als Backup | `["account_lookup", "open_banking"]` |

Eine Voreinstellung lässt ein Land niemals ohne Option zurück: Verfügt ein Land nur über eine der beiden Methoden, bleibt diese aktiviert.

## Finanzdaten erfordern Bankanmeldung

Nur die Bankanmeldung liest Kontostände, Transaktionen und Einkommen aus. Wenn der Schritt diese in `bank_scopes` anfordert und ein Land die Kontoprüfung anbietet, besteht eine Person, die sich per Kontoprüfung verifiziert, die Prüfung ohne diese Daten. Der Schritt schlägt nicht fehl: Das Ergebnis führt in `financial_data.not_collected` auf, was nicht erfasst wurde.

```json theme={null}
"financial_data": {
  "balances": null,
  "transactions": null,
  "income": null,
  "categorization": null,
  "not_collected": ["balances", "transactions"]
}
```

`not_collected` ist immer dann eine leere Liste, wenn die Methode alles erfasst hat, was der Schritt angefordert hat. Um die Daten vorauszusetzen, bieten Sie in den Ländern, in denen Sie sie benötigen, ausschließlich die Bankanmeldung an.

## Einstellungen für die Kontoprüfung

Diese Schlüssel konfigurieren ausschließlich die Kontoprüfung. Die Bankanmeldung behält ihre eigenen Einstellungen.

| Konfigurationsfeld | Auswirkung |
| - | - |
| `bank_account_check_accept_close_match` | Aktiviert (Standard): Ein Name, den die Bank zwischen `bank_partial_match_floor` und `bank_name_match_threshold` bewertet, gilt als nahe Übereinstimmung. Die Person bestätigt den bei der Bank hinterlegten Namen, wenn `bank_suggest_holder_name` aktiviert ist, und `bank_partial_match_action` entscheidet. Deaktiviert: Diese nahe Übereinstimmung gilt als keine Übereinstimmung (`OWNER_NAME_MISMATCH`), wird durch `bank_no_match_action` entschieden und verbraucht den Versuch. |
| `bank_account_check_max_attempts` | Wie viele Kontoprüfungen die Person erhält, `1` bis `5`, `3`, wenn nicht festgelegt: wie oft sie die Kontodaten für eine Prüfung eingeben kann, die von der Bank beantwortet wird. Ein Konto, das bereits bei der Eingabe abgelehnt wird, oder eine Prüfung, die die Bank nicht beantworten konnte, verbraucht keinen Versuch. |

Versuche werden pro Methode gezählt. `bank_max_attempts` zählt Versuche der Bankanmeldung, und eine Mikroeinzahlung oder ein Kontoauszugs-Upload verbraucht ebenfalls einen davon. `bank_account_check_max_attempts` zählt Kontoprüfungen. Der Schritt endet mit `bank_attempts_exhausted_action`, sobald die Person bei jeder noch angebotenen Verifizierungsoption, einschließlich eines Kontoauszugs-Uploads, ihre Versuche ohne erfolgreiche Verbindung verbraucht hat: siehe [Kontoauszugs-Upload](https://docs.didit.me/de/core-technology/bank-verification/fallbacks.md#der-kontoauszug-upload).

## Methode im Ergebnis auslesen

### Entscheidung und Webhooks

Jeder Bankverifizierungsschritt ist ein Element von `bank_verifications[]` in der [Sitzungsentscheidung](https://docs.didit.me/de/sessions-api/retrieve-session.md#bankverifizierung) und im `decision`-Objekt von [`status.updated`-Webhooks](https://docs.didit.me/de/integration/webhooks#plural-arrays-in-v3-wichtig). Dessen `method` gibt an, wie das Konto verifiziert wurde:

| `method` | Angezeigt als |
| - | - |
| `open_banking` | Bankanmeldung |
| `account_lookup` | Kontoprüfung |
| `microdeposits` | Mikroeinzahlungen |
| `statement` | Kontoauszugs-Upload |
| `none` | Ohne Bank fortgefahren |

`method` ist `null`, bis ein Konto bewertet wurde, und `none`, wenn die Person ohne Bank fortgefahren ist, bevor ein Versuch bewertet wurde: siehe [Im Ergebnis auslesen](https://docs.didit.me/de/core-technology/bank-verification/fallbacks.md#im-ergebnis-nachlesen). Lesen Sie `method` und nicht `ownership.method` aus, um die Methoden zu unterscheiden: `ownership.method` ist der Namensvergleich, der den Score erzeugt hat, wie etwa `exact` oder `fuzzy`.

```json theme={null}
{
  "bank_verifications": [
    {
      "node_id": "feature_bank_verification",
      "status": "Approved",
      "method": "account_lookup",
      "ownership": {
        "result": "match",
        "method": "exact"
      },
      "financial_data": {
        "balances": null,
        "transactions": null,
        "income": null,
        "categorization": null,
        "not_collected": []
      }
    }
  ]
}
```

Das Beispiel zeigt nur die Felder, die auf dieser Seite behandelt werden. Alle Felder finden Sie im `SessionDecision`-Schema der [API-Referenz](https://docs.didit.me/de/sessions-api/retrieve-session.md).

### Workflow-Regeln

Verzweigungen und benutzerdefinierte Statusregeln lesen denselben Wert als `bank.method` aus, der im Regel-Builder als **Bank Verification Method** bezeichnet wird, mit den Werten **Bank Sign-in**, **Account Check**, **Micro-deposits**, **Statement Upload** und **Continued Without a Bank**. Eine Regel vergleicht den Methodenwert, beispielsweise eine Verzweigung nach einem AML-Screening-Schritt, die eine Kontoprüfung mit einem hohen Risiko-Score zur manuellen Prüfung weiterleitet:

```json theme={null}
{
  "id": "account_check_high_risk",
  "rules": [
    {
      "field": "bank.method",
      "operator": "equals",
      "value": "account_lookup"
    },
    {
      "field": "aml.risk_score",
      "operator": "greater_than",
      "value": 70
    }
  ],
  "logic": "and",
  "goto": "status_in_review"
}
```

### Sitzungsbericht

Der PDF-Sitzungsbericht nennt die Methode in seiner Zeile **Verifizierungsmethode**.

## Vor den Methoden gespeicherte Knoten

`bank_open_banking_enabled` und `bank_account_lookup_enabled` wurden eingestellt. Ein Knoten, der gespeichert wurde, bevor `bank_method_order` existierte, läuft nun mit der Reihenfolge, die sich aus seinen beiden Schaltern ergab:

| `bank_open_banking_enabled` | `bank_account_lookup_enabled` | Der Knoten läuft mit |
| - | - | - |
| Aktiviert oder nicht festgelegt | Deaktiviert oder nicht festgelegt | `["open_banking"]` |
| Aktiviert oder nicht festgelegt | Aktiviert | `["open_banking", "account_lookup"]` |
| Deaktiviert | Aktiviert | `["account_lookup"]` |

War die Kontoprüfung neben der Bankanmeldung aktiviert, sieht die Person sie nun als Ausweichoption in der Bankauswahl, **Kontodaten eingeben**, nicht nur, wenn ihre Bank nicht erreichbar ist. Ein Knoten, bei dem beide Schalter deaktiviert waren und der nur Mikroeinzahlungen oder einen Kontoauszugs-Upload anbot, bleibt unverändert; ein späteres Speichern muss mindestens eine der beiden Methoden aktivieren.

Für ein Release legt ein Speichervorgang, der kein `bank_method_order`, aber einen der Schalter übermittelt, die Reihenfolge weiterhin anhand der Schalter fest. Jeder Speichervorgang schreibt beide Schalter zurück, je nachdem, ob irgendein Land die Bankanmeldung anbietet und ob irgendein Land die Kontoprüfung anbietet. Verwenden Sie in neuen Integrationen `bank_method_order` und `bank_countries.<ISO3>.methods`.

## Preise

Jede Methode wird zu ihrem eigenen Preis pro Land abgerechnet. Unter [Preise für die Bankverifizierung](https://docs.didit.me/de/getting-started/bank-verification-pricing.md) finden Sie die Preise für jedes Land.

* **Die Bankanmeldung** hat einen eigenen Preis, und die Add-ons für Kontostände und Transaktionen werden jeweils zusätzlich berechnet.
* **Die Kontoprüfung** wird einmal pro von der Bank beantworteter Prüfung abgerechnet: eine Übereinstimmung, eine nahe Übereinstimmung, keine Übereinstimmung, ein Konto, das nicht verifiziert werden konnte, und ein Konto, das nicht gefunden wurde. Ein Konto, das bereits bei der Eingabe abgelehnt wird, wird nie berechnet.

Bietet ein Land beide Methoden an, kann eine Sitzung je nach der von der Person genutzten Methode den einen oder den anderen Preis kosten. Der Kontoauszugs-Upload und Mikroeinzahlungen sind nach einem kostenpflichtigen Versuch ohne zusätzliche Kosten enthalten. Ein Kontoauszugs-Upload ohne vorherigen Bankversuch kostet \$0.20, und das Fortfahren ohne Bank wird nie berechnet: siehe [Preise](https://docs.didit.me/de/core-technology/bank-verification/fallbacks.md#preise). Die [Kontoprüfungs-API](https://docs.didit.me/de/standalone-apis/bank-account-check.md) führt dieselbe Prüfung von Ihrem Backend aus, ohne Sitzung, zum selben Preis für die Kontoprüfung durch.

## In Sandbox testen

Eine Sandbox-Anwendung stellt beide Methoden in jedem Land in der vom Schritt festgelegten Reihenfolge bereit und berechnet nichts. Bei der Standardreihenfolge beginnt die Person mit der Bankanmeldung und wählt **Kontodaten eingeben**, um die Kontoprüfung auszuführen. Um mit der Kontoprüfung zu beginnen, setzen Sie `bank_method_order` auf `["account_lookup", "open_banking"]`. Die letzten vier Zeichen des Kontos bestimmen die Antwort der Kontoprüfung: siehe [In Sandbox testen](https://docs.didit.me/de/core-technology/bank-verification/account-check.md#in-der-sandbox-testen).

## Verwandte Themen

* [Kontoprüfung](https://docs.didit.me/de/core-technology/bank-verification/account-check.md): Kontoformate, Ergebnisse und Sandbox-Werte.
* [Wenn die Person ihre Bank nicht verifizieren kann](https://docs.didit.me/de/core-technology/bank-verification/fallbacks.md): Fallbacks, „Ohne Ihre Bank fortfahren“ und die jeweiligen Ergebnisse.
* [API zur Kontoprüfung](https://docs.didit.me/de/standalone-apis/bank-account-check.md): Prüfen Sie ein Auszahlungskonto von Ihrem Backend aus, ohne Sitzung.
* [Konfigurationsschlüssel für die Bankverifizierung](https://docs.didit.me/de/management-api/workflows/feature-configs.md#bank-verifizierung): alle Schlüssel des Schritts.
* [Testen in der Sandbox](https://docs.didit.me/de/integration/sandbox-testing.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.