Configurar el envío de email transaccional

En este artículo te detallamos los datos de conexión técnicos para establecer el servicio de envío por SMTP, pero si quieres una explicación no técnica sobre emails transaccionales con ejemplos y buenas prácticas, échale un vistazo a nuestra guía. 

El uso de Acumbamail como  gateway SMTP te permitirá utilizar nuestros servidores a la hora de entregar a tus usuarios los correos transaccionales que genere tu plataforma web de forma eficaz. Además, Acumbamail te proporcionará estadísticas que te permitirán conocer el comportamiento de tus usuarios hacia estos emails. Este tipo de servicio solamente se puede utilizar con las tarifas de email basadas en el número de emails o paquetes de créditos de prepago y no con tarifas basadas en el número de suscriptores.

Para contratar este servicio, primero tendrás que tener contratada una tarifa por número de envíos de email o un paquete de créditos de prepago, y después contactar con nuestro equipo de soporte para que te habilite el servicio al momento. 

El uso de este servicio únicamente está permitido para el envío de emails transaccionales. Estos envíos son confirmaciones de registro, notificaciones personalizadas al usuario y, en definitiva, cualquier email que sea producto de una interacción directa del usuario con tu plataforma web. Los emails promocionales se pueden enviar utilizando nuestra herramienta de envío de boletines, cuyos precios puedes ver aquí.

Datos de conexión

Para utilizar el servidor de SMTP tienes que elegir autenticación plana. Para poder emplear nuestro servidor de SMTP debes utilizar los siguientes datos de conexión:

Host smtp.acumbamail.com
Puerto 25 (también se puede utilizar el 2525 o 587 como puerto alternativo). Debes usar plain authentication (sin SSL)
Usuario Tu email de usuario de Acumbamail
Contraseña Tu contraseña de Acumbamail o tu auth token

Para comenzar la configuración, dirígete al apartado de SMTP dentro del menú lateral izquierdo de Acumbamail:

menú de smtp

  • En Configurar, haz clic sobre el botón Configurar SMTP podrás acceder a los datos de conexión que necesitas para la integración:

configurar smtp relay

Ejemplos de configuración en distintos lenguajes

Ejemplo de configuración en Django

Para enviar emails a través de Acumbamail con la función send_mail de django, únicamente tendrás que incluir los siguientes parámetros en la configuración (normalmente en settings.py). Recuerda sustituir LOGIN_ACUMBAMAIL y PASSWORD_ACUMBAMAIL por las que correspondan en tu caso.

# settings.py

EMAIL_HOST = 'smtp.acumbamail.com'
EMAIL_HOST_USER = 'LOGIN_ACUMBAMAIL'
EMAIL_HOST_PASSWORD = 'PASSWORD_ACUMBAMAIL'
EMAIL_PORT = 25 #alternative port: 25252

# send_mail call example

send_mail("Subject", "Body", "example@mailfrom.com" , "example@mailto.com", fail_silently=True)<br>

Ejemplo de configuración en Java

Para enviar emails a través de nuestro servidor SMTP utilizando el lenguaje de programación Java puedes hacerlo siguiendo este ejemplo. Recuerda sustituir LOGIN_ACUMBAMAIL y PASSWORD_ACUMBAMAIL por las que correspondan en tu caso.

import javax.mail.*;
import javax.mail.internet.*;
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
import java.util.Properties;

public class test1 {

    private static final String SMTP_HOST_NAME = "smtp.acumbamail.com";
    private static final String SMTP_AUTH_USER = "LOGIN_ACUMBAMAIL";
    private static final String SMTP_AUTH_PWD  = "PASSWORD_ACUMBAMAIL";

    public static void main(String[] args) throws Exception{
       new test1().test();
    }

    public void test() throws Exception{
        Properties props = new Properties();
        props.put("mail.transport.protocol", "smtp");
        props.put("mail.smtp.host", SMTP_HOST_NAME);
        props.put("mail.smtp.port", 25);
        props.put("mail.smtp.auth", "true");
        //props.put("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory");

        Authenticator auth = new SMTPAuthenticator();
        Session mailSession = Session.getDefaultInstance(props, auth);
        // uncomment for debugging infos to stdout
        // mailSession.setDebug(true);
        Transport transport = mailSession.getTransport();

        MimeMessage message = new MimeMessage(mailSession);

        Multipart multipart = new MimeMultipart("alternative");

        BodyPart part1 = new MimeBodyPart();
        part1.setText("Test");

        BodyPart part2 = new MimeBodyPart();
        part2.setContent("Test", "text/html; charset=\"utf-8\"");

        multipart.addBodyPart(part1);
        multipart.addBodyPart(part2);
        message.setHeader("Content-Type","text/html; charset=\"utf-8\""); 
        message.setContent(multipart,"text/alternative");
        message.setHeader("Content-Transfer-Encoding", "8bit");
        message.setFrom(new InternetAddress("EMAILFROM@EXAMPLE.COM"));
        message.setSubject("E desde java ;)");
        message.addRecipient(Message.RecipientType.TO,new InternetAddress("EMAIL_TO1@EXAMPLE.COM"));
        //message.addRecipient(Message.RecipientType.CC, new InternetAddress("EMAIL_TO2@EXAMPLE.COM"));
        transport.connect();
        transport.sendMessage(message,
            message.getRecipients(Message.RecipientType.TO));
        transport.close();
    }

    private class SMTPAuthenticator extends javax.mail.Authenticator {
        public PasswordAuthentication getPasswordAuthentication() {
           String username = SMTP_AUTH_USER;
           String password = SMTP_AUTH_PWD;
           return new PasswordAuthentication(username, password);
        }
    }
}<br>

Ejemplo de configuración en PHP

Para enviar emails a través de nuestro servidor SMTP utilizando el lenguaje de programación PHP puedes hacerlo siguiendo este ejemplo. Recuerda sustituir LOGIN_ACUMBAMAIL y PASSWORD_ACUMBAMAIL por las que correspondan en tu caso.

 require_once 'class.phpmailer.php';
     require_once 'class.smtp.php';
     $mail = new PHPMailer();

     // Limpiamos todos los valores que se pueden establecer
     $mail->ClearAddresses();
     $mail->ClearAllRecipients();
     $mail->ClearAttachments();
     $mail->ClearBCCs();
     $mail->ClearCCs();
     $mail->ClearCustomHeaders();
     $mail->ClearReplyTos();

     // Datos SMTP
     $mail->SMTPAuth = true;
     $mail->IsSMTP();
     $mail->Host = 'smtp.acumbamail.com';
     $mail->Username = 'LOGIN_ACUMBAMAIL';
     $mail->Password = 'PASSWORD_ACUMBAMAIL';
     $mail->From     = 'example@mailfrom.com'
     $mail->FromName = 'Example from name';
     $mail->AddReplyTo('example@mailfrom.com');
     $mail->AddAddress('example@mailto.com');
     $mail->Subject  = G_General::convertCharset("Subject", $charset);
     $mail->CharSet  = strtolower($charset);

     if ($html) {
         $mail->MsgHTML(G_General::convertCharset('Body', $charset));
         $mail->AltBody = '';
     } else {
          //$mail->ContentType = 'text/plain';
          $mail->IsHTML(false); // send as Text
          $mail->Body = strip_tags(G_General::convertCharset('Body', $charset));
     }

     if (isset($data['debug']) && $data['debug']) {
          $mail->SMTPDebug = 2;
          $mail->Debugoutput = 'html';
     }

     if (preg_match('#(,|;)#', $data['to'])) {
          $emails = preg_split('#(,|;)#', $data['to']);
          $res = true;
          foreach ($emails as $k => $email) {
              $email = trim($email);
              $mail->ClearAddresses();
              $mail->AddAddress($data['to']);
              if (!$mail->Send()) {
                  $res = false;
              }
          }
      } 
      else {
          return $mail->Send();
      }

      return $res;

Una vez tengas configurado el envío por SMTP, te recomendamos que crees categorías de emails para poder clasificar el volumen de emails enviados y poder analizar su rendimiento individualmente. Te explicamos cómo hacerlo con ejemplos en distintos lenguajes en este artículo.

Activar webhooks para email transaccional

Desde el apartado de Webhooks dentro de SMTP en el menú lateral, podrás configurar webhooks para email transaccional para sincronizar tu base de datos con Acumbamail y así recibir alertas cuando haya cambios. Accede al paso a paso en este enlace

Envío de emails

Al igual que en la modalidad de envío de boletines desde la interfaz de Acumbamail, también con los emails transaccionales podrás hacer uso de nuestro editor drag & drop con el que podrás personalizar a tu gusto más de 260 plantillas predeterminadas.

Los pasos para editar tu email transaccional son los siguientes:

  • Dentro de SMTP, dirígete al apartado de Plantillas. Por defecto, aparecerán las plantillas que ya hayas estado modificando en el apartado de  Boletines si también haces uso de este servicio. Puedes modificar directamente una ya utilizada o si no, hacer clic en el botón de arriba de Nueva Plantilla

plantillas para email transaccional

  • Una vez hagas clic, tendrás dos opciones:
    • Editar a tu gusto una de nuestras más de 260 plantillas personalizadas. En el menú desplegable de la derecha puedes ver las plantillas predeterminadas para notificaciones, que pueden ser las que más se adapten a tus necesidades en este caso. Cuando selecciones una, podrás ponerle un nombre y acceder al editor de plantillas (en este artículo te explicamos cómo funciona el editor). 
    • Importar una plantilla HTML propia, haciendo clic en la pestaña de Importar. Tienes más información sobre importación de plantillas en este artículo

Informes de SMTP

Cuando empieces a enviar tus emails transaccionales, toda la información pasará por nosotros, por lo que puedes acceder a estadísticas detalladas en tiempo real desde el apartado de Informes dentro de SMTP. A continuación, te explicamos qué datos puedes extraer de aquí:

Resumen

En esta vista podrás seleccionar el rango de fechas para comparar tus resultados:

Estado de los correos enviados:

  • Sin abrir: suscriptores (emails receptores) que no han abierto tu correo
  • Abiertos: suscriptores que sí han abierto tu correo
  • Hard bounces (rebotes duros): emails que han dado error de envío porque no existen (típicamente porque la dirección tiene una errata o el email ha dejado de existir). Una vez estos emails se marquen como rebote duro, ya no les enviarás más en próximos envíos automáticamente
  • Soft bounces (rebotes blandos): emails que han dado un error de envío puntual. Cuando se produce un soft bounce, el servidor hará otro (u otros) intentos posteriores de entrega, generalmente después de que el resto de la campaña se haya mandado correctamente. Que una dirección de correo sea un soft bounce en un envío concreto no quiere decir que vaya a figurar siempre como rebote en posteriores envíos. 
  • Quejas: veces en las que la persona que ha recibido tu envío lo ha marcado manualmente como spam. Ya no enviarás automáticamente más emails a esta dirección de correo. 

informes emails transaccionales

Tienes más información sobre métricas de email marketing en este artículo de nuestro blog.

Seguimiento de URL

En este apartado podrás llevar un seguimiento de todas las URL que hayas incluido en tus emails transaccionales. 

Detalles de suscriptores

Desde Detalles suscriptores podrás acceder a una vista email por email del estado de los correos entregados en la fecha que selecciones. Podrás distinguir a los suscriptores por estado (abiertos, sin abrir, soft bounces, hard bounces, quejas o todos).