IframeSchritt 2 von 2
Das Backend einrichten
Erhalten Sie die normalisierten Bankdaten auf Ihrem Server und bestätigen Sie die callbackkorrekt.
Vervollständigen Sie das Frontend-Checkliste. Das Widget sendet keine Bankdaten per postMessage– es sendet sie hierher, über POST.
Integrations-Checkliste
0 von 41. Erstellen Sie die callback URL
Stellen Sie auf Ihrem Server einen HTTPS -Endpunkt bereit, der POST mit einem Body JSONakzeptiert.
Nachdem Sie das Notwendige verarbeitet haben, antworten Sie HTTP 200 mit folgendem JSON:
{
"status": "ok"
}
Wenn du einen anderen Statuscode oder einen anderen JSON zurückgibst, benachrichtigt das Widget das Frontend nicht, dass der Flow erfolgreich abgeschlossen wurde.
Behandeln Sie operation_id als idempotent: Wiederholte Lieferung sollte nicht zwei Operationen auf Ihrem System erzeugen.
2. Was kommt in die POST
Der Körper ist derselbe JSON , der POST /entities/ im OpenAPI-Referenz. Die wichtigsten Punkte für die Operation:
| Spielfeld | Anwendung |
|---|---|
success |
true , ob die Lesung gut endete. |
payload |
Standardisierte Daten (Konten, Anlageportfolios, Karten usw.). |
statistics.operation_id |
Das operation_id , das dein Frontend generiert hat. |
statistics.token |
Gespeicherter Zugangsschlüssel für spätere Datenaktualisierungen (wenn die Tokenisierung aktiviert ist). |
statistics.code |
Entitätscode (bbva, caixabank, ...). |
statistics.SESSION |
Sitzungs-ID, nützlich in einem Support-Ticket. |
statistics.warnings |
Warnungen, die die Lesung nicht ungültig machen (zum Beispiel ein leeres Produkt). |
Beispiel für einen Ausschnitt:
{
"success": true,
"payload": {
"user_information": {
"ID": "12345678Z",
"name": "LUIS GARCIA BAQUERO"
},
"accounts": [
{
"uuid": "8076932f04f73e27fe608fee4d12fca8708dec8c",
"subtype": "checking",
"code": "ES4914651234561234567890",
"name": "Cuenta NOMINA",
"currency": "EUR",
"balances": {
"available": 14302.07,
"current": 14302.07
},
"transactions": []
}
]
},
"statistics": {
"SESSION": "A1B2C3D4E5F67890",
"execution_time": 12.4,
"warnings": [],
"operation_id": "8f1c2a6e-4b0d-4c3a-9e21-0d5b7a91c4e2",
"token": "FRJ0mHlaqZwLzu",
"code": "bbva"
}
}
Das vollständige payload -Schema befindet sich in der OpenAPI. Gehen Sie nicht davon aus, dass alle Schlüssel immer eingeliefert werden: Sie hängen von product_types und dem, was der Benutzer in der Entität hat, ab.
3. Assoziiere Domäne, callback und API Schlüssel
In der Kundenbereich Associate:
- die Domäne, aus der das Widget geladen wird (der Ursprung deiner Frontseite);
- die URL callback du gerade erstellt hast;
- Deine
api_key.
Solange die Domain nicht registriert ist, funktioniert das Widget nicht.
4. Den Fluss testen
Öffnen Sie die Seite, die das Widget lädt, und melden Sie sich an:
| Nutzer | Passwort | Ergebnis |
|---|---|---|
MOCKDATA |
Irgendeine | Erfolgreiche Lesung mit anonymisierten Stichprobendaten. Die callback erhält eine JSON success: true. |
MOCKOTP |
Irgendeine | Du erstellst eine Zwei-Faktor-Herausforderung nach. |
MOCKLOGINKO |
Irgendeine | Du erstellst einen Anmeldefehler wieder. Das callback wird nicht aufgerufen. |
Wenn Sie die Willkommens-E-Mail nicht haben, fragen Sie danach unter support@wealthreader.com.
Wenn du die POST sehen möchtest, bevor du den Endpunkt in deiner Umgebung hast, erstelle eine temporäre URL in einem Dienst wie https://pipedream.com/ und es so formulieren callback.
5. Daten aktualisieren (optional)
Bisher hast du eine One-Shot-Integration: eine Lektüre für jedes Mal, wenn der Nutzer das Widget öffnet.
Wenn du eine nächtliche Charge oder einen "Aktualisieren"-Button brauchst, ruf die API erneut mit dem token an und code du aus dem callbackgespeichert hast. Frag nicht nach einem neuen Benutzernamen und Passwort.
curl --location 'https://api.wealthreader.com/entities/' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'api_key=TU_API_KEY' \
--data-urlencode 'code=bbva' \
--data-urlencode 'token=EL_TOKEN_DEL_CALLBACK' \
--data-urlencode 'product_types=accounts,portfolios'
Beachten Sie die Fehlercodes: Wiederholen Sie Anfragen bei einem ungültigen Passwort nicht; bei Wartungsarbeiten des Instituts können Sie es erneut versuchen.
- Spezifikation OpenAPI v3
- Postman-Sammlung
Wenn die token nicht mehr gültig ist (Passwortänderung oder neue 2FA), öffne das Widget erneut, indem du diesen Wert in wr_conf.token übergibst, damit der Nutzer sich erneut authentifizieren kann.
Ein token, der 365 Tage lang nicht verwendet wurde, wird automatisch gelöscht. Wenn du ihn danach sendest, antwortet die API mit Code 2 („Das Token ist nicht gültig“), und der Nutzer muss seine Bank erneut verbinden, indem er das Widget ohne token öffnet.