# Ticketbai WS: documentación completa del API > API REST para emitir facturas TicketBAI (Araba, Bizkaia/Batuz y Gipuzkoa) y Verifactu (AEAT). Especificación OpenAPI: https://api.ticketbaiws.eus/openapi.json · Resumen: https://ticketbaiws.eus/llms.txt Guías para desarrolladores: https://ticketbaiws.eus/es/desarrolladores/guia-rapida.md y https://ticketbaiws.eus/es/desarrolladores/ejemplos.md # Documentación de la API REST de TicketBAI y Verifactu Con la API REST de Ticketbai WS conectas tu aplicación, tienda online, TPV o ERP con las haciendas vascas (TicketBAI en Araba, Bizkaia/Batuz y Gipuzkoa) y con la Agencia Tributaria AEAT (Verifactu), y generas facturas electrónicas FacturaE para las administraciones públicas. **¿Empiezas ahora?** - [Guía rápida](https://ticketbaiws.eus/es/desarrolladores/guia-rapida/): de cero a tu primera factura en producción. - [Ejemplos](https://ticketbaiws.eus/es/desarrolladores/ejemplos/): 22 casos listos para copiar (simplificadas, intracomunitarias, rectificativas…). - [Terminal de pruebas](https://ticketbaiws.eus/es/desarrolladores/terminal/): prueba la API sin crear cuenta. - [Estado del servicio](https://ticketbaiws.eus/es/desarrolladores/estado/): tiempos de respuesta de la API y de cada Hacienda. ## Entornos y URL base Todos los métodos siguen este patrón: https://{entorno}.ticketbaiws.eus/{recurso}/ - `POST` Crear (p. ej. una factura nueva) - `GET` Consultar - `PUT` Modificar - `DEL` Anular El entorno es **api-test** para pruebas (los envíos van al entorno de pruebas de Hacienda, sin validez fiscal) y **api** para producción. Algunos métodos de gestión (empresas, licencias, webhooks y validación de NIF) solo existen en producción. ## Autenticación Cada petición lleva dos cabeceras: **Token** , el token de la empresa para ese entorno (está en el área privada; hay uno para pruebas y otro para producción), y **Nif** , el NIF del emisor. Los parámetros se envían en un objeto `JSON` con `Content-Type: application/json`. En los métodos GET también puedes enviarlos en la query string. Excepción: los métodos de [empresas](https://ticketbaiws.eus/es/empresas-post/) y [licencias](https://ticketbaiws.eus/es/licencias-post/) gestionan tu cuenta y se autentican con el **token de desarrollador** de tu cuenta de cliente y el NIF de la cuenta, no con los de una empresa. ## Resultados y respuestas La API responde con HTTP 200 y un objeto con tres variables: **result** , **return** y **msg** . - **result** : `OK`, `PENDING` (aceptada y pendiente de envío a Hacienda) o `ERROR`. - **return** : los datos resultantes (huella, URL de verificación, código QR…). - **msg** : los mensajes de estado o de error. Comprueba siempre **result** , no solo el código HTTP. ## Envío a Hacienda La API responde al momento y el envío a Hacienda se hace en segundo plano. Para saber cómo ha terminado, consulta la factura con [GET /tbai/](https://ticketbaiws.eus/es/ticketbai-get/) o configura un [webhook](https://ticketbaiws.eus/es/webhooks-post/). Si necesitas la respuesta de Hacienda en la misma petición, envía `"sincrono": true` en [POST /tbai/](https://ticketbaiws.eus/es/ticketbai-post/). Los importes de las líneas van **sin IVA** . ## Límites de uso Si se supera el límite de peticiones, la API responde con HTTP 429. Reintenta con una espera creciente y no consultes el estado en bucle: para eso están los webhooks. ## Para agentes de IA y generadores de código - [Especificación OpenAPI 3.1](https://api.ticketbaiws.eus/openapi.json) de todos los métodos. - [llms.txt](https://ticketbaiws.eus/llms.txt) y [llms-full.txt](https://ticketbaiws.eus/llms-full.txt) (toda la documentación en un fichero). - Cada página de esta documentación tiene versión Markdown: añade `.md` a la URL, p. ej. [es/ticketbai-post.md](https://ticketbaiws.eus/es/ticketbai-post.md). **GET** `https://{entorno}.ticketbaiws.eus/status/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/status/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": [], "msg": "Ready" } ``` ## Métodos del API ### Métodos TicketBAI / Verifactu - [`POST` Nueva factura / subsanación (zuzendu) TicketBAI / Verifactu](https://ticketbaiws.eus/es/ticketbai-post/) - [`POST` Completar factura simplificada](https://ticketbaiws.eus/es/tbai-completar-post/) - [`GET` Consulta factura TicketBAI / Verifactu](https://ticketbaiws.eus/es/ticketbai-get/) - [`GET` Listado facturas TicketBAI / Verifactu](https://ticketbaiws.eus/es/ticketbai-list-get/) - [`GET` Descarga XML TicketBAI / Verifactu](https://ticketbaiws.eus/es/ticketbai-xml-get/) - [`GET` Descarga factura en formato FacturaE](https://ticketbaiws.eus/es/facturae-get/) - [`GET` Descarga factura en PDF](https://ticketbaiws.eus/es/tbai-pdf-get/) - [`GET` Estado sistema](https://ticketbaiws.eus/es/status-get/) - [`DEL` Anular factura TicketBAI / Verifactu](https://ticketbaiws.eus/es/ticketbai-del/) - [`PUT` Forzar reenvío TicketBAI / Verifactu](https://ticketbaiws.eus/es/reset-tbai-put/) - [`POST` Validar NIF en la AEAT](https://ticketbaiws.eus/es/validar-nif-post/) - [`POST` Validar NIF en el VIES](https://ticketbaiws.eus/es/validar-nif-vies-post/) ### Documento representación - [`GET` Documento Representación - Descargar modelo](https://ticketbaiws.eus/es/doc-representante-modelo-get/) - [`POST` Documento Representación - Enviar documento](https://ticketbaiws.eus/es/doc-representante-post/) - [`GET` Documento Representación - Descargar documento cargado](https://ticketbaiws.eus/es/doc-representante-get/) - [`DELETE` Documento Representación - Revocar documento cargado](https://ticketbaiws.eus/es/doc-representante-delete/) ### Métodos específicos para BATUZ BIZKAIA - [`GET` Listado de epígrafes](https://ticketbaiws.eus/es/epigrafes-get/) - [`POST` LROE - **Facturas recibidas** - Envío (BATUZ)](https://ticketbaiws.eus/es/lroe-recibidas-post/) - [`PUT` LROE - **Facturas recibidas** - Modificar (BATUZ)](https://ticketbaiws.eus/es/lroe-recibidas-put/) - [`GET` LROE - **Facturas recibidas** - Consulta (BATUZ)](https://ticketbaiws.eus/es/lroe-recibidas-get/) - [`DEL` LROE - **Facturas recibidas** - Anular (BATUZ)](https://ticketbaiws.eus/es/lroe-recibidas-del/) - [`POST` LROE - **Criterio Caja COBROS** - Envío (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-cobros-post/) - [`PUT` LROE - **Criterio Caja COBROS** - Modificar (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-cobros-put/) - [`GET` LROE - **Criterio Caja COBROS** - Consulta (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-cobros-get/) - [`DEL` LROE - **Criterio Caja COBROS** - Anular (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-cobros-del/) - [`POST` LROE - **Criterio Caja PAGOS** - Envío (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-pagos-post/) - [`PUT` LROE - **Criterio Caja PAGOS** - Modificar (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-pagos-put/) - [`GET` LROE - **Criterio Caja PAGOS** - Consulta (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-pagos-get/) - [`DEL` LROE - **Criterio Caja PAGOS** - Anular (BATUZ)](https://ticketbaiws.eus/es/lroe-critcaja-pagos-del/) ### Otros métodos - [`POST` Webhooks - Nuevo webhook](https://ticketbaiws.eus/es/webhooks-post/) - [`PUT` Webhooks - Modificar webhook](https://ticketbaiws.eus/es/webhooks-put/) - [`GET` Webhooks - Consultar webhooks](https://ticketbaiws.eus/es/webhooks-get/) - [`POST` Nueva empresa](https://ticketbaiws.eus/es/empresas-post/) - [`PUT` Editar datos empresa](https://ticketbaiws.eus/es/empresas-put/) - [`GET` Listado de empresas](https://ticketbaiws.eus/es/empresas-get/) - [`POST` Nueva licencia](https://ticketbaiws.eus/es/licencias-post/) - [`GET` Listado de licencias](https://ticketbaiws.eus/es/licencias-get/) Fuente: https://ticketbaiws.eus/es/documentacion-api/ --- ## Nueva factura TicketBAI / Verifactu `POST` https://{entorno}.ticketbaiws.eus/tbai/ Este método permite enviar una factura a la hacienda correspondiente y devolverá la huella, la imagen código QR en base64 y la URL de verificación de la factura que contiene el QR. El entorno de test hace los envíos al entorno de pruebas de la hacienda correspondiente. Funciona con las tres haciendas vascas y con la Agencia Tributaria AEAT (Verifactu) **Subsanación de facturas:** Para subsanar o modificar facturas notificadas con avisos o errores, se debe realizar un nuevo envío (con los datos corregidos) activando el parámetro **ZUZENDU o SUBSANAR a true** . **(*) La serie, el número y el importe total de la factura no pueden ser modificados, deben ser los mismos que contenía la factura original. (en Bizkaia, para las facturas rechazadas por Batuz, la corrección se envía por el subcapítulo 1.2 del LROE y conserva la huella y el QR de la factura original; para cambiar una factura ya aceptada, emite una rectificativa)** ### Parámetros - `fecha` (string, obligatorio): Fecha de emisión de la factura en formato dd/mm/yyyy. Ejemplo: `13/11/2021` - `hora` (string, obligatorio): Hora de emisión de la factura en formato HH:MM:SS. Ejemplo: `12:14:00` - `fecha_operacion` (string, opcional): Fecha de la operación en formato dd/mm/yyyy. Ejemplo: `12/11/2021` - `nif` (string, obligatorio): NIF del cliente al que se le emite la factura. Ejemplo: `B01000012` - `tipo_documento` (string, opcional): Tipo de documento identificativo para clientes extranjeros. Por defecto 02 para intracomunitarias ó 06 para el resto. Posibles valores: **02** => NIF-IVA **03** => Pasaporte **04** => Documento oficial de identificación expedido por el país o territorio de residencia, **05** => Certificado de residencia **06** => Otro documento probatorio. Ejemplo: `02` - `simplificada` (boolean, obligatorio): Es factura simplificada. Si se define como simplificada, los datos del cliente no se requerirán. Ejemplo: `true` - `pais_cliente` (string, opcional): Código 2 letras del país del cliente si el NIF del cliente es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `nombre` (string, obligatorio): Nombre social del cliente al que se le emite la factura. Ejemplo: `Empresa de ejemplo S.L.` - `direccion` (string, obligatorio *): Dirección de facturación del cliente al que se le emite la factura (*) Solo obligatorio en Álava y Gipuzkoa. Ejemplo: `Calle de ejemplo 123` - `cp` (string, obligatorio *): Código postal del cliente al que se le emite la factura (*) Solo obligatorio en Álava y Gipuzkoa. Ejemplo: `01013` - `serie` (string, obligatorio): Serie de la factura. Ejemplo: `A` - `numero` (string, obligatorio): Número de factura. Ejemplo: `2021000123` - `rectificativa` (boolean, obligatorio): Es factura rectificativa. Ejemplo: `false` - `clave_rectificativa` (string, opcional): Clave de la factura rectificativa (R1, R2, R3, R4, R5). Si no se define se cogerá la R1 ó la R5 si es simplificada. Ejemplo: `R1` - `tipo_rectificativa` (string, opcional): Tipo de factura rectificativa: (S)ustitutiva (I) por diferencias. Si no se define se interpretará como**I (por diferencias).** Se ha habilitado el valor "SN" para rectificativas por sustitución sin informar el bloque ImporteRectificacionSustitutiva. Ejemplo: `I` - `rectificadas` (object array, obligatorio si rectificativa) - `serie` (string, obligatorio): Serie de la factura que se está rectificando. Ejemplo: `A` - `numero` (string, obligatorio): Número de factura que se está rectificando. Ejemplo: `2021000100` - `fecha` (string, obligatorio): Fecha de la factura que se está rectificando en formato dd/mm/yyyy. Ejemplo: `13/11/2021` - `base` (float, opcional): Base de la factura que se está rectificando. Solo necesario si la factura no ha sido enviada previamente a través de Ticketbai WS. Ejemplo: `100.00` - `cuota` (float, opcional): Cuota de IVA de la factura que se está rectificando. Solo necesario si la factura no ha sido enviada previamente a través de Ticketbai WS. Ejemplo: `21.00` - `recargo` (float, opcional): Recargo de la factura que se está rectificando. Solo necesario si la factura no ha sido enviada previamente a través de Ticketbai WS. Ejemplo: `5.20` - `tipo_operacion` (string, opcional): El tipo de operación: servicios o bienes. En caso de no definirlo, se considerará la operación como servicios. Ejemplo: `servicios` - `intracomunitaria` (boolean, opcional): Es factura intracomunitaria. Ejemplo: `false` - `exportacion` (boolean, opcional): Es factura de exportación a fuera de la comunidad. Ejemplo: `false` - `retencion` (float, obligatorio): Importe de retención aplicado. Ejemplo: `0.00` - `lineas` (object array. MÁX 1000 líneas, obligatorio *): (*) Verifactu y Bizkaia no requiere el detalle de cada línea de la factura, pero sí las bases imponibles globales - `descripcion` (string, Descripción de la línea de la factura (opcional)) Ejemplo: `Producto normal` - `cantidad` (float, obligatorio): Número de unidades de la línea. Ejemplo: `1` - `importe_unitario` (float, obligatorio): Importe SIN IVA de la línea. Ejemplo: `100.00` - `tipo_iva` (float, obligatorio): Porcentaje de IVA aplicado para la línea. Ejemplo: `21.00` - `tipo_req` (float, obligatorio): Porcentaje de recargo de equivalencia aplicado a la línea. Ejemplo: `0.00` - `descuento` (float, opcional): Porcentaje de descuento aplicado para la línea. Ejemplo: `10.00` - `regimen_general` (boolean, opcional): Indica que el concepto va en régimen general cuando el resto de la factura va en régimen simplificado o de recargo de equivalencia. Sólo se tendrá en cuenta si el flag de modo_recargo_equivalencia ó modo_regimen_simplificado está a true. Ejemplo: `true` - `epigrafe` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Indica que el concepto va en un epígrafe específico diferente al epígrafe general definido en la ficha de empresa o diferente del definido en la factura. Ejemplo: `197210` - `total_factura` (float, obligatorio): Importe total de la factura. Ejemplo: `132.00` - `zuzendu` (boolean, opcional): Modificación o reenvío de una factura que ha dado error previamente. En Bizkaia se aplica a facturas rechazadas por Batuz: se envía por el subcapítulo 1.2 del LROE y conserva la huella y el QR originales. Para cambiar una factura ya aceptada, emite una rectificativa. Ejemplo: `false` ### Otros parámetros opcionales - `regimen_iva` (integer, opcional): Clave de régimen especial de IVA. Ejemplo: `17` - `causa_exencion` (string, opcional): Código de causa de exención de IVA. Si no se define, la aplicación determinará la más indicada Opciones: **E1** : Operaciones interiores (Artículo 20 de la ley de IVA) **E2** : Exportaciones de bienes (Artículo 21 de la ley de IVA) **E3** : Exportaciones (Buques, pesca...) (Artículo 22 de la ley de IVA) **E4** : Zonas francas, depósitos francos y regímenes aduaneros (Artículo 23 y 24 de la ley de IVA) **E5** : Operationes intracomunitarias (Artículo 25 de la ley de IVA) **E6** : Exenta por otra causa **RL:** No sujeta por reglas de localización **OT:** Otras causas de no-sujeción (Artículo 7 de la ley de IVA) **IE:** No sujeto por reglas de localización pero repercute impuesto extranjero, IPSI/IGIC o IVA **VT:** No sujeto, ventas realizadas por cuenta de terceros (importe no computable a efectos de IVA ni de IRPF) **(*) Causas de exención no disponibles para Verifactu**. Ejemplo: `E6` - `inversion_sujeto_pasivo` (boolean, opcional): Factura con inversión de sujeto pasivo. Ejemplo: `false` - `emitida_terceros` (string, opcional): Factura emitida por terceros o por destinatario. Valores posibles: **N** (no), **T** (tercero), **D** (destinatario) Ejemplo: `N` - `modo_recargo_equivalencia` (boolean, opcional): Operación en régimen de recargo de equivalencia. Ejemplo: `false` - `modo_regimen_simplificado` (boolean, opcional): Operación en régimen simplificado. Ejemplo: `false` - `epigrafe` (string, opcional): Epígrafe para la factura. Si no se informa, se enviará el epígrafe especificado en la ficha de la empresa. Este parámetro sólo es válido para personas físicas que tengan que enviar ticketbai a Bizkaia Batuz y trabajen en más de un epígrafe. Ejemplo: `165960` **POST** `https://{entorno}.ticketbaiws.eus/tbai/` ```bash $ curl --request POST \ --url https://api-test.ticketbaiws.eus/tbai/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "fecha": "13\/11\/2021", "hora": "12:14:00", "fecha_operacion": "12\/11\/2021", "pais_cliente": "ES", "nif": "B00000011", "nombre": "Empresa de ejemplo S.L.", "direccion": "Calle Falsa 123", "cp": "28080", "serie": "A", "numero": "2021000123", "simplificada": false, "rectificativa": false, "clave_rectificativa": "R1", "tipo_rectificativa": "I", "rectificadas" : [ { "serie": "A" "numero": "20210000075", "fecha": "10\/11\/2021" } ], "tipo_operacion": "servicios", "intracomunitaria": false, "exportacion": false, "retencion": 0, "lineas": [ { "descripcion": "Producto normal", "cantidad": 1, "importe_unitario": 100.00, "tipo_iva": 21.00, "tipo_req": 0 }, { "descripcion": "Producto alimentario", "cantidad": 1, "importe_unitario": 10, "tipo_iva": 10.00, "tipo_req": 0 } ], "total_factura": 132.00, "zuzendu" : false }' ``` Response for Ticketbai: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "huella_tbai" : "TBAI-B01000012-131121-zG3wtCW3WlOSN-108", "qr" : "iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAIAAABEtEjdAAAABmJ...", "url" : "https://batuz.eus/QRTBAI/?id=TBAI-..." }, "msg": null } ``` Response for Verifactu: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "huella" : "8FA696A615A750A9EC04A273013F05EB1B092076FFD9A66EF6", "qr" : "iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAIAAABEtEjdAAAABmJ...", "url" : "https://prewww2.aeat.es/wlpl/TIKE-CONT/ValidarQR?..." }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/ticketbai-post/ --- ## TicketBAI - Completar factura simplificada `POST` https://{entorno}.ticketbaiws.eus/tbai-completar/ Este método permite convertir una o varias facturas simplificadas en una factura completa. La factura completa deberá llevar su propio número. No se trata de una factura rectificativa aunque se trate como si fuera una de sustitución ### Parámetros - `fecha` (string, obligatorio): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/11/2021` - `hora` (string, obligatorio): Hora de emisión de la factura completa en formato HH:MM:SS. Ejemplo: `12:14:00` - `nif` (string, obligatorio): NIF del cliente al que se le emite la factura. Ejemplo: `B01000012` - `pais_cliente` (string, opcional): Código 2 letras del país del cliente si el NIF del cliente es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `nombre` (string, obligatorio): Nombre social del cliente al que se le emite la factura. Ejemplo: `Empresa de ejemplo S.L.` - `direccion` (string, obligatorio): Dirección de facturación del cliente al que se le emite la factura. Ejemplo: `Calle de ejemplo 123` - `cp` (string, obligatorio): Código postal del cliente al que se le emite la factura. Ejemplo: `12:14:00` - `serie` (string, obligatorio): Serie de la factura completa. Ejemplo: `A` - `numero` (string, obligatorio): Número de la factura completa. Ejemplo: `2021000123` - `simplificadas` (object array, obligatorio (máx 100)) - `serie` (string, obligatorio): Serie de la factura simplificada. Ejemplo: `A` - `numero` (string, obligatorio): Número de factura simplificada. Ejemplo: `2021000100` - `fecha` (string, obligatorio): Fecha de la factura que se está rectificando en formato dd/mm/yyyy. Ejemplo: `13/11/2021` - `intracomunitaria` (boolean, opcional): Es factura intracomunitaria. Ejemplo: `false` - `exportacion` (boolean, opcional): Es factura de exportación a fuera de la comunidad. Ejemplo: `false` **POST** `https://{entorno}.ticketbaiws.eus/tbai-completar/` ```bash $ curl --request POST \ --url https://api-test.ticketbaiws.eus/tbai-completar/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "fecha": "13\/11\/2021", "hora": "12:14:00", "pais_cliente": "ES", "nif": "B00000011", "nombre": "Empresa de ejemplo S.L.", "direccion": "Calle Falsa 123", "cp": "28080", "serie": "A", "numero": "2021000123", "simplificadas" : [ { "serie": "A", "numero": "20210000075", "fecha": "10\/11\/2021" }, { "serie": "A", "numero": "20210000076", "fecha": "10\/11\/2021" } ], "intracomunitaria": false, "exportacion": false }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "huella_tbai" : "TBAI-B01000012-131121-zG3wtCW3WlOSN-108", "qr" : "iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAIAAABEtEjdAAAABmJ...", "url" : "https://batuz.eus/QRTBAI/?id=TBAI-..." }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/tbai-completar-post/ --- ## Consulta factura TicketBAI `GET` https://{entorno}.ticketbaiws.eus/tbai/ Este método permite consultar la huella TBAI, el código QR y la URL de validación de una factura TicketBAI previamente generada. Dentro del cuerpo del return se devuelve el status actual de la factura, los posibles valores son OK, PENDING ó ERROR. **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `serie` (string, obligatorio): Serie de la factura. Ejemplo: `A` - `numero` (string, obligatorio): Número de factura. Ejemplo: `2021000123` **GET** `https://{entorno}.ticketbaiws.eus/tbai/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/tbai/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data '{"serie":"A","numero":"2021000123"}' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "status" : "OK", "huella_tbai" : "TBAI-B01000012-131121-zG3wtCW3WlOSN-108", "qr" : "iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAIAAABEtEjdAAAABmJ...", "url" : "https://batuz.eus/QRTBAI/?id=TBAI-..." }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/ticketbai-get/ --- ## Listado facturas TicketBAI `GET` https://{entorno}.ticketbaiws.eus/tbai-list/ Este método devuelve el listado de facturas TicketBAI generadas entre dos fechas. **El número máximo de resultados es de 250** , en caso de que haya más se deberá usar el parámetro de paginado. **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `fecha_inicio` (string, obligatorio): Fecha inicio desde la cual realizar la consulta en formato DD/MM/YYYY. Ejemplo: `01/10/2021` - `fecha_fin` (string, obligatorio): Fecha fin hasta la cual realizar la consulta en formato DD/MM/YYYY. Ejemplo: `31/12/2021` - `serie` (string, opcional): Facturas de una serie concreta. Ejemplo: `A2023` - `pagina` (integer, opcional): Página para ir recorriendo los resultados paginados. Los resultados están limitados a 250 por página. En el parámetro count se obtiene siempre el número total de resultados obtenidos en la búsqueda y con el parámetro pagina se pueden ir recorriendo y consultando todos los resultados. Ejemplo: `1` - `json_orig` (boolean, opcional): Incluir en los resultados el JSON de la solicitud de la factura. Ejemplo: `false` - `xml_request` (boolean, opcional): Incluir en los resultados el XML generado en la solicitud a la hacienda foral. Ejemplo: `false` - `pedido` (boolean, opcional): Incluir en los resultados el XML el número de pedido (variable: pedido) realizada en el envío del JSON la factura. Ejemplo: `false` **GET** `https://{entorno}.ticketbaiws.eus/tbai-list/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/tbai-list/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data '{"fecha_inicio": "01\/10\/2021","fecha_fin": "31\/12\/2021","pagina":1}' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": [ { "status" : "OK", "serie" : "A", "numero" : "2021000123", "fecha" : "01\/10\/2021", "fecha_factura" : "01\/10\/2021", "nif" : "B01000012", "importe" : 132.10, "zuzendu" : false }, { "status" : "OK", "serie" : "A", "numero" : "2021000123", "fecha" : "01\/10\/2021", "fecha_factura" : "01\/10\/2021", "nif" : "B01000012", "importe" : 132.10, "zuzendu" : false }, { "status" : "OK", "serie" : "A", "numero" : "2021000123", "fecha" : "01\/10\/2021", "fecha_factura" : "01\/10\/2021", "nif" : "B01000012", "importe" : 132.10, "zuzendu" : false }, { "status" : "OK", "serie" : "A", "numero" : "2021000123", "fecha" : "01\/10\/2021", "fecha_factura" : "01\/10\/2021", "nif" : "B01000012", "importe" : 132.10, "zuzendu" : false } ], "msg": "Showing 1 to 250 of 292", "count": "292" } ``` Fuente: https://ticketbaiws.eus/es/ticketbai-list-get/ --- ## Descarga XML TicketBAI `GET` https://{entorno}.ticketbaiws.eus/tbai-xml/ Este método descargarse los ficheros XML generados en la solicitud y la respuesta a la diputación correspondiente **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `serie` (string, obligatorio): Serie de la factura. Ejemplo: `A` - `numero` (string, obligatorio): Número de factura. Ejemplo: `2021000123` **GET** `https://{entorno}.ticketbaiws.eus/tbai-xml/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/tbai-xml/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data '{"serie":"A","numero":"2021000123"}' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "xml_request" : "<?xml version='1.0' encoding='UTF-8'?> NIF-IVA **03** => Pasaporte **04** => Documento oficial de identificación expedido por el país o territorio de residencia, **05** => Certificado de residencia **06** => Otro documento probatorio. Ejemplo: `02` - `pais` (string, opcional): Código 2 letras del país del emisor de la factura si el NIF del proveedor es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `nombre_social` (string, obligatorio): Nombre social del proveedor que emite la factura. Ejemplo: `Empresa de ejemplo S.L.` - `serie` (string, opcional): Serie de factura. Ejemplo: `A` - `num_factura` (string, obligatorio): Número de factura. Ejemplo: `2023715273` - `descripcion` (string, obligatorio): Descripción de la operación (se envía a Batuz como DescripcionOperacion). Máximo 250 caracteres. Ejemplo: `Factura móviles` - `descripción` (string, obligatorio): Descripción del servicio/o producto de la factura. Ejemplo: `Factura móviles` - `importacion` (boolean, obligatorio): Es factura de importación. Ejemplo: `false` - `importe_total` (float, obligatorio): Importe total de la factura IVA incluído. Ejemplo: `121.00` - `bases` (object array., obligatorio): Bases imponibles de la factura - `base_imponible` (float, obligatorio): Importe SIN IVA de la base imponible. Ejemplo: `100.00` - `tipo_iva` (float, obligatorio): Porcentaje de IVA aplicado a la base imponible. Ejemplo: `21.00` - `tipo_req` (float, obligatorio): Porcentaje de recargo de equivalencia aplicado a la línea. Ejemplo: `0.00` - `tipo` (enum, opcional (para especificar un valor diferente al global de la factura)): Valores posibles: **compras** (Compra de bienes corrientes) **inversion** (Adquisición de bienes de inversión) **gasto** (Gastos) Ejemplo: `inversion` - `cuota_soportada` (float, opcional): Si no se define, el valor de la cuota soportada se calculará automáticamente. En caso de especificar el valor de la cuota soportada, es necesario especificar asimismo el valor de la cuota deducible. Ejemplo: `21.00` - `cuota_deducible` (float, opcional): Si se define, el parámetro de prorrata no tiene efecto. Parámetro obligatorio si se desea especificar el valor de la cuota soportada. Ejemplo: `10.50` - `epigrafe` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Indica que el concepto va en un epígrafe específico diferente al epígrafe general definido en la ficha de empresa o diferente del definido en la factura. Ejemplo: `197210` - `bien_afecto_irpf_iva` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Identificador que especifica si se trata de una adquisición de un bien afecto al IRPF o de un bien de inversión de IVA. Si no se informa este campo se entenderá que tiene valor «N». Valores posibles: I, R, ó N. Ejemplo: `N` - `importe_gasto_irpf` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Importe del gasto deducible en el IRPF. Ejemplo: `121.00` - `concepto_contable` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Clave que identifica el subgrupo o la cuenta contable. Ejemplo: `600` - `referencia_bien` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Referencia que le corresponde al bien afecto sobre el que puede recaer el gasto al que hace referencia la cuenta contable, debiendo coincidir con la referencia que aparece en el capítulo de bienes afectos o de inversión. Ejemplo: `ABC` - `modo_recargo_simplificado` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Identificador que especifica si se trata de una factura recibida por un o una contribuyente en régimen simplificado o en régimen de recargo de equivalencia. Si no se informa este campo se entenderá que tiene valor «N». Opciones posibles: E (Recargo equivalencia), N (Régimen general), S (Régimen simplificado) Ejemplo: `E` - `regimen_iva` (integer, opcional): Clave de régimen especial de IVA. Ejemplo: `17` - `regimen_iva_2` (integer, opcional): Clave de régimen especial de IVA 2. Ejemplo: `17` - `regimen_iva_3` (integer, opcional): Clave de régimen especial de IVA 3. Ejemplo: `17` - `inversion_sujeto_pasivo` (boolean, opcional): Factura con inversión de sujeto pasivo. Ejemplo: `false` - `rectificativa` (boolean, obligatorio): Es factura rectificativa. Ejemplo: `false` - `serie_factura_rectificada` (string, opcional): Serie de factura que se está rectificando. Ejemplo: `A` - `num_factura_rectificada` (string, obligatorio si rectificativa): Número de factura que se está rectificando. Ejemplo: `2023000100` - `fecha_rectificada` (string, obligatorio si rectificativa): Fecha de la factura que se está rectificando en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `clave_rectificativa` (string, opcional): Clave de la factura rectificativa (R1, R2, R3, R4, R5). Si no se define se cogerá la R1 ó la R5 si es simplificada. Ejemplo: `R1` - `tipo_rectificativa` (string, opcional): Tipo de factura rectificativa: (S)ustitutiva (I) por diferencias. Si no se define se interpretará como**I (por diferencias)**. Ejemplo: `I` - `base_rectificada` (float, obligatorio si rectificativa): Base de la factura que se está rectificando. Ejemplo: `100.00` - `cuota_rectificada` (float, obligatorio si rectificativa): Cuota de IVA de la factura que se está rectificando. Ejemplo: `21.00` - `prorrata` (integer, opcional): Porcentaje del importe deducible de la factura. Ejemplo: `92` - `clave_factura` (string, opcional): Clave de tipo de factura. Por defecto F1. Valores posibles: **F1** - Factura con identificación del destinatario o de la destinataria **F2** - Factura sin identificación del destinatario o de la destinataria **F3** - Factura emitida en sustitución de facturas simplificadas y declaradas con anterioridad **F4** - Asiento resumen de facturas **F5** - Importaciones con DUA **F6** - Otros justificantes **LC** - Aduanas - Liquidación complementaria. Ejemplo: `F1` **POST** `https://{entorno}.ticketbaiws.eus/lroe-recibidas/` ```bash $ curl --request POST \ --url https://api-test.ticketbaiws.eus/lroe-recibidas/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "facturas":[ { "fecha": "02/09/2023", "nombre_social": "Empresa de ejemplo S.L.", "nif": "B01000012", "num_factura": "2023715273", "descripcion": "Factura móviles", "importacion": false, "tipo_factura": "gasto", "importe_total":121.00, "bases": [ { "base_imponible": 100.00, "tipo_iva": 21.00, "tipo_req": 0, "epigrafe": "197210" } ], "regimen_iva": 1, "inversion_sujeto_pasivo": false, "rectificativa": true, "num_factura_rectificada": "2023015273", "fecha_rectificada": "13/11/2023", "clave_rectificativa": "R1", "tipo_rectificativa": "S", "base_rectificada": 80.00, "cuota_rectificada" : 16.80 } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha": "01-09-2023", "num_factura": "9092", "estado": "Incorrecto", "codigo_error": "B4_2000000", "descripcion_error": "El campo es obligatorio por lo que debe venir informado: [DescripcionOperacion].", "nif": "A88888888" }, { "fecha": "01-09-2023", "num_factura": "9091", "estado": "Correcto", "nif": "A88888888" } ], "status": "ERROR" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-recibidas-post/ --- ## LROE - Modificar facturas recibidas `PUT` https://{entorno}.ticketbaiws.eus/lroe-recibidas/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite modificar facturas recibidas(compras) previamente enviadas al LROE de Batuz ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de facturas recibicas en formato yyyy. Ejemplo: `2023` - `facturas` (object array, obligatorio (máx 1000) registros) - `fecha` (string, obligatorio): Fecha de expedición de la factura en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `fecha_operacion` (string, opcional): Fecha en la que se ha realizado la operación siempre que sea diferente a la fecha de expedición en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `fecha_recepcion` (string, opcional): Fecha de la recepción de la factura en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `nif` (string, obligatorio): NIF del emisor de la factura. Ejemplo: `B01000012` - `pais` (string, opcional): Código 2 letras del país del emisor de la factura si el NIF del proveedor es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `nombre_social` (string, obligatorio): Nombre social del cliente al que se le emite la factura. Ejemplo: `Empresa de ejemplo S.L.` - `num_factura` (string, obligatorio): Número de factura. Ejemplo: `2023715273` - `descripcion` (string, obligatorio): Descripción de la operación (se envía a Batuz como DescripcionOperacion). Máximo 250 caracteres. Ejemplo: `Factura móviles` - `descripción` (string, obligatorio): Descripción del servicio/o producto de la factura. Ejemplo: `Factura móviles` - `importacion` (boolean, obligatorio): Es factura de importación. Ejemplo: `false` - `tipo_factura` (enum, obligatorio): Tipo de factura: inversion ó gasto. Ejemplo: `gasto` - `importe_total` (float, obligatorio): Importe total de la factura IVA incluído. Ejemplo: `121.00` - `bases` (object array., obligatorio): Bases imponibles de la factura - `base_imponible` (float, obligatorio): Importe SIN IVA de la base imponible. Ejemplo: `100.00` - `tipo_iva` (float, obligatorio): Porcentaje de IVA aplicado a la base imponible. Ejemplo: `21.00` - `tipo_req` (float, obligatorio): Porcentaje de recargo de equivalencia aplicado a la línea. Ejemplo: `0.00` - `epigrafe` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Indica que el concepto va en un epígrafe específico diferente al epígrafe general definido en la ficha de empresa o diferente del definido en la factura. Ejemplo: `197210` - `regimen_iva` (integer, opcional): Clave de régimen especial de IVA. Ejemplo: `17` - `regimen_iva_2` (integer, opcional): Clave de régimen especial de IVA 2. Ejemplo: `17` - `regimen_iva_3` (integer, opcional): Clave de régimen especial de IVA 3. Ejemplo: `17` - `inversion_sujeto_pasivo` (boolean, opcional): Factura con inversión de sujeto pasivo. Ejemplo: `false` - `rectificativa` (boolean, obligatorio): Es factura rectificativa. Ejemplo: `false` - `num_factura_rectificada` (string, obligatorio si rectificativa): Número de factura que se está rectificando. Ejemplo: `2023000100` - `fecha_rectificada` (string, obligatorio): Fecha de la factura que se está rectificando en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `clave_rectificativa` (string, opcional): Clave de la factura rectificativa (R1, R2, R3, R4, R5). Si no se define se cogerá la R1 ó la R5 si es simplificada. Ejemplo: `R1` - `tipo_rectificativa` (string, opcional): Tipo de factura rectificativa: (S)ustitutiva (I) por diferencias. Si no se define se interpretará como**I (por diferencias)**. Ejemplo: `I` - `base_rectificada` (float, obligatorio si rectificativa): Base de la factura que se está rectificando. Ejemplo: `100.00` - `cuota_rectificada` (float, obligatorio si rectificativa): Cuota de IVA de la factura que se está rectificando. Ejemplo: `21.00` - `prorrata` (integer, opcional): Porcentaje del importe deducible de la factura. Ejemplo: `92` **PUT** `https://{entorno}.ticketbaiws.eus/lroe-recibidas/` ```bash $ curl --request PUT \ --url https://api-test.ticketbaiws.eus/lroe-recibidas/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "facturas":[ { "fecha": "02/09/2023", "nombre_social": "Empresa de ejemplo S.L.", "nif": "B01000012", "num_factura": "2023715273", "descripcion": "Factura móviles", "importacion": false, "tipo_factura": "gasto", "importe_total":121.00, "bases": [ { "base_imponible": 100.00, "tipo_iva": 21.00, "tipo_req": 0, "epigrafe": "197210" } ], "regimen_iva": 1, "inversion_sujeto_pasivo": false, "rectificativa": true, "num_factura_rectificada": "2023015273", "fecha_rectificada": "13/11/2023", "clave_rectificativa": "R1", "tipo_rectificativa": "S", "base_rectificada": 80.00, "cuota_rectificada" : 16.80 } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha": "01-09-2023", "num_factura": "9092", "estado": "Incorrecto", "codigo_error": "B4_2000000", "descripcion_error": "El campo es obligatorio por lo que debe venir informado: [DescripcionOperacion].", "nif": "A88888888" }, { "fecha": "01-09-2023", "num_factura": "9091", "estado": "Correcto", "nif": "A88888888" } ], "status": "ERROR" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-recibidas-put/ --- ## LROE - Consulta de facturas recibidas `GET` https://{entorno}.ticketbaiws.eus/lroe-recibidas/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite consultar las facturas enviadas al LROE de Batuz de facturas recibidas (compras). Todos los parámetros menos el del ejercicio son opcionales (aunque se debe especificar al menos uno) y se pueden combinar, por ejemplo para buscar entre dos fechas las facturas de un proveedor concreto. **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de facturas recibicas en formato yyyy. Ejemplo: `2023` - `fecha_factura_desde` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_factura_hasta` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `fecha_recepcion_desde` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_recepcion_hasta` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `pais_emisor` (string, opcional): Código 2 letras del país del emisor de la factura si el NIF del proveedor es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `tipo_documento` (string, opcional): Tipo de documento identificativo para clientes extranjeros. Por defecto 02 para intracomunitarias ó 06 para el resto. Posibles valores: **02** => NIF-IVA **03** => Pasaporte **04** => Documento oficial de identificación expedido por el país o territorio de residencia, **05** => Certificado de residencia **06** => Otro documento probatorio. Ejemplo: `02` - `nif` (string, opcional): NIF del emisor de la factura. Ejemplo: `B01000012` - `num_factura` (string, opcional): Número de la factura. Ejemplo: `2023715273` - `epigrafe` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Indica que el concepto va en un epígrafe específico diferente al epígrafe general definido en la ficha de empresa o diferente del definido en la factura. Ejemplo: `197210` - `estado` (string, opcional): Estado de las facturas: Correcto, AceptadoConErrores, Incorrecto. Ejemplo: `Correcto` - `pagina` (integer, opcional): Para especificar el número de página del resultado paginado. Ejemplo: `1` **GET** `https://{entorno}.ticketbaiws.eus/lroe-recibidas/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/lroe-recibidas/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "fecha_factura_desde": "01/06/2023", "fecha_factura_hasta": "01/10/2023", "fecha_recepcion_desde": "01/09/2023", "fecha_recepcion_hasta": "01/10/2023", "pais_emisor": "IT", "tipo_documento": "06", "nif": "IT123895890", "num_factura": "2023715273", "epigrafe": "197210", "estado": "Correcto", "pagina": 1 }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha": "31/08/2023", "fecha_operacion": "", "fecha_recepcion": "31/08/2023", "num_factura": "8064", "descripcion": "21312", "nif": "A88888888", "nombre_social": "EMPRESA EJEMPLO S.A.", "bases": [ { "base_imponible": "400.72", "tipo_iva": "21.00" } ], "importe_total": "484.87", "inversion_sujeto_pasivo": false, "regimen_iva": "01", "fecha_presentacion": "15/11/2023 11:16:56", "fecha_modificacion": "15/11/2023 11:16:56", "estado": "Correcto" } ] }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-recibidas-get/ --- ## LROE - Anular facturas recibidas `DEL` https://{entorno}.ticketbaiws.eus/lroe-recibidas/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite anular facturas recibidas (compras) que previamente hemos enviado al LROE de Batuz ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de facturas recibicas en formato yyyy. Ejemplo: `2023` - `facturas` (object array, obligatorio (máx 1000) registros) - `nif` (string, obligatorio): NIF del emisor de la factura. Ejemplo: `B01000012` - `pais` (string, opcional): Código 2 letras del país del emisor de la factura si el NIF del proveedor es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `num_factura` (string, obligatorio): Número de factura. Ejemplo: `2023715273` **DEL** `https://{entorno}.ticketbaiws.eus/lroe-recibidas/` ```bash $ curl --request DELETE \ --url https://api-test.ticketbaiws.eus/lroe-recibidas/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "facturas":[ { "nif": "B01000012", "num_factura": "2023715273", } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha": "02-09-2023", "num_factura": "2023/3/075", "estado": "Correcto", "nif": "B01489350" }, { "fecha": "02-09-2023", "num_factura": "2023/3/076", "estado": "Correcto", "nif": "B01489350" } ], "status": "OK" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-recibidas-del/ --- ## LROE - Criterio de caja - COBROS - Envío de cobros `POST` https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite enviar al LROE de Batuz los cobros realizados. **Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja** ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de cobros en formato yyyy. Ejemplo: `2023` - `cobros` (object array, obligatorio (máx 1000) registros) - `epigrafe` (string, opcional): Para el modelo 140 (autónomos o sociedades sin PJ) si el epígrafe es diferente del principal pre-definido en la ficha de empresa. Ejemplo: `197210` - `fecha_cobro` (string, obligatorio): Fecha en la que se ha realizado el cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_operacion` (string, obligatorio): Cobro de una operación con o sin factura. Valores posibles: **con_factura** , **sin_factura**. Ejemplo: `con_factura` - `serie` (string, opcional para operaciones CON factura): Serie del emisor de la factura. Ejemplo: `A` - `num_factura` (string, obligatorio para operaciones CON factura): Número de la factura a la que corresponde el cobro. Ejemplo: `2300017` - `fecha_factura` (string, obligatorio para operaciones CON factura): Fecha de la factura del cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_ingreso` (enum, obligatorio para operacion SIN factura y mod 140): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **1** - Percepciones incapacidad temporal **2** - Subvenciones (subgrupo 74) **3** - Ingresos financieros (subgrupo 76) **4** - Ingresos extraordinarios y otros (subgrupos 73, 77 y 79) Ejemplo: `2` - `linea` (integer, obligatorio para operacion SIN factura y mod 140): Secuencia identificativa del ingreso. Ejemplo: `1` - `importe_cobrado` (float, obligatorio): Importe cobrado. Ejemplo: `1210.00` - `iva_devengado` (float, opcional): Importe de la cuota de IVA cobrada. Ejemplo: `210.00` - `ingreso_irpf` (float, opcional para el mod 140): Ingreso a computar en el IRPF. Ejemplo: `1000.00` - `forma_pago` (enum, opcional): Forma de pago utilizada. Opciones: **01** - Transferencia **02** - Cheque **03** - No se cobra / paga (fecha límite de devengo / devengo forzoso en concurso de acreedores) **04** - Otros medios de cobro o de pago **05** - Domiciliación bancaria. Ejemplo: `04` - `descripcion_fpago` (string, opcional): Descripción de la forma de pago. Ejemplo: `Paypal` **POST** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/` ```bash $ curl --request POST \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-cobros/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "cobros":[ { "fecha_factura": "29/11/2023", "fecha_cobro": "30/12/2023", "serie":"A", "num_factura":"2023000699", "importe_cobrado": 100.00, "iva_devengado": 21.00, "forma_pago":"01", "descripcion_fpago":"Transferencia" }, { "fecha_factura": "29/11/2023", "fecha_cobro": "01/12/2023", "serie":"A", "num_factura":"2023000699", "importe_cobrado": 50, "iva_devengado": 10.50, "forma_pago":"04", "descripcion_fpago":"Otros medios de cobro o de pago" } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha_factura": "29-11-2023", "fecha_cobro": "04-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" }, { "fecha_factura": "29-11-2023", "fecha_cobro": "05-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" } ], "status": "OK" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-cobros-post/ --- ## LROE - Criterio de caja - COBROS - Modificar cobros `PUT` https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite enviar al LROE de Batuz los cobros realizados. Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de cobros en formato yyyy. Ejemplo: `2023` - `cobros` (object array, obligatorio (máx 1000) registros) - `epigrafe` (string, opcional): Para el modelo 140 (autónomos o sociedades sin PJ) si el epígrafe es diferente del principal pre-definido en la ficha de empresa. Ejemplo: `197210` - `fecha_cobro` (string, obligatorio): Fecha en la que se ha realizado el cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_operacion` (string, obligatorio): Cobro de una operación con o sin factura. Valores posibles: **con_factura** , **sin_factura**. Ejemplo: `con_factura` - `serie` (string, opcional para operaciones CON factura): Serie del emisor de la factura. Ejemplo: `A` - `num_factura` (string, obligatorio para operaciones CON factura): Número de la factura a la que corresponde el cobro. Ejemplo: `2300017` - `fecha_factura` (string, obligatorio para operaciones CON factura): Fecha de la factura del cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_ingreso` (enum, obligatorio para operacion SIN factura y mod 140): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **1** - Percepciones incapacidad temporal **2** - Subvenciones (subgrupo 74) **3** - Ingresos financieros (subgrupo 76) **4** - Ingresos extraordinarios y otros (subgrupos 73, 77 y 79) Ejemplo: `2` - `linea` (integer, obligatorio para operacion SIN factura y mod 140): Secuencia identificativa del ingreso. Ejemplo: `1` - `importe_cobrado` (float, obligatorio): Importe cobrado. Ejemplo: `1210.00` - `iva_devengado` (float, opcional): Importe de la cuota de IVA cobrada. Ejemplo: `210.00` - `ingreso_irpf` (float, opcional para el mod 140): Ingreso a computar en el IRPF. Ejemplo: `1000.00` - `forma_pago` (enum, opcional): Forma de pago utilizada. Opciones: **01** - Transferencia **02** - Cheque **03** - No se cobra / paga (fecha límite de devengo / devengo forzoso en concurso de acreedores) **04** - Otros medios de cobro o de pago **05** - Domiciliación bancaria. Ejemplo: `04` - `descripcion_fpago` (string, opcional): Descripción de la forma de pago. Ejemplo: `Paypal` **PUT** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/` ```bash $ curl --request PUT \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-cobros/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "cobros":[ { "fecha_factura": "29/11/2023", "fecha_cobro": "30/12/2023", "serie":"A", "num_factura":"2023000699", "importe_cobrado": 100.00, "iva_devengado": 21.00, "forma_pago":"01", "descripcion_fpago":"Transferencia" }, { "fecha_factura": "29/11/2023", "fecha_cobro": "01/12/2023", "serie":"A", "num_factura":"2023000699", "importe_cobrado": 50, "iva_devengado": 10.50, "forma_pago":"04", "descripcion_fpago":"Otros medios de cobro o de pago" } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha_factura": "29-11-2023", "fecha_cobro": "04-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" }, { "fecha_factura": "29-11-2023", "fecha_cobro": "05-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" } ], "status": "OK" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-cobros-put/ --- ## LROE - Criterio de caja - COBROS - Consulta de cobros `GET` https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite consultar las facturas enviadas al LROE de Batuz de facturas recibidas (compras). Todos los parámetros menos el del ejercicio son opcionales (aunque se debe especificar al menos uno) y se pueden combinar, por ejemplo para buscar entre dos fechas las facturas de un proveedor concreto. **Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja** **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de facturas recibicas en formato yyyy. Ejemplo: `2023` - `fecha_factura_desde` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_factura_hasta` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `fecha_operacion_desde` (string, opcional): Fecha de la operación en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_operacion_hasta` (string, opcional): Fecha de la operación en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `fecha_cobro_desde` (string, opcional): Fecha del cobro en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_cobro_hasta` (string, opcional): Fecha del cobro en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `tipo_ingreso` (string, opcional): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **1** - Percepciones incapacidad temporal **2** - Subvenciones (subgrupo 74) **3** - Ingresos financieros (subgrupo 76) **4** - Ingresos extraordinarios y otros (subgrupos 73, 77 y 79) Ejemplo: `02` - `num_factura` (string, opcional): Número de la factura. Ejemplo: `2023715273` - `epigrafe` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Indica que el concepto va en un epígrafe específico diferente al epígrafe general definido en la ficha de empresa o diferente del definido en la factura. Ejemplo: `197210` - `estado` (string, opcional): Estado de las facturas: Correcto, AceptadoConErrores, Incorrecto. Ejemplo: `Correcto` - `pagina` (integer, opcional): Para especificar el número de página del resultado paginado. Ejemplo: `1` **GET** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-cobros/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "fecha_factura_desde": "01/06/2023", "fecha_factura_hasta": "01/10/2023", "pagina": 1 }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha_factura": "29/11/2023", "fecha_cobro": "29/11/2023", "serie": "A", "num_factura": "2023000699", "importe_cobrado": "250.00", "iva_devengado": "52.50", "forma_pago": "01", "descripcion_fpago": "Transferencia", "estado": "Correcto" }, { "fecha_factura": "29/11/2023", "fecha_cobro": "05/12/2023", "serie": "A", "num_factura": "2023000699", "importe_cobrado": "50.00", "iva_devengado": "10.50", "forma_pago": "04", "descripcion_fpago": "Otros medios de cobro o de pago", "estado": "Correcto" } ] }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-cobros-get/ --- ## LROE - Criterio de caja - COBROS - Anulación de cobros `DEL` https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite anular facturas recibidas (compras) que previamente hemos enviado al LROE de Batuz. Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de cobros en formato yyyy. Ejemplo: `2023` - `cobros` (object array, obligatorio (máx 1000) registros) - `epigrafe` (string, opcional): Para el modelo 140 (autónomos o sociedades sin PJ) si el epígrafe es diferente del principal pre-definido en la ficha de empresa. Ejemplo: `197210` - `fecha_cobro` (string, obligatorio): Fecha en la que se ha realizado el cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_operacion` (string, obligatorio para mod 140): Cobro de una operación con o sin factura. Valores posibles: **con_factura** , **sin_factura**. Ejemplo: `con_factura` - `serie` (string, opcional para operaciones CON factura): Serie del emisor de la factura. Ejemplo: `A` - `num_factura` (string, obligatorio para operaciones CON factura o mod 240): Número de la factura a la que corresponde el cobro. Ejemplo: `2300017` - `fecha_factura` (string, obligatorio para operaciones CON factura o mod 240): Fecha de la factura del cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_ingreso` (enum, obligatorio para operacion SIN factura y mod 140): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **1** - Percepciones incapacidad temporal **2** - Subvenciones (subgrupo 74) **3** - Ingresos financieros (subgrupo 76) **4** - Ingresos extraordinarios y otros (subgrupos 73, 77 y 79) Ejemplo: `2` - `linea` (integer, obligatorio para operacion SIN factura y mod 140): Secuencia identificativa del ingreso. Ejemplo: `1` **DEL** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-cobros/` ```bash $ curl --request DELETE \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-cobros/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio":2023, "cobros":[ { "fecha_factura": "29/11/2023", "fecha_cobro": "04/12/2023", "serie":"A", "num_factura":"2023000699", "importe_cobrado": 100.00 } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha_factura": "29-11-2023", "fecha_cobro": "04-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" } ], "status": "OK" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-cobros-del/ --- ## LROE - Criterio de caja - PAGOS - Envío de pagos `POST` https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite enviar al LROE de Batuz los pagos realizados. **Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja** ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de cobros en formato yyyy. Ejemplo: `2023` - `pagos` (object array, obligatorio (máx 1000) registros) - `epigrafe` (string, opcional): Para el modelo 140 (autónomos o sociedades sin PJ) si el epígrafe es diferente del principal pre-definido en la ficha de empresa. Ejemplo: `197210` - `fecha_pago` (string, obligatorio): Fecha en la que se ha realizado el pago en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_operacion` (string, obligatorio para mod 140): Cobro de una operación con o sin factura. Valores posibles: **con_factura** , **sin_factura**. Ejemplo: `con_factura` - `nif` (string, obligatorio): NIF del emisor de la factura. Ejemplo: `B01000012` - `pais` (string, opcional): Código 2 letras del país del emisor de la factura si el NIF del proveedor es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `nombre_social` (string, obligatorio): Nombre social del cliente al que se le emite la factura. Ejemplo: `Empresa de ejemplo S.L.` - `serie` (string, opcional para operaciones CON factura): Serie del emisor de la factura. Ejemplo: `A` - `num_factura` (string, obligatorio para operaciones CON factura): Número de la factura a la que corresponde el cobro. Ejemplo: `2300017` - `fecha_factura` (string, obligatorio para operaciones CON factura): Fecha de la factura del cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `concepto` (enum, obligatorio para operacion SIN factura y mod 140): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **600** - Compras de mercaderías **601** - Compras de materias primas **602** - Compras de otros aprovisionamientos **606** - Descuentos sobre compras por pronto pago **607** - Trabajos realizados por otras empresas **608** - Devoluciones de compras y operaciones similares **609** - Rappels por compras **620** - Gastos en investigación y desarrollo del ejercicio **621** - Arrendamientos y cánones **622** - Reparaciones y conservación **623** - Servicios de profesionales independientes **624** - Transportes **625** - Primas de seguros **626** - Servicios bancarios y similares **627** - Publicidad, propaganda y relaciones públicas **628** - Suministros **629** - Otros servicios **631** - Otros tributos **634** - Ajustes negativos en la imposición indirecta **639** - Ajustes positivos en la imposición indirecta **640** - Sueldos y salarios **641** - Indemnizaciones **64201** - Seguridad social a cargo de la empresa: autónomos **64202** - Seguridad social a cargo de la empresa: empleados **643** - Retribuciones a largo plazo mediante sistemas de aportación definida **644** - Retribuciones a largo plazo mediante sistemas de prestación definida **649** - Otros gastos sociales **65** - Otros gastos de gestión **66** - Gastos financieros **67** - Gastos excepcionales **680** - Amortización del inmovilizado intangible **681** - Amortización del inmovilizado material **682** - Amortización de las inversiones inmobiliarias **69** - Pérdidas por deterioro y otras dotaciones. Ejemplo: `600` - `linea` (integer, obligatorio para operacion SIN factura y mod 140): Secuencia identificativa del ingreso. Ejemplo: `1` - `importe_pagado` (float, obligatorio): Importe cobrado. Ejemplo: `1210.00` - `iva_soportado` (float, opcional): Importe de la cuota de IVA soportada. Ejemplo: `210.00` - `iva_deducible` (float, opcional): Importe deducible de la cuota de IVA. Ejemplo: `210.00` - `gasto_irpf` (float, opcional para el mod 140): Gasto a imputar en el IRPF. Ejemplo: `1000.00` - `forma_pago` (enum, opcional): Forma de pago utilizada. Opciones: **01** - Transferencia **02** - Cheque **03** - No se cobra / paga (fecha límite de devengo / devengo forzoso en concurso de acreedores) **04** - Otros medios de cobro o de pago **05** - Domiciliación bancaria. Ejemplo: `04` - `descripcion_fpago` (string, opcional): Descripción de la forma de pago. Ejemplo: `Paypal` **POST** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/` ```bash $ curl --request POST \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-pagos/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "pagos": [ { "nombre_social": "Berein Internet S.L.", "nif": "B01489350", "fecha_factura": "29\/11\/2023", "fecha_pago": "30\/12\/2023", "serie": "A", "num_factura": "2023000699", "importe_pagado": 100, "iva_soportado": 21, "iva_deducible": 21, "forma_pago": "01", "descripcion_fpago": "Transferencia" }, { "nombre_social": "Berein Internet S.L.", "nif": "B01489350", "fecha_factura": "29\/11\/2023", "fecha_pago": "30\/12\/2023", "serie": "A", "num_factura": "2023000700", "importe_pagado": 100, "iva_soportado": 21, "iva_deducible": 21, "forma_pago": "01", "descripcion_fpago": "Transferencia" } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha_factura": "29-11-2023", "fecha_pago": "04-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" }, { "fecha_factura": "29-11-2023", "fecha_pago": "05-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" } ], "status": "OK" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-pagos-post/ --- ## LROE - Criterio de caja - PAGOS - Modificar pagos `PUT` https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite enviar al LROE de Batuz los pagos realizados. Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de cobros en formato yyyy. Ejemplo: `2023` - `pagos` (object array, obligatorio (máx 1000) registros) - `epigrafe` (string, opcional): Para el modelo 140 (autónomos o sociedades sin PJ) si el epígrafe es diferente del principal pre-definido en la ficha de empresa. Ejemplo: `197210` - `fecha_pago` (string, obligatorio): Fecha en la que se ha realizado el pago en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_operacion` (string, obligatorio para mod 140): Cobro de una operación con o sin factura. Valores posibles: **con_factura** , **sin_factura**. Ejemplo: `con_factura` - `nif` (string, obligatorio): NIF del emisor de la factura. Ejemplo: `B01000012` - `pais` (string, opcional): Código 2 letras del país del emisor de la factura si el NIF del proveedor es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `nombre_social` (string, obligatorio): Nombre social del cliente al que se le emite la factura. Ejemplo: `Empresa de ejemplo S.L.` - `serie` (string, opcional para operaciones CON factura): Serie del emisor de la factura. Ejemplo: `A` - `num_factura` (string, obligatorio para operaciones CON factura): Número de la factura a la que corresponde el cobro. Ejemplo: `2300017` - `fecha_factura` (string, obligatorio para operaciones CON factura): Fecha de la factura del cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `concepto` (enum, obligatorio para operacion SIN factura y mod 140): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **600** - Compras de mercaderías **601** - Compras de materias primas **602** - Compras de otros aprovisionamientos **606** - Descuentos sobre compras por pronto pago **607** - Trabajos realizados por otras empresas **608** - Devoluciones de compras y operaciones similares **609** - Rappels por compras **620** - Gastos en investigación y desarrollo del ejercicio **621** - Arrendamientos y cánones **622** - Reparaciones y conservación **623** - Servicios de profesionales independientes **624** - Transportes **625** - Primas de seguros **626** - Servicios bancarios y similares **627** - Publicidad, propaganda y relaciones públicas **628** - Suministros **629** - Otros servicios **631** - Otros tributos **634** - Ajustes negativos en la imposición indirecta **639** - Ajustes positivos en la imposición indirecta **640** - Sueldos y salarios **641** - Indemnizaciones **64201** - Seguridad social a cargo de la empresa: autónomos **64202** - Seguridad social a cargo de la empresa: empleados **643** - Retribuciones a largo plazo mediante sistemas de aportación definida **644** - Retribuciones a largo plazo mediante sistemas de prestación definida **649** - Otros gastos sociales **65** - Otros gastos de gestión **66** - Gastos financieros **67** - Gastos excepcionales **680** - Amortización del inmovilizado intangible **681** - Amortización del inmovilizado material **682** - Amortización de las inversiones inmobiliarias **69** - Pérdidas por deterioro y otras dotaciones. Ejemplo: `600` - `linea` (integer, obligatorio para operacion SIN factura y mod 140): Secuencia identificativa del ingreso. Ejemplo: `1` - `importe_pagado` (float, obligatorio): Importe cobrado. Ejemplo: `1210.00` - `iva_soportado` (float, opcional): Importe de la cuota de IVA soportada. Ejemplo: `210.00` - `iva_deducible` (float, opcional): Importe deducible de la cuota de IVA. Ejemplo: `210.00` - `gasto_irpf` (float, opcional para el mod 140): Gasto a imputar en el IRPF. Ejemplo: `1000.00` - `forma_pago` (enum, opcional): Forma de pago utilizada. Opciones: **01** - Transferencia **02** - Cheque **03** - No se cobra / paga (fecha límite de devengo / devengo forzoso en concurso de acreedores) **04** - Otros medios de cobro o de pago **05** - Domiciliación bancaria. Ejemplo: `04` - `descripcion_fpago` (string, opcional): Descripción de la forma de pago. Ejemplo: `Paypal` **PUT** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/` ```bash $ curl --request PUT \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-pagos/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "pagos": [ { "nombre_social": "Berein Internet S.L.", "nif": "B01489350", "fecha_factura": "29\/11\/2023", "fecha_pago": "30\/12\/2023", "serie": "A", "num_factura": "2023000699", "importe_pagado": 100, "iva_soportado": 21, "iva_deducible": 21, "forma_pago": "01", "descripcion_fpago": "Transferencia" }, { "nombre_social": "Berein Internet S.L.", "nif": "B01489350", "fecha_factura": "29\/11\/2023", "fecha_pago": "30\/12\/2023", "serie": "A", "num_factura": "2023000700", "importe_pagado": 100, "iva_soportado": 21, "iva_deducible": 21, "forma_pago": "01", "descripcion_fpago": "Transferencia" } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha_factura": "29-11-2023", "fecha_pago": "04-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" }, { "fecha_factura": "29-11-2023", "fecha_pago": "05-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" } ], "status": "OK" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-pagos-put/ --- ## LROE - Criterio de caja - PAGOS - Consulta de pagos `GET` https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite consultar los pagos de las facturas recibidas al LROE de Batuz. Todos los parámetros menos el del ejercicio son opcionales (aunque se debe especificar al menos uno) y se pueden combinar, por ejemplo para buscar entre dos fechas las facturas de un proveedor concreto. **Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja.** **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de facturas recibicas en formato yyyy. Ejemplo: `2023` - `fecha_factura_desde` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_factura_hasta` (string, opcional): Fecha de la factura completa en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `fecha_operacion_desde` (string, opcional): Fecha de la operación en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_operacion_hasta` (string, opcional): Fecha de la operación en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `fecha_pago_desde` (string, opcional): Fecha del pago en formato dd/mm/yyyy. Ejemplo: `13/09/2023` - `fecha_pago_hasta` (string, opcional): Fecha del pago en formato dd/mm/yyyy. Ejemplo: `13/10/2023` - `concepto` (enum, opcional): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **600** - Compras de mercaderías **601** - Compras de materias primas **602** - Compras de otros aprovisionamientos **606** - Descuentos sobre compras por pronto pago **607** - Trabajos realizados por otras empresas **608** - Devoluciones de compras y operaciones similares **609** - Rappels por compras **620** - Gastos en investigación y desarrollo del ejercicio **621** - Arrendamientos y cánones **622** - Reparaciones y conservación **623** - Servicios de profesionales independientes **624** - Transportes **625** - Primas de seguros **626** - Servicios bancarios y similares **627** - Publicidad, propaganda y relaciones públicas **628** - Suministros **629** - Otros servicios **631** - Otros tributos **634** - Ajustes negativos en la imposición indirecta **639** - Ajustes positivos en la imposición indirecta **640** - Sueldos y salarios **641** - Indemnizaciones **64201** - Seguridad social a cargo de la empresa: autónomos **64202** - Seguridad social a cargo de la empresa: empleados **643** - Retribuciones a largo plazo mediante sistemas de aportación definida **644** - Retribuciones a largo plazo mediante sistemas de prestación definida **649** - Otros gastos sociales **65** - Otros gastos de gestión **66** - Gastos financieros **67** - Gastos excepcionales **680** - Amortización del inmovilizado intangible **681** - Amortización del inmovilizado material **682** - Amortización de las inversiones inmobiliarias **69** - Pérdidas por deterioro y otras dotaciones. Ejemplo: `02` - `num_factura` (string, opcional): Número de la factura. Ejemplo: `2023715273` - `epigrafe` (integer, opcional únicamente para personas físicas en Bizkaia (LROE 140)): Indica que el concepto va en un epígrafe específico diferente al epígrafe general definido en la ficha de empresa o diferente del definido en la factura. Ejemplo: `197210` - `estado` (string, opcional): Estado de las facturas: Correcto, AceptadoConErrores, Incorrecto. Ejemplo: `Correcto` - `pagina` (integer, opcional): Para especificar el número de página del resultado paginado. Ejemplo: `1` **GET** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-pagos/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "fecha_factura_desde": "01/06/2023", "fecha_factura_hasta": "01/10/2023", "pagina": 1 }' ``` Respuesta: ```json HTTP/1.1 200 OK { "body": { "result": "OK", "return": { "response": [ { "fecha_factura": "29\/11\/2023", "fecha_pago": "30\/12\/2023", "serie": "A", "num_factura": "2023000699", "importe_pagado": "100.00", "iva_soportado": "21.00", "iva_deducible": "21.00", "forma_pago": "01", "descripcion_fpago": "Transferencia", "estado": "Correcto" }, { "fecha_factura": "29\/11\/2023", "fecha_pago": "30\/12\/2023", "serie": "A", "num_factura": "2023000700", "importe_pagado": "100.00", "iva_soportado": "21.00", "iva_deducible": "21.00", "forma_pago": "01", "descripcion_fpago": "Transferencia", "estado": "Correcto" } ] }, "msg": null }, "status_code_header": "HTTP\/1.1 200 OK" } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-pagos-get/ --- ## LROE - Criterio de caja - PAGOS - Anulación de pagos `DEL` https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/ **ATENCIÓN: Este método únicamente es válido para BATUZ Bizkaia.** Permite anular pagos que previamente hemos enviado al LROE de Batuz. Este método es para empresas o personas autónomas acogidas al régimen especial del criterio de caja ### Parámetros - `ejercicio` (integer, obligatorio): Año fiscal del ejercicio del bloque de cobros en formato yyyy. Ejemplo: `2023` - `pagos` (object array, obligatorio (máx 1000) registros) - `epigrafe` (string, opcional): Para el modelo 140 (autónomos o sociedades sin PJ) si el epígrafe es diferente del principal pre-definido en la ficha de empresa. Ejemplo: `197210` - `fecha_pago` (string, obligatorio): Fecha en la que se ha realizado el cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_operacion` (string, obligatorio para mod 140): Cobro de una operación con o sin factura. Valores posibles: **con_factura** , **sin_factura**. Ejemplo: `con_factura` - `nif` (string, obligatorio): NIF del emisor de la factura. Ejemplo: `B01000012` - `pais` (string, opcional): Código 2 letras del país del emisor de la factura si el NIF del proveedor es extranjero (formato ISO-3166 Alpha-2 code) Ejemplo: `ES` - `nombre_social` (string, obligatorio): Nombre social del cliente al que se le emite la factura. Ejemplo: `Empresa de ejemplo S.L.` - `serie` (string, opcional para operaciones CON factura): Serie del emisor de la factura. Ejemplo: `A` - `num_factura` (string, obligatorio para operaciones CON factura o mod 240): Número de la factura a la que corresponde el cobro. Ejemplo: `2300017` - `fecha_factura` (string, obligatorio para operaciones CON factura o mod 240): Fecha de la factura del cobro en formato dd/mm/yyyy. Ejemplo: `13/11/2023` - `tipo_ingreso` (enum, obligatorio para operacion SIN factura y mod 140): Cuando la operación es sin factura y únicamente para el modelo 140 (autónomos o sociedades sin PJ) . Posibles opciones: **600** - Compras de mercaderías **601** - Compras de materias primas **602** - Compras de otros aprovisionamientos **606** - Descuentos sobre compras por pronto pago **607** - Trabajos realizados por otras empresas **608** - Devoluciones de compras y operaciones similares **609** - Rappels por compras **620** - Gastos en investigación y desarrollo del ejercicio **621** - Arrendamientos y cánones **622** - Reparaciones y conservación **623** - Servicios de profesionales independientes **624** - Transportes **625** - Primas de seguros **626** - Servicios bancarios y similares **627** - Publicidad, propaganda y relaciones públicas **628** - Suministros **629** - Otros servicios **631** - Otros tributos **634** - Ajustes negativos en la imposición indirecta **639** - Ajustes positivos en la imposición indirecta **640** - Sueldos y salarios **641** - Indemnizaciones **64201** - Seguridad social a cargo de la empresa: autónomos **64202** - Seguridad social a cargo de la empresa: empleados **643** - Retribuciones a largo plazo mediante sistemas de aportación definida **644** - Retribuciones a largo plazo mediante sistemas de prestación definida **649** - Otros gastos sociales **65** - Otros gastos de gestión **66** - Gastos financieros **67** - Gastos excepcionales **680** - Amortización del inmovilizado intangible **681** - Amortización del inmovilizado material **682** - Amortización de las inversiones inmobiliarias **69** - Pérdidas por deterioro y otras dotaciones. Ejemplo: `2` - `linea` (integer, obligatorio para operacion SIN factura y mod 140): Secuencia identificativa del ingreso. Ejemplo: `1` **DEL** `https://{entorno}.ticketbaiws.eus/lroe-critcaja-pagos/` ```bash $ curl --request DELETE \ --url https://api-test.ticketbaiws.eus/lroe-critcaja-pagos/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "ejercicio": 2023, "pagos": [ { "nombre_social": "Berein Internet S.L.", "nif": "B01489350", "fecha_factura": "29\/11\/2023", "fecha_pago": "30\/12\/2023", "serie": "A", "num_factura": "2023000699", "importe_pagado": 100 } ] }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "response": [ { "fecha_factura": "29-11-2023", "fecha_pago": "04-12-2023", "serie": "A", "num_factura": "2023000699", "estado": "Correcto" } ], "status": "OK" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/lroe-critcaja-pagos-del/ --- ## Webhooks - Nuevo webhook `POST` https://{entorno}.ticketbaiws.eus/webhooks/ Permite crear un webhook para notificar del cambio de estado de una factura cuando se hacen envíos asíncronos. ### Parámetros - `url` (string, obligatorio): URL a la que enviar el webhook. Ejemplo: `https://...` - `secret` (string, Clave para la firma del webhook para validación del contenido. La firma se realiza mediante HMAC SHA256 y la firma se envía en base64 en el header X-Tbaiws-Hmac-Sha256) Ejemplo: `xajky22kjasy` - `solo_errores` (boolean, opcional): Parámetro para enviar el webhook únicamente si se producen errores o si la factura es aceptada con errores o avisos. Ejemplo: `true` - `activo` (boolean, opcional): Webhook activado. Permite apagar el webhook temporalmente. Ejemplo: `true` Método de cálculo de firma en PHP: $calculated_hmac = base64_encode(hash_hmac('sha256', $request_body , $secret, true)); **POST** `https://{entorno}.ticketbaiws.eus/webhooks/` ```bash $ curl --request POST \ --url https://api-test.ticketbaiws.eus/webhooks/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "url": "https://www.berein.com/", "secret": "xajky22kjasy", "solo_errores" : true, "activo": true }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "codigo": "6904a3501874e", "url": "https://www.berein.com/", "entorno": "test", "secret": "xajky22kjasy", "solo_errores": true, "activo": true, "fecha_creado": "2025-10-31T12:53:52+01:00", "fecha_modificado": "2025-11-03T10:16:15+01:00" }, "msg": "" } ``` Ejemplo notificación: ```json Headers: array ( 'X-Tbaiws-Hmac-Sha256' => 'Hl+X3FT/r5yH3wsgaku46votvTpUPSLPeDNCiCj+syM=', 'X-Tbaiws-Topic' => 'cambio_estado', 'X-Tbaiws-Environment' => 'real', 'X-Tbaiws-Id' => '6904a3501884e', 'User-Agent' => 'TbaiWS Hook', 'Content-Type' => 'application/json', 'Content-Length' => '144', 'Connection' => 'close' ) Payload: {"nif":"B123456789","serie":"5","numero":"500593135","fecha_emision":"03\\/11\\/2025","estado":"OK","avisos":"null"} ``` Fuente: https://ticketbaiws.eus/es/webhooks-post/ --- ## Webhooks - Modificar webhook `PUT` https://{entorno}.ticketbaiws.eus/webhooks/{codigo_webhook}/ Permite crear un webhook para notificar del cambio de estado de una factura cuando se hacen envíos asíncronos. ### Parámetros - `url` (string, obligatorio): URL a la que enviar el webhook. Ejemplo: `https://...` - `secret` (string, obligatorio): Clave para la firma del webhook para validación del contenido. La firma se realiza mediante HMAC SHA256 y la firma se envía en base64 en el header X-Tbaiws-Hmac-Sha256. Ejemplo: `xajky22kjasy` - `solo_errores` (boolean, opcional): Parámetro para enviar el webhook únicamente si se producen errores o si la factura es aceptada con errores o avisos. Ejemplo: `true` - `activo` (boolean, opcional): Webhook activado. Permite apagar el webhook temporalmente. Ejemplo: `true` Método de cálculo de firma en PHP: $calculated_hmac = base64_encode(hash_hmac('sha256', $request_body , $secret, true)); **PUT** `https://{entorno}.ticketbaiws.eus/webhooks/{codigo_webhook}/` ```bash $ curl --request PUT \ --url https://api-test.ticketbaiws.eus/webhooks/6904a3501884e/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "url": "https://www.berein.com/", "secret": "xajky22kjasy", "solo_errores" : true, "activo": true }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "codigo": "6904a3501874e", "url": "https://www.berein.com/", "entorno": "test", "secret": "xajky22kjasy", "solo_errores": true, "activo": true, "fecha_creado": "2025-10-31T12:53:52+01:00", "fecha_modificado": "2025-11-03T10:16:15+01:00" }, "msg": "" } ``` Ejemplo notificación: ```json Headers: array ( 'X-Tbaiws-Hmac-Sha256' => 'Hl+X3FT/r5yH3wsgaku46votvTpUPSLPeDNCiCj+syM=', 'X-Tbaiws-Topic' => 'cambio_estado', 'X-Tbaiws-Environment' => 'real', 'X-Tbaiws-Id' => '6904a3501884e', 'User-Agent' => 'TbaiWS Hook', 'Content-Type' => 'application/json', 'Content-Length' => '144', 'Connection' => 'close' ) Payload: {"nif":"B123456789","serie":"5","numero":"500593135","fecha_emision":"03\\/11\\/2025","estado":"OK","avisos":"null"} ``` Fuente: https://ticketbaiws.eus/es/webhooks-put/ --- ## Webhooks - Consultar webhooks `GET` https://{entorno}.ticketbaiws.eus/webhooks/ `GET` https://{entorno}.ticketbaiws.eus/webhooks/{codigo_webhook}/ Permite consultar el estado de uno o listar los webhooks creados para un NIF **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `solo_errores` (boolean, opcional): Parámetro para filtrar los webhooks por los que están con la opción de solo_errores activado. No definirlo para obtener cualquier resultado. Ejemplo: `true` - `activo` (boolean, opcional): Parámetro para filtrar los webhooks por los que están con la opción de activo activado. No definirlo para obtener cualquier resultado. Ejemplo: `true` **GET** `https://{entorno}.ticketbaiws.eus/webhooks/` ```bash $ curl --request GET \ --url https://api-test.ticketbaiws.eus/webhooks/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data '{"activo":"true"}' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": [ { "codigo": "6904a3501884e", "url": "https://www.berein.com/", "entorno": "test", "secret": "xajky22kjasy", "solo_errores": true, "activo": true, "fecha_creado": "2025-10-31T12:53:52+01:00", "fecha_modificado": "2025-11-03T10:16:15+01:00", "nif": "B12346789" } ], "msg": "" } ``` Fuente: https://ticketbaiws.eus/es/webhooks-get/ --- ## Nueva empresa `POST` https://api.ticketbaiws.eus/empresas/ Este método permite crear una nueva ficha de empresa para el envío de ticketbai ### Parámetros - `id_licencia` (integer, opcional): ID de la licencia a la que se quiere asociar. Si no se indica se cogerá la primera libre o se creará una nueva. Ejemplo: `999` - `nombre_social` (string, obligatorio): Nombre social de la empresa. Ejemplo: `Empresa de ejemplo S.L.` - `nombre_comercial` (string, opcional): Nombre comercial de la empresa. Ejemplo: `Neumáticos Pepe` - `nif` (string, obligatorio): NIF de la empresa. Ejemplo: `B01000012` - `direccion` (string, obligatorio): Dirección de social de la empresa. Ejemplo: `Calle de ejemplo 123` - `poblacion` (string, obligatorio): Población social de la empresa. Ejemplo: `Vitoria-Gasteiz` - `provincia` (string, obligatorio): Provincia social de la empresa. Ejemplo: `Álava` - `cp` (string, obligatorio): Código postal social de la empresa. Ejemplo: `01001` - `email` (string, opcional): Email de contacto de la empresa. Ejemplo: `info@ejemplo.com` - `web` (string, opcional): Dirección de la página web de la empresa. Ejemplo: `www.ejemplo.com` - `epigrafe` (string, obligatorio solo para autónomos, CBs y SCs para Bizkaia): Epígrafe del IAE. Ejemplo: `301800` **POST** `https://api.ticketbaiws.eus/empresas/` ```bash $ curl --request POST \ --url https://api.ticketbaiws.eus/empresas/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "id_licencia": "0", "nombre_social": "Empresa de ejemplo S.L.", "nombre_comercial": "Neumáticos Pepe", "nif": "B01000012", "direccion": "Calle de ejemplo 123", "poblacion": "Vitoria-Gasteiz", "provincia": "Álava", "cp": "28080", "email": "info@ejemplo.com", "web": "www.ejemplo.com", "diputacion": 1, "epigrafe" : "301800" }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "id": "999" "id_licencia": "999", "epigrafe": "", "nombre_social": "Empresa de ejemplo S.L.", "nombre_comercial": "Neumáticos Pepe", "nif": "B01000012", "direccion": "Calle de ejemplo 123", "poblacion": "Vitoria-Gasteiz", "provincia": "Álava", "cp": "28080", "email": "info@ejemplo.com", "web": "www.ejemplo.com", "diputacion": 1, "token": "xxx", "token_test": "xxx" }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/empresas-post/ --- ## Editar datos empresa `PUT` https://api.ticketbaiws.eus/empresas/{NIF}/ Este método permite editar una ficha de empresa ### Parámetros - `nombre_social` (string, opcional (*)): Nombre social de la empresa. Ejemplo: `Empresa de ejemplo S.L.` - `nombre_comercial` (string, opcional (*)): Nombre comercial de la empresa. Ejemplo: `Neumáticos Pepe` - `direccion` (string, opcional (*)): Dirección de social de la empresa. Ejemplo: `Calle de ejemplo 123` - `poblacion` (string, opcional (*)): Población social de la empresa. Ejemplo: `Vitoria-Gasteiz` - `provincia` (string, opcional (*)): Provincia social de la empresa. Ejemplo: `Álava` - `cp` (string, opcional (*)): Código postal social de la empresa. Ejemplo: `01001` - `email` (string, opcional (*)): Email de contacto de la empresa. Ejemplo: `info@ejemplo.com` - `web` (string, opcional (*)): Dirección de la página web de la empresa. Ejemplo: `www.ejemplo.com` - `epigrafe` (string, opcional (*)): Epígrafe del IAE. Ejemplo: `301800` - `autorenovacion` (string, opcional (*)): Auto-renovación de la licencia asociada. Ejemplo: `true` (*) Enviar únicamente los parámetros que se deseen modificar **PUT** `https://api.ticketbaiws.eus/empresas/` ```bash $ curl --request PUT \ --url https://api.ticketbaiws.eus/empresas/B01010101/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "nombre_social": "Empresa de ejemplo S.L.", "nombre_comercial": "Neumáticos Pepe", "direccion": "Calle de ejemplo 123", "poblacion": "Vitoria-Gasteiz", "provincia": "Álava", "cp": "28080", "email": "info@ejemplo.com", "web": "www.ejemplo.com", "epigrafe" : "301800", "autorenovacion" : true }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "id": "999" "id_licencia": "999", "epigrafe": "", "nombre_social": "Empresa de ejemplo S.L.", "nombre_comercial": "Neumáticos Pepe", "nif": "B01000012", "direccion": "Calle de ejemplo 123", "poblacion": "Vitoria-Gasteiz", "provincia": "Álava", "cp": "28080", "email": "info@ejemplo.com", "web": "www.ejemplo.com", "token": "xxx", "token_test": "xxx", "autorenovacion" : true }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/empresas-put/ --- ## Listado empresas `GET` https://api.ticketbaiws.eus/empresas/ Este método devuelve el listado de las empresas dadas de alta **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `id_licencia` (string, opcional): Para obtener las empresas de una licencia concreta. Ejemplo: `999` - `nif` (string, opcional): Para obtener el detalle de una empresa concreta. Ejemplo: `B01000012` **GET** `https://api.ticketbaiws.eus/empresas/` ```bash $ curl --request GET \ --url https://api.ticketbaiws.eus/empresas/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data '{"id_licencia": "999","nif":"B01000012"}' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": [ { "id": "999" "id_licencia": "999", "epigrafe": "", "nombre_social": "Empresa de ejemplo S.L.", "nombre_comercial": "Neumáticos Pepe", "nif": "B01000012", "direccion": "Calle de ejemplo 123", "poblacion": "Vitoria-Gasteiz", "provincia": "Álava", "cp": "28080", "email": "info@ejemplo.com", "web": "www.ejemplo.com", "diputacion": 1, "token": "xxx", "token_test": "xxx" }, { "id": "999" "id_licencia": "999", "epigrafe": "", "nombre_social": "Empresa de ejemplo S.L.", "nombre_comercial": "Neumáticos Pepe", "nif": "B01000012", "direccion": "Calle de ejemplo 123", "poblacion": "Vitoria-Gasteiz", "provincia": "Álava", "cp": "28080", "email": "info@ejemplo.com", "web": "www.ejemplo.com", "diputacion": 2, "token": "xxx", "token_test": "xxx" } ], "msg": null } ``` Fuente: https://ticketbaiws.eus/es/empresas-get/ --- ## Nueva licencia `POST` https://api.ticketbaiws.eus/licencias/ Este método permite crear una nueva licencia ### Parámetros - `plan` (integer, obligatorio): ID del plan que se aplicará a la licencia. Ejemplo: `3` - `cantidad` (integer, obligatorio): Número de licencias a crear. Ejemplo: `1` - `meses_anos` (integer, obligatorio): Número de meses o años para la contratación. Ejemplo: `1` - `modalidad` (string, obligatorio): Periodicidad de renovación de la licencia (mensual ó anual) Ejemplo: `mensual` **POST** `https://api.ticketbaiws.eus/licencias/` ```bash $ curl --request POST \ --url https://api.ticketbaiws.eus/licencias/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data ' { "plan": 3, "cantidad": 3, "meses_anos": 1, "modalidad": "mensual" }' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": { "ids_licencias": ["999","999","9999"] }, "msg": null } ``` Fuente: https://ticketbaiws.eus/es/licencias-post/ --- ## Consulta licencias `GET` https://api.ticketbaiws.eus/licencias/ Este método devuelve el listado de licencias contratadas **Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.** ### Parámetros - `id_licencia` (integer, opcional): En caso de no informarlo devolverá todas. Ejemplo: `999` **GET** `https://api.ticketbaiws.eus/licencias/` ```bash $ curl --request GET \ --url https://api.ticketbaiws.eus/licencias/ \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Token: xxx' \ --header 'Nif: 00000014Z' --data '{"id_licencia": "999"}' ``` Respuesta: ```json HTTP/1.1 200 OK { "result": "OK", "return": [ { "id": "1", "id_plan": "3", "fecha_alta": "1648120433", "fecha_fin": "1679656433", "renovacion_auto": "1", "anual": "1", "nombre_es": "Plan básico", "nombre_eu": "Oinarrizko plana", "precio_mensual": "5.99", "precio_anual": "59.88", "max_tickets_mes": "30", "max_empresas": "1", "max_facturacion": "6000", "n_empresas": "1" }, { "id": "24", "id_plan": "1", "fecha_alta": "1648120433", "fecha_fin": "1679656433", "renovacion_auto": "1", "anual": "1", "nombre_es": "NIF adicional", "nombre_eu": "IFZ Gehigarria", "precio_mensual": "4.99", "precio_anual": "59.88", "max_tickets_mes": "0", "max_empresas": "1", "max_facturacion": "0", "n_empresas": "1" } ], "msg": null } ``` Fuente: https://ticketbaiws.eus/es/licencias-get/