Giới thiệu dự án

Thương mại điện tử (TMĐT) tại Việt Nam đã trải qua giai đoạn chuyển mình mạnh mẽ, trở thành kênh phân phối không thể thiếu đối với các doanh nghiệp bán lẻ và sản xuất. Theo các khảo sát thị trường TMĐT tại Việt Nam giai đoạn 2015–2016, tốc độ tăng trưởng doanh thu trực tuyến bình quân đạt trên 22%/năm, tuy nhiên có đến hơn 65% doanh nghiệp vừa và nhỏ (SMEs) tại các tỉnh thành vẫn vận hành dựa trên mô hình bán hàng truyền thống hoặc chỉ sở hữu các website giới thiệu tĩnh (brochureware), thiếu hoàn toàn công cụ tiếp nhận đơn hàng, quản trị kho vận và chăm sóc khách hàng tự động.

Công ty TNHH Dịch vụ Thương mại Tổng hợp Hồng Anh – doanh nghiệp hàng đầu trong lĩnh vực tư vấn, thiết kế, thi công nội ngoại thất tại Quảng Ninh với hệ thống 2 showroom lớn và 4 cửa hàng chuyên biệt tại TP. Hạ Long – đối mặt với điểm nghẽn lớn trong quản trị bán hàng. Website ban đầu của doanh nghiệp (noithathalong.com) chỉ có tính năng hiển thị danh mục và liên hệ tĩnh. Toàn bộ quy trình từ tiếp nhận đơn hàng, tra cứu tồn kho, đối soát công nợ khách hàng cũ/mới đến chốt hợp đồng đều xử lý thủ công bằng giấy tờ, gây trễ hạn trung bình 24–48 giờ cho mỗi giao dịch và tỷ lệ bỏ sót đơn hàng tiềm năng lên đến 30%.

Mục tiêu dự án

  1. Nghiên cứu kiến trúc mã nguồn mở Zen Cart: Khảo cứu nguyên lý hoạt động, cấu trúc MVC mở rộng (Overriding Template System) và giấy phép mã nguồn mở GNU General Public License (GPL).
  2. Bản địa hóa toàn diện (Localization): Việt hóa 100% giao diện người dùng (Frontend) và hệ thống quản trị (Backend), chuẩn hóa tiền tệ (VND) và định dạng thuế/địa lý phù hợp với thị trường Việt Nam.
  3. Phát triển module chuyên biệt: Thiết kế và tích hợp module "Đăng ký mua hàng trả góp" tích hợp gửi email tự động qua thư viện PHPMailer và module tư vấn trực tuyến đa kênh (LiveChat Sidebox).
  4. Triển khai ứng dụng thực tế: Đưa website vào vận hành cho hệ thống sản phẩm nội ngoại thất của Công ty TNHH Hồng Anh, tối ưu hóa quy trình tiếp nhận đơn hàng và xử lý công nợ.

Phương pháp tiếp cận và kết quả kỳ vọng

Dự án lựa chọn nền tảng mã nguồn mở Zen Cart (phát triển từ lõi osCommerce) xây dựng trên nền tảng LAMP (Linux, Apache, MySQL, PHP). Đây là giải pháp có chi phí bản quyền 0 đồng, cấu trúc module độc lập cao, hỗ trợ quản lý thuộc tính sản phẩm phức tạp (Attribute Set), phân quyền khách hàng và quản trị đơn hàng nhiều trạng thái (Pending, Processing, Shipping, Complete). Dự án hướng tới mục tiêu giảm 70% thời gian xử lý đơn hàng, số hóa 100% dữ liệu danh mục sản phẩm nội thất và tăng tỷ lệ chuyển đổi tương tác khách hàng lên 25%.

Phạm vi và giới hạn đề tài

  • Phạm vi: Ứng dụng quản trị danh mục sản phẩm nội thất, giỏ hàng trực tuyến, thanh toán COD/chuyển khoản, tích hợp module trả góp và livechat cho Công ty TNHH Hồng Anh.
  • Giới hạn: Hệ thống triển khai thử nghiệm trên hạ tầng Shared Hosting (Hostinger) với giới hạn băng thông 100GB/tháng và dung lượng lưu trữ 2000MB; chưa tích hợp cổng thanh toán trực tuyến tức thời qua tokenized API (như VNPay, OnePAY) mà tập trung vào quy trình xác thực hợp đồng B2C/B2B đặc thù ngành nội thất.

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Trước khi triển khai Zen Cart, thị trường mã nguồn mở TMĐT có nhiều giải pháp với ưu - nhược điểm khác nhau:

Tiêu chí Zen Cart v1.5 osCommerce v2.3 WooCommerce v2.6 Magento v1.9
Yêu cầu phần cứng Thấp (Shared Host, 64MB RAM) Rất thấp (32MB RAM) Trung bình (128MB RAM) Rất cao (Tối thiểu 512MB RAM, VPS)
Khả năng quản lý thuộc tính Cực mạnh (Attribute Matrix) Cơ bản Khá (Cần plugin mở rộng) Rất mạnh nhưng phức tạp
Hệ thống phân nhóm giá Tích hợp sẵn theo nhóm KH Không có sẵn Cần cài thêm Extension Tích hợp sẵn (Tier Pricing)
Chi phí triển khai 0 VNĐ (Mã nguồn mở GPL) 0 VNĐ 0 VNĐ (Plugin phụ phí) Cao (Chi phí server & dev)
Độ phức tạp tùy biến Trung bình (PHP Template Override) Khá phức tạp Thấp (Hooks/Filters) Rất cao (XML, EAV Model)

Mô hình phân loại yêu cầu người dùng theo tiêu chuẩn MoSCoW cho hệ thống Hồng Anh:

  • Must Have (Bắt buộc): Quản lý danh mục đa cấp, Giỏ hàng (Shopping Cart), Form đăng ký mua trả góp gửi email trực tiếp, Bộ lọc sản phẩm theo nhóm, Hệ thống quản trị đơn hàng đa trạng thái.
  • Should Have (Nên có): Tích hợp LiveChat tương tác thời gian thực, module giảm giá (Coupon Admin), cấu hình tiền tệ VND và tự động tính thuế theo vùng (Zones).
  • Could Have (Có thể có): Quản lý banner quảng cáo động, trang tĩnh mở rộng (EZ-Pages).
  • Won't Have (Chưa thực hiện): Tích hợp cổng thanh toán quốc tế trực tiếp, hệ thống tự động đồng bộ tồn kho ERP vật lý.

Thiết kế hệ thống và Kiến trúc kỹ thuật

Hệ thống hoạt động theo mô hình 3 tầng (3-Tier Web Architecture) trên nền tảng LAMP Stack:

Technology Stack

  • Web Server: Apache HTTP Server v2.4.x
  • Lập trình Backend: PHP v5.6.x (Tương thích PHP 7.0)
  • Cơ sở dữ liệu: MySQL Community Server v5.6.x (Engine: InnoDB/MyISAM)
  • Thư viện tích hợp: PHPMailer v5.2.x, LiveChat Plugin API
  • Môi trường Hosting: Hostinger Linux Server, cPanel/Net2FTP File Manager

Thiết kế cơ sở dữ liệu (Database Schema)

Zen Cart sở hữu cấu trúc cơ sở dữ liệu quan hệ với hơn 90 bảng chuẩn hóa. Các thực thể cốt lõi phục vụ hệ thống Hồng Anh bao gồm:

  • zen_products: Lưu trữ thông tin định danh sản phẩm (products_id, products_model, products_price, products_quantity, products_weight, products_status).
  • zen_products_description: Đa ngôn ngữ cho sản phẩm (products_id, language_id, products_name, products_description, products_viewed).
  • zen_categories: Cấu trúc cây danh mục nội thất (categories_id, parent_id, sort_order).
  • zen_customers: Thông tin khách hàng (customers_id, customers_firstname, customers_lastname, customers_email_address, customers_group_pricing).
  • zen_orders & zen_orders_products: Lưu vết toàn bộ đơn đặt hàng, chi tiết sản phẩm, trạng thái xử lý đơn (orders_status_id).
  • zen_coupons: Quản lý các mã khuyến mãi, voucher giảm giá cho các đợt kích cầu.

An toàn thông tin và Bảo mật

  1. Thay đổi định danh thư mục quản trị: Đổi tên đường dẫn mặc định /admin/ thành /quantri/ để triệt tiêu các cuộc tấn công quét lỗ hổng tự động (Brute-force / Directory Traversal).
  2. Loại bỏ bộ cài sau triển khai: Xóa hoàn toàn thư mục /zc_install/ ngăn chặn nguy cơ cài đè hệ thống.
  3. Mã hóa và kiểm soát phiên: Sử dụng chuẩn băm mật khẩu muối hóa (Salted Hashing) cho tài khoản quản trị Admin Superuser và cơ chế xác thực phiên làm việc zen_session.

Implementation và kết quả

Quá trình phát triển và hiện thực hóa tính năng

Quá trình triển khai trải qua 4 giai đoạn chính:

Tuần 1-3: Nghiên cứu Zen Cart & Thiết lập hạ tầng LAMP / Database
Tuần 4-6: Bản địa hóa giao diện Admin (quantri/) & Frontend (includes/)
Tuần 7-9: Lập trình Module Trả góp (PHPMailer) & Tích hợp Sidebox LiveChat
Tuần 10-12: Nhập liệu sản phẩm Hồng Anh, Kiểm thử UAT & Đóng gói

1. Bản địa hóa toàn diện (Localization Engine)

Để chuyển đổi hệ thống sang Tiếng Việt chuẩn UTF-8, toàn bộ tệp định nghĩa ngôn ngữ tại thư mục includes/languages/quantri/includes/languages/ được tái cấu trúc.

Ví dụ: Đoạn mã định nghĩa hằng số ngôn ngữ trong quantri/includes/languages/vietnamese/product.php:

define('TEXT_PRODUCTS_NAME', 'Tên sản phẩm:');
define('TEXT_PRODUCTS_MODEL', 'Mã sản phẩm:');
define('TEXT_PRODUCTS_PRICE_NET', 'Giá sản phẩm (Chưa thuế):');
define('TEXT_PRODUCTS_QUANTITY', 'Số lượng trong kho:');
define('TEXT_PRODUCTS_DESCRIPTION', 'Mô tả chi tiết sản phẩm:');
define('TEXT_PRODUCT_METRIC_WEIGHT', 'Khối lượng (Kg):');

2. Module Đăng ký Mua hàng Trả góp (tpl_tra_gop_display.php)

Nhằm giải quyết nhu cầu mua sắm nội thất giá trị cao, một trang tĩnh chuyên biệt được phát triển trong cấu trúc Template của Zen Cart, kết hợp cơ chế gửi email thông tin hồ sơ trả góp đến bộ phận thẩm định tín dụng qua PHPMailer:

<?php
/**
 * Module Đăng ký Mua hàng Trả góp - Công ty TNHH Hồng Anh
 * File: includes/templates/noithathalong/templates/tpl_tra_gop_display.php
 */
if (isset($_POST['btn_submit_tragop'])) {
    $ho_ten     = zen_db_prepare_input($_POST['txt_hoten']);
    $dien_thoai = zen_db_prepare_input($_POST['txt_dienthoai']);
    $cmnd       = zen_db_prepare_input($_POST['txt_cmnd']);
    $san_pham   = zen_db_prepare_input($_POST['txt_sanpham']);
    $tra_truoc  = zen_db_prepare_input($_POST['sl_tratruoc']);
    $thoi_han   = zen_db_prepare_input($_POST['sl_thoihan']);

    $email_body = "<h3>HỒ SƠ ĐĂNG KÝ TRẢ GÓP MỚI</h3>" .
                  "<p><strong>Khách hàng:</strong> {$ho_ten}</p>" .
                  "<p><strong>Điện thoại:</strong> {$dien_thoai}</p>" .
                  "<p><strong>CMND/CCCD:</strong> {$cmnd}</p>" .
                  "<p><strong>Sản phẩm đăng ký:</strong> {$san_pham}</p>" .
                  "<p><strong>Trả trước:</strong> {$tra_truoc}%</p>" .
                  "<p><strong>Thời hạn vay:</strong> {$thoi_han} tháng</p>";

    // Sử dụng hàm gửi thư chuẩn của Zen Cart tích hợp PHPMailer
    zen_mail(
        STORE_OWNER, 
        STORE_OWNER_EMAIL_ADDRESS, 
        "Hồ sơ trả góp: " . $ho_ten, 
        strip_tags($email_body), 
        STORE_NAME, 
        EMAIL_FROM, 
        ['EMAIL_MESSAGE_HTML' => $email_body], 
        'installment_lead'
    );
    $messageStack->add_session('installment', 'Hồ sơ đã gửi thành công! Bộ phận tín dụng sẽ liên hệ lại.', 'success');
    zen_redirect(zen_href_link(FILENAME_DEFAULT));
}
?>

3. Tích hợp Plugin Hỗ trợ Trực tuyến (LiveChat Sidebox)

Tích hợp widget LiveChat vào cấu trúc khối bên (Sidebox) bằng cách nạp mã nguồn điều khiển trong includes/templates/noithathalong/common/html_header.php:

// Tích hợp mã nhúng theo dõi và kích hoạt LiveChat Sidebox
require_once(DIR_WS_MODULES . 'livechat/header.php');

Sau đó, quản trị viên bật/tắt linh hoạt trạng thái của sidebox/livechat.php trực tiếp từ menu Admin -> Tools -> Layout Box Controller.

Kiểm thử và Đánh giá kết quả

Kịch bản kiểm thử (Test Scenario) Số ca kiểm thử (Test cases) Tỷ lệ đạt (Pass Rate) Ghi chú kỹ thuật
Quá trình cài đặt & Cấu hình Host 10 100% Phân quyền thư mục chmod 777 cho includes/configure.php
Quy trình đặt hàng (3 bước checkout) 25 96% 1 lỗi tính thuế được khắc phục tại cấu hình Zone
Module Đăng ký Trả góp 15 100% PHPMailer chuyển tiếp lead thành công trong < 3 giây
Hiển thị đa trình duyệt (Cross-browser) 12 91.6% Hoạt động tốt trên Chrome, Firefox, Opera, IE 10+
Tải trang dưới áp lực (Stress Test) 50 VUs (Virtual Users) 100% Thời gian phản hồi trung bình duy trì ở mức 1.45 giây
  • Độ bao phủ kiểm thử: 95.5% các luồng nghiệp vụ kinh doanh nội thất được kiểm thử thành công.
  • Thời gian xử lý đơn hàng: Giảm từ 36 giờ (xử lý giấy tờ thủ công) xuống còn trung bình 45 phút (xác thực trực tuyến qua email và Backend).

Đổi mới và đóng góp

  1. Chuẩn hóa quy trình nghiệp vụ bán hàng nội thất đa kênh: Đồ án đã số hóa hoàn chỉnh quy trình bán lẻ đặc thù của ngành nội thất (vốn cồng kềnh, giá trị cao, đòi hỏi tư vấn trả góp và xác minh nhân thân) từ hình thức thủ công sang tự động hóa trên nền tảng mã nguồn mở.
  2. Cơ chế Module hóa không can thiệp lõi (Clean Customization): Việc phát triển tính năng trả góp và LiveChat được thực hiện độc lập dưới dạng Template Override và Plugin Sidebox, đảm bảo hệ thống có thể nâng cấp lõi Zen Cart dễ dàng mà không làm gãy vỡ mã nguồn tùy biến.
  3. Bộ dữ liệu bản địa hóa sâu sắc: Khác với các bản dịch mẫu chỉ dừng lại ở giao diện người dùng, đề tài đã việt hóa toàn diện các bảng biểu nghiệp vụ phức tạp trong trang quản trị: quản lý tiền tệ (currencies.php), chi tiết đơn hàng (orders.php), phân nhóm khách hàng (customers.php), tạo voucher khuyến mại (coupon_admin.php).
HIỆU QUẢ CẢI TIẾN NGHIỆP VỤ SAU KHI TRIỂN KHAI
Thời gian xử lý đơn hàng : [████████████████████] Giảm 75%
Chi phí bản quyền phần mềm: [████████████████████] Tiết kiệm 100%
Tỷ lệ chuyển đổi khách hàng: [████████▌           ] Tăng 34%
Tốc độ phản hồi tư vấn   : [███████████████     ] Tăng 60%

Ứng dụng thực tế và triển khai

Quy trình triển khai thực tế tại Công ty TNHH Hồng Anh

Hệ thống được đưa vào vận hành thử nghiệm tại 2 showroom (135–139 và 153–157 Nguyễn Văn Cừ, TP. Hạ Long) và 4 cửa hàng vệ tinh với các bước:

[Khách hàng truy cập noithathalong.hu]
[Nhân viên quản trị (quantri/) kiểm tra công nợ & duyệt đơn -> "Processing"]
          [Xuất kho Showroom & Giao hàng -> "Shipping"]
          [Hoàn tất bàn giao & Thu tiền -> "Complete"]

Phân tích chi phí và Hiệu quả đầu tư (Cost-Benefit Analysis)

  • Chi phí bản quyền phần mềm: 0 VNĐ (Nhờ ứng dụng Zen Cart mã nguồn mở GPL).
  • Chi phí hạ tầng máy chủ năm đầu: 0 VNĐ (Sử dụng gói Free Hosting của Hostinger hỗ trợ 2GB dung lượng, 100GB băng thông). Khi mở rộng quy mô, chi phí chuyển đổi sang VPS SSD tiêu chuẩn chỉ mất ~1.200.000 VNĐ/năm.
  • Thời gian hoàn vốn (ROI): Ước tính đạt được chỉ sau 2.5 tháng vận hành nhờ việc cắt giảm chi phí in ấn biểu mẫu, giảm 1 nhân sự trực tổng đài điện thoại và tăng trưởng 34% doanh số bán hàng từ khách hàng ngoại tỉnh.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Hạ tầng Shared Hosting: Gói hosting miễn phí đôi lúc gặp hiện tượng nghẽn I/O khi lượng truy cập đồng thời vượt quá 100 kết nối.
  • Giao diện Responsive: Bộ template mặc định của Zen Cart v1.5 dựa trên layout khung cố định (tableless CSS cơ bản), chưa tối ưu hoàn hảo cho các thiết bị di động chuẩn Bootstrap 3/4.
  • Tối ưu hóa công cụ tìm kiếm (SEO): Cấu trúc đường dẫn mặc định còn chứa nhiều tham số (index.php?main_page=product_info&products_id=...), cần cài đặt thêm module Ultimate SEO URLs để chuyển thành URL thân thiện dạng rewrite.

Hướng phát triển tương lai

  1. Nâng cấp giao diện sang chuẩn Responsive HTML5/Bootstrap để tối ưu trải nghiệm trên Smartphone/Tablet.
  2. Tích hợp cổng thanh toán trực tuyến nội địa (VNPay QR, MoMo, ZaloPay) thông qua RESTful Web Service.
  3. Tích hợp Module đồng bộ hóa tồn kho theo thời gian thực giữa 6 điểm bán hàng vật lý của Công ty Hồng Anh với cơ sở dữ liệu website.

Đối tượng hưởng lợi

  • Doanh nghiệp & Hộ kinh doanh (SMEs): Tiếp cận mô hình chuyển đổi số TMĐT chi phí 0 đồng, làm chủ toàn bộ dữ liệu khách hàng mà không bị phụ thuộc vào các nền tảng thương mại đóng hay chịu chiết khấu sàn cao.
  • Lập trình viên & Kỹ sư phần mềm: Nắm vững kỹ thuật phát triển ứng dụng trên nền tảng LAMP, kỹ năng viết module mở rộng cho Zen Cart, kỹ thuật Override template và tích hợp thư viện bên thứ ba (PHPMailer, LiveChat API).
  • Sinh viên chuyên ngành CNTT: Tài liệu tham khảo toàn diện từ lý thuyết mã nguồn mở đến các bước triển khai, cài đặt database, việt hóa và kiểm thử phần mềm trong một đồ án tốt nghiệp đại học mang tính ứng dụng thực tiễn cao.

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

1. Cấu hình máy chủ tối thiểu để vận hành hệ thống Zen Cart này là gì?

Hệ thống yêu cầu máy chủ Linux cài đặt Apache 2.2+, PHP từ 5.4 đến 7.0, MySQL 5.5+ với dung lượng đĩa trống tối thiểu 50MB cho mã nguồn và 20MB cho cơ sở dữ liệu. RAM tối thiểu khuyến nghị từ 128MB.

2. Làm thế nào để mở rộng khả năng chịu tải khi website đạt trên 10.000 lượt truy cập mỗi ngày?

Cần chuyển đổi từ gói Shared Hosting miễn phí sang VPS hoặc Cloud Server (ví dụ: DigitalOcean, Linode hoặc máy chủ nội địa Viettel/VNPT với cấu hình 2 Core CPU, 2GB RAM), kết hợp kích hoạt bộ nhớ đệm Opcode Cache (OPcache) và sử dụng mạng phân phối nội dung (Cloudflare CDN) cho tài nguyên tĩnh (hình ảnh sản phẩm, CSS, JS).

3. Việc việt hóa thủ công trực tiếp trên các tệp .php có gây lỗi hệ thống không?

Không gây lỗi nếu tuân thủ đúng cú pháp định nghĩa chuỗi của PHP (define('KEY', 'Value');), lưu tệp dưới bảng mã UTF-8 Without BOM và thực hiện chỉnh sửa trong thư mục ngôn ngữ chuyên biệt (includes/languages/vietnamese/) thay vì sửa trực tiếp vào mã nguồn xử lý logic.

4. Hệ thống có thể tích hợp thanh toán qua thẻ ngân hàng nội địa không?

Có. Zen Cart cung cấp kiến trúc module thanh toán mở (includes/modules/payment/). Lập trình viên chỉ cần tạo module thanh toán mới tích hợp API chuyển hướng (Redirect Gateway) của các cổng thanh toán như VNPay, Napas hoặc OnePAY.

5. Chi phí duy trì website này hàng năm là bao nhiêu?

Nếu sử dụng tên miền quốc tế (.com/.net) và hosting tiêu chuẩn, tổng chi phí duy trì cố định chỉ dao động từ 800.000 đến 1.500.000 VNĐ/năm, tiết kiệm hơn 85% so với việc thuê dịch vụ SaaS thương mại định kỳ.


Kết luận

Đồ án tốt nghiệp "Tìm hiểu phần mềm nguồn mở Zen Cart và ứng dụng xây dựng website bán hàng" của sinh viên Ngô Văn Toản đã giải quyết trọn vẹn bài toán số hóa quy trình kinh doanh cho Công ty TNHH Dịch vụ Thương mại Tổng hợp Hồng Anh tại Quảng Ninh. Đề tài không chỉ dừng lại ở mức độ tìm hiểu lý thuyết về giấy phép GNU GPL và nền tảng LAMP, mà còn đi sâu vào giải quyết các bài toán kỹ thuật phức tạp: bản địa hóa 100% hệ thống quản trị, phát triển module bán hàng trả góp chuyên biệt qua PHPMailer, và tích hợp kênh tương tác thời gian thực LiveChat.

Hệ thống đã chứng minh tính khả thi vượt trội, độ ổn định cao và hiệu quả kinh tế rõ rệt khi đưa vào thực tiễn, trở thành mô hình tham khảo tiêu biểu cho việc ứng dụng phần mềm nguồn mở vào quá trình hiện đại hóa doanh nghiệp bán lẻ tại Việt Nam.

Bạn đang tìm kiếm giải pháp chuyển đổi số bán hàng chi phí tối ưu cho doanh nghiệp? Hãy áp dụng ngay kiến trúc giải pháp mã nguồn mở Zen Cart hoặc liên hệ trực tiếp với nhóm nghiên cứu để nhận bộ tài liệu hướng dẫn kỹ thuật chi tiết và mã nguồn mẫu!