Creación y envío de emails: define el traspaso
Separa la edición del envío con un contrato de exportación claro, destinatarios validados, revisiones trazables y errores útiles dentro de tu aplicación SaaS.

Un usuario termina su email y pulsa Enviar. Detrás de ese botón, la aplicación puede guardar un borrador, generar HTML, resolver datos personales, registrar una tarea y esperar información de entrega.
La creación y el envío de emails se encuentran en ese punto. Asignar un responsable a cada paso permite explicar los errores y ayuda a evitar que llegue a los destinatarios una versión equivocada.
Distingue el documento del mensaje saliente
El documento editable contiene la estructura: títulos, párrafos, referencias a imágenes y opciones de diseño. Una exportación contiene HTML y una alternativa de texto. Una tarea de envío añade destinatarios, remitente y estados operativos.
Cada elemento tiene una vida diferente. Quizá recuperes el documento para el anuncio del próximo mes mientras conservas intacto el registro del envío anterior. Exportar el borrador actual no debe reescribir lo que consta como enviado.
Weavour gestiona la creación, aloja plantillas e imágenes y exporta HTML. Tu aplicación se ocupa del envío. El método documentado exportHTML() devuelve { html, text, document }; no selecciona una audiencia ni presenta una campaña al proveedor. La documentación de renderizado de React Email también trata la generación del marcado como una operación propia.
Escribe un contrato que pertenezca a tu aplicación
Imagina un anuncio titulado «Nuevo panel de informes». Tu backend podría recibir el identificador del documento, la revisión guardada, el asunto, el HTML, el texto y una selección de audiencia. Es un contrato ilustrativo de la aplicación, no un endpoint ni un formato de solicitud de Weavour.
Lo importante es el significado de cada dato. ¿El asunto procede del borrador actual? ¿El HTML es una instantánea de la revisión 18? ¿Deben resolverse todas las variables antes de presentar la tarea o las sustituirá el sistema de envío para cada contacto?
Deja estas decisiones por escrito. Si alguien modifica el borrador después de aprobarlo, exige otra aprobación o conserva la instantánea ya aprobada. Combinar una autorización antigua con contenido nuevo sin indicarlo produce una situación difícil de entender y de investigar.
Decide los destinatarios en el backend
La aplicación anfitriona conoce al usuario autenticado que solicita el envío, al cliente propietario de la audiencia y a los contactos que cumplen las condiciones. Valida esas relaciones en el servidor en lugar de confiar en identificadores o direcciones enviados desde el navegador.
Mantén allí las credenciales del proveedor. El editor no necesita un secreto de envío para producir el mensaje. En Weavour, userId y organizationId son espacios de nombres declarados, no identidades verificadas; los permisos administrativos deben proceder del contexto autenticado de tu aplicación.
Aplica tus reglas de preferencias y exclusiones cuando conviertas la audiencia en una tarea. Una vista previa preparada antes podría dejar de representar la lista actual. Define cómo tratar esos cambios, sin asumir que puede resolverlos el editor.
Da a cada fallo su propia recuperación
Si falla la exportación, conserva visible el borrador y explica qué preparación requiere atención. Si el backend rechaza la audiencia, permite corregirla sin perder el mensaje. Si una petición al proveedor agota el tiempo de espera, averigua si fue aceptada antes de permitir una nueva presentación.
Utiliza un identificador estable de tarea para que varios clics no creen campañas distintas por accidente. Guarda la revisión de contenido asociada y separa la respuesta del proveedor de los eventos de entrega posteriores.
La aceptación del proveedor no equivale a aparecer en la bandeja de entrada. La explicación de entregabilidad de Amazon SES describe también la importancia de la reputación y la información de retorno. Los estados deben reflejar únicamente lo que puedes confirmar.
Prueba un mensaje a través de todo el recorrido
Para el anuncio del panel de informes, realiza este ejercicio:
- Guarda una revisión y exporta exactamente ese contenido.
- Previsualiza con datos de contacto completos e incompletos.
- Envía a un destinatario interno a través del backend.
- Repite la solicitud y comprueba la política de duplicados.
- Revisa el correo recibido, sus enlaces y su versión de texto.
- Localiza la revisión utilizada desde el registro del envío.
El traspaso es fiable cuando cada componente puede explicar qué aceptó y qué produjo. Dibuja esas responsabilidades antes de conectar el botón Enviar. Después utiliza Weavour como capa de creación dentro del flujo de distribución que controla tu aplicación.

