Download OpenAPI specification:
Le API regolamentari basate su PSD2 forniscono accesso a determinate informazioni finanziarie come saldi dei conti bancari e transazioni. Tuttavia, esistono altre fonti di informazioni patrimoniali che non sono accessibili attraverso queste API. L'API Wealth Reader estende le informazioni offerte dalle API regolamentari fornendo accesso in tempo reale a fonti patrimoniali aggiuntive in qualsiasi entità mondiale. Esistono altri due documenti correlati che ti aiuteranno a integrare l'API Wealth Reader. Uno è la guida all'integrazione del widget Javascript: https://docs-en.wealthreader.com/ e l'altro è una collezione Postman basata su questa documentazione. Molto importante: Questa definizione API è adattata per i clienti che integrano tramite Widget, quindi alcuni parametri che non sono necessari per questo tipo di integrazione sono stati omessi, come i parametri di autenticazione bancaria, poiché verrà utilizzato un token.
Recupera gli attivi finanziari e i dettagli della loro composizione inclusi portafogli di investimento composti da azioni o fondi, carte di credito, assicurazioni e prestiti. Include informazioni di proprietà per ciascun attivo nonché identificatori unici che facilitano l'elaborazione dei dati. È possibile ottenere dati Mock. Verifica con il team tecnico come farlo.
| api_key | string Identifica il cliente nel servizio |
| code | string Nome dell'entità. L'elenco completo è disponibile con GET Esempio: |
| token | string Identifica le credenziali custodite. Il flusso attraverso il quale è stato ottenuto il token è descritto nel documento 'Guida all'integrazione del Widget'. Sono disponibili i seguenti utenti Mock: MOCKDATA, risposta OK; MOCKOTP, risposta con sfida OTP; MOCKLOGINKO, risposta con errore di login Esempio: |
| product_types | string Enum: "accounts" "portfolios" "cards" "receipts" "loans" "factoring" "confirming" "properties" "invoices" "files" "deposits" "leases" "insurances" Elenco dei tipi di prodotto da cui recuperare le informazioni. Accetta più valori separati da virgole. Esempio: |
| only_balances | boolean Default: false Indica se ottenere solo i saldi dei prodotti invece di tutte le informazioni disponibili. Valore predefinito: false. Esempio: |
| fetch_transaction_details | boolean Default: false Indica se devono essere ottenuti dettagli estesi delle transazioni quando il connettore dell'entità lo supporta. IMPORTANTE: Attivarlo implica eseguire una o più navigazioni aggiuntive per ogni transazione per arricchire le informazioni restituite. Ciò aumenterà inevitabilmente e in modo significativo il tempo di esecuzione. Il numero di navigazioni aggiuntive cresce con il volume delle transazioni. Si consiglia di attivarlo solo quando si è certi che è richiesto un livello di dettaglio superiore a quello restituito per impostazione predefinita. I dettagli ottenuti vengono inseriti nella chiave Esempio: |
| date_from | string <date> Data da cui vengono richieste le transazioni, in formato AAAA-MM-GG. Deve essere una data precedente a oggi. Esempio: |
| date_to | string <date> Questo si applica solo per restringere per date future per i prodotti loan e confirming, in formato AAAA-MM-GG. La data deve essere successiva a oggi Esempio: |
| required_products_schema | string Schema dei prodotti richiesti. Indica i conti o le carte da cui si desiderano i dati, con configurazioni aggiuntive. Esempio:
|
| add_pdf_from_uuids | string Accetta uuid di transazioni separati da virgole. Parametro considerato solo se product_types è ALL o include accounts. Aggiunge il documento PDF associato a ciascuna delle transazioni bancarie richieste. Esempio:
|
| otp_method | string Seleziona il canale di consegna del secondo fattore quando l'API ha restituito il codice 2017 o 20171 (più metodi OTP). Richiamare con lo stesso identificatore di sessione di quella risposta e impostare otp_method sulla stringa esatta del campo otp_method di un oggetto in statistics.otpMethods — non l'indice dell'array. Omettere nella prima richiesta con credenziali; inviare dopo la scelta dell'utente. L'esempio sotto è indicativo; copiare sempre la stringa restituita in statistics.otpMethods. Esempio: |
api_key=a1b2c3d4e5f6g7h8i9j0&code=caixabank&token=1234Asdf&product_types=accounts%2Cportfolios&only_balances=false&date_from=2024-01-01&date_to=2025-12-31&required_products_schema=%7B%22ACCOUNTS%22%3A%7B%220ae4d722b1c82feeafb4b36b2893230444071335%22%3A%7B%22only_balances%22%3Afalse%2C%22add_pdf_from_uuids%22%3A%5B%2290763109952d4f2ebece8dceca8254078c5384a0%22%5D%2C%22date_from%22%3A%222024-04-03%22%7D%7D%2C%22CARDS%22%3A%7B%22957e6f63546f3fecacce80192b6f7436496dc057%22%3A%7B%7D%7D%7D&add_pdf_from_uuids=20966426721d0885ef9d4b95535e1d3198936f16%2C8772d6c978d37d7af83094abf380b8b703e94105
[- {
- "success": true,
- "payload": {
- "user_information": {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "gender": "male",
- "birth_date": "1980-09-26",
- "birth_place": "Ibiza",
- "email": "lgarcia@gmail.com",
- "cell_phone": "+34666123456",
- "address": "CALLE BAILEN 41 1A",
- "city": "MADRID",
- "country": "SPAIN",
- "postal_code": "28005",
- "marital_status": "married",
- "job": "CUENTA PROPIA"
}, - "portfolios": [
- {
- "subtype": "funds",
- "uuid": "05e4563f5bbf2d06efd0a29ebe7edbbb4e1bff63",
- "code": "1465010091400123456789",
- "name": "Fondo Dinámico",
- "currency": "EUR",
- "total_value": 3275.6,
- "weighted_return": 8.49,
- "annualized_volatility": 0,
- "yield": 256.27,
- "contributions": 3019.33,
- "withholdings": 0,
- "contracting_date": "2016-04-27",
- "linked_account": "ES4021005321592566566159",
- "portfolio_statement": "JVBERi0xLjQKJ...",
- "owners": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "composition": [
- {
- "ISIN": "LU1234567890",
- "ISIN_description": "My Fund Class A",
- "currency": "EUR",
- "weighting": 100,
- "shares": 225.0077,
- "price": 14.5577,
- "total_amount": 3275.6,
- "reference_currency": "EUR",
- "exchange_rate": 1
}
], - "transactions": [
- {
- "uuid": "05e4563f5bbf2d06efd0a29ebe7edbbb4e1bff63",
- "operation_pending": false,
- "operation_date": "2020-01-30",
- "value_date": "2020-01-30",
- "operation_type": "purchase",
- "shares": 1076.8273,
- "price": 11.1438,
- "total_amount": 12000,
- "currency": "EUR",
- "reference_currency": "USD",
- "exchange_rate": 1
}
]
}
], - "accounts": [
- {
- "uuid": "8076932f04f73e27fe608fee4d12fca8708dec8c",
- "subtype": "checking",
- "interest_rate": 0.5,
- "line_of_credit_details": {
- "credit_limit": 50000,
- "interest_rate": 4.5,
- "credit_used": 15000,
- "credit_available": 35000,
- "constitution_date": "2021-05-20",
- "expiration_date": "2031-05-20"
}, - "code": "ES4914651234561234567890",
- "name": "Cuenta NÓMINA",
- "currency": "EUR",
- "owners": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "balances": {
- "available": 14302.07,
- "current": 14302.07
}, - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
], - "transactions": [
- {
- "uuid": "d0c2ea4c072cf4d7b0fd494d7728260d736e6b25",
- "operation_date": "2022-12-30",
- "value_date": "2022-12-30",
- "amount": -1.1,
- "balance": 14302.07,
- "description": "Pago en TELPARK MADRID ES",
- "pdf_file": "string",
- "pdf_file_settled": true,
- "categorization": {
- "type": 1,
- "portfolio-uuid": "1465010091400123456789",
- "ISIN": "US88160R1014"
}, - "transfer_details": {
- "concept": "Pago de factura 12345",
- "sender_receiver": "Juan Pérez",
- "account_number": "ESXX12341234121234567890"
}, - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
]
}
], - "cards": [
- {
- "status": "active",
- "subtype": "credit",
- "uuid": "aefd89eade0a6a09d9b8eab4c22da6a6a37632e6",
- "code": "516097********1234",
- "name": "Credit Card",
- "currency": "EUR",
- "next_payment_date": "2023-01-05",
- "anual_interest": 17.48,
- "tae": 18.95,
- "balances": {
- "available": 3980,
- "limit": 4000,
- "disposed": 20
}, - "linked_account": "ES4021005321592566566159",
- "owner": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
], - "transactions": [
- {
- "uuid": "78ceedca9cd9d2f2bfbb2439795ab6a1fcefc12b",
- "settled": false,
- "operation_date": "2022-12-28",
- "value_date": "2022-12-28",
- "amount": -20,
- "currency": "EUR",
- "exchange_rate": 1,
- "description": "Pago en AMZN MKTP ES123CM0ZM4",
- "categorization": {
- "type": 0
}, - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
]
}
], - "receipts": [
- {
- "last_receipt_date": "2023-07-23",
- "issuer": "Canal de Isabel II",
- "description": "RECIBO CONTRATO 328774628 FACTURA DEL 18 07 23",
- "account": "ES0123456789012345678901",
- "status": "paid",
- "amount": 50.75,
- "pdf_file": "string",
- "pdf_file_settled": true
}
], - "loans": [
- {
- "uuid": "0ae4d722b1c82feeafb4b36b2893230444071335",
- "contract_number": "9620.321-205439-70",
- "loan_type": "Variable rate mortgage",
- "constitution_date": "2022-02-23",
- "currency": "EUR",
- "granted_capital": 207000,
- "pending_amount": 166639.77,
- "next_installment": 1040.3,
- "linked_account": "ES0123456789012345678901",
- "holders": [
- {
- "id": "32945945D",
- "name": "Diego Serrano"
}
], - "interest_rate": 3.768,
- "expiration_date": "2042-03-01",
- "pending_receipts": 223,
- "amortization_made": [
- {
- "uuid": "8772d6c978d37d7af83094abf380b8b703e94105",
- "date": "2022-12-01",
- "amortized": 515.43,
- "interest": 524.87,
- "total": 1040.3,
- "pending_capital": 166639.77,
- "operation_type": "receipt_paid"
}
], - "amortization_pending": [
- {
- "uuid": "e59296b79e7f80cec26679d2c65883025fd59295",
- "date": "2030-12-01",
- "amortized": 515.43,
- "interest": 524.87,
- "total": 1040.3,
- "pending_capital": 66639.77,
- "operation_type": "receipt_scheduled"
}
]
}
], - "deposits": [
- {
- "uuid": "0ae4d722b1c82feeafb4b36b2893230444071335",
- "code": "DPZ-1234567890",
- "name": "12-month deposit",
- "currency": "EUR",
- "principal": 10000,
- "pending_principal": 5000,
- "start_date": "2024-09-01",
- "maturity_date": "2025-09-01",
- "payment_frequency": "at_maturity",
- "capitalization": "none",
- "rate_type": "fixed",
- "nominal_interest_rate": 3,
- "apr_tae": 3.04,
- "day_count_convention": "ACT/365",
- "linked_account": "ES4021005321592566566159",
- "accrued_interest": 24.58,
- "expected_interest_total": 300,
- "withholding_tax_rate": 19,
- "status": "active",
- "auto_renewal": {
- "enabled": false,
- "renewed_times": 0,
- "next_renewal_date": "2019-08-24",
- "renewal_term_months": 0
}, - "early_withdrawal": {
- "allowed": true,
- "penalty_type": "interest_loss",
- "penalty_value": 100,
- "notes": "Loss of accrued interest for the current period"
}, - "owners": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "interest_movements": [
- {
- "uuid": "90763109952d4f2ebece8dceca8254078c5384a0",
- "scheduled": false,
- "date": "2025-09-01",
- "period_start": "2024-09-01",
- "period_end": "2025-09-01",
- "currency": "EUR",
- "gross_interest": 300,
- "withholding_tax": 57,
- "net_interest": 243,
- "payment_type": "maturity"
}
], - "principal_movements": [
- {
- "uuid": "90763109952d4f2ebece8dceca8254078c5384a0",
- "date": "2019-08-24",
- "type": "opening",
- "amount": 12000,
- "currency": "string",
- "target_account": "string"
}
]
}
], - "leases": [
- {
- "subtype": "leasing",
- "uuid": "1f0a0b1c2d3e4f5a6b7c8d9e0f1234567890abcd",
- "contract_number": "L-2024-000123",
- "name": "BMW 3 Series Leasing",
- "provider": {
- "name": "Banco XYZ Renting, S.A.",
- "tax_id": "A12345678"
}, - "currency": "EUR",
- "start_date": "2024-10-01",
- "end_date": "2028-09-30",
- "term_months": 48,
- "payment_frequency": "monthly",
- "status": "active",
- "linked_account": "ES4021005321592566566159",
- "holders": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "asset": {
- "category": "vehicle",
- "description": "BMW 320d Touring",
- "vin": "WBA8G51040K123456",
- "license_plate": "1234-ABC",
- "brand": "BMW",
- "model": "320d",
- "year": 2024,
- "serial_number": "string",
- "address": "string"
}, - "financials": {
- "capital_financed": 35000,
- "nominal_interest_rate": 4.25,
- "apr_tae": 4.38,
- "discount_rate": 0,
- "initial_fee": 3000,
- "security_deposit": 1000,
- "residual_value": 12000,
- "purchase_option": true,
- "services_included": {
- "maintenance": true,
- "insurance": true,
- "roadside_assistance": true,
- "tires": false
}, - "vat_included": true,
- "mileage_limit_year": 15000,
- "early_termination": {
- "allowed": true,
- "penalty_type": "percentage_of_remaining",
- "penalty_value": 40
}
}, - "totals": {
- "paid_installments": 10,
- "remaining_installments": 38,
- "total_paid": 0,
- "total_pending": 0,
- "principal_outstanding": 0,
- "accrued_interest": 0
}, - "installments": {
- "paid": [
- {
- "uuid": "b07a1a0d3e6f4c2a9e1d0f8b7c6a5e4d3c2b1a0f",
- "date": "2025-01-01",
- "status": "pending",
- "currency": "EUR",
- "total": 625.5,
- "breakdown": {
- "principal": 450,
- "interest": 80,
- "services": 70,
- "taxes": 25.5,
- "fees": 0
}, - "value_date": "2019-08-24",
- "receipt_uuid": "string",
- "additional_info": [
- {
- "key": null,
- "value": null
}
]
}
], - "scheduled": [
- {
- "uuid": "b07a1a0d3e6f4c2a9e1d0f8b7c6a5e4d3c2b1a0f",
- "date": "2025-01-01",
- "status": "pending",
- "currency": "EUR",
- "total": 625.5,
- "breakdown": {
- "principal": 450,
- "interest": 80,
- "services": 70,
- "taxes": 25.5,
- "fees": 0
}, - "value_date": "2019-08-24",
- "receipt_uuid": "string",
- "additional_info": [
- {
- "key": null,
- "value": null
}
]
}
]
}
}
], - "insurances": [
- {
- "uuid": "0ae4d722b1c82feeafb4b36b2893230444071335",
- "code": "969032717626333",
- "coverage_category": "property",
- "name": "MyBox Hogar",
- "currency": "EUR",
- "insured_value": {
- "name": "PISO / Residencia secundaria 46023 VALENCIA",
- "value": 250000
}, - "insured_concepts": [
- {
- "description": "Fire",
- "value": 25000
}
], - "constitution_date": "2020-01-01",
- "expiration_date": "2021-01-01",
- "next_payment_date": "2020-02-01",
- "next_installment": 800,
- "frequency": "monthly",
- "status": "active",
- "linked_account": "ES4914651234561234567890",
- "owner": {
- "ID": "07133834N",
- "name": "LUIS GARCIA BAQUERO"
}, - "claims": [
- {
- "uuid": "8772d6c978d37d7af83094abf380b8b703e94105",
- "claim_code": "0122074354T2",
- "incident_date": "2023-05-13",
- "claimed_date": "2023-05-15",
- "description": "Rotura de lunas por impacto de objetos",
- "status": "in_process"
}
]
}
], - "properties": [
- {
- "uuid": "string",
- "code": "string",
- "description": "string",
- "purpose": "string",
- "currency": "string",
- "trading_price": 0,
- "trading_year": 0,
- "historic_prices": [
- {
- "date": "2019-08-24",
- "price": 0
}
]
}
], - "files": [
- {
- "file_date": "2023-07-21",
- "retrieval_type": "repository",
- "file_type": "Norma 43",
- "description": "Monthly account statement",
- "content": "string"
}
], - "contracts": [
- {
- "signing_date": "2003-09-26",
- "type": "loan",
- "subtype": "mortgage",
- "description": "Variable rate mortgage",
- "pdf_file": "string"
}
], - "factoring": [
- {
- "uuid": "a62ae601a424403d0fbe968d335378421006c277",
- "contract_number": "000117001234567",
- "name": "FACTORING PPAL SIN RECURSO",
- "assignor_id": "B12345678",
- "assignor": "QUICKSILVER DISTRIBUCION Y LOGISTICA SL",
- "assignor_type": "non-recourse-factor",
- "assignee": "Banco Sabadell",
- "currency": "EUR",
- "balances": {
- "available": 11360.26,
- "disposed": 0,
- "limit": 11360.26
}, - "interest_rate": 5.25,
- "linked_account": "ES0700812345678987654321",
- "next_payment_date": "",
- "number_invoices": 8,
- "total_value": 14495.28,
- "total_advanced_value": 6919.29,
- "clients": [
- {
- "uuid": "2ea19f8f8bcda4fa5e54e139852e0a7459d16b49",
- "client_id": "A12345678",
- "client_name": "EMPRESA 1 SA",
- "limit": 50000,
- "disposed": 15000,
- "available": 35000,
- "payment_method": "transfer_payment",
- "payment_deadline": 30
}
], - "invoices": [
- {
- "uuid": "6b556584df0721e5f0b27448247c9682a6470d11",
- "invoice_id": "2023-53",
- "client_id": "A12345678",
- "operation_date": "2023-10-25",
- "due_date": "2024-01-24",
- "payment_date": "2024-01-20",
- "invoice_amount": 918.45,
- "received_amount": 873.53,
- "status": "funded",
- "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
], - "transactions": [
- {
- "uuid": "8a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b",
- "operation_date": "2023-10-25",
- "value_date": "2023-10-26",
- "amount": 1500,
- "currency": "EUR",
- "description": "ANTICIPO FACTURA 2023-53"
}
]
}
], - "confirming": [
- {
- "uuid": "a62ae601a424403d0fbe968d335378421006c277",
- "contract_number": "000117001234567",
- "name": "CONFIRMING PPAL SIN RECURSO",
- "currency": "EUR",
- "balances": {
- "available": 11360.26,
- "disposed": 0,
- "limit": 11360.26
}, - "interest_rate": 5.25,
- "linked_account": "ES0700812345678987654321",
- "next_payment_date": "",
- "number_invoices": 8,
- "total_value": 14495.28,
- "total_advanced_value": 6919.29,
- "deferrals": [
- {
- "status": "paid",
- "overdue": true,
- "start_date": "2019-08-24",
- "due_date": "2019-08-24",
- "total_value": 0,
- "deferred_value": 0,
- "interest_value": 0,
- "interest_rate": 0,
- "late_fees": 0
}
], - "deferrals_summary": {
- "count": 0,
- "total_value": 0,
- "deferred_value": 0,
- "interest_value": 0,
- "late_fees": 0
}, - "providers": [
- {
- "uuid": "2ea19f8f8bcda4fa5e54e139852e0a7459d16b49",
- "company_id": "A12345678",
- "company_name": "EMPRESA 1 SA"
}
], - "invoices": [
- {
- "uuid": "6b556584df0721e5f0b27448247c9682a6470d11",
- "invoice_id": "2023-53",
- "provider_id": "A12345678",
- "operation_date": "2023-10-25",
- "due_date": "2024-01-24",
- "amount": 918.45,
- "status": "advanced",
- "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
], - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
], - "employment": {
- "summary": {
- "totalDaysRegistered": 8912,
- "daysInMultipleActivity": 130,
- "daysContributedForBenefits": 8782,
- "totalTimeEquivalence": "24 años, 0 meses y 17 días."
}, - "periods": [
- {
- "employer": "TRABAJADOR AUTONOMO",
- "regime": "AUTONOMO",
- "contract": "INDEFINIDO.TIEMPO COMPLETO.ORDINARIO",
- "category": "INGENIEROS LICENCIADOS",
- "actualStartDate": "2022-11-10",
- "startDate": "2022-11-10",
- "endDate": "Actual",
- "contributedDays": 1062
}
], - "pdf_file": "string"
}, - "guarantees": [
- {
- "uuid": "90763109952d4f2ebece8dceca8254078c5384a0",
- "code": "f2eb8HsfBDSDseBw8HeSccOwJweJ2OfxH2xDw8Ss",
- "name": "Aval Financiero",
- "nickname": "Aval Técnico",
- "subtype": "financial",
- "currency": "EUR",
- "linked_account": "ES1001289462580857003432",
- "issuer": "Bankinter, S.A.",
- "beneficiary": "AYUNTAMIENTO DE MADRID",
- "purpose": "Licitación obra pública expediente 2025/00123",
- "issue_date": "2024-06-12",
- "expiration_date": "2026-06-11",
- "status": "active",
- "balances": {
- "guaranteed_amount": 50000,
- "exposure": 0,
- "available": 50000,
- "euro_equivalent": 50000
}, - "fees_commissions": {
- "periodicity": "quarterly",
- "last_charge_date": "2025-03-31",
- "last_charge_amount": 125
}, - "additional_info": [
- {
- "key": "euroEquivalent",
- "value": "0.00"
}
]
}
]
}, - "statistics": {
- "SESSION": "3463754e3540884",
- "execution_time": 0.958119869232178,
- "warnings": [
- {
- "code": 1000,
- "message": "No contracted funds",
- "product_type": "portfolios"
}
], - "operation_id": "1827C79229",
- "token": "FRJ0mHlaqZwLzu"
}
}
]Usa questo metodo per interrogare i token collegati a una specifica api_key. I risultati sono paginati: limit stabilisce il numero di token per pagina (massimo 500) e page indica la pagina da restituire. api_key, method e limit sono obbligatori; se uno di essi manca o non è valido, l'API risponde con HTTP 400 e il codice di errore 2.
| api_key required | string^[a-z0-9]{8}$ api_key per identificare il cliente nel servizio |
| method required | string Value: "get" Operazione da eseguire. L'unico valore supportato è Esempio: |
| limit required | integer [ 1 .. 500 ] Numero di token per pagina. Minimo Esempio: |
| page | integer >= 1 Default: 1 Specifica il numero di pagina che vuoi recuperare. Ogni pagina contiene fino a Esempio: |
| code | string Codice dell'entità usato per filtrare i token. Se omesso, vengono restituiti i token di tutte le entità. Esempio: |
| sort_by | string Default: "created_at" Enum: "created_at" "accesed_at" Campo usato per ordinare i risultati: Esempio: |
| sort_order | string Default: "DESC" Enum: "ASC" "DESC" Direzione dell'ordinamento: Esempio: |
api_key=a1b2c3d4&method=get&limit=100&page=1
{- "success": true,
- "payload": {
- "tokens": [
- {
- "created_at": "2026-09-18 10:26:00",
- "accessed_at": "2026-09-20 08:15:42",
- "times_accesed": 12,
- "token": "FRJ0mHlaqZwLzu",
- "code": "bbva",
- "contract_name": "",
- "latest_code": 0,
- "latest_session": "3463754E3540884"
}
]
}, - "pagination": {
- "total_results": 1,
- "total_pages": 1,
- "current_page": 1
}, - "statistics": {
- "SESSION": "3463754e3540884",
- "execution_time": 0.0215
}
}Questo metodo consente di revocare un token esistente per deautorizzare le future richieste di accesso all'API.
| api_key | string Identifica il cliente nel servizio |
| token | string Token da revocare. |
{- "success": true,
- "message": "Token successfully revoked."
}Questo metodo consente di riassegnare un token da un api_key a un altro.
| api_key_source | string api_key da cui riassegnare il token. |
| api_key_target | string api_key a cui riassegnare il token. |
| token | string Token da riassegnare. Esempio: |
api_key_source=a1b2c3d4e5f6g7h8i9j0&api_key_target=b2c3d4e5f6g7h8i9j0k1&token=FRJ0mHlaqZwLzu
{- "success": true,
- "message": "Token successfully reassigned."
}Aggiunge l'associazione tra il dominio che ospiterà il widget e il webhook di destinazione. Per modificare o testare i propri domini, usare https://www.wealthreader.com/clients/
| method required | string Method to execute. Esempio: |
| api_key required | string User's API key. |
| domain required | string Domain to add. Esempio: |
| url_callback required | string URL for callback. Esempio: |
| tokenize required | string Enum: "1" "0" Controlla se il widget avvia un flusso di tokenizzazione:
Esempio: |
method=add&api_key=a1b2c3d4e5f6g7h8i9j0&domain=https%3A%2F%2Fwww.cliente.com&url_callback=https%3A%2F%2Fwww.cliente.com%2Fwebhooks%2Fwealthreader&tokenize=1
{- "success": true,
- "message": "string"
}Elenco dei codici di errore. Presta particolare attenzione al fatto che non tutti i codici di errore devono ricevere lo stesso trattamento dalla tua applicazione. Per un errore di password errata, non dovresti ritentare la chiamata con gli stessi parametri, ma per un errore che indica che l'entità è in manutenzione, puoi riprovare. Richiedi una sessione tecnica con il nostro team per risolvere qualsiasi domanda sulla gestione degli errori.
| lang | string Default: "es" Enum: "es" "en" Response language |
[- [
- {
- "code": 2,
- "description": "Incorrect call",
- "possible_reasons": "Some of the required parameters have not been sent or have been sent in an incorrect format",
- "how_to_proceed": "The text received in \"message\" will detail the reason for the error. For example, \"The parameter \"api_key\" is mandatory\"."
}
]
]Elenco dei codici di avviso.
| lang | string Default: "es" Enum: "es" "en" Response language |
[- [
- {
- "code": 2,
- "description": "Incorrect call",
- "possible_reasons": "Some of the required parameters have not been sent or have been sent in an incorrect format",
- "how_to_proceed": "The text received in \"message\" will detail the reason for the error. For example, \"The parameter \"api_key\" is mandatory\"."
}
]
]Endpoint opzionali non richiesti per integrazioni standard. Utilizzare solo se esplicitamente indicato da Wealth Reader.
Recupera l'elenco delle entità supportate e le informazioni necessarie per disegnare il modulo di accesso dell'entità.
| show_only_tested | integer Default: 0 Enum: 0 1 Indicates whether to show only tested entities. Default value is 0. In production environments, always use 1. |
[- {
- "code": "bancamarch",
- "name": "Bancamarch",
- "color": "#e23e4d",
- "inputs": {
- "document_type": {
- "required": false,
- "name": "DNI;Pasaporte"
}, - "user": {
- "required": true,
- "name": "Username"
}, - "password": {
- "required": true,
- "name": "Access key"
}
}, - "statistics": {
- "SESSION": "3463754e3540884",
- "execution_time": 0.958119869232178,
- "warnings": [
- {
- "code": 1000,
- "message": "No contracted funds",
- "product_type": "portfolios"
}
], - "operation_id": "1827C79229",
- "token": "FRJ0mHlaqZwLzu"
}
}
]Questo endpoint è opzionale e non richiesto per le integrazioni standard. Utilizzare solo se esplicitamente indicato da Wealth Reader. Permette di verificare se una persona fisica o giuridica è titolare di uno specifico conto bancario utilizzando l'IBAN e i dati identificativi del presunto titolare. Richiede una api_key con il prodotto IBAN_OWNERSHIP autorizzato. La richiesta iniziale viene inviata con api_key, iban, document_type, document_number e holder_name. Se il risultato restituisce lo stato PENDING, è possibile consultare nuovamente la verifica inviando solo api_key e session. NO_RESPONSE è un risultato finale di errore: per riprovare occorre avviare una nuova verifica senza session.
| api_key required | string Identifies the client in the service. It must have the IBAN_OWNERSHIP product authorized. |
| iban required | string IBAN code of the bank account to verify (without spaces) Esempio: |
| document_type required | string Enum: "NIF" "NIE" "Pasaporte" "CIF" Type of identification document Esempio: |
| document_number required | string Identification document number Esempio: |
| holder_name required | string Full name of the natural person or company name Esempio: |
api_key=a1b2c3d4e5f6g7h8i9j0&iban=ES4914651234561234567890&document_type=NIF&document_number=12345678Z&holder_name=LUIS%20GARCIA%20BAQUERO
{- "success": true,
- "payload": {
- "iban_ownership": {
- "ownership": true,
- "status": "CONFIRMED",
- "result": "La titularidad del IBAN ha sido confirmada."
}
}, - "statistics": {
- "SESSION": "0123456789abcdef",
- "execution_time": 0.123,
- "warnings": [ ]
}
}Questo endpoint è opzionale e non richiesto per le integrazioni standard. Utilizzare solo se esplicitamente indicato da Wealth Reader. Questo endpoint consente di registrare un utente sulla piattaforma di trasferimento portafoglio Easytransfer o sullo strumento di reporting Acumulas, basato su un identificatore unico.
| api_key required | string Authentication key (8 alphanumeric characters) |
| user_id required | string User identification document. Esempio: |
| service required | string Enum: "integra" "easy-transfer" Service associated with the user. Determines the data flow. Esempio: |
| email required | string <email> User email, used according to service type. Esempio: |
{- "success": true,
- "message": "User registered successfully"
}Questo endpoint è opzionale e non richiesto per le integrazioni standard. Utilizzare solo se esplicitamente indicato da Wealth Reader. Verifica se un utente è registrato nel sistema Easytransfer o Acumulas e restituisce il link di accesso unico per l'utente.
| api_key required | string Authentication key |
| user_id required | string User identification document. Esempio: |
{- "success": true,
- "registered": true,
- "user_id": "12345",
- "links": {
}
}Questo endpoint è opzionale e non richiesto per le integrazioni standard. Utilizzare solo se esplicitamente indicato da Wealth Reader. Questo endpoint consente di annullare la registrazione di un utente dal servizio della piattaforma Easytransfer o Acumulas.
| api_key required | string Authentication key (8 alphanumeric characters) |
| user_id required | string User identification document. Esempio: |
| service required | string Enum: "integra" "easy-transfer" "all" Service from which to unregister the user. 'all' for all services. Esempio: |
{- "success": true,
- "message": "User unregistered successfully"
}Questo endpoint è opzionale e non richiesto per le integrazioni standard. Utilizzare solo se esplicitamente indicato da Wealth Reader.
Importante: Per utilizzare la gestione dei processi batch dal lato di Wealthreader, è necessario disporre di un ambiente dedicato. Questo endpoint non è disponibile su api.wealthreader.com.
Gli endpoint raggruppati sotto il tag "batch" consentono di elaborare più connessioni bancarie in modo asincrono, a differenza del metodo /entities/ che è sincrono. Ideale per elaborare grandi volumi di connessioni ed evitare timeout.
| api_key required | string Identifies the client in the service |
| notification_url required | string <uri> Webhook URL. A notification is sent to this URL for each individual credential as soon as it completes processing, not only once all connections in the batch are done. Esempio: |
required | Array of objects (batch-connection) non-empty List of connections to process |
{- "api_key": "a1b2c3d4e5f6g7h8i9j0",
- "connections": [
- {
- "credential_id": "cred_demo_001",
- "code": "caixabank",
- "token": "token123",
- "product_types": "accounts,portfolios"
}, - {
- "credential_id": "cred_demo_002",
- "code": "BBVA",
- "token": "token456",
- "product_types": "accounts",
- "date_from": "2024-01-01"
}
]
}{- "success": true,
- "batch_id": "batch_20250120_a1b2c3d4",
- "total_connections": 5,
- "estimated_completion_time": "2025-01-20T10:45:00Z"
}{- "batch_id": 10863151,
- "credential_id": "cred_demo_002",
- "status": "completed",
- "timestamp": "2026-05-13T08:02:47+00:00"
}Questo endpoint è opzionale. Recupera statistiche generali sul risultato dell'elaborazione di tutte le connessioni in un batch.
| api_key required | string Identifies the client in the service |
| batch_id required | string Batch ID |
{- "api_key": "string",
- "batch_id": "string"
}{- "success": true,
- "batch_id": "batch_20250120_a1b2c3d4",
- "status": "completed",
- "statistics": {
- "start_time": "2019-08-24T14:15:22Z",
- "end_time": "2019-08-24T14:15:22Z",
- "total_execution_time": 125.5,
- "total_connections": 8,
- "successful_connections": 7,
- "failed_connections": 1
}
}Questo endpoint è opzionale. Recupera il risultato di una connessione specifica dal batch.
| api_key required | string Identifies the client in the service |
| batch_id required | string Batch ID |
| credential_id required | string Filter by specific credential_id |
{- "api_key": "string",
- "batch_id": "string",
- "credential_id": "string"
}{- "success": true,
- "payload": {
- "user_information": {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "gender": "male",
- "birth_date": "1980-09-26",
- "birth_place": "Ibiza",
- "email": "lgarcia@gmail.com",
- "cell_phone": "+34666123456",
- "address": "CALLE BAILEN 41 1A",
- "city": "MADRID",
- "country": "SPAIN",
- "postal_code": "28005",
- "marital_status": "married",
- "job": "CUENTA PROPIA"
}, - "portfolios": [
- {
- "subtype": "funds",
- "uuid": "05e4563f5bbf2d06efd0a29ebe7edbbb4e1bff63",
- "code": "1465010091400123456789",
- "name": "Fondo Dinámico",
- "currency": "EUR",
- "total_value": 3275.6,
- "weighted_return": 8.49,
- "annualized_volatility": 0,
- "yield": 256.27,
- "contributions": 3019.33,
- "withholdings": 0,
- "contracting_date": "2016-04-27",
- "linked_account": "ES4021005321592566566159",
- "portfolio_statement": "JVBERi0xLjQKJ...",
- "owners": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "composition": [
- {
- "ISIN": "LU1234567890",
- "ISIN_description": "My Fund Class A",
- "currency": "EUR",
- "weighting": 100,
- "shares": 225.0077,
- "price": 14.5577,
- "total_amount": 3275.6,
- "reference_currency": "EUR",
- "exchange_rate": 1
}
], - "transactions": [
- {
- "uuid": "05e4563f5bbf2d06efd0a29ebe7edbbb4e1bff63",
- "operation_pending": false,
- "operation_date": "2020-01-30",
- "value_date": "2020-01-30",
- "operation_type": "purchase",
- "shares": 1076.8273,
- "price": 11.1438,
- "total_amount": 12000,
- "currency": "EUR",
- "reference_currency": "USD",
- "exchange_rate": 1
}
]
}
], - "accounts": [
- {
- "uuid": "8076932f04f73e27fe608fee4d12fca8708dec8c",
- "subtype": "checking",
- "interest_rate": 0.5,
- "line_of_credit_details": {
- "credit_limit": 50000,
- "interest_rate": 4.5,
- "credit_used": 15000,
- "credit_available": 35000,
- "constitution_date": "2021-05-20",
- "expiration_date": "2031-05-20"
}, - "code": "ES4914651234561234567890",
- "name": "Cuenta NÓMINA",
- "currency": "EUR",
- "owners": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "balances": {
- "available": 14302.07,
- "current": 14302.07
}, - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
], - "transactions": [
- {
- "uuid": "d0c2ea4c072cf4d7b0fd494d7728260d736e6b25",
- "operation_date": "2022-12-30",
- "value_date": "2022-12-30",
- "amount": -1.1,
- "balance": 14302.07,
- "description": "Pago en TELPARK MADRID ES",
- "pdf_file": "string",
- "pdf_file_settled": true,
- "categorization": {
- "type": 1,
- "portfolio-uuid": "1465010091400123456789",
- "ISIN": "US88160R1014"
}, - "transfer_details": {
- "concept": "Pago de factura 12345",
- "sender_receiver": "Juan Pérez",
- "account_number": "ESXX12341234121234567890"
}, - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
]
}
], - "cards": [
- {
- "status": "active",
- "subtype": "credit",
- "uuid": "aefd89eade0a6a09d9b8eab4c22da6a6a37632e6",
- "code": "516097********1234",
- "name": "Credit Card",
- "currency": "EUR",
- "next_payment_date": "2023-01-05",
- "anual_interest": 17.48,
- "tae": 18.95,
- "balances": {
- "available": 3980,
- "limit": 4000,
- "disposed": 20
}, - "linked_account": "ES4021005321592566566159",
- "owner": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
], - "transactions": [
- {
- "uuid": "78ceedca9cd9d2f2bfbb2439795ab6a1fcefc12b",
- "settled": false,
- "operation_date": "2022-12-28",
- "value_date": "2022-12-28",
- "amount": -20,
- "currency": "EUR",
- "exchange_rate": 1,
- "description": "Pago en AMZN MKTP ES123CM0ZM4",
- "categorization": {
- "type": 0
}, - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
]
}
], - "receipts": [
- {
- "last_receipt_date": "2023-07-23",
- "issuer": "Canal de Isabel II",
- "description": "RECIBO CONTRATO 328774628 FACTURA DEL 18 07 23",
- "account": "ES0123456789012345678901",
- "status": "paid",
- "amount": 50.75,
- "pdf_file": "string",
- "pdf_file_settled": true
}
], - "loans": [
- {
- "uuid": "0ae4d722b1c82feeafb4b36b2893230444071335",
- "contract_number": "9620.321-205439-70",
- "loan_type": "Variable rate mortgage",
- "constitution_date": "2022-02-23",
- "currency": "EUR",
- "granted_capital": 207000,
- "pending_amount": 166639.77,
- "next_installment": 1040.3,
- "linked_account": "ES0123456789012345678901",
- "holders": [
- {
- "id": "32945945D",
- "name": "Diego Serrano"
}
], - "interest_rate": 3.768,
- "expiration_date": "2042-03-01",
- "pending_receipts": 223,
- "amortization_made": [
- {
- "uuid": "8772d6c978d37d7af83094abf380b8b703e94105",
- "date": "2022-12-01",
- "amortized": 515.43,
- "interest": 524.87,
- "total": 1040.3,
- "pending_capital": 166639.77,
- "operation_type": "receipt_paid"
}
], - "amortization_pending": [
- {
- "uuid": "e59296b79e7f80cec26679d2c65883025fd59295",
- "date": "2030-12-01",
- "amortized": 515.43,
- "interest": 524.87,
- "total": 1040.3,
- "pending_capital": 66639.77,
- "operation_type": "receipt_scheduled"
}
]
}
], - "deposits": [
- {
- "uuid": "0ae4d722b1c82feeafb4b36b2893230444071335",
- "code": "DPZ-1234567890",
- "name": "12-month deposit",
- "currency": "EUR",
- "principal": 10000,
- "pending_principal": 5000,
- "start_date": "2024-09-01",
- "maturity_date": "2025-09-01",
- "payment_frequency": "at_maturity",
- "capitalization": "none",
- "rate_type": "fixed",
- "nominal_interest_rate": 3,
- "apr_tae": 3.04,
- "day_count_convention": "ACT/365",
- "linked_account": "ES4021005321592566566159",
- "accrued_interest": 24.58,
- "expected_interest_total": 300,
- "withholding_tax_rate": 19,
- "status": "active",
- "auto_renewal": {
- "enabled": false,
- "renewed_times": 0,
- "next_renewal_date": "2019-08-24",
- "renewal_term_months": 0
}, - "early_withdrawal": {
- "allowed": true,
- "penalty_type": "interest_loss",
- "penalty_value": 100,
- "notes": "Loss of accrued interest for the current period"
}, - "owners": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "interest_movements": [
- {
- "uuid": "90763109952d4f2ebece8dceca8254078c5384a0",
- "scheduled": false,
- "date": "2025-09-01",
- "period_start": "2024-09-01",
- "period_end": "2025-09-01",
- "currency": "EUR",
- "gross_interest": 300,
- "withholding_tax": 57,
- "net_interest": 243,
- "payment_type": "maturity"
}
], - "principal_movements": [
- {
- "uuid": "90763109952d4f2ebece8dceca8254078c5384a0",
- "date": "2019-08-24",
- "type": "opening",
- "amount": 12000,
- "currency": "string",
- "target_account": "string"
}
]
}
], - "leases": [
- {
- "subtype": "leasing",
- "uuid": "1f0a0b1c2d3e4f5a6b7c8d9e0f1234567890abcd",
- "contract_number": "L-2024-000123",
- "name": "BMW 3 Series Leasing",
- "provider": {
- "name": "Banco XYZ Renting, S.A.",
- "tax_id": "A12345678"
}, - "currency": "EUR",
- "start_date": "2024-10-01",
- "end_date": "2028-09-30",
- "term_months": 48,
- "payment_frequency": "monthly",
- "status": "active",
- "linked_account": "ES4021005321592566566159",
- "holders": [
- {
- "ID": "12345678Z",
- "name": "LUIS GARCIA BAQUERO",
- "role": "owner"
}
], - "asset": {
- "category": "vehicle",
- "description": "BMW 320d Touring",
- "vin": "WBA8G51040K123456",
- "license_plate": "1234-ABC",
- "brand": "BMW",
- "model": "320d",
- "year": 2024,
- "serial_number": "string",
- "address": "string"
}, - "financials": {
- "capital_financed": 35000,
- "nominal_interest_rate": 4.25,
- "apr_tae": 4.38,
- "discount_rate": 0,
- "initial_fee": 3000,
- "security_deposit": 1000,
- "residual_value": 12000,
- "purchase_option": true,
- "services_included": {
- "maintenance": true,
- "insurance": true,
- "roadside_assistance": true,
- "tires": false
}, - "vat_included": true,
- "mileage_limit_year": 15000,
- "early_termination": {
- "allowed": true,
- "penalty_type": "percentage_of_remaining",
- "penalty_value": 40
}
}, - "totals": {
- "paid_installments": 10,
- "remaining_installments": 38,
- "total_paid": 0,
- "total_pending": 0,
- "principal_outstanding": 0,
- "accrued_interest": 0
}, - "installments": {
- "paid": [
- {
- "uuid": "b07a1a0d3e6f4c2a9e1d0f8b7c6a5e4d3c2b1a0f",
- "date": "2025-01-01",
- "status": "pending",
- "currency": "EUR",
- "total": 625.5,
- "breakdown": {
- "principal": 450,
- "interest": 80,
- "services": 70,
- "taxes": 25.5,
- "fees": 0
}, - "value_date": "2019-08-24",
- "receipt_uuid": "string",
- "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
], - "scheduled": [
- {
- "uuid": "b07a1a0d3e6f4c2a9e1d0f8b7c6a5e4d3c2b1a0f",
- "date": "2025-01-01",
- "status": "pending",
- "currency": "EUR",
- "total": 625.5,
- "breakdown": {
- "principal": 450,
- "interest": 80,
- "services": 70,
- "taxes": 25.5,
- "fees": 0
}, - "value_date": "2019-08-24",
- "receipt_uuid": "string",
- "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
]
}
}
], - "insurances": [
- {
- "uuid": "0ae4d722b1c82feeafb4b36b2893230444071335",
- "code": "969032717626333",
- "coverage_category": "property",
- "name": "MyBox Hogar",
- "currency": "EUR",
- "insured_value": {
- "name": "PISO / Residencia secundaria 46023 VALENCIA",
- "value": 250000
}, - "insured_concepts": [
- {
- "description": "Fire",
- "value": 25000
}
], - "constitution_date": "2020-01-01",
- "expiration_date": "2021-01-01",
- "next_payment_date": "2020-02-01",
- "next_installment": 800,
- "frequency": "monthly",
- "status": "active",
- "linked_account": "ES4914651234561234567890",
- "owner": {
- "ID": "07133834N",
- "name": "LUIS GARCIA BAQUERO"
}, - "claims": [
- {
- "uuid": "8772d6c978d37d7af83094abf380b8b703e94105",
- "claim_code": "0122074354T2",
- "incident_date": "2023-05-13",
- "claimed_date": "2023-05-15",
- "description": "Rotura de lunas por impacto de objetos",
- "status": "in_process"
}
]
}
], - "properties": [
- {
- "uuid": "string",
- "code": "string",
- "description": "string",
- "purpose": "string",
- "currency": "string",
- "trading_price": 0,
- "trading_year": 0,
- "historic_prices": [
- {
- "date": "2019-08-24",
- "price": 0
}
]
}
], - "files": [
- {
- "file_date": "2023-07-21",
- "retrieval_type": "repository",
- "file_type": "Norma 43",
- "description": "Monthly account statement",
- "content": "string"
}
], - "contracts": [
- {
- "signing_date": "2003-09-26",
- "type": "loan",
- "subtype": "mortgage",
- "description": "Variable rate mortgage",
- "pdf_file": "string"
}
], - "factoring": [
- {
- "uuid": "a62ae601a424403d0fbe968d335378421006c277",
- "contract_number": "000117001234567",
- "name": "FACTORING PPAL SIN RECURSO",
- "assignor_id": "B12345678",
- "assignor": "QUICKSILVER DISTRIBUCION Y LOGISTICA SL",
- "assignor_type": "non-recourse-factor",
- "assignee": "Banco Sabadell",
- "currency": "EUR",
- "balances": {
- "available": 11360.26,
- "disposed": 0,
- "limit": 11360.26
}, - "interest_rate": 5.25,
- "linked_account": "ES0700812345678987654321",
- "next_payment_date": "",
- "number_invoices": 8,
- "total_value": 14495.28,
- "total_advanced_value": 6919.29,
- "clients": [
- {
- "uuid": "2ea19f8f8bcda4fa5e54e139852e0a7459d16b49",
- "client_id": "A12345678",
- "client_name": "EMPRESA 1 SA",
- "limit": 50000,
- "disposed": 15000,
- "available": 35000,
- "payment_method": "transfer_payment",
- "payment_deadline": 30
}
], - "invoices": [
- {
- "uuid": "6b556584df0721e5f0b27448247c9682a6470d11",
- "invoice_id": "2023-53",
- "client_id": "A12345678",
- "operation_date": "2023-10-25",
- "due_date": "2024-01-24",
- "payment_date": "2024-01-20",
- "invoice_amount": 918.45,
- "received_amount": 873.53,
- "status": "funded",
- "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
], - "transactions": [
- {
- "uuid": "8a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b",
- "operation_date": "2023-10-25",
- "value_date": "2023-10-26",
- "amount": 1500,
- "currency": "EUR",
- "description": "ANTICIPO FACTURA 2023-53"
}
]
}
], - "confirming": [
- {
- "uuid": "a62ae601a424403d0fbe968d335378421006c277",
- "contract_number": "000117001234567",
- "name": "CONFIRMING PPAL SIN RECURSO",
- "currency": "EUR",
- "balances": {
- "available": 11360.26,
- "disposed": 0,
- "limit": 11360.26
}, - "interest_rate": 5.25,
- "linked_account": "ES0700812345678987654321",
- "next_payment_date": "",
- "number_invoices": 8,
- "total_value": 14495.28,
- "total_advanced_value": 6919.29,
- "deferrals": [
- {
- "status": "paid",
- "overdue": true,
- "start_date": "2019-08-24",
- "due_date": "2019-08-24",
- "total_value": 0,
- "deferred_value": 0,
- "interest_value": 0,
- "interest_rate": 0,
- "late_fees": 0
}
], - "deferrals_summary": {
- "count": 0,
- "total_value": 0,
- "deferred_value": 0,
- "interest_value": 0,
- "late_fees": 0
}, - "providers": [
- {
- "uuid": "2ea19f8f8bcda4fa5e54e139852e0a7459d16b49",
- "company_id": "A12345678",
- "company_name": "EMPRESA 1 SA"
}
], - "invoices": [
- {
- "uuid": "6b556584df0721e5f0b27448247c9682a6470d11",
- "invoice_id": "2023-53",
- "provider_id": "A12345678",
- "operation_date": "2023-10-25",
- "due_date": "2024-01-24",
- "amount": 918.45,
- "status": "advanced",
- "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
], - "additional_info": [
- {
- "key": "string",
- "value": "string"
}
]
}
], - "employment": {
- "summary": {
- "totalDaysRegistered": 8912,
- "daysInMultipleActivity": 130,
- "daysContributedForBenefits": 8782,
- "totalTimeEquivalence": "24 años, 0 meses y 17 días."
}, - "periods": [
- {
- "employer": "TRABAJADOR AUTONOMO",
- "regime": "AUTONOMO",
- "contract": "INDEFINIDO.TIEMPO COMPLETO.ORDINARIO",
- "category": "INGENIEROS LICENCIADOS",
- "actualStartDate": "2022-11-10",
- "startDate": "2022-11-10",
- "endDate": "Actual",
- "contributedDays": 1062
}
], - "pdf_file": "string"
}, - "guarantees": [
- {
- "uuid": "90763109952d4f2ebece8dceca8254078c5384a0",
- "code": "f2eb8HsfBDSDseBw8HeSccOwJweJ2OfxH2xDw8Ss",
- "name": "Aval Financiero",
- "nickname": "Aval Técnico",
- "subtype": "financial",
- "currency": "EUR",
- "linked_account": "ES1001289462580857003432",
- "issuer": "Bankinter, S.A.",
- "beneficiary": "AYUNTAMIENTO DE MADRID",
- "purpose": "Licitación obra pública expediente 2025/00123",
- "issue_date": "2024-06-12",
- "expiration_date": "2026-06-11",
- "status": "active",
- "balances": {
- "guaranteed_amount": 50000,
- "exposure": 0,
- "available": 50000,
- "euro_equivalent": 50000
}, - "fees_commissions": {
- "periodicity": "quarterly",
- "last_charge_date": "2025-03-31",
- "last_charge_amount": 125
}, - "additional_info": [
- {
- "key": "euroEquivalent",
- "value": "0.00"
}
]
}
]
}, - "statistics": {
- "SESSION": "3463754e3540884",
- "execution_time": 0.958119869232178,
- "warnings": [
- {
- "code": 1000,
- "message": "No contracted funds",
- "product_type": "portfolios"
}
], - "operation_id": "1827C79229",
- "token": "FRJ0mHlaqZwLzu"
}
}Real-time card expense synchronization from the Open Sync mobile app: per-customer employee pre-registration, signed webhooks (card_transaction.created / card_enrollment.confirmed), and REST query / backfill.
Creates or updates the webhook URL of the customer for the card_transaction.created and card_enrollment.confirmed events (see the cards-webhook-delivery schema for the delivery format and signature). On first setup, or when rotate_secret is true, a new webhook_secret (64 hex characters) is generated and returned once; in any other case webhook_secret comes back as null in the response and cannot be retrieved again. webhook_url must always be https:// and must resolve to a publicly routable host: localhost, private, loopback, link-local (including the cloud metadata address), CGNAT, multicast and reserved addresses are rejected, in any notation (hexadecimal, decimal, octal, short dotted or IPv4-mapped IPv6), and so is a hostname that does not resolve at all. The same check runs again right before every delivery, not only at registration: if the host is repointed at an internal address afterwards (DNS rebinding) the delivery is closed as failed with response_excerpt "blocked_host". Sending null in webhook_url disables webhooks for that customer; omitting the field leaves the stored URL untouched, which is how the secret is rotated without changing the URL.
| api_key required | string API key of the customer. |
| webhook_url | string or null https:// URL that will receive the events, on a publicly routable host that resolves in DNS. null disables webhooks; omitting the field leaves the stored URL unchanged. Esempio: |
| rotate_secret | boolean Default: false When true, generates and returns a new webhook_secret. |
{- "api_key": "a1b2c3d4",
- "rotate_secret": false
}{- "success": true,
- "payload": {
- "webhook_secret": "9f1c2b3a4d5e6f708192a3b4c5d6e7f8091a2b3c4d5e6f708192a3b4c5d6e7f8",
- "active": true
}
}Creates an enrollment request in pending status with a short expiry (ttl_minutes, 20 by default, between 1 and 60) for the employee to confirm by opening the mobile app and entering that email (POST /user-sync-validation/, no contract change for the app). It is idempotent: repeating the call for the same (api_key, email) while it is still pending and not expired returns the same request. If the email is already linked to the calling customer, it returns status "active" directly. If it is already linked to a different customer, it returns 409. Rate limit: at most 60 calls to this endpoint per api_key every 60 seconds, counting every attempt and not only the ones that create a row, checked before anything else so the answers that create nothing (200 already active, 409 linked to another customer, 400) cannot be walked as an enumeration oracle. Exceeding it returns 429 with code rate_limited.
| api_key required | string API key of the customer. |
| email required | string <email> Email of the employee to pre-register. Esempio: |
| ttl_minutes | integer [ 1 .. 60 ] Default: 20 Minutes the request stays valid before expiring. |
{- "api_key": "a1b2c3d4",
- "email": "empleado@cliente.com",
- "ttl_minutes": 20
}{- "success": true,
- "payload": {
- "enrollment_id": "0f3a9c7b1d2e4f5a6b7c8d9e0f1a2b3c",
- "status": "pending",
- "email": "empleado@cliente.com",
- "expires_at": "2026-07-11T14:22:11+02:00",
- "confirmed_at": null,
- "user_id": null
}
}Read-only status of an enrollment request. It has no side effects on card users, unlike POST /user-sync-validation/, which does confirm. The only write allowed is lazily marking a pending enrollment whose expiry date has already passed as expired.
| api_key required | string Example: api_key=a1b2c3d4 API key of the customer. Note it travels in the query string, so it ends up in access logs and intermediary proxies. Esempio: |
| enrollment_id required | string Example: enrollment_id=0f3a9c7b1d2e4f5a6b7c8d9e0f1a2b3c Identifier returned by POST /cards/enrollments/. Esempio: |
{- "success": true,
- "payload": {
- "enrollment_id": "0f3a9c7b1d2e4f5a6b7c8d9e0f1a2b3c",
- "status": "active",
- "email": "empleado@cliente.com",
- "expires_at": "2026-07-11T14:22:11+02:00",
- "confirmed_at": "2026-07-11T14:10:03+02:00",
- "user_id": "e9f4c2a1b3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7"
}
}Returns the real-time card transactions received for the employees linked to this api_key, ordered by ascending id. Meant both for periodic backfill (poll with date_from/date_to and paginate with since_id) and for one-off queries. This is the same transaction object carried by the card_transaction.created webhook.
| api_key required | string Example: api_key=a1b2c3d4 API key of the customer. Note it travels in the query string, so it ends up in access logs and intermediary proxies. Esempio: |
| date_from | string <date> Example: date_from=2026-07-01 YYYY-MM-DD, on the operation date. Default: today minus 3 days. Esempio: |
| date_to | string <date> Example: date_to=2026-07-11 YYYY-MM-DD, on the operation date. Default: today. Esempio: |
string <email> Example: email=empleado@cliente.com Filters by the email of the employee. Esempio: | |
| since_id | integer Example: since_id=216 Exclusive cursor on the transaction id, for pagination. Esempio: |
| limit | integer <= 1000 Default: 500 Example: limit=500 Maximum number of transactions to return (500 by default, 1000 max). Esempio: |
{- "success": true,
- "payload": {
- "transactions": [
- {
- "id": 217,
- "payment_id": "550e8400-e29b-41d4-a716-446655440000",
- "user_id": "e9f4c2a1b3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7",
- "email": "empleado@cliente.com",
- "card_last4": "1234",
- "entity_code": "bbva",
- "operation_date": "2026-07-11",
- "value_date": "2026-07-11",
- "amount": -57.6,
- "currency": null,
- "description": "SAKE RESTAURANTE",
- "merchant": "SAKE RESTAURANTE",
- "category": "Other",
- "gps": {
- "lat": 39.4661559,
- "lon": -0.3679207
}, - "received_at": "2026-07-11T14:02:11+02:00"
}
], - "next_since_id": null
}
}