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

Thiết lập Google Drive và Gmail để hệ thống hoạt động tự động

Tổng quan

Hệ thống cần 2 kết nối để hoạt động tự động:

  • Gmail OAuth — đọc email từ ShopeeFood / GrabFood của từng chi nhánh
  • Google Drive — lưu file XLSX lên folder tháng tự động
1

Chia sẻ thư mục Google Drive cho hệ thống

Hệ thống dùng Service Account (tài khoản robot của Google) để tự động tải file lên Drive — không cần đăng nhập thủ công. Bạn chỉ cần chia sẻ thư mục Drive cho email robot một lần duy nhất.

  1. 1
    Truy cập Google Drive
    Mở drive.google.com bằng tài khoản Google của công ty (hoặc tài khoản cá nhân bạn muốn lưu file).
  2. 2
    Tạo thư mục gốc (nếu chưa có)

    Nhấn + MớiThư mục → đặt tên, ví dụ: SFGF - Chè Liên

    Mỗi chi nhánh có thể dùng thư mục riêng hoặc chung 1 thư mục.

  3. 3
    Lấy Folder ID từ URL

    Mở thư mục vừa tạo. Nhìn URL trên trình duyệt:

    https://drive.google.com/drive/folders/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgVE2upms

    Phần được tô vàng chính là Folder ID. Copy lại.

  4. 4
    Chia sẻ thư mục cho Service Account

    Nhấn chuột phải vào thư mục → Chia sẻChia sẻ

    Nhập email Service Account vào ô "Thêm người":

    Email Service Account của hệ thống:
    invoice-agent@che-lien-agents.iam.gserviceaccount.com

    Quyền truy cập: chọn Người chỉnh sửa (Editor).

    Bỏ tick "Thông báo cho mọi người" → nhấn Chia sẻ.

  5. 5
    Điền Folder ID vào Setup

    Vào trang Setup → tìm chi nhánh tương ứng → dán Folder ID vào ô Google Drive Folder ID → nhấn Lưu.

    Mỗi chi nhánh (HP, ĐBP) có thể điền folder riêng. Để trống → dùng folder mặc định cấu hình bởi admin.

Cấu trúc thư mục sau khi kết nối
📁 SFGF - Chè Liên            ← Thư mục gốc (bạn tạo)
   📁 SFGF T3/26              ← Tự động tạo theo tháng
      📄 HP_file_dulieu_202603.xlsx
      📄 HP_asp_misa_202603.xlsx
      📄 DBP_file_dulieu_202603.xlsx
      📄 DBP_asp_misa_202603.xlsx
2

Kết nối Gmail của từng chi nhánh

Hệ thống cần quyền đọc Gmail để tự động tải file báo cáo từ ShopeeFood và GrabFood. Mỗi chi nhánh kết nối một lần — hệ thống sẽ tự gia hạn token mà không cần làm lại.

  1. 1
    Vào trang Setup
    Truy cập Setup → chọn chi nhánh cần kết nối.
  2. 2
    Nhấn Kết nối Gmail
    Nhấn nút Kết nối Gmail màu xanh. Trình duyệt sẽ chuyển sang trang đăng nhập Google.
  3. 3
    Đăng nhập đúng tài khoản Gmail

    Đăng nhập bằng Gmail của chi nhánh đó (email nhận báo cáo từ ShopeeFood/GrabFood).

    Lưu ý: Nếu bạn đang đăng nhập nhiều tài khoản Google, hãy chọn đúng tài khoản của chi nhánh. Nhầm tài khoản sẽ không scan được email.
  4. 4
    Cấp quyền
    Google sẽ hiển thị màn hình yêu cầu quyền. Nhấn Tiếp tục / Allow để đồng ý. Hệ thống chỉ đọc email — không gửi, không xóa.
  5. 5
    Hoàn tất
    Sau khi cấp quyền, trang sẽ tự chuyển về Setup và hiện thông báo Kết nối thành công kèm email vừa kết nối.
Hết hạn / lỗi kết nối? Nhấn Kết nối lại để làm lại bước này. Token cũ sẽ được thay thế tự động.
3

Kiểm tra kết nối hoạt động

  1. 1
    Kiểm tra Gmail
    Vào Auto Scan → nhấn Scan ngay cho chi nhánh vừa kết nối. Nếu có email chưa xử lý, hệ thống sẽ liệt kê file và trạng thái bên dưới.
  2. 2
    Kiểm tra Drive
    Sau khi scan thành công, vào thư mục Drive đã chia sẻ — kiểm tra có thư mục tháng và 2 file XLSX được tạo không.
  3. 3
    Kiểm tra lịch sử
    Vào Lịch sử — bản ghi mới nhất sẽ hiện link Drive trực tiếp.
4

Sử dụng hàng ngày

Tự động (khuyến nghị)

Cron job tự chạy 7:00 AM mỗi ngày. Hệ thống scan email, parse file, tạo XLSX và upload Drive mà không cần thao tác.

Bật/tắt tại trang Cấu hình.

Upload thủ công

Khi không nhận được email hoặc cần xử lý lại: vào Convert, tải file CSV/PDF lên, hệ thống xử lý và cho download ngay.

Quy trình mỗi tháng
  1. Cuối tháng: vào Lịch sử lọc theo tháng → tải file ASP MISA về
  2. Import file XLSX vào phần mềm MISA theo hướng dẫn của MISA
  3. File Dữ Liệu dùng để đối soát với ShopeeFood/GrabFood
5

Câu hỏi thường gặp

File không xuất hiện trên Drive sau khi scan?
Kiểm tra: (1) Đã chia sẻ folder cho email Service Account với quyền Editor chưa, (2) Folder ID đã điền đúng trong Setup chưa, (3) Admin đã cấu hình GOOGLE_SERVICE_ACCOUNT_JSON trong hệ thống chưa.
Scan báo lỗi 'No Gmail token'?
Kết nối Gmail chưa được thực hiện hoặc đã hết hạn. Vào Setup → Kết nối lại Gmail cho chi nhánh đó.
Email đã có nhưng scan không thấy?
Kiểm tra Gmail: email có bị lọc vào spam hoặc đã có label 'SFGF_Processed' chưa. Nếu nhầm label, vào Gmail xóa label đó rồi scan lại.
Muốn xử lý lại file đã convert?
Dùng tính năng Upload thủ công tại trang Convert — tải file gốc lên, hệ thống sẽ overwrite dữ liệu cũ theo ngày.
Cần xử lý nhiều ngày trước đó?
Upload thủ công từng file CSV/PDF của các ngày đó tại trang Convert. Hoặc nhờ admin mở rộng khoảng thời gian scan email.