Tus albaranes de facturación emitidos en DeCA-AB llegan solos a tu programa de facturación (por ejemplo, FastInvoice), con su cliente, sus viajes y su importe. Sin teclearlos, sin duplicados y sin perder ninguno.
Tu clave la creas tú mismo en DeCA-AB, en un minuto. No hay que registrarse en ningún otro sitio ni esperar a que nadie la apruebe.
Ponle un nombre (el del programa que la va a usar) y confirma con tu contraseña. La clave empieza por dei_ y solo se muestra una vez: cópiala.
Junto con la dirección de la API que ves en esa misma pantalla. Desde ese momento, tu programa recoge los albaranes que emitas.
Todas las peticiones llevan la clave en la cabecera. La dirección base es https://aplicativo.deca-ab.es/api/integracion.
Cada clave es de una sola empresa y solo ve los albaranes de esa empresa. Es secreta: úsala solo desde un servidor o un programa de escritorio, nunca en una web pública. Si se filtra, revócala en Configuración → Integraciones (deja de funcionar al momento) y crea otra. Puedes tener una clave por programa, hasta 10.
Para comprobar la conexión: GET /prueba devuelve { "ok": true, "clave": "…", "empresa": { "nombre", "nif" } }. Límite: 120 peticiones por minuto.
A prueba de fallos: pides los pendientes, los guardas y los confirmas. Mientras no confirmes, un albarán seguirá saliendo, así que un corte de red nunca te hace perder ninguno. Solo salen albaranes emitidos (firmados y numerados), que siempre tienen importe.
GET /api/integracion/albaranes/pendientes?limite=100
Respuesta (los más antiguos primero; limite de 1 a 200; quedan es el total pendiente, no el tamaño de la página):
POST /api/integracion/albaranes/confirmar
Máximo 500 ids por llamada. Es idempotente: confirmar uno ya confirmado no pasa nada. Los ids que no son de tu empresa o no existen vuelven en ignorados. Cada clave lleva su propia cola: si tu empresa conecta dos programas, no se quitan los albaranes el uno al otro.
Si en DeCA-AB se anula un albarán que ya confirmaste, vuelve a salir una vez en /pendientes con "estado": "anulado" y su anulacion (motivo, anuladoEn). Si aún no lo has facturado, quítalo; si ya lo has facturado, toca una factura rectificativa. Confírmalo y no vuelve a salir. En DeCA-AB se ve como «Anulación sin recoger» hasta que lo hagas.
GET /api/integracion/albaranes/:id
GET /api/integracion/albaranes/:id/pdf
El primero devuelve el mismo objeto que en /pendientes (emitido o anulado), más exportado: null o { estado, en } para tu clave. No cambia nada. El segundo devuelve el PDF del albarán, el mismo que recibe el cliente, para adjuntarlo a la factura. Si no existe o no es de tu empresa: 404.
El espejo de confirmar: si los borras en tu programa y quieres que vuelvan a llegar, desmárcalos y saldrán de nuevo en /pendientes en la siguiente sincronización.
POST /api/integracion/albaranes/desmarcar
Lo recomendado es que cada albarán sea una línea de factura, con el detalle de los viajes en su descripción. Te lo damos ya preparado.
| En la línea de factura | Del albarán |
|---|---|
| Cantidad | 1 |
| Precio unitario | importe: sin impuestos, como lo guarda DeCA-AB. |
| Impuesto | El tuyo (IGIC 7 %, IVA 21 %…). impuesto dice cuál indica la empresa (iva, igic o vacío), sin porcentaje. |
| Descripción | detalle.texto: texto plano, una fila por línea y los viajes empezando por «- ». |
| Descripción con formato | detalle.delta: el mismo texto como Delta de Quill, con solo negrita, cursiva, tamaño pequeño y viñetas. Se guarda tal cual en editores enriquecidos. |
| Cliente | cliente: id (estable en DeCA-AB), nif, nombre, dirección y codigoCliente, el código que la empresa le da en su propio programa. |
Así queda detalle:
Si prefieres montar tu propio texto, tienes todos los datos de cada viaje en lineas.
| Campo | Tipo | Descripción |
|---|---|---|
id | string | Identificador estable del albarán. Úsalo para no duplicar. |
numero | número | Nº de albarán de la empresa, para mostrarlo. Puede repetirse con los años si la empresa reinicia su numeración. |
estado | string | emitido o anulado. |
fecha, periodicidad, periodo | AAAA-MM-DD | Día, semana o mes que cubre (diaria, semanal o mensual) y sus días desde y hasta. |
emitidoEn | ISO 8601 | Cuándo se firmó y emitió. |
anulacion | objeto / null | { motivo, anuladoEn } si está anulado. |
modoPrecio | string | Cómo se cobra a ese cliente: deca (precio por DeCA, en su primer viaje), viaje (cada viaje el suyo) o albaran (importe cerrado; los viajes no llevan precio). |
importe, moneda | número, string | Importe sin impuestos y EUR. |
impuesto | string | iva, igic o vacío. |
emisor | objeto | La empresa de transporte: nombre, nif, tipoEntidad, dirección, telefono, email. |
cliente | objeto | A quién se factura (ver la tabla de arriba). Sale aunque el cliente se haya dado de baja después. |
obra | objeto / null | { nombre, codigo } si el albarán es de una obra. |
totales | objeto | documentos, viajes, bultos, pesoKg, pesoAproximado y horas. |
detalle | objeto | { texto, delta }: la línea de factura ya preparada. |
lineas | array | Una por viaje: deca, viaje, fecha, hora, origen, destino (y sus direcciones), matriculas, mercancia, peso, referenciaCliente, horas y precio. |
id, no por su numero. Si te llega repetido, ignóralo.GET /pendientes → guardar → POST /confirmar con los ids guardados → repetir mientras quedan sea mayor que 0."estado": "anulado": no los ignores, porque son albaranes que ya tenías.401, la clave no es válida o se ha revocado: pausa la sincronización y avisa. Con 429, espera un minuto.POST /desmarcar con su id y volverá a llegar por /pendientes. También puedes traerlo con GET /albaranes/:id.Entra en DeCA-AB como administrador, crea tu clave en Configuración → Integraciones y pégala en tu programa de facturación.
Crear mi clave →