Skip to content

Facturas

Maneja las operaciones relacionadas con facturas en la API.

GET /invoices

Obtiene el listado de todas las facturas.

La API devolverá un array con todas las facturas registradas o un mensaje de error en caso de fallar.

Respuesta exitosa:

Status 200
[
{
"id": "uuid-factura-1",
"customerId": "uuid-cliente",
"issueDate": "2025-06-02",
"companyId": "uuid-empresa",
"establishmentId": "uuid-establecimiento",
"emissionPointId": "uuid-punto-emision",
"documentTypeId": "uuid-tipo-documento"
// ... otros campos de la factura
},
{
"id": "uuid-factura-2"
// ... datos de otra factura
}
]
CódigoDescripción
500Error interno al obtener la lista de facturas
Status 500
{
"statusCode": 500,
"message": "Error fetching invoices: [detalles del error]"
}

POST /invoice

Crea una nueva factura procesando todos los pasos necesarios.

KeyValue (Ejemplo de Clave API para autenticación)
x-api-key$2a$12$IQf1vb/MNB7o3UKLMCECZeX.SzHl4C3kZmqkzF9c/JZkqp/mVlbBS

Cuerpo de la solicitud (JSON):

{
"customerId": "uuid-cliente",
"issueDate": "2025-06-02",
"companyId": "uuid-empresa",
"establishmentId": "uuid-establecimiento",
"emissionPointId": "uuid-punto-emision",
"documentTypeId": "uuid-tipo-documento",
"tenantId": "uuid-tenant",
"paymentMethods": [
{
"paymentMethodId": "uuid-metodo-pago",
"deadline": 30,
"timeUnit": "DAY",
"value": "100.00"
}
],
"details": [
{
"productId": "uuid-producto",
"quantity": 2,
"price": "50.00",
"discount": "0.00"
}
]
}
CampoTipoRequeridoDescripción
customerIdString (UUID)ID del cliente
issueDateStringFecha de emisión de la factura
companyIdString (UUID)ID de la empresa
establishmentIdString (UUID)ID del establecimiento
emissionPointIdString (UUID)ID del punto de emisión
documentTypeIdString (UUID)ID del tipo de documento
tenantIdString (UUID)NoID del tenant
paymentMethodsArrayMétodos de pago para la factura
detailsArrayDetalles de los productos de la factura
paymentMethodIdString (UUID)ID del método de pago
deadlineIntegerNoPlazo de pago
timeUnitEnum (TimeUnit)NoUnidad de tiempo para el plazo (DAY, MONTH, YEAR)
valueString (Decimal)Valor del pago

La API devolverá la información de la factura creada exitosamente o un mensaje de error en caso de fallar.

Status 200
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"customerId": "uuid-cliente",
"issueDate": "2025-06-02",
"companyId": "uuid-empresa",
"establishmentId": "uuid-establecimiento",
"emissionPointId": "uuid-punto-emision",
"documentTypeId": "uuid-tipo-documento",
"tenantId": "uuid-tenant",
"paymentMethods": [
{
"id": "663e8344-a29e-41b5-b716-446655440123",
"paymentMethodId": "uuid-metodo-pago",
"deadline": 30,
"timeUnit": "DAY",
"value": "100.00"
}
],
"details": [
{
"id": "772e9500-e29b-41d4-a716-446655440321",
"productId": "uuid-producto",
"quantity": 2,
"price": "50.00",
"discount": "0.00"
}
],
"createdAt": "2025-06-02T12:00:00Z",
"updatedAt": "2025-06-02T12:00:00Z"
}
CódigoDescripción
400Error en la creación de la factura con detalles del problema
Status 400
{
"statusCode": 400,
"message": "Error creating invoice: [detalles del error]"
}

GET /invoices/{id}

Obtiene la información detallada de una factura específica a partir de su ID.

EncabezadoTipoDescripciónEjemplo
x-api-keyStringClave API para autenticación (formato similar a bcrypt)$2a$12$IQf1vb/MNB7o3UKLMCECZeX.SzHl4C3kZmqkzF9c/JZkqp/mVlbBS
ParámetroTipoDescripción
idString (UUID)ID de la factura a consultar

La API devolverá los detalles completos de la factura solicitada o un mensaje de error en caso de fallar.

Respuesta exitosa:

Status 200
{
"id": "uuid-factura",
"customerId": "uuid-cliente",
"issueDate": "2025-06-02",
"companyId": "uuid-empresa",
"establishmentId": "uuid-establecimiento",
"emissionPointId": "uuid-punto-emision",
"documentTypeId": "uuid-tipo-documento",
"tenantId": "uuid-tenant",
"paymentMethods": [
{
"id": "uuid-pago",
"paymentMethodId": "uuid-metodo-pago",
"deadline": 30,
"timeUnit": "DAY",
"value": "100.00"
}
],
"details": [
{
"id": "uuid-detalle",
"productId": "uuid-producto",
"quantity": 2,
"price": "50.00",
"discount": "0.00"
}
],
"createdAt": "2025-06-02T12:00:00Z",
"updatedAt": "2025-06-02T12:00:00Z"
}
CódigoDescripción
500Error interno al obtener la factura
404La factura con el ID proporcionado no ha sido encontrada
Status 500
{
"statusCode": 500,
"message": "Error fetching invoice: [detalles del error]"
}
Status 404
{
"statusCode": 404,
"message": "Invoice not found"
}