Documentation menu

Contactos y envío desde MailInApp

Además de exportar HTML para tu ESP, puedes enviar correos terminados directamente desde el panel — a un solo contacto, a una selección, o a una lista completa. La entrega sigue pasando por tu propio relé SMTP, así que tu dominio de envío y tu reputación siguen siendo tuyos.

Listas de contactos

La pestaña Contactos contiene tus listas. Cada lista tiene una columna email (eso es lo que la hace enviable) más las columnas que quieras — nombre, plan, ciudad — y cada columna funciona además como una etiqueta de combinación {{field}} en el estudio.

Una lista de contactos es una fuente de datos como cualquier otra. Conéctala en el panel de Datos del estudio con el rol de Audiencia, y se convierte tanto en el destino del correo como en el origen de los valores por destinatario de las etiquetas de combinación simples {{field}} — el lienzo se previsualiza con datos de contacto reales. Mira Fuentes de datos y etiquetas de combinación.

Importar un CSV

¿Ya tienes tus contactos en otro lugar? Importar CSV (en la pestaña Contactos, o dentro de una lista para agregarlos a ella) acepta los archivos que exportan los ESP y las hojas de cálculo: separados por comas, punto y coma o tabulaciones, con una fila de encabezado. Se manejan valores entre comillas, BOM de Excel y escapes "".

Los nombres del encabezado se convierten en tus columnas. Si ninguna columna se llama email, la importación busca la columna que realmente contiene direcciones (por ejemplo, "E-Mail Address") y la usa como columna de correo. Nada se guarda hasta que confirmes, así que puedes revisar — y corregir — la tabla primero.

Exportar un CSV

Descargar CSV en una lista (y en el panel de supresión) te da una copia de respaldo en cualquier momento — útil antes de un envío grande filtrado, o simplemente para conservar una copia fuera de la plataforma. Vuelve a pasar por el mismo importador de arriba.

Configura el envío una sola vez

Los envíos directos necesitan un método de envío configurado en Configuración, de una de dos formas:

  • ¿Aún no tienes un ESP? Verifica tu propio dominio y MailInApp envía en tu nombre — sin credenciales SMTP que generar ni rotar. Esta es la opción recomendada por defecto si aún no tienes un proveedor con capacidad SMTP.
  • ¿Ya tienes un ESP? Apunta MailInApp a su relé SMTP — SendGrid, Brevo, Mailgun, Amazon SES, incluso una contraseña de aplicación de Gmail para pruebas pequeñas. Funciona con cualquier proveedor que tenga un endpoint SMTP. Usa Probar y guardar para verificar la conexión antes de tu primer envío. Tu contraseña SMTP es una credencial: se almacena solo del lado del servidor y vuelve enmascarada en todas partes.

Ambos métodos alimentan el mismo flujo de envío — los envíos manuales, los envíos programados y todo lo demás en esta página se comportan de forma idéntica en ambos casos.

Envía una prueba primero

Antes de enviar a tu lista, usa Enviar prueba para enviarte (o enviarle a cualquiera) una copia totalmente renderizada. Viene prellenada con el correo de tu cuenta, con el prefijo [Test] en el asunto, y lleva un enlace de vista en vivo real y funcional, así que los bloques interactivos son realmente comprobables. Un envío de prueba no toca tu fuente de datos, no cuenta contra el límite de 200 destinatarios, y no aparece en el historial de envíos.

Enviar

Desde la tarjeta de un correo en el panel, pulsa Enviar:

  1. Los destinatarios provienen de la audiencia del correo — la lista de contactos conectada con el rol de Audiencia en el panel de Datos del estudio. ¿Aún no hay ninguna lista vinculada? Elige una ahí mismo.
  2. Elige a todos, o marca contactos individuales — enviar a un solo contacto es solo una selección de una fila. Las filas a las que ya les enviaste se etiquetan con la fecha de su último envío, así no pierdes de vista a quién ya alcanzaste (esto es solo informativo — no cambia tu selección por ti).
  3. Define el asunto (las etiquetas de combinación también funcionan ahí, y ✨ Sugerir redacta algunas opciones con IA — mira Texto asistido por IA) y envía.

Cada destinatario recibe su propio correo compilado: etiquetas de combinación resueltas desde su fila, y un enlace de vista en vivo firmado y personal. Los bloques interactivos se renderizan en su nivel de alternativa estática con interacciones basadas en enlaces primero. Las opciones de encuesta y las calificaciones son enlaces que confirman antes de registrarse; los formularios y los carruseles abren la vista en vivo alojada. El correo funciona en todos los clientes, y nunca se registra nada a partir de una simple precarga de enlace.

Prueba A/B

Agrega hasta 4 variantes más (de 2 a 5 en total) para hacer una prueba dividida de un envío. Cada variante puede cambiar el asunto, la identidad del remitente, o, apuntándola a un proyecto distinto, todo el contenido del correo. Cada destinatario se asigna de forma determinista a una variante según su dirección de correo, así que los reintentos y reenvíos nunca reordenan quién vio cuál.

Opcionalmente activa Elegir un ganador automáticamente para enviar primero solo a una muestra y que MailInApp envíe la variante con mejor rendimiento a todos los demás una vez que lleguen suficientes datos. Mira Prueba A/B y ganadores automáticos. Los envíos recurrentes siguen siendo de una sola variante por ahora; no hay selector de variantes en el formulario de programación.

Segmenta tu audiencia

Encima de la lista de destinatarios, Filtro de audiencia construye una regla (por ejemplo, ticket_status = Resolved y resolved_date dentro de los últimos 7 días) contra los campos de tu fuente de datos, y luego Aplicar filtro a la selección ajusta tu selección a lo que coincida en ese momento — un segmento dinámico en lugar de una elección manual puntual. Combina reglas con Y/O de la misma forma en que ya lo haces para las condiciones de visibilidad de un bloque en el estudio.

Lanza un envío de forma gradual

Lanzamiento gradual toma una porción aleatoria de tu selección actual — define un porcentaje y pulsa Muestrear para enviar primero a esa fracción. Una vez que estés satisfecho con los resultados, Seleccionar el resto (aún sin enviar) recoge a todos en la lista que aún no han recibido este correo, así la ola de seguimiento nunca envía dos veces a la muestra.

Oferta de descuento

Una vez que la lista de contactos de una audiencia tiene una tienda Shopify o WooCommerce conectada, la paleta de bloques del estudio ofrece un bloque de Descuento de comercio electrónico — el complemento de un segmento de Historial de compras: identifica a los compradores anteriores, y luego dales algo de verdad. Colócalo en cualquier parte del correo como cualquier otro bloque; es invisible en la paleta hasta que se conecta una tienda.

Define un porcentaje o un monto fijo de descuento, cuántos días permanece válido el código, cuántos días esperar antes de ofrecerle otro al mismo contacto y, opcionalmente, un Alcance — un selector con búsqueda sobre tu catálogo de productos sincronizado — para restringirlo a un solo producto en lugar de a toda la tienda. Justo antes de que se renderice el correo de cada destinatario coincidente, MailInApp genera un código de descuento real, de un solo uso, en tu propia tienda conectada (un código de descuento de Shopify o un cupón de WooCommerce, restringido al correo de ese cliente en particular) y construye la visualización del código y el botón "Comprar ahora" del bloque alrededor de él — no hay ninguna etiqueta de combinación que colocar a mano. Activar Mostrar cuenta regresiva de vencimiento agrega una imagen de cuenta regresiva en vivo a la misma tarjeta, sincronizada con el vencimiento del propio código.

Algunas cosas que vale la pena saber:

  • La redención ocurre por completo en el pago de tu propia tienda — no en el pago del bloque de Producto de MailInApp. Esto es intencional: una audiencia segmentada a partir de compras reales en la tienda ya compra ahí, así que el descuento reutiliza el inventario, los impuestos y las reglas de precios existentes de esa tienda en lugar de un segundo punto de venta.
  • Cada bloque genera códigos y aplica su tiempo de espera de forma independiente, asociado a ese bloque — colocar más de un bloque de descuento en el mismo correo (o reutilizar el bloque entre proyectos) nunca bloquea el código de otro.
  • El pedido de un destinatario sigue atribuyéndose de vuelta a la campaña que envió el código de la misma forma que cualquier otro clic a la tienda — mira Seguimiento de pedidos, pagos e ingresos de Shopify.
  • Si la generación falla para un destinatario (una tienda no está conectada, o un token necesita reconectarse), el correo de ese destinatario se envía igual — solo con la etiqueta de alternativa simple del bloque en lugar de un código real. Nada en un bloque de descuento puede bloquear un envío.
  • Las programaciones recurrentes lo manejan de la misma forma que un envío manual, generando un código nuevo en cada ejecución — una programación de ventana dinámica nunca entrega un código obsoleto de una ejecución anterior.
  • Para un descuento ligado a un producto específico sin ningún filtro de audiencia, el bloque de Producto tiene su propio interruptor independiente de Descuento por producto — mira Descuentos nativos de tienda para comparar ambos, y Códigos de descuento de producto de Shopify / Códigos de descuento de producto de WooCommerce para un recorrido paso a paso.

Envíos recurrentes

Algunas audiencias cambian con el tiempo — "resuelto hace 3–7 días" coincide con filas distintas cada día. Un Envío recurrente vuelve a evaluar tu filtro de audiencia contra las filas actuales de la fuente de datos vinculada en una programación (diaria o semanal, a una hora UTC que elijas). Envía solo a las coincidencias que aún no han recibido este correo, retomando donde quedó la última ejecución. Cada ejecución escribe un registro normal en el historial de envíos, igual que un envío manual. Una programación cuyo relé falla con todos los destinatarios durante tres ejecuciones consecutivas se desactiva automáticamente en lugar de agotar tu lista en silencio.

Una programación también puede ser Una vez (en una fecha) en lugar de una cadencia recurrente — un envío único que se dispara en una fecha específica del calendario y luego se desactiva, en lugar de repetirse. Este es el mismo mecanismo que usa por debajo el botón Programar este envío del Calendario de campañas de 12 meses: elige una fecha en el calendario, y crea una programación única dirigida a ese proyecto para ese día exacto, así no tienes que volver y enviarlo a mano cuando llegue la fecha.

Envía contactos desde tu mesa de ayuda o CRM

En lugar de volver a exportar un CSV antes de cada envío, una lista de contactos puede aceptar envíos directos. Genera una clave de API para la lista en su configuración dentro de la pestaña Contactos, y luego haz que tu propio sistema (una automatización de mesa de ayuda, un flujo de CRM) llame a:

POST /api/datasources/<datasourceId>/rows
Authorization: Bearer <apiKey>
Content-Type: application/json

{ "rows": [{ "email": "[email protected]", "ticket_status": "Resolved" }] }

Las filas se actualizan o insertan según el correo en minúsculas — una dirección conocida se actualiza en el lugar, una nueva se agrega al final — y las filas existentes nunca se reordenan ni se eliminan, ya que la atribución de respuestas es posicional (row:<n>) y reordenar rompería las vinculaciones históricas. Los lotes están limitados a 500 filas y tienen un límite de tasa por clave. La clave se muestra una vez al generarse (o regenerarse) y queda enmascarada en todas partes después, como cualquier otra credencial en MailInApp; Revocar desactiva la integración sin tocar las filas existentes.

Historial de envíos

Cada envío real (no los envíos de prueba) se registra y se muestra encima del selector de destinatarios — fecha, asunto, y cuántos se enviaron, fallaron u omitieron. Nada se elimina nunca del lado del cliente al actualizar; el historial es la fuente de verdad de lo que realmente salió.

Cancelación de suscripción y supresión

El preajuste de Pie de página incluye una etiqueta de combinación {{unsubscribe_url}} que resuelve a una página de cancelación de suscripción de un clic para ese destinatario específico. Cancelar la suscripción es a nivel de cuenta: suprime la dirección de todos los proyectos desde los que envías, no solo del que hizo clic — así un destinatario nunca tiene que darse de baja de cada campaña por separado.

Las direcciones que tu relé SMTP rechaza de forma síncrona en el momento del envío (buzón inválido, rechazo del relé) se suprimen de la misma forma, así una dirección muerta no se vuelve a intentar en cada envío futuro. (Un relé que acepta un mensaje y lo rebota más tarde, de forma asíncrona, no es observable sin un webhook específico del ESP — eso está fuera de alcance por ahora.)

Las direcciones suprimidas muestran una insignia de rebotado o cancelado en la pestaña Contactos. Ambas son reactivables — un buzón lleno o un clic accidental no es necesariamente permanente — y las filas suprimidas se omiten automáticamente (y se reportan por separado de los fallos) en envíos futuros.

Después del envío

Igual que un envío por ESP: las interacciones fluyen hacia las respuestas, agrupadas por contacto, y tu webhook se dispara por cada evento si configuraste uno.

Límites

  • Hasta 200 destinatarios por envío (una lista, una ejecución de una programación recurrente). Para audiencias más grandes, usa el flujo de exportación y ESP; un envío recurrente también simplemente alcanza a quien haya quedado pendiente en su siguiente ejecución.
  • Las filas sin una dirección de correo válida se omiten y se reportan después del envío.
  • Importar un CSV descarta las filas cuya dirección de correo ya apareció antes en ese mismo archivo, así que reimportar una exportación superpuesta no crea envíos duplicados — verás un aviso de "Se omitieron N correo(s) duplicado(s)".
  • La API de envío de contactos limita cada lote a 500 filas.