Facturas Emitidas

[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

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

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

1007

<idLinea>

Identificador de la linea

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

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

Cadena de caracteres

<valores>

Lista de valores

Lista de valores

<filtro>

Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información

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
}
Artículo siguiente

Peticiones