Back to Main Site

Hướng dẫn cấu hình WooSync toàn diện - Từ cài đặt đến lượt đồng bộ đầu tiên

Last updated on Aug 23, 2026 3:28 PM 3:28 PM 748.38 ms

Trước khi bắt đầu

Bạn cần chuẩn bị:

  • Perfex CRM phiên bản 3.4.0 trở lên

  • Ít nhất một cửa hàng WooCommerce đã kích hoạt REST API

  • Tài khoản quản trị viên (Admin) trên cả hai hệ thống

Tổng thời gian thiết lập: 10 - 15 phút.

Bước 1: Cài đặt mô-đun (Module)

WooSync sẽ tự động tạo 16 bảng dữ liệu khi kích hoạt - không cần chạy lệnh SQL thủ công.

Bước 2: Tạo WooCommerce API Keys

Bước 3: Thêm cửa hàng mới trong Perfex CRM

Bước 4: Cấu hình Webhooks (Đồng bộ thời gian thực)

Sau khi lưu cửa hàng, chỉnh sửa thông tin cửa hàng đó để lấy Webhook Delivery URLWebhook Secret.

Trên trang quản trị WooCommerce:

Truy cập Cấu hình (Settings) → Nâng cao (Advanced) → Webhooks
Tạo các webhook tương ứng với các sự kiện sau:

Sự kiệnChủ đề (Topic)
Tạo đơn hàngorder.created
Cập nhật đơn hàngorder.updated
Tạo sản phẩmproduct.created
Cập nhật sản phẩmproduct.updated
Tạo khách hàngcustomer.created
Cập nhật khách hàngcustomer.updated

Bước 5: Cấu hình Cron Job chạy ngầm

WooSync tận dụng tiến trình cron.php có sẵn của Perfex CRM để thực hiện đồng bộ hóa gia tăng. Đảm bảo máy chủ của bạn chạy tiến trình này đều đặn:

Trên cPanel/DirectAdmin:

*/5 * * * * wget -q -O- https://your-perfex.com/cron.php

Phục vụ môi trường phát triển localhost/Windows:

Truy cập WooSync → Cài đặt (Settings)
Bật Chế độ gỡ lỗi (Debug Mode)
WooSync sẽ tự động kích hoạt cron giả lập mỗi khi bạn duyệt qua bảng điều khiển quản trị.

Bước 6: Chạy lượt đồng bộ dữ liệu đầu tiên

Bước 7: Cấu hình ánh xạ thuế Tax Mapping (Tùy chọn)

If you use auto-invoicing and your WooCommerce store has tax rates:

Bước 8: Ánh xạ dữ liệu & Trường tùy biến (Tùy chọn)

WooSync v1.2.0 giới thiệu tính năng ánh xạ dữ liệu trực quan. Nếu trang thanh toán của bạn có các trường tùy biến (ví dụ: Mã số thuế VAT, Ngày giao hàng) hoặc bạn muốn theo dõi Mã giảm giá cụ thể:

  1. Truy cập WooSync → Ánh xạ dữ liệu (Data Mapping)
  2. Chọn cửa hàng của bạn và tiến hành ánh xạ trực tiếp các trường WooCommerce custom meta keys với các trường tùy biến (Custom Fields) của Khách hàng hoặc Hóa đơn trong Perfex CRM.

Lưu ý: WooSync hỗ trợ đầy đủ 16 ngôn ngữ. Bạn có thể thay đổi ngôn ngữ của Perfex CRM trong thiết lập hồ sơ cá nhân để dịch toàn bộ giao diện làm việc của WooSync ngay lập tức.

Kiểm tra và Xác minh hoạt động

Sau khi thiết lập, hãy xác nhận:

  • Cửa hàng (Stores): Trạng thái kết nối hiển thị màu xanh lá cây

  • Sản phẩm (Products): Các sản phẩm WooCommerce đã xuất hiện trong WooSync → Products

  • Đơn hàng (Orders): Các đơn hàng gần đây đã được đồng bộ với tổng giá trị chính xác

  • Khách hàng (Customers): Người mua hàng được liên kết chuẩn xác với Khách hàng Perfex

  • Nhật ký (Logs): Mục WooSync → Logs ghi nhận các lượt đồng bộ thành công

  • Webhooks: Tạo một đơn hàng thử nghiệm trên WooCommerce - đơn hàng này sẽ xuất hiện trong WooSync chỉ sau vài giây

Khắc phục sự cố thường gặp

Vấn đềHướng xử lý
Kiểm tra kết nối thất bạiXác minh lại API keys, kiểm tra đường dẫn URL, đảm bảo REST API đã được kích hoạt trong WooCommerce
Webhook không truyền dữ liệu vềKiểm tra lịch sử gửi webhook của WooCommerce, kiểm tra quyền truy cập của URL webhook nhận
Đơn hàng không đồng bộĐảm bảo tiến trình cron đang chạy đều đặn, kiểm tra mục WooSync Logs để tìm mã lỗi
Chế độ gỡ lỗi không chạyXóa bộ nhớ đệm trình duyệt, kiểm tra lại tùy chọn Debug Mode trong Cài đặt

Cấu hình hoàn tất. Cửa hàng WooCommerce của bạn hiện đã được kết nối đồng bộ với Perfex CRM.

Kiến Trúc Hệ Thống & Luồng Quy Trình Đồng Bộ WooSync

graph TD
    subgraph WooCommerce Store ["WooCommerce Store (E-Commerce Platform)"]
        WC_Order["Order Placed / Updated"]
        WC_Customer["Customer Registered"]
        WC_Product["Product / Category Created"]
        WC_Refund["Order Refund Triggered"]
        WC_HPOS["HPOS (High-Performance Order Storage)"]
    end

    subgraph SyncEngine ["WooSync Synchronization Hub Engine"]
        WH_Receiver["Inbound Webhook Receiver<br/>(HMAC-SHA256 Signature Verification)"]
        Cron_Runner["Cron Delta Sync Fallback<br/>(Scheduled Polling Runner)"]
        Queue_Log["Queue & Audit Logger<br/>(Payload Tracking & Retries)"]
        AES_Enc["AES-256-CBC Encrypted Store API Keys"]
    end

    subgraph PerfexCRM ["Perfex CRM (Enterprise Platform)"]
        CRM_Client["Clients & Contacts Database"]
        CRM_Invoice["Invoices & Line Items"]
        CRM_Item["Products, Categories & Attributes"]
        CRM_Credit["Credit Notes & Refund Records"]
        CRM_Payment["Invoice Paid Status Event"]
    end

    WC_Order -->|Real-time Inbound Webhook| WH_Receiver
    WC_Customer -->|Real-time Inbound Webhook| WH_Receiver
    WC_Product -->|Real-time Inbound Webhook| WH_Receiver
    WC_Refund -->|Real-time Inbound Webhook| WH_Receiver

    WC_HPOS -.->|Scheduled Delta Poll| Cron_Runner
    WH_Receiver --> Queue_Log
    Cron_Runner --> Queue_Log

    Queue_Log -->|Auto-Create / Link Contact| CRM_Client
    Queue_Log -->|Auto-Generate Invoice| CRM_Invoice
    Queue_Log -->|Hierarchical Catalog Sync| CRM_Item
    Queue_Log -->|Generate Credit Note| CRM_Credit

    CRM_Payment -->|Reverse Sync Engine| WC_Order

Quy Trình Reverse Sync Engine

graph TD
    A["Perfex CRM Invoice Marked Paid"] --> B["Woosync_reverse_sync Engine Triggered"]
    B --> C{"Check Status Mapping Configuration"}
    C --> D["Resolve WooCommerce Store ID & Order ID"]
    D --> E["Decrypt API Secret Key via OpenSSL AES-256-CBC"]
    E --> F["Initialize WooCommerce REST API Client (wc/v3)"]
    F --> G["Send PUT Request to /wp-json/wc/v3/orders/{id}"]
    G --> H{"HTTP Response 200 OK?"}
    H -->|"Success"| I["Update Store Order Status (Processing -> Completed)"]
    H -->|"Failure"| J["Log Status Exception & Enqueue into Retry Queue"]

Chuyển Đổi Đơn Hàng Thành Hóa Đơn & Ánh Xạ HPOS

graph TD
    A["New Order Placed on WooCommerce Store (HPOS Order)"] --> B["Inbound Webhook order.created Listener"]
    B --> C["Verify HMAC-SHA256 Signature Secret"]
    C --> D{"Customer Email Exists in Perfex CRM?"}
    D -->|"No"| E["Auto-Create New Client Profile & Contact"]
    D -->|"Yes"| F["Link Order to Existing Client Profile"]
    E --> G["Map Billing & Shipping Location Addresses"]
    F --> G
    G --> H["Convert Store Currency & Sales Tax"]
    H --> I["Auto-Generate Perfex CRM Invoice (Unpaid)"]
    I --> J["Record Item Lines, Shipping Fee & Coupon Adjustments"]

Kết Nối Đa Cửa Hàng & Bảo Mật OpenSSL AES-256

graph TD
    A["Admin Adds New WooCommerce Store"] --> B["Input Store URL, Consumer Key, Consumer Secret & Webhook Secret"]
    B --> C["Encrypt Credentials using OpenSSL AES-256-CBC"]
    C --> D["Persist Record in woosync_stores Table"]
    D --> E["Auto-Register Inbound Webhook Endpoints"]
    E --> F["Test Connection via WooCommerce REST Client v3"]
    F --> G{"Connection Status 200 OK?"}
    G -->|"Success"| H["Activate Store Status & Start Real-Time Sync"]
    G -->|"Failure"| I["Log Alert Error & Display Credential Warnings"]