[GET] /facturas/emitidas/{id}#
Descripción#
Obtiene una factura emitida por el id.
Petición#
GET /facturas/emitidas/<id>
|
Parámetro |
Descripción |
Obligatorio | Ejemplo |
| <id> |
Identificador de la factura emitida |
Sí |
1 |
Request URL#
http://<dominio>:<puerto>/facturas/emitidas/<id>'
cURL#
curl --location --request GET 'http://<dominio>:<puerto>/facturas/emitidas/<id>' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL#
http://192.168.293.365:8071/facturas/emitidas/1007'
Ejemplo de cURL#
curl --location --request GET 'http://192.168.293.365:8071/facturas/emitidas/1' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses#
200 Ha ido correctamente
{
"statusCode": 200,
"message": "Petición finalizada correctamente",
"data": [
{
"id": 1,
"idContacto": 98,
"codCon": "288",
"tipo": "C",
"domicilio": "C/ Cartagena",
"cif": "B75996635",
"nombre": "Vigilancias",
"apellidos": "Advance SLU",
"email": "empresa@sudominio.es",
"personaContacto": "A/A Ramiro González ",
"numeroFactura": "F003/2022",
"numeroPresupuesto": "P888",
"numeroPedido": "678",
"numeroODC": null,
"referencia": "REF-001",
"fechaEntrega": "02/06/2025",
"fechaContabilizacion": null,
"festadoFactura": null,
"fechaFactura": "05/07/2024",
"fechaODC": "24/06/2025",
"fechaPresupuesto": "01/01/2027",
"baseImponible": 0,
"baseNoImponible": 0,
"totalFactura": 250,
"totalFacturaMonedaCliente": 312.5,
"iva": 21,
"totalIva": 52.5,
"tasas": 0,
"irpf": 0,
"totalIrpf": 0,
"otrosNoImponible": 0,
"totalDescuento": 0,
"descuento": 0,
"acuenta": 0,
"tipoCambio": 1.25,
"tarifa": {
"codigo": "01",
"descripcion": "Precio según sector público"
},
"asunto": null,
"observacion": "Factura de ejemplo",
"empresa": {
"codigo": "EM1",
"descripcion": "Empresa S.L."
},
"seccion": {
"codigo": "40",
"descripcion": "Nota factura"
},
"idioma": null,
"moneda": {
"codigo": "EUR",
"descripcion": "Euro"
},
"pais": null,
"formaPago": {
"codigo": "TR",
"descripcion": "Transferencia 60 días"
},
"estadoFactura": {
"codigo": "30",
"descripcion": "Aprobada"
},
"situacion": null,
"codPostal": "28080",
"poblacion": "Madrid",
"provincia": "Madrid"
}
]
}
404 No se ha encontrado la factura emitida por id
{
"statusCode": 404,
"message": "No se ha encontrado la factura emitida",
"data": null
}
500 Ha ocurrido un error
{
"statusCode": 500,
"message": <mensaje_error>,
"data": null
}
[GET] /facturas/emitidas/{id}/lineas#
Descripción#
Obtiene las líneas asociadas a una factura emitida.
Petición#
GET /facturas/emitidas/<id>/lineas
|
Parámetro |
Descripción |
Obligatorio | Ejemplo |
| <id> |
Identificador de la factura emitida |
Sí |
1007 |
Request URL#
http://<dominio>:<puerto>/facturas/emitidas/<id>/lineas'
cURL#
curl --location --request GET 'http://<dominio>:<puerto>/facturas/emitidas/<id>/lineas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL#
http://192.168.293.365:8071/facturas/emitidas/1007/lineas'
Ejemplo de cURL#
curl --location --request GET 'http://192.168.293.365:8071/facturas/emitidas/1007/lineas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses#
200 Ha ido correctamente
{
"statusCode": 200,
"message": "Petición finalizada correctamente",
"data": [
{
"id": 15,
"articulos": {
"codigo": "P101",
"descripcion": "P Solicitud de patente de invención"
},
"importe": 6798.23,
"tasa": 75.98,
"descuento": 10
}
]
}
404 No se ha encontrado la factura emitida
{
"statusCode": 404,
"message": "No se ha encontrado la factura emitida ",
"data": null
}
500 Ha ocurrido un error
{
"statusCode": 500,
"message": <mensaje_error>,
"data": null
}
[GET] /facturas/emitidas/{id}/lineas/{idLinea}/expedientes#
Descripción#
Obtiene los expedientes asociadas a una linea de una factura, si desea obtener mas información del expediente utilice el método [GET] /expedientes/{id} .
Petición#
GET /facturas/emitidas/<id>/lineas/<idLinea>/expedientes
|
Parámetro |
Descripción |
Obligatorio | Ejemplo |
| <id> |
Identificador de la factura |
Sí |
1007 |
| <idLinea> |
Identificador de la linea |
Sí |
5 |
Request URL#
http://<dominio>:<puerto>/facturas/emitidas/<id>/lineas/<idLinea>/expedientes'
cURL#
curl --location --request GET 'http://<dominio>:<puerto>/facturas/emitidas/<id>/lineas/<idLinea>/expedientes' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL#
http://192.168.293.365:8071/facturas/emitidas/1007/lineas/5/expedientes'
Ejemplo de cURL#
curl --location --request GET 'http://192.168.293.365:8071/facturas/emitidas/1007/lineas/5/expedientes' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses#
200 Ha ido correctamente
{
"statusCode": 200,
"message": "Petición finalizada correctamente",
"data": [
{
"id": 5
}
]
}
404 No se ha encontrado la factura emitida
{
"statusCode": 404,
"message": "No se ha encontrado la factura emitida",
"data": null
}
404 No se ha encontrado la linea
{
"statusCode": 404,
"message": "No se ha encontrado la linea",
"data": null
}
409 No se ha encontrado la linea asociada a la factura emitida
{
"statusCode": 409,
"message": "La linea no pertenece a esa factura emitida",
"data": null
}
500 Ha ocurrido un error
{
"statusCode": 500,
"message": <mensaje_error>,
"data": null
}
[GET] /facturas/emitidas/{id}/vencimientos#
Descripción#
Obtiene la lista de vencimientos asociados a una factura emitida.
Petición#
GET /facturas/emitidas/<id>/vencimientos
|
Parámetro |
Descripción |
Obligatorio | Ejemplo |
| <id> |
Identificador de la factura emitida |
Sí |
1007 |
Request URL#
http://<dominio>:<puerto>/facturas/emitidas/<id>/vencimientos'
cURL#
curl --location --request GET 'http://<dominio>:<puerto>/facturas/emitidas/<id>/vencimientos' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL#
http://192.168.293.365:8071/facturas/emitidas/1007/vencimientos'
Ejemplo de cURL#
curl --location --request GET 'http://192.168.293.365:8071/facturas/emitidas/1007/vencimientos' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses#
200 Ha ido correctamente
{
"statusCode": 200,
"message": "Petición finalizada correctamente",
"data": [
{
"fechaVencimiento": "09/10/2024",
"importe": 22.5,
"observacion": "Primer Vto."
}
]
}
404 No se ha encontrado la factura emitida
{
"statusCode": 404,
"message": "No se ha encontrado la factura emitida ",
"data": null
}
500 Ha ocurrido un error
{
"statusCode": 500,
"message": <mensaje_error>,
"data": null
}
[POST] /facturas/emitidas/search#
Descripción#
Búsqueda de facturas emitidas con filtros. Devuelve un listado con las facturas emitidas que cumplen los filtros de búsqueda.
Petición#
POST /facturas/emitidas/search
Petición con opciones de paginación#
POST /facturas/emitidas/search?PageSize=<size>&PageNumber=<number>
Request URL#
http://<dominio>:<puerto>/facturas/emitidas/search'
Request URL con opciones de paginación#
http://<dominio>:<puerto>/facturas/emitidas/search?PageSize=<size>&PageNumber=<number>'
|
Parámetro |
Descripción |
Obligatorio | Ejemplo |
| <size> |
Número de elementos por página |
No |
10 |
| <number> |
Número de página |
No |
2 |
cURL#
curl --location --request POST 'http://<dominio>:<puerto>/facturas/emitidas/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación#
curl --location --request POST 'http://<dominio>:<puerto>/facturas/emitidas/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
|
Header |
Descripción |
Obligatorio |
| <body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)#
{
"generales": [
{
"campo": <campo>,
"valores": <valores>,
"codigo": <filtro>
}
]
}
|
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
| <campo> |
Campo por el que se va a aplicar el filtro dentro del bloque al que corresponde. En este caso, sobre actos |
Sí |
Cadena de caracteres |
| <valores> |
Lista de valores |
Sí |
Lista de valores |
| <filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type) para indicar el formato del body. Para esta petición es application/json.
No olvidar el token
Ejemplo de request URL#
http://192.168.293.365:8071/facturas/emitidas/search'
Ejemplo de request URL con opciones de paginación#
http://192.168.293.365:8071/facturas/emitidas/search?PageSize=10&PageNumber=2'
Ejemplo de body#
{
"generales": [
{
"campo": "cliente",
"valores": [
"90947"
],
"codigo": "EQ"
},
{
"campo": "moneda",
"valores": [
"EUR"
],
"codigo": "EQ"
},
{
"campo": "pais",
"valores": [
"ES"
],
"codigo": "EQ"
},
{
"campo": "numerofactura",
"valores": [
"13914/2024"
],
"codigo": "EQ"
},
{
"campo": "fechafactura",
"valores": [
"05/07/2024"
],
"codigo": "EQ"
},
{
"campo": "numeroODC",
"valores": [
"ODC2410919"
],
"codigo": "EQ"
},
{
"campo": "fechaODC",
"valores": [
"11/10/2023"
],
"codigo": "EQ"
},
{
"campo": "numeropresupuesto",
"valores": [
"20240004"
],
"codigo": "EQ"
},
{
"campo": "fechapresupuesto",
"valores": [
"09/11/2024"
],
"codigo": "EQ"
},
{
"campo": "empresa",
"valores": [
"E1"
],
"codigo": "EQ"
},
{
"campo": "estado",
"valores": [
"P"
],
"codigo": "EQ"
}
]
}
| Campo | Descripción | Obligatorio | Tipo parámetro |
| «cliente» | Filtro sobre el código del cliente | No | Cadena de caracteres |
| «moneda» | Filtro sobre la moneda de la factura | No | Cadena de caracteres |
| «pais» | Filtro sobre el país asociado a la factura | No | Cadena de caracteres |
| «numeroFactura» | Filtro sobre el número de factura | No | Cadena de caracteres |
| «fechaFactura» | Filtro sobre la fecha de la factura | No | Cadena de caracteres. Formato: día/mes/año |
| «numeroODC» | Filtro sobre el número de orden de compra | No | Cadena de caracteres |
| «fechaODC» | Filtro sobre la fecha de la orden de compra | No | Cadena de caracteres. Formato: día/mes/año |
| «numeropresupuesto» | Filtro sobre el número del presupuesto | No | Cadena de caracteres |
| «fechapresupuesto» | Filtro sobre la fecha del presupuesto | No | Cadena de caracteres. Formato: día/mes/año |
| «empresa» | Filtro sobre el identificador de empresa emisora | No | Cadena de caracteres |
| «estado» | Filtro sobre el estado de la factura | No | Cadena de caracteres |
Ejemplo de cURL#
curl --location --request POST 'http://192.168.293.365:8071/facturas/emitidas/search' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \
--header 'Content-Type: application/json' \
--data-raw '{
"generales": [
{
"campo": "cliente",
"valores": [
"90947"
],
"codigo": "EQ"
},
{
"campo": "moneda",
"valores": [
"EUR"
],
"codigo": "EQ"
},
{
"campo": "pais",
"valores": [
"ES"
],
"codigo": "EQ"
},
{
"campo": "numerofactura",
"valores": [
"13914/2024"
],
"codigo": "EQ"
},
{
"campo": "fechafactura",
"valores": [
"05/07/2024"
],
"codigo": "EQ"
},
{
"campo": "numeroODC",
"valores": [
"ODC2410919"
],
"codigo": "EQ"
},
{
"campo": "fechaODC",
"valores": [
"11/10/2023"
],
"codigo": "EQ"
},
{
"campo": "numeropresupuesto",
"valores": [
"20240004"
],
"codigo": "EQ"
},
{
"campo": "fechapresupuesto",
"valores": [
"09/11/2024"
],
"codigo": "EQ"
},
{
"campo": "empresa",
"valores": [
"E1"
],
"codigo": "EQ"
},
{
"campo": "estado",
"valores": [
"P"
],
"codigo": "EQ"
}
]
}'
Ejemplo de cURL con opciones de paginación#
curl --location --request POST 'http://192.168.293.365:8071/facturas/emitidas/search?PageSize=10&PageNumber=2' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \
--header 'Content-Type: application/json' \
--data-raw '{
"generales": [
{
"campo": "cliente",
"valores": [
"90947"
],
"codigo": "EQ"
},
{
"campo": "moneda",
"valores": [
"EUR"
],
"codigo": "EQ"
},
{
"campo": "pais",
"valores": [
"ES"
],
"codigo": "EQ"
},
{
"campo": "numerofactura",
"valores": [
"13914/2024"
],
"codigo": "EQ"
},
{
"campo": "fechafactura",
"valores": [
"05/07/2024"
],
"codigo": "EQ"
},
{
"campo": "numeroODC",
"valores": [
"ODC2410919"
],
"codigo": "EQ"
},
{
"campo": "fechaODC",
"valores": [
"11/10/2023"
],
"codigo": "EQ"
},
{
"campo": "numeropresupuesto",
"valores": [
"20240004"
],
"codigo": "EQ"
},
{
"campo": "fechapresupuesto",
"valores": [
"09/11/2024"
],
"codigo": "EQ"
},
{
"campo": "empresa",
"valores": [
"E1"
],
"codigo": "EQ"
},
{
"campo": "estado",
"valores": [
"P"
],
"codigo": "EQ"
}
]
}'
Responses validaciones de campos#
400 Valor no válido para el campo ‘codigo’
{
"statusCode": 400,
"message": "Filtro 'X' no contemplado. [GET] /filtros para más información",
"data": null
}
400 Valor no válido para el campo ‘campo’
{
"statusCode": 400,
"message": "Campo 'X' no contemplado",
"data": null
}
400 Lista de valores vacía
{
"statusCode": 400,
"message": "Se deben informar valores para el tipo de filtro 'EQ'",
"data": null
}
400 Lista de ‘valores’ con valor vacío
{
"statusCode": 400,
"message": "El valor no puede ser nulo",
"data": null
}
400 Filtro ‘Between’ con más de dos valores
{
"statusCode": 400,
"message": "El filtro 'BT' tiene que tener únicamente dos valores",
"data": null
}
Headers responses#
En esta petición, además de devolver un listado con las facturas emitidas que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
|
Parámetro |
Descripción |
| <total> |
Número total de facturas emitidas encontradas en la búsqueda |
| <size> |
Número de elementos por página |
| <current_page> |
Página actual |
| <total_pages> |
Número total de páginas |
| <has_next_page> |
Indica si hay página siguiente |
| <has_previous_page> |
Indica si hay página anterior |
| <next_url> |
URL de la siguiente página |
| <previous_url> |
URL de la página anterior |
Ejemplo headers responses#
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244,
"HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses#
200 Ha ido correctamente
{
"statusCode": 200,
"message": "Petición finalizada correctamente",
"data": [
{
"id": 1,
"idContacto": 98,
"codCon": "288",
"domicilio": "C/ Cartagena",
"cif": "B75996635",
"nombre": "Vigilancias",
"apellidos": "Advance SLU",
"email": "empresa@sudominio.es",
"personaContacto": "A/A Ramiro González ",
"numeroFactura": "F003/2022",
"numeroPresupuesto": "P888",
"numeroPedido": "678",
"numeroODC": null,
"referencia": "REF-001",
"fechaEntrega": "02/06/2025",
"fechaContabilizacion": null,
"festadoFactura": null,
"fechaFactura": "05/07/2024",
"fechaODC": "24/06/2025",
"fechaPresupuesto": "01/01/2027",
"baseImponible": 0,
"baseNoImponible": 0,
"totalFactura": 250,
"totalFacturaMonedaCliente": 312.5,
"iva": 21,
"totalIva": 52.5,
"tasas": 0,
"irpf": 0,
"totalIrpf": 0,
"otrosNoImponible": 0,
"totalDescuento": 0,
"descuento": 0,
"acuenta": 0,
"tipoCambio": 1.25,
"tarifa": {
"codigo": "01",
"descripcion": "Precio según sector público"
},
"asunto": null,
"observacion": "Factura de ejemplo",
"empresa": {
"codigo": "EM1",
"descripcion": "Empresa S.L."
},
"seccion": {
"codigo": "40",
"descripcion": "Nota factura"
},
"idioma": null,
"moneda": {
"codigo": "EUR",
"descripcion": "Euro"
},
"pais": null,
"formaPago": {
"codigo": "TR",
"descripcion": "Transferencia 60 días"
},
"estadoFactura": {
"codigo": "30",
"descripcion": "Aprobada"
},
"situacion": null,
"codPostal": "28080",
"poblacion": "Madrid",
"provincia": "Madrid"
}
]
}
500 Ha ocurrido un error
{
"statusCode": 500,
"message": <mensaje_error>,
"data": null
}