Endpoints / Proformas

POST

Enviar proforma

Envía una proforma existente por correo electrónico o WhatsApp al cliente, sin crear un nuevo documento.

POST/proformas/:id/send

Caso de Uso

Se usa cuando la aplicación necesita reenviar una proforma al cliente por un canal específico desde el frontend, ya sea por correo electrónico o WhatsApp. Al usarlo, el usuario obtiene un mensaje de confirmación del envío.

Autenticación

Requiere token JWT en el header `Authorization: Bearer <token>`. Permite acceso a usuarios con rol jefe o empleado. La empresa y el usuario autenticado deben estar activos.

Parámetros de ruta

idstringobligatorio

Identificador de la proforma a enviar.

Body

channelstringobligatorio

Canal de envío; acepta email o whatsapp.

Reglas de negocio

1

Solo un usuario con rol jefe o empleado puede enviar proformas.

2

Solo permite enviar proformas de la empresa del usuario autenticado.

3

La empresa del usuario autenticado debe estar activa.

4

El usuario autenticado debe estar activo.

5

channel solo acepta los valores email o whatsapp.

6

No se puede enviar una proforma en estado anulada.

7

Para el canal email: debe existir correo emisor configurado y correo de destino del cliente.

8

Para el canal whatsapp: debe existir el token WHATSAPP_APICONSULT_TOKEN configurado.

9

Debe existir una instancia de API de WhatsApp configurada para la empresa.

10

Este endpoint realiza el envío de forma inmediata; no inserta una tarea en cola.

Errores esperados

401No autorizado

No se envió un token JWT válido o el token no contiene información válida del usuario.

400El id de proforma es requerido

No se envió el parámetro id en la ruta o fue enviado vacío.

400El canal debe ser email o whatsapp

channel no fue enviado o tiene un valor distinto de email o whatsapp.

400No se puede enviar una proforma anulada

La proforma está en estado anulada y no puede enviarse.

400El canal solicitado no está activo para esta empresa

El canal seleccionado no está habilitado para la empresa del usuario autenticado.

400WHATSAPP_APICONSULT_TOKEN es requerido para el canal whatsapp

No se ha configurado el token global de WhatsApp en el entorno del servidor.

404Proforma no encontrada

No existe una proforma con el id indicado dentro de la empresa del usuario autenticado.

500Falta correo del remitente o destinatario para enviar la proforma

No se encontró el correo del emisor o del cliente para realizar el envío por email.

500La instancia de API de WhatsApp no está configurada para esta empresa

No existe una instancia de API de WhatsApp registrada para la empresa.

500La empresa no existe

La empresa asociada al usuario autenticado no fue encontrada.

500La empresa no está activa

La empresa asociada al usuario autenticado está inactiva.

500El usuario no existe

El usuario autenticado no fue encontrado dentro de su empresa.

500El usuario no pertenece a la empresa

El usuario autenticado no pertenece a la empresa indicada por su sesión.

500El usuario no está activo

El usuario autenticado está inactivo y no puede usar el sistema.

500El usuario no es jefe o empleado

El usuario autenticado no tiene un rol permitido para enviar proformas.

Notas de uso

1

Este endpoint no recibe query params.

2

El envío es inmediato; no se encola ni se persiste una nueva tarea de envío.

3

Usa email o whatsapp exactamente en minúsculas como valor de channel.

4

Para el envío por email, el cliente debe tener un correo electrónico registrado.

5

Para el envío por WhatsApp, el cliente debe tener un número de teléfono registrado.