Việc tích hợp Brevo (trước đây là Sendinblue) vào website WordPress để quản lý email marketing, form liên hệ hay tự động hóa gửi thông báo là giải pháp phổ biến. Tuy nhiên, trong quá trình kết nối, nhiều người dùng gặp phải lỗi WordPress Brevo API lỗi khiến hệ thống ngừng hoạt động. Các mã lỗi thường thấy như 401, 403, 500, timeout hoặc thông báo “API key invalid” xuất hiện ngay sau khi cài plugin hoặc cấu hình module. Bài viết này phân tích chi tiết từng nguyên nhân gây ra lỗi Brevo API trong WordPress và hướng dẫn bạn cách sửa lỗi dứt điểm.
Bản chất của lỗi WordPress Brevo API

Lỗi WordPress Brevo API xảy ra khi website WordPress không thể giao tiếp chính xác với máy chủ của Brevo thông qua API (Application Programming Interface). Quá trình này bao gồm việc gửi yêu cầu (request) từ plugin hoặc theme đến endpoint của Brevo, mã hóa dữ liệu, xác thực bằng API key, và nhận phản hồi (response). Nếu bất kỳ bước nào bị gián đoạn, lỗi sẽ xuất hiện.
Các thành phần tham gia vào quá trình kết nối
- Plugin tích hợp Brevo: Các plugin như Brevo (Sendinblue), WP Mail SMTP, Contact Form 7 kết nối với Brevo API.
- API key: Mã xác thực duy nhất cấp từ tài khoản Brevo.
- Endpoint API: URL cụ thể của Brevo (https://api.brevo.com/v3/…).
- Môi trường WordPress: PHP version, thư viện cURL, SSL certificate, firewall.
- Dữ liệu gửi đi: Định dạng JSON, nội dung email, danh sách người nhận.
- Đăng nhập tài khoản Brevo, vào Settings → API Keys.
- Chọn Create a new API key (v3).
- Copy key mới, dán vào plugin – xóa khoảng trắng thừa.
- Kiểm tra quyền của key: Bật tất cả các quyền (full access) để loại trừ lỗi thiếu quyền.
Phân loại lỗi WordPress Brevo API thường gặp
1. Lỗi xác thực (401 – Unauthorized / Invalid API Key)
Lỗi phổ biến nhất khi nhập sai API key hoặc key bị thu hồi. Brevo yêu cầu API key v3 (dạng xkeys-xxxxxxxx). Nếu bạn copy nhầm ký tự, thêm khoảng trắng, hoặc sử dụng key cũ (v2), WordPress sẽ trả về lỗi 401.
2. Lỗi giới hạn tần suất (429 – Too Many Requests)
Brevo áp dụng rate limit: tối đa 10 request/giây đối với tài khoản miễn phí. Khi plugin gửi quá nhiều yêu cầu cùng lúc (ví dụ gửi hàng loạt email xác nhận đơn hàng), API từ chối phục vụ.
3. Lỗi kết nối mạng (cURL error 28 – Timeout)
Máy chủ WordPress không thể kết nối đến Brevo API do network timeout. Nguyên nhân có thể do firewall chặn IP, DNS không phân giải được tên miền, hoặc thời gian chờ cài đặt quá thấp trong PHP.
4. Lỗi SSL (cURL error 60 – SSL certificate problem)
PHP cURL không xác minh được chứng chỉ SSL của Brevo. Thường xảy ra khi máy chủ có bộ CA certificate lỗi thời hoặc bị tắt verify peer.
5. Lỗi cú pháp dữ liệu (400 – Bad Request)
Dữ liệu gửi lên Brevo không đúng định dạng JSON, thiếu trường bắt buộc (như sender email, subject, content) hoặc sai kiểu dữ liệu (ví dụ gửi integer thay vì string).
Nguyên nhân sâu xa gây ra lỗi Brevo API trong WordPress

Sai sót trong cấu hình plugin
Hầu hết các plugin Brevo đều có trường nhập API key. Nếu bạn nhập key không đúng vùng (ví dụ key của tài khoản EU nhưng plugin gọi đến endpoint US), lỗi xuất hiện. Một số plugin yêu cầu nhập cả List ID hoặc Custom Fields, nếu thiếu thông tin này, API trả về lỗi 400.
Xung đột giữa các plugin bảo mật
Plugin bảo mật như Wordfence, Sucuri, iThemes Security có thể chặn các request đến domain api.brevo.com. Họ coi đây là hành vi đáng ngờ và block ngay lập tức.
Giới hạn từ hosting
Hosting giá rẻ thường có cấu hình PHP hạn chế: max_execution_time thấp (30 giây), memory_limit nhỏ hoặc disable các hàm gọi ra ngoài như file_get_contents, curl_exec. Các plugin Brevo cần thực hiện nhiều request nên dễ timeout.
API key không có quyền truy cập
Khi tạo API key trong Brevo, bạn cần cấp quyền cho từng module (Email Campaigns, Transactional Email, SMS, Contacts…). Nếu key chỉ có quyền gửi email nhưng plugin lại gọi API quản lý danh bạ, bạn nhận lỗi 403 Forbidden.
Hướng dẫn khắc phục từng loại lỗi WordPress Brevo API
Bước 1: Kiểm tra và tạo lại API key
Bước 2: Kiểm tra kết nối mạng và SSL
Cài plugin WP Crontrol hoặc Query Monitor để test gọi API thủ công. Hoặc dùng file PHP tạm thời trong thư mục gốc WordPress:
<?php
$api_key = 'xkeys-...';
$ch = curl_init('https://api.brevo.com/v3/account');
curl_setopt($ch, CURLOPT_HTTPHEADER, ['api-key:'.$api_key]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
$response = curl_exec($ch);
echo curl_error($ch);
curl_close($ch);?>
Nếu ra lỗi SSL, cập nhật CA bundle hoặc tạm thời set CURLOPT_SSL_VERIFYPEER = false để debug (không dùng lâu dài).
Bước 3: Tăng thời gian chờ và giới hạn PHP
Thêm vào file wp-config.php
set_time_limit(300);
define('WP_MEMORY_LIMIT', '512M');
Hoặc yêu cầu hosting tăng max_execution_time lên 120 giây, max_input_time 120.
Bước 4: Gỡ bỏ plugin gây xung đột
Tạm thời vô hiệu hóa tất cả plugin bảo mật, plugin tối ưu tốc độ (W3 Total Cache, WP Rocket) và plugin caching email. Sau đó kích hoạt lại từng cái để xác định thủ phạm.
| Lỗi thường gặp | Nguyên nhân chính | Cách xử lý nhanh |
|---|---|---|
| 401 Unauthorized | API key sai hoặc hết hạn | Tạo key mới, copy chính xác |
| 403 Forbidden | Key không có quyền | Cấp full access trong Brevo |
| 429 Too Many Requests | Gửi quá nhiều request | Giảm tần suất, dùng hàng đợi (queue) |
| cURL error 28 | Timeout do hosting | Tăng max_execution_time |
| cURL error 60 | SSL certificate | Cập nhật CA bundle |
Những sai lầm thường gặp khi xử lý lỗi Brevo API

Không kiểm tra nhật ký lỗi
Nhiều người dùng chỉ nhìn vào thông báo “Lỗi API” mà không xem log chi tiết. Plugin như WP Mail SMTP hay Brevo thường ghi log trong tab Email Log. Hãy mở log để đọc mã lỗi chính xác (401, 403, 400…).
Dùng API key của tài khoản người khác hoặc key demo
Một số hướng dẫn cũ chia sẻ key công khai. Brevo vô hiệu hóa key đó ngay lập tức khi phát hiện sử dụng trái phép. Luôn dùng key từ tài khoản của bạn.
Cập nhật plugin không tương thích
Plugin Brevo cũ (phiên bản dưới 3.x) sử dụng API v2 đã ngừng hoạt động từ năm 2022. Nếu bạn vẫn dùng plugin cũ, hãy cập nhật lên phiên bản mới nhất hỗ trợ API v3.
Ứng dụng thực tế: Tích hợp Brevo API vào WooCommerce
Khi bật tính năng gửi email xác nhận đơn hàng qua Brevo trên WooCommerce, lỗi WordPress Brevo API thường xuất hiện ở bước thanh toán. Nguyên nhân là do WooCommerce gọi API ngay khi khách hàng nhấn “Đặt hàng”, trong khi đó Brevo chưa kịp nhận dữ liệu đầy đủ. Giải pháp: Cấu hình WooCommerce gửi email theo hàng đợi (queue) thay vì realtime, sử dụng Action Scheduler hoặc WP Cron.
Lưu ý quan trọng khi sử dụng Brevo API với WordPress

- Luôn sử dụng API key v3, không dùng SMTP credentials (password) để gọi API.
- Kiểm tra tài khoản Brevo còn hoạt động: tài khoản miễn phí bị khóa nếu không hoạt động 30 ngày.
- Không gửi test email quá nhiều lần – dễ bị rate limit và khóa tạm thời.
- Đối với các lỗi 500 Internal Server Error, kiểm tra PHP error log tại hosting để xem lỗi cụ thể từ WordPress.
- Nếu dùng child theme hoặc custom code, đảm bảo code gọi API tuân thủ cú pháp của Brevo API v3.
Câu hỏi thường gặp (FAQ) về lỗi WordPress Brevo API
Lỗi “cURL error 28: Operation timed out after 5001 milliseconds” xử lý thế nào?
Lỗi này cho thấy server WordPress không thể kết nối tới Brevo trong 5 giây. Tăng thời gian timeout lên 30 giây bằng cách thêm vào theme functions.php: add_filter('http_request_timeout', function(){ return 30; });. Nếu vẫn lỗi, hãy kiểm tra firewall hoặc dùng IP tĩnh của Brevo (https://developers.brevo.com/docs/information-about-ip-addresses).
Plugin Brevo báo “API key invalid” nhưng key vẫn đúng, tại sao?
Key có thể đã hết hạn hoặc bị thu hồi do thay đổi mật khẩu tài khoản Brevo. Hãy tạo key mới trong phần Settings. Ngoài ra, kiểm tra xem bạn có đang dùng key cho môi trường sandbox (test) thay vì production không.
Sau khi chuyển hosting, Brevo API ngừng hoạt động, sửa thế nào?
Hosting mới thường có IP khác. Brevo có thể chặn IP lạ. Thêm IP của hosting mới vào whitelist trong Brevo Settings → API Keys → Allowed IPs. Đồng thời kiểm tra DNS propagation nếu hosting mới thay đổi nameserver.
Có cách nào để xem log chi tiết các request đến Brevo không?
Cài plugin WP Mail SMTP hoặc Brevo Pro (bản trả phí), chúng cung cấp log gửi email chi tiết. Nếu dùng plugin free, bạn có thể bật WP_DEBUG trong wp-config.php: define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); và xem file debug.log.
Kết luận

Lỗi WordPress Brevo API có nhiều nguyên nhân từ sai cấu hình, API key không hợp lệ, xung đột plugin đến giới hạn hosting. Để khắc phục, bạn cần xác định chính xác mã lỗi (401, 403, 429, timeout) và áp dụng giải pháp tương ứng. Quan trọng nhất là kiểm tra log, tạo API key mới, tăng tài nguyên máy chủ và đảm bảo tính tương thích phiên bản. Sau khi sửa lỗi, hãy kiểm tra toàn bộ luồng gửi email tự động (đăng ký, đơn hàng, form liên hệ) để đảm bảo Brevo hoạt động ổn định. Nếu vẫn không tự khắc phục được, liên hệ bộ phận hỗ trợ của Brevo và cung cấp log lỗi để họ giúp bạn debug sâu hơn. Một hệ thống email marketing không lỗi sẽ giúp bạn duy trì tỷ lệ gửi thành công cao và tối ưu chiến dịch kinh doanh trên WordPress.
- Cách khắc phục lỗi WordPress Remote Access Denied triệt để và nhanh chóng
- Khắc phục lỗi WordPress OpenLiteSpeed rewrite: Hướng dẫn chi tiết từ A-Z cho người quản trị web
- Plugin WordPress Premium: Giải Pháp Tối Ưu Cho Website Chuyên Nghiệp
- Xử Lý WordPress Lazy Load Conflict: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
- WordPress Email Bị Lỗi: Nguyên Nhân Và Cách Khắc Phục Triệt Để (2025)














