Hướng dẫn thiết lập tích hợp Facebook Messenger Conversions API để ghi nhận sự kiện chuyển đổi và tracking khách hàng từ Facebook Ads.
Tích hợp này cho phép:
Gửi sự kiện chuyển đổi (LeadSubmitted, QualifiedLead) về Meta
Tự động tạo/linking AdCallNumber khi có events từ Facebook Ads
Tracking khách hàng qua PSID (Page-Scoped User ID) từ Messenger
Attribution chính xác cho Facebook Ads campaigns
Yêu cầu trước khi bắt đầu
Facebook Business Account: Cần có tài khoản Facebook Business
Facebook Page: Cần có Facebook Page cho doanh nghiệp
Messenger API Integration: Đã tích hợp Messenger API (hoặc sẽ tích hợp)
Bước 1: Tạo Facebook Developer App
Chọn "Business" làm loại app
Điền thông tin:
App Name: Tên app của bạn (ví dụ: "RealCRM Integration")
App Contact Email: Email liên hệ
Bước 2: Cấu hình Permissions
2.1. Thêm Messenger Product
Trong App Dashboard, vào "Add Product"
Tìm "Messenger" và click "Set Up"
Chọn Facebook Page của bạn
2.2. Yêu cầu Advanced Access cho page_events permission
Vào App Dashboard → Settings → Basic
Scroll xuống "App Review" → "Permissions and Features"
Tìm page_events permission
Click "Request Advanced Access"
Điền form yêu cầu:
Use Case: "We need to track conversion events from our CRM system for Facebook Ads optimization"
How will you use this permission?: Mô tả cách bạn sử dụng để track conversions
Submit và chờ approval (thường 1-3 ngày)
Lưu ý: Nếu bạn đã có pages_messaging permission với advanced access, page_events sẽ được tự động approve.
2.3. Yêu cầu "Ads Management Standard Access"
Vào App Dashboard → Settings → Advanced
Tìm "Marketing API" section
Enable "Ads Management Standard Access"
Để đủ điều kiện, bạn cần:
Thực hiện ít nhất 1500 successful Marketing API calls
Bước 3: Lấy Access Token
3.1. User Access Token (cho testing)
Chọn "Get User Access Token"
Chọn permissions: pages_messaging, page_events
3.2. Page Access Token
Vào App Dashboard → Messenger → Settings
Tìm "Access Tokens" section
Token này có quyền page_events nếu đã được approve
3.3. System User Access Token
Vào Business Settings → System Users
Tạo System User mới hoặc sử dụng existing
Assign permissions: pages_messaging, page_events
Generate token và lưu an toàn
Bước 4: Lấy Page ID
Vào Facebook Page của bạn
Scroll xuống tìm "Page ID"
Bước 5: Tạo Dataset (tự động hoặc thủ công)
Tự động (khuyến nghị)
Dataset sẽ được tạo tự động khi gửi event đầu tiên nếu bạn đã cấu hình FACEBOOK_PAGE_ID.
Chọn "Data Sources" → "Add Data Source"
Chọn "Business Messaging" → "Messenger"
Bước 6: Setup Webhook (tùy chọn)
Nếu bạn muốn nhận messages từ Messenger và tự động tạo AdCallNumber:
Vào App Dashboard → Messenger → Settings
Nhập URL: https://app.smartautocrm.vn/api/webhooks/facebook
Verify Token: Tạo một token ngẫu nhiên
Facebook sẽ gửi GET request để verify:
hub.verify_token=<your-token>
hub.challenge=<random-string>
Webhook handler sẽ tự động verify.
Bước 8: Verify Events trong Events Manager
Sau khi gửi events:
Trigger một event (tạo customer, thay đổi status, etc.)
Kiểm tra xem event có xuất hiện không
LeadSubmitted: Tạo customer mới với source = 'AD' và có facebookClickId hoặc facebookPsid
QualifiedLead: Thay đổi customer status thành HOT hoặc SUPERHOT
Troubleshooting
Lỗi: "Invalid access token"
Kiểm tra token có đúng không
Kiểm tra token có expired không
Đảm bảo token có quyền page_events
Lỗi: "Permission denied"
Kiểm tra page_events permission đã được approve chưa
Kiểm tra token có đúng scope không
Lỗi: "Dataset not found"
Tạo dataset thủ công trong Events Manager
Hoặc đảm bảo FACEBOOK_PAGE_ID đã được cấu hình
Events không hiển thị trong Events Manager
Kiểm tra event_id có unique không (deduplication)
Kiểm tra event_time có trong quá khứ không (không quá 7 ngày)
Kiểm tra user_data có đúng format không
Xem logs trong console để debug
Webhook không nhận được messages
Kiểm tra webhook URL có accessible từ internet không
Kiểm tra verify token có đúng không
Kiểm tra Page có được subscribe events chưa
Deduplication: Luôn sử dụng event_id để tránh duplicate events
Event Time: Sử dụng timestamp thực tế khi event xảy ra, không phải khi gửi
Error Handling: Log tất cả errors và retry failed requests
Rate Limiting: Facebook có rate limits, implement retry logic với exponential backoff
Security: Rotate tokens định kỳ và store securely
Monitoring: Monitor event delivery rate và errors
Nếu gặp vấn đề:
Kiểm tra logs trong console
Verify events trong Events Manager
Liên hệ Facebook Support nếu cần