---
title: Gastos y facturas recibidas en Bizkaia
description: Prepara y envía al LROE de Bizkaia gastos del modelo 140 y facturas recibidas del modelo 240.
---

KubiBAI permite registrar en el Libro Registro de Operaciones Económicas
(LROE) de Bizkaia los gastos de profesionales y las facturas recibidas de
personas jurídicas.

:::note
Estos servicios están disponibles exclusivamente para contribuyentes de
**Bizkaia**.
:::

## Requisitos previos

Antes de utilizar estos endpoints:

1. El intermediario debe estar registrado y habilitado en KubiBAI como
   **Software Garante**. Ponte en contacto con KubiBAI para completar esta
   habilitación.
2. El intermediario debe tener configurado en KubiBAI su propio certificado
   digital válido. La petición incluye los datos del Software Garante y la
   clave de cifrado necesaria para acceder al certificado.
3. La aplicación cliente debe generar el XML del LROE conforme a los esquemas
   vigentes publicados por Batuz.

## Qué endpoint utilizar

| Registro | Modelo | Endpoint |
| --- | --- | --- |
| Gasto con factura | 140 | [`POST /expenses`](/api#tag/gastos/POST/expenses) |
| Gasto sin factura | 140 | [`POST /expenses`](/api#tag/gastos/POST/expenses) |
| Factura recibida | 240 | [`POST /receivedinvoices`](/api#tag/gastos/POST/receivedinvoices) |

En el modelo 140, el campo `expense_type` distingue entre gastos con factura
(`with_invoice`) y sin factura (`without_invoice`). El modelo 240 no utiliza
este campo.

## Preparación y envío del XML

El procesamiento es síncrono y sigue este flujo:

1. La aplicación cliente construye el XML correspondiente al modelo y a la
   operación que quiere realizar.
2. Codifica el XML completo en Base64 e incluye el resultado en
   `xml_contents`.
3. Envía la petición JSON a KubiBAI con el ejercicio fiscal, los datos del
   contribuyente y los datos del Software Garante.
4. KubiBAI decodifica el contenido y valida el XML contra el XSD aplicable.
5. Si la validación es correcta, KubiBAI comprime y remite el XML al LROE de
   Bizkaia, y devuelve el resultado del envío en la respuesta de la petición.

:::warning
Base64 solo permite transportar el XML dentro del cuerpo JSON: no cifra ni
protege su contenido.
:::

## Altas, modificaciones y anulaciones

Los dos endpoints admiten las tres operaciones mediante
`lroe_operation_type`:

- `creation`: alta de un nuevo registro.
- `modification`: modificación de un registro existente.
- `cancellation`: anulación de un registro existente.

El XML debe ajustarse al XSD correspondiente tanto al modelo como al tipo de
operación seleccionado.

## Esquemas y estructuras vigentes

Consulta siempre la [documentación técnica de
Batuz](https://www.batuz.eus/es/documentacion-tecnica) para obtener las
versiones actuales de los esquemas XSD y de las estructuras del LROE. Los
enlaces directos a archivos de descarga pueden cambiar entre versiones.

Para conocer todos los campos, restricciones, ejemplos y respuestas, abre las
operaciones **Enviar un gasto del modelo 140** y **Enviar una factura recibida
del modelo 240** en la [Referencia API](/api#tag/gastos).
