Vista de formulario que permite definir cuándo, cómo y a través de qué canal se debe enviar un mensaje de recordatorio o solicitud de pago, ya sea sobre un documento o sobre un acuerdo de pago. Cada notificación se envía de forma individual por contacto de cobranza asociado al cliente.

##### Comportamiento general

- El formulario es reactivo al canal seleccionado.
- Los campos visibles y requeridos cambian dinámicamente.
- La validación depende del canal:
    - SMTP → requiere estructura completa de correo.
    - WhatsApp Meta → requiere plantilla aprobada.
    - WhatsApp QR → requiere mensaje libre.
- Al guardar:
    - Se valida la integridad de los datos.
    - Se registra la configuración en el sistema.

##### Casos de uso

- Configurar recordatorios por correo electrónico.
- Enviar notificaciones mediante WhatsApp usando plantillas aprobadas.
- Generar mensajes dinámicos con variables del sistema.
- Definir múltiples configuraciones de envío.

#### Barra de acciones

- *Guardar -* Confirma y guarda los valores ingresados a la base de datos como una configuración de notoficaciones.

#### Campos del formulario

- *Aplica sobre -* Aplica sobre documento o acuerdo. **Requerido**
- *Días -* Días vencido del documento o acuerdo (negativo = antes del vencimiento). **Requerido**
- *Frec. máx. por día -* Máximo de envíos por día.
- *Canal -* Define el medio por el cual se enviará la notificación, determina qué campos adicionales se muestran en el formulario. **Requerido**
- *Campo a utilizar como destinatario -* La resolución del destinatario sigue la precedencia definida: `b_contact_whatsapp` usa `whatsapp` → `telefono`; `b_contact_phone` usa `telefono` → `whatsapp`; `b_contact_email` usa `email`.
- *Recurrente -* Notificar indefinidamente hasta nuevo acuerdo o se salde el documento.
- *Desactivada -* Indica si la notificación está habilitada o desactivada.

![Notificación de cobranza](https://docs.induxsoft.net/es/productos/v12/pieces/cxc/img/cxc_notif.form.png){ style="max-width:100%;" }

#### Tabla de variables posicionales

Permite definir variables dinámicas que serán reemplazadas en el contenido del mensaje al momento del envío.

##### Acciones

- *+ Agregar -* Añade una nueva variable.
- *- Quitar -* Elimina la variable seleccionada.

##### Comportamiento

- Las variables deben definirse en orden.
- Son utilizadas en los campos dinámicos por canal.
- Se reemplazan dinámicamente con información del evento.

##### Variables dinámicas aceptadas

| Variable | Descripción | Ejemplo |
| - | - | - |
| `{{customer_name}}`   | Código del cliente    | CL0001 |
| `{{customer_code}}`   | Nombre del cliente    | Juan Pérez |
| `{{customer_phone}}`  | Teléfono del cliente  | +5219999999999 |
| `{{customer_email}}`  | Correo del cliente    | juan@email.com |
| `{{contact_name}}`    | Nombre del contacto   | Pedro Sánchez |
| `{{contact_email}}`   | Correo del contacto   | pedro@email.com |
| `{{contact_phone}}`   | Teléfono del contacto | - |
| `{{contact_whatsapp}}` | WhatsApp del contacto | +5211234567890 |
| `{{doc_reference}}`   | Referencia del documento | F000001 |
| `{{doc_amount}}`      | Monto total del documento | 300 |
| `{{doc_balance}}`     | Saldo pendiente del documento | 300 |
| `{{doc_due_date}}`    | Fecha de vencimiento del documento | 2026-04-30 |
| `{{doc_currency}}`    | Divisa del documento  | MXN |
| `{{agreement_due_date}}` | Fecha comprometida del acuerdo | 2026-04-20 |
| `{{agreement_amount}}` | Monto acordado       | 150 |
| `{{agreement_balance}}` | Saldo pendiente del acuerdo | 150 |

---

### Canal: SMTP

Configuración de notificaciones para el canal SMTP

#### Campos del formulario

- *Para -* Dirección(es) de correo destinatarias. **Requerido**
- *Asunto -* Título del correo. **Requerido**
- *Cuerpo/Mensaje -* Contenido del correo electrónico. **Requerido**
- *Respuesta (reply) -* Dirección de respuesta.
- *Con copia oculta a (cco) -* Correos en copia oculta.
- *Con copia a (cc) -* Correos en copia visible.

![Configuración - SMTP](https://docs.induxsoft.net/es/productos/v12/pieces/cxc/img/cxc_notif.form.smtp.png){ style="max-width:100%;" }

### Canal: WhatsApp

Configuración de notificaciones para el canal WhatsApp (WhatsApp Business Platform Cloud API).

#### Campos del formulario

- *Para -* Número de teléfono de destino con código de país e indicador de número movil, ej: +52 1 123 456 7890. **Requerido**
- *Id de plantilla aprobada por Meta -* Identificador de plantilla previamente aprobada en WhatsApp Business. **Requerido**

#### Uso de variables posicionales

Las variables dinámicas se manejan como **variables posicionales**, con las siguientes reglas:

- Son **obligatorias** para este canal.
- Deben definirse en el **mismo orden** en que fueron configuradas en la plantilla aprobada por Meta.
- El sistema utiliza estas variables para:
  - Construir los parámetros enviados al servicio de Meta.
  - Sustituir los placeholders definidos en la plantilla.

#### Consideraciones

- El número de variables enviadas se encuentra **limitado** por la plantilla aprobada.
- Solo se enviarán al servicio de Meta las variables definidas en la sección **Variables posicionales**.
- Si el orden o la cantidad no coincide con la plantilla:
  - El envío puede fallar.
  - O el contenido puede generarse incorrectamente.


![Configuración - WhatsApp](https://docs.induxsoft.net/es/productos/v12/pieces/cxc/img/cxc_notif.form.whatsapp.png){ style="max-width:100%;" }

### Canal: WhatsApp QR

Configuración de notificaciones para el canal WhatsApp QR

#### Campos del formulario

- *Para -* Número de teléfono de destino con código de país e indicador de número movil, ej: +52 1 123 456 7890. **Requerido**
- *Mensaje -* Contenido del mensaje a enviar. **Requerido**

![Configuración - WhatsApp](https://docs.induxsoft.net/es/productos/v12/pieces/cxc/img/cxc_notif.form.whatsappqr.png){ style="max-width:100%;" }