Download OpenAPI specification:
As APIs regulatórias baseadas em PSD2 fornecem acesso a certas informações financeiras, como saldos de contas bancárias e transações. No entanto, existem outras fontes de informações patrimoniais que não são acessíveis através dessas APIs. A API Wealth Reader estende as informações oferecidas pelas APIs regulatórias, fornecendo acesso em tempo real a fontes patrimoniais adicionais em qualquer entidade mundial. Existem dois outros documentos relacionados que irão ajudá-lo a integrar a API Wealth Reader. Um é o guia de integração do widget Javascript: https://docs-en.wealthreader.com/ e o outro é uma coleção Postman baseada nesta documentação. Muito importante: Esta definição de API é adaptada para clientes que integram via Widget, portanto alguns parâmetros que não são necessários para este tipo de integração foram omitidos, como os parâmetros de autenticação bancária, pois um token será usado.
Obtém ativos financeiros e detalhes de sua composição incluindo carteiras de investimento compostas por ações ou fundos, cartões de crédito, seguros e empréstimos. Inclui informações de propriedade para cada ativo bem como identificadores únicos que facilitam o processamento de dados. É possível obter dados Mock. Verifique com a equipe técnica como fazer isso.
| api_key | string Identifica o cliente no serviço |
| code | string Nome da entidade. A lista completa está disponível com GET Exemplo: |
| token | string Identifica a credencial custodiada. O fluxo pelo qual o token foi obtido está descrito no documento 'Guia de integração do Widget'. Os seguintes usuários Mock estão disponíveis: MOCKDATA, resposta OK; MOCKOTP, resposta com desafio OTP; MOCKLOGINKO, resposta com erro de login Exemplo: |
| product_types | string Enum: "accounts" "portfolios" "cards" "receipts" "loans" "factoring" "confirming" "properties" "invoices" "files" "deposits" "leases" "insurances" Lista de tipos de produto dos quais as informações devem ser recuperadas. Aceita múltiplos valores separados por vírgulas. Exemplo: |
| only_balances | boolean Default: false Indica se deseja obter apenas os saldos dos produtos em vez de todas as informações disponíveis. Valor padrão: false. Exemplo: |
| fetch_transaction_details | boolean Default: false Indica se devem ser obtidos detalhes ampliados das transações quando o conector da entidade o suportar. IMPORTANTE: Ativá-lo implica realizar uma ou mais navegações adicionais por cada transação para enriquecer as informações retornadas. Isto aumentará inevitavelmente e de forma significativa o tempo de execução. O número de navegações adicionais cresce com o volume de transações. Recomenda-se ativá-lo apenas quando houver certeza de que é necessário um nível de detalhe adicional ao retornado por padrão. Os detalhes obtidos são inseridos na chave Exemplo: |
| date_from | string <date> Data a partir da qual as transações são solicitadas, no formato AAAA-MM-DD. Deve ser uma data anterior a hoje. Exemplo: |
| date_to | string <date> Isso só se aplica para restringir por datas futuras para produtos loan e confirming, no formato AAAA-MM-DD. A data deve ser posterior a hoje Exemplo: |
| required_products_schema | string Esquema de produtos necessários. Indica as contas ou cartões dos quais os dados são desejados, com configurações adicionais. Exemplo:
|
| add_pdf_from_uuids | string Aceita uuids de transações separados por vírgulas. Parâmetro considerado apenas se product_types for ALL ou incluir accounts. Adiciona o documento PDF associado a cada uma das transações bancárias solicitadas. Exemplo:
|
| otp_method | string Seleciona o canal de entrega do segundo fator quando a API retornou o código 2017 ou 20171 (vários métodos OTP). Chame novamente com o mesmo identificador de sessão dessa resposta e defina otp_method com a string exata do campo otp_method de um objeto em statistics.otpMethods — não o índice do array. Omita na primeira requisição com credenciais; envie após a escolha do utilizador. O exemplo abaixo é ilustrativo; copie sempre a string em statistics.otpMethods para a sua entidade. Exemplo: |
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"
}
}
]Use este método para consultar os tokens vinculados a uma api_key específica. Os resultados são paginados: limit define o número de tokens por página (máximo 500) e page indica a página a devolver. api_key, method e limit são obrigatórios; se algum deles faltar ou for inválido, a API responde com HTTP 400 e o código de erro 2.
| api_key required | string^[a-z0-9]{8}$ api_key para identificar o cliente no serviço |
| method required | string Value: "get" Operação a realizar. O único valor suportado é Exemplo: |
| limit required | integer [ 1 .. 500 ] Número de tokens por página. Mínimo Exemplo: |
| page | integer >= 1 Default: 1 Especifique o número da página que deseja recuperar. Cada página contém até Exemplo: |
| code | string Código da entidade usado para filtrar os tokens. Se omitido, são devolvidos os tokens de todas as entidades. Exemplo: |
| sort_by | string Default: "created_at" Enum: "created_at" "accesed_at" Campo usado para ordenar os resultados: Exemplo: |
| sort_order | string Default: "DESC" Enum: "ASC" "DESC" Direção da ordenação: Exemplo: |
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
}
}Este método permite revogar um token existente para desautorizar futuras solicitações de acesso à API.
| api_key | string Identifica o cliente no serviço |
| token | string Token a ser revogado. |
{- "success": true,
- "message": "Token successfully revoked."
}Este método permite reatribuir um token de uma api_key para outra.
| api_key_source | string api_key a partir da qual reatribuir o token. |
| api_key_target | string api_key para a qual reatribuir o token. |
| token | string Token a ser reatribuído. Exemplo: |
api_key_source=a1b2c3d4e5f6g7h8i9j0&api_key_target=b2c3d4e5f6g7h8i9j0k1&token=FRJ0mHlaqZwLzu
{- "success": true,
- "message": "Token successfully reassigned."
}Adiciona a associação entre o domínio que hospedará o widget e o webhook de destino. Para editar ou testar os seus domínios, use https://www.wealthreader.com/clients/
| method required | string Method to execute. Exemplo: |
| api_key required | string User's API key. |
| domain required | string Domain to add. Exemplo: |
| url_callback required | string URL for callback. Exemplo: |
| tokenize required | string Enum: "1" "0" Controla se o widget inicia um fluxo de tokenização:
Exemplo: |
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"
}Lista de códigos de erro. Preste atenção especial ao fato de que nem todos os códigos de erro devem receber o mesmo tratamento da sua aplicação. Para um erro de senha incorreta, você não deve tentar novamente a chamada com os mesmos parâmetros, mas para um erro indicando que a entidade está em manutenção, você pode tentar novamente. Solicite uma sessão técnica com nossa equipe para resolver quaisquer questões sobre gerenciamento de erros.
| 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\"."
}
]
]Lista de códigos de aviso.
| 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\"."
}
]
]Endpoints opcionais não necessários para integrações padrão. Use apenas se explicitamente instruído pela Wealth Reader.
Obtém a lista de entidades suportadas e as informações necessárias para desenhar o formulário de login da entidade.
| 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"
}
}
]Este endpoint é opcional e não é necessário para integrações padrão. Use apenas se explicitamente instruído pela Wealth Reader. Permite verificar se uma pessoa física ou jurídica é titular de uma conta bancária específica usando o IBAN e os dados de identificação do suposto titular. Requer uma api_key com o produto IBAN_OWNERSHIP autorizado. A solicitação inicial é enviada com api_key, iban, document_type, document_number e holder_name. Se o resultado retornar o estado PENDING, é possível consultar novamente a verificação enviando apenas api_key e session. NO_RESPONSE é um resultado final de erro: para tentar novamente é necessário iniciar uma nova verificação sem 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) Exemplo: |
| document_type required | string Enum: "NIF" "NIE" "Pasaporte" "CIF" Type of identification document Exemplo: |
| document_number required | string Identification document number Exemplo: |
| holder_name required | string Full name of the natural person or company name Exemplo: |
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": [ ]
}
}Este endpoint é opcional e não é necessário para integrações padrão. Use apenas se explicitamente instruído pela Wealth Reader. Este endpoint permite registrar um usuário na plataforma de transferência de portfólio Easytransfer ou na ferramenta de relatórios Acumulas, com base em um identificador único.
| api_key required | string Authentication key (8 alphanumeric characters) |
| user_id required | string User identification document. Exemplo: |
| service required | string Enum: "integra" "easy-transfer" Service associated with the user. Determines the data flow. Exemplo: |
| email required | string <email> User email, used according to service type. Exemplo: |
{- "success": true,
- "message": "User registered successfully"
}Este endpoint é opcional e não é necessário para integrações padrão. Use apenas se explicitamente instruído pela Wealth Reader. Verifica se um usuário está registrado no sistema Easytransfer ou Acumulas e retorna o link de acesso único para o usuário.
| api_key required | string Authentication key |
| user_id required | string User identification document. Exemplo: |
{- "success": true,
- "registered": true,
- "user_id": "12345",
- "links": {
}
}Este endpoint é opcional e não é necessário para integrações padrão. Use apenas se explicitamente instruído pela Wealth Reader. Este endpoint permite cancelar o registro de um usuário do serviço da plataforma Easytransfer ou Acumulas.
| api_key required | string Authentication key (8 alphanumeric characters) |
| user_id required | string User identification document. Exemplo: |
| service required | string Enum: "integra" "easy-transfer" "all" Service from which to unregister the user. 'all' for all services. Exemplo: |
{- "success": true,
- "message": "User unregistered successfully"
}Este endpoint é opcional e não é necessário para integrações padrão. Use apenas se explicitamente instruído pela Wealth Reader.
Importante: Para utilizar a gestão de processos batch do lado do Wealthreader, é necessário contar com um ambiente dedicado. Este endpoint não está disponível em api.wealthreader.com.
Os endpoints agrupados sob a tag "batch" permitem processar múltiplas conexões bancárias de forma assíncrona, ao contrário do método /entities/ que é síncrono. Ideal para processar grandes volumes de conexões e evitar timeouts.
| 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. Exemplo: |
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"
}Este endpoint é opcional. Recupera estatísticas gerais sobre o resultado do processamento de todas as conexões em um lote.
| 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
}
}Este endpoint é opcional. Recupera o resultado de uma conexão específica do lote.
| 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. Exemplo: |
| 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. Exemplo: |
| 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. Exemplo: |
| enrollment_id required | string Example: enrollment_id=0f3a9c7b1d2e4f5a6b7c8d9e0f1a2b3c Identifier returned by POST /cards/enrollments/. Exemplo: |
{- "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. Exemplo: |
| date_from | string <date> Example: date_from=2026-07-01 YYYY-MM-DD, on the operation date. Default: today minus 3 days. Exemplo: |
| date_to | string <date> Example: date_to=2026-07-11 YYYY-MM-DD, on the operation date. Default: today. Exemplo: |
string <email> Example: email=empleado@cliente.com Filters by the email of the employee. Exemplo: | |
| since_id | integer Example: since_id=216 Exclusive cursor on the transaction id, for pagination. Exemplo: |
| limit | integer <= 1000 Default: 500 Example: limit=500 Maximum number of transactions to return (500 by default, 1000 max). Exemplo: |
{- "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
}
}