Hướng dẫn cấu hình kết nối - tích hợp SMTP Zozo EMA

Zozo EMA cung cấp giải pháp gửi email marketing qua API. Ngoài việc tích hợp trực tiếp qua REST API, Zozo EMA còn hỗ trợ gửi email qua giao thức SMTP — cho phép bất kỳ ứng dụng, website, CRM hay phần mềm nào có hỗ trợ SMTP đều có thể gửi email thông qua hạ tầng Zozo EMA mà không cần viết code tích hợp API.

1. Tổng quan giải pháp

SMTP Relay của Zozo EMA hoạt động như một cổng trung gian: nhận email từ ứng dụng của bạn qua giao thức SMTP chuẩn, sau đó tự động chuyển tiếp qua hệ thống API của Zozo EMA để gửi đi.

Ưu điểm:

  • Không cần lập trình — chỉ cần cấu hình thông số SMTP là xong
  • Tương thích mọi nền tảng — WordPress, CRM, ERP, ứng dụng PHP, Python, Go, .NET, Java...
  • Sử dụng chung api_token — không cần tạo thêm tài khoản SMTP riêng
  • Hỗ trợ đầy đủ — CC, BCC, đính kèm file, Reply-To, HTML email

2. Thông số cấu hình SMTP

Thông số Giá trị Ghi chú
SMTP Host ema-smtp.zozo.vn Máy chủ SMTP Relay
SMTP Port 587 Port chuẩn cho SMTP submission
Username Email đăng ký trên Zozo EMA Ví dụ: contact@congty.com
Password API Token Lấy tại: Zozo EMA → API token
Encryption None Không yêu cầu TLS/SSL
Authentication Yes (LOGIN hoặc PLAIN) Bắt buộc xác thực

3. Lấy API Token

  1. Đăng nhập vào Zozo EMA tại https://appv4.zozo.vn
  2. Vào menu Trang chủ → API token
  3. Copy giá trị API token — đây chính là SMTP Password
  4. Ghi nhớ email đăng ký — đây chính là SMTP Username

Lưu ý: Nếu cần đổi token mới, nhấn nút "Làm mới Token". Token cũ sẽ ngừng hoạt động ngay lập tức.

4. Các trường dữ liệu được hỗ trợ

Khi gửi email qua SMTP, hệ thống tự động nhận diện và chuyển đổi các trường thông tin sau:

Trường email Mô tả Bắt buộc
From Địa chỉ và tên người gửi. Ví dụ: "Công ty ABC"
To Người nhận chính. Hỗ trợ nhiều người, phân cách bằng dấu phẩy
Subject Tiêu đề email
CC Người nhận bản sao. Hỗ trợ nhiều người, phân cách bằng dấu phẩy Không
BCC Người nhận ẩn. Hỗ trợ nhiều người, phân cách bằng dấu phẩy Không
Reply-To Địa chỉ nhận phản hồi (nếu khác From) Không
Body (HTML) Nội dung email định dạng HTML
Body (Text) Nội dung email dạng text thuần (tự chuyển sang HTML nếu không có HTML) Không
Attachments File đính kèm (tự động encode base64) Không

5. Hướng dẫn tích hợp cụ thể


5.1. WordPress (WP Mail SMTP Plugin)

WordPress mặc định gửi email qua hàm wp_mail() sử dụng PHP mail. Để chuyển sang Zozo EMA, cài plugin WP Mail SMTP:

  1. Cài plugin: Plugins → Add New → Tìm "WP Mail SMTP" → Install → Activate
  2. Vào WP Mail SMTP → Settings
  3. Chọn mailer: Other SMTP
  4. Điền thông số:
    • SMTP Host: ema-smtp.zozo.vn
    • Encryption: None
    • SMTP Port: 587
    • Authentication: On
    • SMTP Username: email_dang_ky@congty.com
    • SMTP Password: API_TOKEN_CUA_BAN
  5. Mục From Email: điền email đăng ký trên Zozo EMA
  6. Mục From Name: điền tên hiển thị (bắt buộc)
  7. Nhấn Save Settings
  8. Vào tab Email Test để gửi thử

5.2. Getfly CRM

Getfly CRM hỗ trợ cấu hình SMTP tùy chỉnh để gửi email từ hệ thống CRM:

  1. Đăng nhập Getfly CRM
  2. Vào Cài đặt → Email → Cấu hình SMTP
  3. Điền thông số:
    • SMTP Server: ema-smtp.zozo.vn
    • Port: 587
    • Bảo mật: Không (None)
    • Tên đăng nhập: email_dang_ky@congty.com
    • Mật khẩu: API_TOKEN_CUA_BAN
  4. Nhấn LưuGửi thử để kiểm tra

5.3. MISA AMIS CRM

MISA AMIS cho phép cấu hình SMTP để gửi email marketing và email tự động:

  1. Đăng nhập MISA AMIS
  2. Vào Thiết lập → Email → Cấu hình máy chủ gửi mail
  3. Chọn Máy chủ SMTP tùy chỉnh
  4. Điền thông số:
    • Máy chủ SMTP: ema-smtp.zozo.vn
    • Cổng: 587
    • Mã hóa: Không
    • Tên đăng nhập: email_dang_ky@congty.com
    • Mật khẩu: API_TOKEN_CUA_BAN
  5. Nhấn Kiểm tra kết nối rồi Lưu

5.4. PHP (PHPMailer)

PHPMailer là thư viện gửi email phổ biến nhất cho PHP. Cài qua Composer:

composer require phpmailer/phpmailer

Code mẫu:

isSMTP();
    $mail->Host       = 'ema-smtp.zozo.vn';
    $mail->Port       = 587;
    $mail->SMTPAuth   = true;
    $mail->Username   = 'email_dang_ky@congty.com';   // Email đăng ký Zozo EMA
    $mail->Password   = 'API_TOKEN_CUA_BAN';           // API Token
    $mail->SMTPSecure = false;
    $mail->SMTPAutoTLS = false;
    $mail->CharSet    = 'UTF-8';

    // Người gửi
    $mail->setFrom('email_dang_ky@congty.com', 'Tên Công Ty');
    $mail->addReplyTo('hotro@congty.com', 'Bộ phận hỗ trợ');

    // Người nhận
    $mail->addAddress('nguoinhan@example.com', 'Nguyễn Văn A');
    $mail->addCC('cc1@example.com', 'Người CC 1');
    $mail->addCC('cc2@example.com');
    $mail->addBCC('bcc@example.com');

    // Nội dung
    $mail->isHTML(true);
    $mail->Subject = 'Xác nhận đơn hàng #12345';
    $mail->Body    = '

Cảm ơn bạn đã đặt hàng!

Đơn hàng #12345 đã được xác nhận.

'; // Đính kèm file (tùy chọn) $mail->addAttachment('/path/to/hoadon.pdf', 'HoaDon_12345.pdf'); $mail->send(); echo 'Gửi email thành công!'; } catch (Exception $e) { echo "Lỗi: {$mail->ErrorInfo}"; }

5.5. Python

Python hỗ trợ SMTP sẵn qua thư viện chuẩn smtplib, không cần cài thêm gì:

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email import encoders

# Cấu hình
SMTP_HOST = 'ema-smtp.zozo.vn'
SMTP_PORT = 587
SMTP_USER = 'email_dang_ky@congty.com'    # Email đăng ký Zozo EMA
SMTP_PASS = 'API_TOKEN_CUA_BAN'            # API Token

# Tạo email
msg = MIMEMultipart()
msg['From'] = 'Tên Công Ty '
msg['To'] = 'nguoinhan@example.com'
msg['Cc'] = 'cc1@example.com,cc2@example.com'
msg['Subject'] = 'Thông báo từ Python'
msg['Reply-To'] = 'hotro@congty.com'

# Nội dung HTML
html = '

Xin chào!

Email gửi từ Python qua Zozo EMA.

' msg.attach(MIMEText(html, 'html', 'utf-8')) # Đính kèm file (tùy chọn) with open('/path/to/tailieu.pdf', 'rb') as f: attachment = MIMEBase('application', 'octet-stream') attachment.set_payload(f.read()) encoders.encode_base64(attachment) attachment.add_header( 'Content-Disposition', 'attachment', filename='TaiLieu.pdf' ) msg.attach(attachment) # Gửi all_recipients = ['nguoinhan@example.com', 'cc1@example.com', 'cc2@example.com'] with smtplib.SMTP(SMTP_HOST, SMTP_PORT) as server: server.login(SMTP_USER, SMTP_PASS) server.sendmail(SMTP_USER, all_recipients, msg.as_string()) print('Gửi thành công!')

5.6. Go (Golang)

Go hỗ trợ SMTP qua package chuẩn net/smtp:

package main

import (
    "fmt"
    "net/smtp"
    "strings"
)

func main() {
    // Cấu hình
    host := "ema-smtp.zozo.vn"
    port := "587"
    user := "email_dang_ky@congty.com"  // Email đăng ký Zozo EMA
    pass := "API_TOKEN_CUA_BAN"          // API Token

    // Email
    from := "email_dang_ky@congty.com"
    to := []string{"nguoinhan@example.com"}
    cc := []string{"cc1@example.com", "cc2@example.com"}

    // Nội dung
    subject := "Thông báo từ Go"
    htmlBody := "

Xin chào!

Email gửi từ Go qua Zozo EMA.

" // Build MIME message var msg strings.Builder msg.WriteString("From: Tên Công Ty <" + from + ">\r\n") msg.WriteString("To: " + strings.Join(to, ",") + "\r\n") msg.WriteString("Cc: " + strings.Join(cc, ",") + "\r\n") msg.WriteString("Subject: " + subject + "\r\n") msg.WriteString("MIME-Version: 1.0\r\n") msg.WriteString("Content-Type: text/html; charset=UTF-8\r\n") msg.WriteString("\r\n") msg.WriteString(htmlBody) // Tất cả người nhận allRecipients := append(to, cc...) // Gửi auth := smtp.PlainAuth("", user, pass, host) err := smtp.SendMail(host+":"+port, auth, from, allRecipients, []byte(msg.String())) if err != nil { fmt.Println("Lỗi:", err) return } fmt.Println("Gửi thành công!") }

5.7. Laravel

Chỉ cần sửa file .env của project Laravel:

MAIL_MAILER=smtp
MAIL_HOST=ema-smtp.zozo.vn
MAIL_PORT=587
MAIL_USERNAME=email_dang_ky@congty.com
MAIL_PASSWORD=API_TOKEN_CUA_BAN
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=email_dang_ky@congty.com
MAIL_FROM_NAME="Tên Công Ty"

Gửi email trong code Laravel:

use Illuminate\Support\Facades\Mail;
use Illuminate\Mail\Message;

Mail::raw('Nội dung email', function (Message $message) {
    $message->to('nguoinhan@example.com')
            ->cc(['cc1@example.com', 'cc2@example.com'])
            ->bcc('bcc@example.com')
            ->subject('Email từ Laravel qua Zozo EMA');
});

5.8. OpenCart

Vào System → Settings → chọn Store → tab Mail:

  • Mail Protocol: SMTP
  • SMTP Hostname: ema-smtp.zozo.vn
  • SMTP Port: 587
  • SMTP Username: email_dang_ky@congty.com
  • SMTP Password: API_TOKEN_CUA_BAN
  • SMTP Timeout: 30

6. Lưu ý quan trọng

  • From Name bắt buộc — Luôn cấu hình tên người gửi (From Name). Nếu không có, hệ thống sẽ tự lấy phần trước @ của email làm tên.
  • Không cần TLS/SSL — Kết nối SMTP hiện tại không yêu cầu mã hóa. Nếu ứng dụng bắt buộc chọn, hãy chọn "None" hoặc "No encryption".
  • Giới hạn gửi — Rate limit mặc định 60 email/phút. Liên hệ Zozo EMA nếu cần nâng giới hạn.
  • Kích thước tối đa — Email + đính kèm tối đa 25MB.
  • Bảo mật API Token — Không chia sẻ API Token công khai. Nếu nghi ngờ bị lộ, vào Zozo EMA nhấn "Làm mới Token" để tạo token mới.

7. Xử lý lỗi thường gặp

Lỗi Nguyên nhân Cách khắc phục
535 Auth failed Sai email hoặc API Token Kiểm tra lại Username (email) và Password (API Token) trên Zozo EMA
550 API 422 Thiếu trường bắt buộc Đảm bảo có From Name, To, Subject và nội dung email
452 Too many messages Vượt giới hạn gửi Giảm tốc độ gửi hoặc liên hệ nâng rate limit
Connection timeout Không kết nối được server Kiểm tra firewall cho phép kết nối ra port 587
Connection refused Server SMTP không hoạt động Liên hệ bộ phận kỹ thuật Zozo EMA

8. Hỗ trợ

Nếu cần hỗ trợ kỹ thuật trong quá trình tích hợp:


Cảm ơn bạn đã chia sẻ ý kiến

Bạn có câu hỏi cần giải đáp

Gửi ngay câu hỏi cho chúng tôi để nhận được những tư vấn, giải đáp hữu ích nhất

arrow-up