IframePas 2 de 2
Configurar el backend
Rep les dades normalitzades del teu banc al teu servidor i confirma el callbackcorrectament.
Completa el Llista de comprovació del frontend. El widget no envia les dades bancàries per postMessage- les envia aquí, utilitzant POST.
Checklist d'integració
0 de 41. Crea l'URL callback
Exposa un punt final HTTPS al teu servidor que accepti POST amb un JSONcorporal.
Després de processar el que és necessari, respon HTTP 200 amb la següent JSON:
{
"status": "ok"
}
Si retornes un altre codi d'estat o un altre JSON , el widget no notificarà al frontend que el flux ha acabat amb èxit.
Tracta operation_id com a idempotent: la lliurament repetit no hauria de crear dues operacions al teu sistema.
2. Què vindrà a la POST
El cos és el mateix JSON que POST /entities/ en el Referència OpenAPI. Les coses importants per travessar l'operació:
| Camp | Aplicació |
|---|---|
success |
true si la lectura va acabar bé. |
payload |
Dades estandarditzades (comptes, carteres, targetes, etc.). |
statistics.operation_id |
El operation_id que generava el teu frontend. |
statistics.token |
Credencial de custòdia per a refrescos posteriors (si la tokenització està activa). |
statistics.code |
Codi de l'entitat (bbva, caixabank, ...). |
statistics.SESSION |
ID de sessió, útil en un tiquet de suport. |
statistics.warnings |
Advertències que no invaliden la lectura (per exemple, un producte buit). |
Exemple de retall:
{
"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"
}
}
L'esquema payload complet està a l'OpenAPI. No assumeixis que totes les claus sempre arriben: depenen de product_types i del que l'usuari té a l'entitat.
3. Domini associat, callback i clau API
En el Àrea de Client Associat:
- el domini des d'on es carrega el widget (l'origen del teu front);
- l'URL de callback acabes de crear;
- El teu
api_key.
Fins que el domini no rep el registre del compte, el widget no funciona.
4. Prova el flux
Obre la pàgina que carrega el widget i inicia sessió:
| Usuari | Contrasenya | Resultat |
|---|---|---|
MOCKDATA |
Qualsevol | Lectura reeixida amb dades de mostra anonimitzades. El callback rep una JSON success: true. |
MOCKOTP |
Qualsevol | Recrees un repte de dos factors. |
MOCKLOGINKO |
Qualsevol | Recrees un error d'inici de sessió. El callback no es crida. |
Si no tens el correu de benvinguda, demana'l a support@wealthreader.com.
Si vols veure la POST abans de tenir l'endpoint al teu entorn, crea una URL temporal en un servei com https://pipedream.com/ i posa-ho callback.
5. Refrescar dades (opcional)
Fins ara tens una integració one-shot: una lectura per cada vegada que l'usuari obre el widget.
Si necessites un lot nocturn o un botó d'"actualitzar", truca a la API de nou amb el token i code has salvat de la callback. No demanis un nou nom d'usuari ni contrasenya.
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'
Fixeu-vos en el Codis d'error: Una contrasenya invàlida no es torna a intentar; es torna a provar el manteniment d'una entitat.
- Especificació OpenAPI v3
- Col·lecció Postman
Si el token ja no és vàlid (canvi de contrasenya o nova 2FA), obre el widget de nou passant aquest valor a wr_conf.token perquè l'usuari el pugui tornar a autenticar.