Crear nueva factura

Crea una nueva factura a partir de pedidos existentes u órdenes específicas.

Autenticación requerida: Este endpoint requiere autenticación Bearer Token. Usar el campo tokenCurrent obtenido del servicio de login (/login) en el header: Authorization: Bearer {tokenCurrent}

Proceso de facturación:

  • Convierte pedidos en factura oficial
  • Calcula impuestos y totales automáticamente
  • Soporta facturación electrónica (DIAN)
  • Integra con sistemas contables (Siigo, Loggro)
  • Actualiza inventario y caja registradora

Requisitos de caja: Requiere caja registradora activa para el usuario.

Casos de Uso y Ejemplos

Caso de Uso: Facturar mesa de restaurante

Escenario: Un mesero ha tomado varios pedidos en una mesa y necesita generar la factura final.

Proceso:

  1. Los pedidos se han creado previamente con estado "Espera" o "Entregado"
  2. Se seleccionan todos los pedidos de la mesa para facturar
  3. Se especifica método de pago y cliente (opcional)
  4. Se genera factura con cálculo automático de impuestos

1. Factura básica de mesa

{
  "_id": "507f1f77bcf86cd799439020",
  "orderProducts": [
    { "order": "507f1f77bcf86cd799439011" },
    { "order": "507f1f77bcf86cd799439012" }
  ],
  "table": "507f1f77bcf86cd799439014",
  "client": {
    "name": "Juan Pérez",
    "phone": "+57 300 123 4567",
    "email": "[email protected]"
  },
  "paymentMethod": "507f1f77bcf86cd799439018",
  "isPaid": true,
  "total": 45000,
  "discountAdditionalTotal": 5000
}

2. Factura electrónica con DIAN

{
  "_id": "507f1f77bcf86cd799439021",
  "isEInvoice": true,
  "orderProducts": [
    { "order": "507f1f77bcf86cd799439013" }
  ],
  "client": {
    "name": "María González",
    "idType": "CC",
    "idNumber": "123456789",
    "email": "[email protected]"
  },
  "isPaid": true,
  "total": 30000,
  "sendInvoiceEmail": true
}

3. Factura a crédito

{
  "_id": "507f1f77bcf86cd799439022",
  "orderProducts": [
    { "order": "507f1f77bcf86cd799439014" },
    { "order": "507f1f77bcf86cd799439015" }
  ],
  "client": {
    "name": "Empresa ABC",
    "idType": "NIT",
    "idNumber": "900123456-1"
  },
  "isCredit": true,
  "creditDays": 30,
  "total": 75000,
  "status": "Pendiente"
}

4. Factura con entrega a domicilio

{
  "_id": "507f1f77bcf86cd799439023",
  "orderProducts": [
    { "order": "507f1f77bcf86cd799439016" }
  ],
  "delivery": {
    "isDelivery": true,
    "deliveryProvider": "507f1f77bcf86cd799439017",
    "deliveryGuy": {
      "internalId": "507f1f77bcf86cd799439025"
    },
    "address": "Calle 123 #45-67, Bogotá"
  },
  "deliveryCost": 8000,
  "isPaid": true,
  "total": 38000
}
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
string
required

ID único de la factura (generado por el cliente)

orderProducts
array of objects
required

Lista de pedidos a incluir en la factura

orderProducts*
string

ID de la mesa (para facturas de mesa)

client
object

Información del cliente

string

ID del método de pago

boolean

Si la factura está pagada

boolean

Si la factura es a crédito

number

Días de crédito (solo si isCredit es true)

number
required

Total de la factura

number

Descuento adicional aplicado

string
enum

Estado de la factura

Allowed:
boolean

Si es factura electrónica (DIAN)

boolean

Enviar factura por email al cliente

delivery
object

Información de entrega a domicilio

number

Costo de entrega

Responses

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json