—

Hàng chốt

Thống kê chung

Doanh số

Trước giảm giá

Doanh thu

CP Quảng cáo

Lợi nhuận ròng

Số đơn chốt

Tổng hợp → ( ngày có dữ liệu)

Phân loại đơn hàng

Top sản phẩm

Chưa có dữ liệu

Nguồn đơn hàng

Chưa có dữ liệu

Bảng doanh thu theo ngày

Chưa có dữ liệu — nhấn "Tính lại" để tổng hợp.
Ngày Tổng đơn Thành công Hủy/Hoàn Doanh thu CPQC Lợi nhuận ròng Tăng trưởng

Giá vốn / Doanh thu ( ngày)

Tổng giá bán

Tổng giá vốn

Biên lợi nhuận

Sản phẩm vừa bán (7 ngày)

Chưa có dữ liệu
Sản phẩm SL Doanh thu Ngày gần nhất

Khách hàng vừa mua (7 ngày)

Chưa có dữ liệu
Khách hàng Đơn Tổng chi Lần cuối

Phân tích đơn hàng từ Pancake ( ngày)

Tổng đơn: Doanh thu:
Mã đơn Nguồn Khách hàng Sản phẩm Giá trị COD Tiền cần thu Trạng thái Thời gian
Không có đơn hàng
Trang /

Tổng mẫu mã

Trang /

Tổng có thể bán

Đang tính...

Hết hàng

Đang tính...

mẫu mã hết hàng

Tổng tiền có thể bán

Đang tính...

giá bán × tồn (loại Ẩn/Khoá)

Tổng tiền còn lại

Đang tính...

giá nhập × tồn (loại Ẩn/Khoá)

Sản phẩm Danh mục Giá bán lẻ Giá nhập Tồn kho Trạng thái
Chưa có dữ liệu — đang tải...
Không có sản phẩm nào khớp filter
Trang /
Tổng quan khách hàng
Khách hàng
Tổng chi tiêu
KH mới
KH cũ
Top 5 chi tiêu
Chưa có dữ liệu
Cảnh báo hoàn hàng
KH có đơn hoàn
tỷ lệ KH có ít nhất 1 đơn hoàn
Khách hàng Điện thoại Địa chỉ Số đơn Đơn thành công Tổng chi Đơn hoàn Lần mua cuối
Không có dữ liệu
Trang /
→
Nhân viên hoạt động
trong kỳ đã chọn
Hiệu quả cao nhất
Không có dữ liệu
Tổng doanh thu kỳ
# Nhân viên Tổng đơn Thành công Tỷ lệ Doanh thu Mới/Chờ Đã hủy Hoàn Đơn cuối
Đang tải...
Không có dữ liệu trong kỳ này

Loại nguồn bán

Nền tảng bán hàng (mã âm — ví dụ -1 = Facebook). Mỗi nền tảng có nhiều kênh ở mục Kênh bán bên dưới.

Chưa có dữ liệu — nhấn "Sync loại nguồn".
Mã nguồn Tên Nền tảng Mô tả Số đơn Thao tác

Kênh bán

Trang / tài khoản cụ thể đang được đồng bộ đơn hàng

Chưa có kênh bán — nhấn "Sync kênh bán" để lấy từ Pancake.
Page ID Tên kênh Nền tảng Kích hoạt Số đơn Thao tác

Tài khoản chưa liên kết

Có đơn hàng nhưng chưa có kênh bán tương ứng — nhấn "Thêm" để đưa vào danh sách kênh

Nguồn Tài khoản (ID) Tên Số đơn
Từ đến

Lợi nhuận theo ngày

Ngày Đơn chốt Đơn hoàn Tiền hàng Chiết khấu Phí VC thu của khách Phí trả hàng VC Chi phí QC Doanh số Doanh thu Giá vốn Lợi nhuận Lợi nhuận ròng
Tổng
Facebook
TikTok

Tổng CPQC

Facebook

TikTok

TB / ngày có QC

Ngày Facebook TikTok Tổng CPQC Doanh thu % DT ROAS Lợi nhuận ròng
Tổng
Tổng đánh giá
Phân bổ sao
Đơn hàng Sản phẩm Người mua Đánh giá Nội dung Phản hồi
Không có đánh giá
Trang /
Đánh giá Shopee
Đơn:
Sản phẩm:
Người mua:
Thời gian:
Nội dung:
Phản hồi của shop:
ID: · Đã thông báo:
Chưa có hội thoại.
Đang tải...
Chưa có tin nhắn.
Đang tải...
Chọn 1 hội thoại để xem.
Kênh này chưa hỗ trợ trả lời trực tiếp — chỉ TikTok Shop và Shopee gửi được.
Bạn không có quyền trả lời hội thoại kênh này.
Tài khoản SHOP
Sản phẩm
Tồn kho
Đơn TikTok (30 ngày)
Sản phẩm Tài khoản SHOP ID TikTok Shop Trạng thái Giá Tồn kho Giá trị tồn SKU
Chưa có sản phẩm — bấm "Đồng bộ sản phẩm"
Trang /

TikTok Analytics (Organic)

Bài đăng:

Comment:

Nhật ký lỗi ()

Tăng trưởng trong:

Tổng hợp toàn bộ tài khoản

Tổng lượt view

Tổng followers

Tổng lượt xem profile

Tổng video

Tổng likes

Drafts

Chưa có draft.

Bài đăng ()

Posts (Created on) Views Likes Comments Shares Reach Actions

Bình luận gần đây

Đang tải bình luận…

Chưa có bình luận nào được đồng bộ cho video này.

Đăng bài TikTok (Organic)

ℹ️ Giới hạn TikTok: 6 video/phút, tối đa 15/ngày mỗi tài khoản. Chưa verify domain? Bấm "URL test" để thử flow bằng video mẫu của TikTok.

Chi tiết

# Hashtags · @ Mention

Tự lấy từ video

Cài đặt

📥 Quyết định khi hoàn tất trên app (chế độ Nháp) — chọn được Công khai 🔒 Chỉ mình tôi (app chưa audit nên đăng thẳng = riêng tư)

Độ dài video tối đa: s · Quyền cho phép:

Cho người xem biết bài quảng bá thương hiệu/sản phẩm.

🛡️ Chống trùng lặp đa kênh
phút/kênh (0 = gần như cùng lúc)
thẻ/kênh

Caption hỗ trợ spintax {mua ngay|đặt liền|chốt đơn} — mỗi kênh ra 1 biến thể. Đăng qua hàng đợi, theo dõi ở tab Hàng đợi.

Xem trước (Feed)

Chưa có video
FollowingFor You
♡💬🔖↪

♫ Original sound

Hàng đợi đăng bài

Mỗi kênh được đăng theo lịch riêng (rải giờ) + 1 biến thể video → giảm rủi ro trùng lặp. Job pending có thể huỷ.

Kênh Lịch Trạng thái Người đăng

Tài khoản TikTok

Người kết nối là chủ sở hữu account. Admin/Quản lý dùng được mọi account và có thể gán thêm user được phép sử dụng từng account.

Xác thực URL (để đăng video thật)

TikTok chỉ cho phép video_url nằm trên domain/URL prefix bạn đã xác thực. Không có domain riêng? Dùng URL prefix của chính app này (Cách C): bấm "Dùng prefix của app" → Thêm → đặt file xác thực (app tự phục vụ) → Verify.

Webhook real-time

Nhận bình luận và trạng thái đăng tức thì (thay cho đồng bộ định kỳ). TikTok đẩy về /api/v1/tiktok-account/webhook (đã verify chữ ký HMAC). Cần scope comment.list.

Nhật ký đăng bài

Mỗi lần đăng được lưu raw (ai đăng · cách thức · trạng thái). Trạng thái cập nhật khi có webhook.

Chưa có lần đăng nào.

Thời gian Kênh Người đăng Cách thức Loại Trạng thái Caption

Realtime (30' gần nhất)

🟢 active users

Users

Sessions

Pageviews

Bounce TB

%

Avg session

s

Tổng quan theo ngày

Kênh truy cập (Channel Groups)

Top Source / Medium

Source Medium Users Sessions

Top Pages

Path Title Views Users Engagement (s)

Thiết bị & Khu vực

Users Sessions

Events & Conversions

Event Count Users Conversion

Cấu hình ngưỡng cảnh báo

Thiết lập 0 hoặc để trống = tắt kiểm tra cho hạng mục đó.
Người nhận alert quản lý tại trang Người dùng → bật toggle QUẢNG CÁO trên từng user (cần có Telegram ID).

Cài đặt này dùng để làm gì?

Đây là cơ chế chống spam. Sau khi gửi một cảnh báo, hệ thống phải đợi tối thiểu N giờ mới được gửi lại cảnh báo cùng loại trong cùng ngày.

Vì sao cần?

Job kiểm tra ngưỡng chạy mỗi giờ (phút :55). Nếu không có throttle, khi vượt ngưỡng kéo dài bạn sẽ nhận tới 24 tin nhắn giống hệt nhau / ngày chỉ vì tình trạng chưa được xử lý.

Ví dụ với mặc định = 4

Giả sử chi phí QC vượt budget liên tục từ 10h sáng:

Giờ kiểm tra Vượt ngưỡng? Đã gửi lần cuối Hành động
10:55CóChưa từng✅ Gửi alert
11:55Có1h trước⏭ Bỏ qua
12:55Có2h trước⏭ Bỏ qua
13:55Có3h trước⏭ Bỏ qua
14:55Có4h trước✅ Nhắc lại
15:55Có1h trước⏭ Bỏ qua

→ Tối đa ~6 alert / loại / ngày thay vì 24.

2 loại alert được tính độc lập

  • Chi phí QC vượt ngân sách (ads_budget_exceeded)
  • Lợi nhuận / margin thấp (profit_margin_low)

Trong cùng 1 giờ vẫn có thể nhận cả 2 alert nếu cả 2 đều vượt ngưỡng lần đầu — throttle tính riêng cho từng loại.

⚡ Ngoại lệ — Escalation

Throttle bị bỏ qua khi mức độ tăng cấp: trước đó là warning (margin dưới ngưỡng), sau đó tình trạng xấu đi thành critical (lợi nhuận âm) → gửi ngay, không chờ N giờ.

Lý do: tin nghiêm trọng hơn cần biết ngay, không thể đợi.

Khuyến nghị chọn giá trị

Giá trị Phù hợp khi Đánh đổi
1–2Muốn theo dõi sát, sửa nhanh trong ngày12–24 tin/ngày khi sự cố kéo dài
4 (mặc định)Cân bằng — đủ thời gian hành động trước khi nhắc lại~6 tin/ngày
8–12Chỉ muốn 1–2 lần nhắc/ngàyCó thể bỏ lỡ thời điểm cần can thiệp
24Coi như chỉ 1 alert/ngày/loạiGần như không nhắc lại

Mặc định 4 giờ. Nếu thấy quá nhiều tin → tăng lên 6–8. Nếu thấy quên kiểm tra → giảm còn 2–3.

Chạy kiểm tra cảnh báo ngay

Không chờ scheduler. Hệ thống sẽ tính lại báo cáo hôm nay, đối chiếu ngưỡng và gửi alert nếu vượt (vẫn ghi vào lịch sử).

Kiểm tra trạng thái tài khoản Facebook Ads ngay (thanh toán / disable / chạm trần spend). Gửi tới user bật cờ "Cảnh báo Facebook Ads", bỏ qua throttle.

Lịch sử cảnh báo (50 gần nhất)

Chưa có cảnh báo nào.
Thời gian Nguồn Sự kiện Ngày Trang Đã kéo Tổng Thông báo
Chưa có log
Trang /
Trạng thái các job scheduler. Job silent = không chạy đủ kỳ vọng cron. Tự refresh mỗi 30s.
Chưa có heartbeat — đợi job chạy lần đầu (≤ 5 phút sau khi scheduler khởi động).
Từ đến

Chưa cấu hình Pancake Pages User Access Token

Vào Cài đặt → nhập Pancake Pages User Access Token.

Lấy token tại: pages.fm → Avatar → Cài đặt cá nhân → API Access Token.

Page
Nền tảng
Từ đến

Chưa cấu hình Pancake Pages User Access Token

Vào Cài đặt → nhập Pancake Pages User Access Token.

Nguồn: Pancake pages_campaigns — chi tiết chiến dịch (ngân sách, chi phí, ROAS…). Hiện shop chưa kết nối tài khoản QC nên Pancake trả rỗng; bảng sẽ tự có data khi Pancake đồng bộ. Dữ liệu chuyển đổi theo quảng cáo đang có ở tab Quảng cáo.
Nguồn: Pancake /statistics/ads — chuyển đổi Pancake quy đổi theo từng quảng cáo (độc lập Facebook Marketing API). Gồm: lượt click, số đơn, số SĐT, tổng đơn. Chưa có chi phí/tên — phần đó sẽ bổ sung ở phase Facebook Ads sau.
Nguồn: Facebook Marketing API (Graph) — số khớp Ads Manager, độc lập với nguồn Pancake ở trang "Chiến dịch quảng cáo". Hiển thị theo chiến dịch; bấm vào dòng để xem chi tiết từng quảng cáo.
Tài khoản
Từ đến

Chưa cấu hình Facebook Ads Access Token

Vào Cài đặt → nhập Facebook Ads Access Token, và thêm tài khoản QC ở Chi phí QC → Tài khoản.

Nguồn: TikTok Marketing/Reporting API — số khớp Ads Manager, độc lập với nguồn Pancake. Chạy bằng báo cáo bất đồng bộ nên có thể mất vài giây. Hiển thị theo chiến dịch; bấm vào dòng để xem từng quảng cáo.
Tài khoản
Từ đến

Chưa cấu hình TikTok Ads Access Token

Vào Cài đặt → kết nối TikTok Ads (OAuth), và thêm advertiser ở Chi phí QC → Tài khoản (platform TikTok).

Tên Email Role Telegram ID Nhận TB Mute Trạng thái Thao tác

Credentials

App ID:

OA ID:

App Secret:

Token

Access:

Hết hạn sau:

Refresh còn:

Dữ liệu

Followers: (đang follow: )

Tin khách:

Tin OA gửi:

Tin cuối:

ZNS

Bật:

Template map:

Webhook URL cần khai báo trong Zalo Console:

Followers
Chưa có follower nào.
Chưa có tin nhắn.
Chọn 1 follower để xem hội thoại.
⚠ Đã quá 48 giờ kể từ tin nhắn cuối của khách. Zalo có thể chặn tin gửi đi cho tới khi khách nhắn lại.

Hệ thống & Pancake

Cấu hình TikTok Shop

Sau khi nhập App Key / App Secret / Service ID, bấm để authorize shop → tự lấy Access Token + Cipher.

Webhook (nhận tin nhắn real-time)

Partner Center → App → Webhook → dán URL vào ô Webhook URL, rồi bật (Subscribe) các topic: Message & New conversation (cần scope Customer service) để nhận tin khách, và Seller Deauthorization + Auth Expire để được cảnh báo khi mất ủy quyền.

Shop đã ủy quyền

Chưa có shop nào — kết nối ở trên để ủy quyền.

TikTok Account (Organic)

Nhập Client Key / Secret / Redirect URL, Lưu từng mục, rồi bấm Kết nối để authorize từng tài khoản organic.

Tài khoản đã kết nối:

Ngưỡng cảnh báo Analytics

Đăng bài TikTok (Cloudinary)

Đăng đa kênh: Cloudinary tự tạo video biến thể (chống trùng lặp) — web không chạy ffmpeg. Lấy chuỗi ở Dashboard Cloudinary → "API environment variable" rồi dán vào ô Cloudinary URL.

💡 1 kênh / tắt uniquify → đăng thẳng trên web (không dùng Cloudinary, không tốn credits). Để trống Cloudinary URL → đa kênh fallback ffmpeg cục bộ (nặng, dễ quá tải instance nhỏ).

Facebook & TikTok Ads

Tài khoản Facebook Ads

Chưa có tài khoản nào

Tài khoản TikTok Ads

Chưa có tài khoản nào

Kết nối TikTok Ads qua OAuth

Yêu cầu đã cấu hình TikTok App ID và App Secret ở trên.

Cảnh báo Hiệu suất Pages

Cảnh báo CR thấp / Sụt KH mới / SLA phản hồi / Tin tồn đọng / Dữ liệu bất thường. Đặt 0 hoặc để trống để tắt từng loại. Người nhận quản lý ở trang Người dùng qua 2 toggle PAGES (Business / SLA).

Google Analytics 4 (Website)

Kéo data từ GA4 vào dashboard: users / sessions / traffic sources / top pages / devices-geo / events + realtime + cảnh báo Telegram. Khuyến nghị dùng OAuth (login user) — bypass Workspace policy chặn Service Account.

▶ Hướng dẫn tạo OAuth Client (lần đầu)

Bước 1 — Cấu hình OAuth consent screen

  1. Vào GCP → APIs & Services → OAuth consent screen
  2. User Type: External (cho phép Gmail cá nhân) → CREATE
  3. Nhập App name, support email → Save
  4. Scopes: bỏ qua (Save and continue)
  5. Test users: Add email Google bạn dùng để login GA4 → Save
  6. Bấm "Back to Dashboard". Trạng thái Publishing = Testing — vẫn dùng được, miễn đã add Test user.

Bước 2 — Tạo OAuth Client ID

  1. Vào GCP → APIs & Services → Credentials
  2. Bấm CREATE CREDENTIALS → OAuth client ID
  3. Application type: Web application
  4. Authorized redirect URIs → ADD URI → paste callback URL (xem bên dưới):
  5. CREATE → popup hiển thị Client ID + Client Secret → copy cả 2

Bước 3 — Enable Google Analytics Data API

  1. Vào APIs → Library → Google Analytics Data API
  2. Bấm ENABLE (cùng project với OAuth Client)

Bước 4 — Paste vào dashboard + Connect

  1. Paste Client ID vào ô OAuth Client ID → Save
  2. Paste Client Secret vào ô OAuth Client Secret → Save
  3. Lấy Property ID (số) ở GA4 → ⚙ Admin → Property details → Paste vào ô GA4 Property ID → Save
  4. Bấm 🔗 Kết nối Google Analytics → popup Google login → chọn account Admin của property → Allow
  5. Sau khi thành công → bấm Test kết nối GA → nếu OK thì Backfill 7 ngày

⚠️ Refresh token được mã hoá at rest — không xem lại được plaintext. Bấm Ngắt kết nối rồi connect lại nếu muốn đổi tài khoản.

Zalo Official Account

Kết nối Zalo OA để: gửi tin CS Message cho khách trong cửa sổ 48h, nhận tin khách qua Webhook, trả lời qua trang Zalo Inbox. ZNS Template (transactional qua SĐT) bật ở mục dưới.

⚠ Bắt buộc khai báo 2 URL sau trong Zalo Console TRƯỚC KHI bấm 'Kết nối Zalo OA':

1.
Callback URL (OAuth):
Vị trí: developers.zalo.me → app → Official Account → Thiết lập chung → Callback URL → Add URL
2.
Webhook URL (nhận tin khách):
Vị trí: developers.zalo.me → app → Webhook → URL Webhook
📖 Hướng dẫn lấy credentials (App ID / Secret / OA ID / Refresh Token)

Bước 1 — Tạo / chọn ứng dụng tại Zalo Developers

  1. Mở developers.zalo.me → đăng nhập
  2. Vào "Tài khoản" (góc phải) → "Ứng dụng của tôi" → chọn / tạo app
  3. Tab Thông tin: copy App ID và Secret Key

Bước 2 — Liên kết Official Account & lấy OA ID

  1. Trong app: tab Official Account → "Liên kết OA" → chọn OA của bạn
  2. OA ID hiện ở danh sách "OA đã liên kết" (hoặc tại oa.zalo.me → Quản lý OA → Thông tin OA)
  3. Cấp các quyền (scope) cần thiết: send_message, read_message, read_oa_info, manage_followers

Bước 3 — Lấy Refresh Token (sống 3 tháng)

  1. Trong app → tab Explorer / OA Manager (hoặc tools/explorer)
  2. Chọn ngữ cảnh OA tương ứng → nút "Generate Access Token"
  3. Sau khi user OA bấm xác nhận trên Zalo app: copy refresh_token trong kết quả → dán vào ô Refresh Token bên dưới
  4. Lưu ý: access_token chỉ sống 1h — không dùng trực tiếp. Chỉ refresh_token quan trọng.

Bước 4 — Sau khi nhập 4 giá trị trên

  1. Bấm nút "Refresh access_token" bên dưới → hệ thống gọi Zalo lấy access_token + xoay vòng refresh_token
  2. Cấu hình webhook URL https://<host>/api/v1/webhook/zalo trên Zalo Developer Console → app → tab Webhook
  3. Job refresh_zalo_token sẽ tự refresh mỗi 50 phút — không cần thao tác thêm

🧪 Test gửi tin CS

Verify end-to-end (OA ID + access_token). User phải đã follow OA và chat với OA trong 48h gần đây. Lấy user_id từ Zalo Inbox.

Kiểm tra Telegram

Chẩn đoán cấu hình

Kiểm tra bot token & danh sách user nhận tin

Gửi thông báo đơn hàng mẫu

Kiểm tra bot có gửi được tin đơn mới không

Gửi báo cáo ngày qua bot

Gửi báo cáo ngày hôm nay tới tất cả user

Telegram Bot Webhook (lệnh /pay_ok, /pay_no)

Đăng ký webhook để admin có thể gõ /pay_ok <id> hoặc /pay_no <id> trực tiếp trong Telegram để xác nhận/từ chối thanh toán.

Sự kiện: — thiếu callback_query, bấm "Đăng ký" lại

Lịch báo cáo tự động

07:00Báo cáo sáng — Tổng kết ngày hôm qua (GMT+7)
23:00Báo cáo tối — Tổng kết ngày hôm nay (GMT+7)
*/5 phútSync đơn từ Pancake + Thông báo đơn mới

Trạng thái job sync & webhook

Đang tải...
Lần sync cuối ✓ <10 phút Chưa sync gần đây
Webhook Pancake ✓ Đã nhận tín hiệu Chưa nhận tín hiệu
realtime

Thông báo Telegram

Bật thông báo Telegram

Master toggle — tắt để tắt tất cả

Đơn hàng

Đơn hàng mới

Cập nhật đơn hàng

Đánh giá Shopee (≤ 3 sao)

Tin khách Zalo OA (forward inbox)

Tin khách TTS (forward inbox)

Tin khách Shopee (forward inbox)

Comment TikTok (organic)

Analytics TikTok (follower tụt / viral)

Cho phép đăng bài TikTok (lệnh /dangbai trên Telegram)

Báo cáo

Báo cáo ngày sáng (7:00)

Báo cáo ngày tối (23:00)

Báo cáo tuần (T2 8:00)

Báo cáo tháng (ngày 1, 8:01)

Cảnh báo hiệu suất

Cảnh báo vượt ngưỡng (chi phí QC)

Cảnh báo lợi nhuận / margin thấp

Pages — Business (CR thấp / Sụt KH mới / Anomaly)

Pages — SLA (Phản hồi chậm / Tin tồn)

Website (GA) (Traffic drop / Bounce / Realtime zero)

Hệ thống

Cảnh báo hệ thống

Cảnh báo Facebook Ads (thanh toán / disable / chạm trần)

Ads Advisor (đề xuất tắt / tăng ngân sách QC — chỉ Admin & Marketing)

Heartbeat job (cảnh báo job ngừng chạy)

Đổi mật khẩu

Chi tiết đơn hàng

Đang tải...

Mã Pancake

Mã hiển thị (Shopee...)

Ngày đặt

Đồng bộ lúc

Khách hàng

Tài chính

Tổng giá trị
Phí ship
Giảm giá
Tiền cần thu
Tiền chuyển khoản
Tiền từ đơn gốc
COD
Phụ thu
Đã thanh toán
Còn thiếu

Liên kết đổi trả

Đổi cho đơn hàng
Đơn trả hàng

Sản phẩm

Chưa có thông tin sản phẩm

Ghi chú

Tags

Mẫu mã:

Giá

Giá bán lẻ
Giá quầy
Giá nhập gần nhất
Giá nhập TB
Tồn kho
Khóa Ẩn Đang bán

Hướng dẫn kết nối Marketing Ads

FB Facebook Ads

  • Truy cập Facebook Developers, tạo App loại Business.
  • Lấy Access Token (Long-lived) có quyền ads_read.
  • Account ID: Lấy tại Ads Manager (ví dụ: act_123456789).

TT TikTok Ads

  • Truy cập TikTok for Developers.
  • Tạo App, đăng ký Scope Ads Management.
  • Lấy Access Token sau khi OAuth.
  • Advertiser ID: Lấy trong Dashboard của TikTok Ads Manager.
* Hệ thống sẽ tự động đồng bộ chi phí hàng giờ và hiển thị trên Dashboard.