IframePas 2 de 2
Munta el backend
Rep les dades normalitzades del banc al teu servidor i confirma correctament la devolució de trucada.
Completa primer la 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 de retorn de trucada
Exposa un punt final HTTPS al teu servidor que accepti POST amb un cos JSON.
Després de processar-ho segons calgui, respon HTTP 200 amb el següent JSON:
{
"status": "ok"
}
Si retornes un codi d'estat diferent o un JSON diferent, el widget no notificarà a la interfície que el flux ha acabat amb èxit.
Tracta operation_id com a idempotent: L'entrega repetida no hauria de crear dues operacions sobre el teu sistema.
2. Què s'acosta al POST
El cos és el mateix JSON que POST /entities/ a la referència OpenAPI. Les coses importants per travessar l'operació:
| Camp | Aplicació |
|---|---|
success true |
si la lectura acabava 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 d'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 complet està payload a l'OpenAPI. No assumeixis que totes les claus sempre arriben: depenen del product_types que l'usuari té a l'entitat i el que tingui.
3. Associar domini, callback i clau API
A l'àrea de clients ] associat:
- el domini des d'on es carrega el widget (l'origen del teu front);
- l'URL de retorn de trucada que acabes de crear;
- Tu
api_key.
Fins que el domini no està registrat, 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 correcta amb dades d'exemple anonimitzades. La trucada rep un JSON success: true. |
MOCKOTP |
Qualsevol | Recrees un repte de dos factors. |
MOCKLOGINKO |
Qualsevol | Recrees un error d'inici de sessió. La crida de retorn no és convocada. |
Si no tens el correu de benvinguda, demana'l a support@wealthreader.com.
Si vols veure el POST abans de tenir l'endpoint al teu entorn, crea una URL temporal en un servei com https://pipedream.com/ i posa-la com a callback.
5. Dades de refresc (opcional)
Fins ara tens una integració one-shot: una lectura per cada vegada que l'usuari obre el widget.
Si necessites un batch durant la nit o un botó d'"actualitzar", truca de nou a l'API amb el token que vas code desar de la callback. No demanis un nou nom d'usuari i 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 els codis d'error](https://api.wealthreader.com/error-codes/): una contrasenya invàlida no es torna a intentar; el manteniment d'una entitat sí.
- Especificació OpenAPI v3
- Col·lecció Postman
Si el canvi de token contrasenya o la nova 2FA es torna invàlida, obre el widget de nou passant aquest valor wr_conf.token perquè l'usuari el pugui tornar a autenticar.
/support@wealthreader.com