Saltar al contenido principal

Norma AEB-43 — Importacion de extractos bancarios

La Norma 43 (AEB-43) es el estandar espanol para el intercambio de extractos bancarios entre bancos y software de gestion. Cualquier banco espanol puede generar un fichero .43 o .txt con el movimiento de tu cuenta. Frihet lo importa directamente, categoriza las transacciones y las reconcilia con tus facturas.

Esta funcionalidad es util cuando no tienes conexion bancaria Open Banking activa o cuando necesitas importar movimientos historicos.

Obtener el fichero desde tu banco

La mayoria de bancos espanoles permiten descargar el extracto en Norma 43 desde la banca online:

BancoRuta habitual
CaixaBankCuentas → Movimientos → Exportar → Norma 43
BBVACuentas → Movimientos → Descargar → Fichero AEB43
SantanderCuentas → Extracto → Exportar → Formato AEB
SabadellCuentas → Extracto → Descargar → Norma 43
BankinterCuentas → Movimientos → Exportar → .Q43

El fichero tiene extension .43, .q43 o .txt dependiendo del banco. Frihet acepta todos.

Importar en Frihet

  1. Ve a FinanzasConciliacion bancariaImportar extracto.
  2. Selecciona la cuenta bancaria de destino.
  3. Arrastra el fichero AEB-43 o haz clic en Seleccionar fichero.
  4. Frihet analiza el fichero y muestra una previsualizacion de los movimientos.
  5. Confirma la importacion. Las transacciones aparecen inmediatamente en la cola de conciliacion.

Frihet detecta automaticamente movimientos duplicados (mismo importe, fecha y concepto) y los marca para revision antes de importar.

Especificacion del formato

El formato AEB-43 es de ancho fijo. Cada registro tiene 80 caracteres:

Posicion  Longitud  Campo
1-2 2 Codigo de registro (11=cabecera cuenta, 22=movimiento, 33=fin)
3-6 4 Codigo de banco
7-10 4 Codigo de oficina
11-12 2 Digito control
13-22 10 Numero de cuenta (BBAN)
23-24 2 Ano (YY)
25-26 2 Fecha valor (mes)
27-28 2 Fecha valor (dia)
29-30 2 Fecha operacion (mes)
31-32 2 Fecha operacion (dia)
33 1 Haber/Debe (1=haber, 2=debe)
34-47 14 Importe (12 enteros + 2 decimales, sin separador)
48-49 2 Clave concepto (01=transferencia, 02=cheque, 06=domiciliacion...)
50-61 12 Referencia 1
62-75 14 Referencia 2
76-80 5 Libre

Los registros de tipo 22 con clave 00-99 van seguidos de hasta tres registros de tipo 23 con el concepto textual (hasta 38 caracteres cada uno).

Parser @frihet/aeb43-parser

Para integraciones custom o scripts de migracion, puedes usar el parser oficial de Frihet:

npm install @frihet/aeb43-parser
import { parseAEB43, AEB43Statement } from '@frihet/aeb43-parser';
import { readFileSync } from 'fs';

const raw = readFileSync('extracto.43', 'latin1'); // AEB-43 usa ISO-8859-1
const statement: AEB43Statement = parseAEB43(raw);

console.log(statement.account); // { bank: '0049', office: '0075', ... }
console.log(statement.entries); // Array de movimientos
// [{ date: '2026-03-15', valueDate: '2026-03-15', amount: -245.50, description: 'RECIBO LUZ ENDESA' }, ...]
// Tipos exportados
interface AEB43Entry {
operationDate: Date;
valueDate: Date;
amount: number; // positivo = haber, negativo = debe
conceptCode: string; // '01' = transferencia, etc.
description: string; // concepto concatenado de registros tipo 23
ref1: string;
ref2: string;
}

interface AEB43Statement {
bank: string;
office: string;
account: string;
entries: AEB43Entry[];
openingBalance: number;
closingBalance: number;
currency: string; // siempre 'EUR' para cuentas espanolas
}

Encoding importante

Los ficheros AEB-43 usan codificacion ISO-8859-1 (Latin-1), no UTF-8. El parser lo maneja internamente, pero si lees el fichero manualmente especifica 'latin1' como encoding.

Reconciliacion automatica post-importacion

Tras la importacion, Frihet aplica las reglas bancarias activas para categorizar transacciones automaticamente. Las que no matcheen quedan en estado pendiente en la cola de conciliacion para revision manual.

Las transacciones importadas via AEB-43 se marcan con el icono de fichero (en lugar del icono de conexion bancaria) para distinguirlas de las obtenidas por Open Banking.

Gotchas

  • Encoding: algunos bancos exportan con codificacion mixta (cabecera Latin-1, movimientos UTF-8). Frihet normaliza automaticamente, pero si ves caracteres extranios en la previsualizacion, exporta de nuevo desde el banco seleccionando explicitamente Latin-1 o ASCII.
  • Saldo de apertura: el registro de cabecera (tipo 11) incluye el saldo de apertura del periodo. Si importas periodos solapados, Frihet usa la fecha de operacion para deduplicar, no el saldo.
  • Ficheros multi-cuenta: un fichero AEB-43 puede contener multiples cuentas (multiples bloques 11...33). Frihet los detecta y te pide asignar cada cuenta a una cuenta de Frihet.
  • Limite historico: Frihet acepta importaciones de hasta 5 anos de historia. Movimientos mas antiguos requieren contactar a soporte.

Relacionado