MARZI · Tài liệu
Dành cho công ty làm web và đại lý

Hướng dẫn triển khai cho công ty / đại lý

Từng bước từ lúc nhận tài khoản đến lúc khách hàng của bạn dùng được các app: tạo cửa hàng, cấp mã, nối website, chỉnh giao diện và bàn giao.

Về cách khách cài app

Tài liệu mô tả quy trình khi hai app dùng chung đã có trên Google Play: khách cài một lần, nhập mã cửa hàng để vào đúng cửa hàng của mình. Trong giai đoạn thử nghiệm, chủ hệ thống MARZI gửi file cài đặt (APK) để cài thử; các bước còn lại giống nhau.

1. Chuẩn bị

2. Quy trình tổng quan

  1. Đăng nhập bảng điều khiển và bật xác thực hai bước.
  2. Tạo khách hàng: đặt tên và mã cửa hàng.
  3. Chọn mẫu ngành, màu, kiểu điều hướng, các khối trang chủ và tính năng.
  4. Nối website của khách (nếu có) và bấm "Thử kết nối". Sản phẩm nhiều lựa chọn (màu, size, hương vị...) do website tự gửi theo tài liệu kết nối; đại lý không phải cài đặt thêm gì.
  5. Tạo khách hàng. Hệ thống cấp sẵn mã.
  6. Kiểm tra bằng khung xem trước và bằng app thật.
  7. Bàn giao: gửi mã cho chủ cửa hàng cùng hướng dẫn sử dụng app.

3. Đăng nhập và bảo mật tài khoản

Mở địa chỉ bảng điều khiển do chủ hệ thống cung cấp (dạng https://.../console/) và đăng nhập. Nhập sai mật khẩu 5 lần, tài khoản bị khóa tạm 15 phút.

Màn đăng nhập bảng điều khiển
Màn đăng nhập.

Bật xác thực hai bước (nên làm ngay)

Tài khoản đại lý nắm danh sách khách hàng và khóa kết nối website, nên hãy bật xác thực hai bước: ngoài mật khẩu, mỗi lần đăng nhập cần thêm mã 6 số từ ứng dụng xác thực trên điện thoại (Google Authenticator, Microsoft Authenticator, Authy...).

  1. Mở "Xác thực hai bước" ở menu bên trái và nhập lại mật khẩu.
  2. Nhập khóa vào ứng dụng xác thực (chọn thêm tài khoản bằng khóa cài đặt, loại theo thời gian), rồi nhập mã 6 số đang hiện để xác nhận.
  3. Chép 8 mã khôi phục và cất nơi an toàn. Mỗi mã dùng được một lần khi mất điện thoại và chỉ hiện một lần.
Màn nhập khóa vào ứng dụng xác thực
Khóa cài đặt và ô nhập mã xác nhận.
Tám mã khôi phục
Tám mã khôi phục, chỉ hiện một lần.

Từ lần sau, sau khi nhập mật khẩu bạn sẽ được hỏi mã:

Màn nhập mã xác thực khi đăng nhập
Nhập mã 6 số, hoặc một mã khôi phục nếu mất điện thoại.
Mất điện thoại và mã khôi phục?

Liên hệ chủ hệ thống MARZI để gỡ xác thực hai bước cho tài khoản của bạn, rồi bật lại.

Đăng nhập bảng điều khiển bằng mã QR

Thay vì gõ mật khẩu trên máy tính, bạn có thể đăng nhập bằng điện thoại: bảng điều khiển hiện mã QR, bạn quét bằng app MARZI Quản lý và đồng ý.

  1. Trên máy tính, ở trang đăng nhập bấm Đăng nhập bằng mã QR. Trang hiện mã QR (sống 2 phút, dùng một lần).
  2. Trên điện thoại, mở app MARZI Quản lý. Ở màn đăng nhập cửa hàng, bấm Tài khoản đại lý (đăng nhập bảng điều khiển) và đăng nhập bằng tên đăng nhập, mật khẩu (và mã hai bước nếu có). Chỉ cần làm lần đầu.
  3. Bấm "Quét mã đăng nhập bảng điều khiển" và quét mã trên máy tính. Nếu camera không dùng được, dán nội dung mã vào ô bên dưới khung quét.
  4. Kiểm tra màn xác nhận: trình duyệt, địa chỉ IP, giờ và tài khoản sẽ đăng nhập, rồi bấm Đăng nhập. Máy tính tự vào bảng điều khiển ngay.
Trang đăng nhập bảng điều khiển hiện mã QR
Máy tính: mã QR và đồng hồ đếm ngược.
App quản lý: đăng nhập tài khoản đại lý
Điện thoại: đăng nhập tài khoản đại lý.
Nút Quét mã đăng nhập bảng điều khiển
Nút quét mã.
Màn xác nhận đăng nhập bảng điều khiển
Màn xác nhận: ai đang yêu cầu.
Chỉ đồng ý khi chính bạn vừa mở trang

Kẻ gian có thể hiện hộ một mã QR thật trên trang giả rồi dụ bạn quét. Luôn đối chiếu trình duyệt và địa chỉ IP trên điện thoại với máy bạn đang dùng. Bấm Từ chối nếu không chắc; trang sẽ báo "Bạn đã từ chối trên điện thoại".

Đổi mật khẩu ở nút Đổi mật khẩu (mật khẩu từ 10 ký tự, kết hợp ít nhất hai loại ký tự, không chứa tên đăng nhập). Đổi mật khẩu sẽ đăng xuất mọi thiết bị khác của bạn.

4. Tổng quan và gói

Trang Tổng quan cho biết gói đang dùng, ngày hết hạn, số khách hàng đã tạo so với giới hạn của gói, và các khách hàng mới nhất. Gói của tôi liệt kê các gói hiện có (theo tháng hoặc theo năm, giới hạn số khách và tính năng).

Trang tổng quan của đại lý
Tổng quan: gói đang dùng và số khách hàng (2/20).
Trang gói của tôi
Gói của tôi. Muốn nâng gói hoặc gia hạn, liên hệ chủ hệ thống MARZI.

5. Tạo khách hàng

Vào Khách hàng rồi bấm Thêm khách hàng. Khung điện thoại bên phải xem trước app ngay khi bạn chỉnh.

Bước 1: tên và mã

Form thêm khách hàng: tên, mã, mẫu ngành
Tên cửa hàng, mã doanh nghiệp (đã kiểm tra không trùng) và các mẫu ngành.

Bước 2: mẫu ngành

MẫuPhù hợpTình trạng
Bán lẻ nhiều sản phẩmCửa hàng nhiều danh mục, lưới sản phẩm, tìm kiếm.Sẵn sàng
Thực phẩm, bánh, đặc sảnMenu trượt, trang giới thiệu, quy cách đóng gói.Sẵn sàng
Đồ uống, cà phêGọn, tập trung vào menu.Sẵn sàng
Đặt lịch · Khóa học, video · Bất động sản, tuyển dụngSpa, khách sạn, lớp học, danh sách có lọc.Sắp có

Chọn mẫu sẽ tự đặt màu, kiểu điều hướng, khối trang chủ và tính năng phù hợp, rồi bạn chỉnh tiếp.

Bước 3: giao diện và tính năng

6. Nối website của khách

Ở mục Nguồn dữ liệu, chọn Nối website của khách nếu khách có website bán hàng riêng (nếu không, giữ "Dữ liệu nằm ở MARZI").

  1. Địa chỉ connector trên website, ví dụ https://www.tenmien.com/marzi-connector. Phải bắt đầu bằng https://. Hai ô "Thư mục ảnh" và "Địa chỉ website" được gợi ý theo địa chỉ này; sửa lại nếu website khác.
  2. Khóa bí mật: bấm Tạo khóa để tạo khóa ngẫu nhiên (hoặc dán khóa có sẵn, từ 32 ký tự), bấm Chép, rồi gửi cho lập trình viên dán vào cấu hình connector trên website. Khóa được lưu mã hóa và không hiển thị lại sau khi lưu.
  3. Thư mục ảnh sản phẩm: nơi website để ảnh sản phẩm. Địa chỉ website: trang chủ của khách (dùng cho ảnh bài viết).
  4. Bấm Thử kết nối. Thành công sẽ liệt kê những gì website cung cấp (Sản phẩm, Danh mục, Đăng nhập khách, Xem đơn, Đặt hàng, Đăng nhập quản lý...). Bạn có thể thử tối đa 10 lần mỗi phút.
Nối website và thử kết nối thành công
Nối website và "Thử kết nối": website cung cấp những khả năng nào.
Đăng nhập website bằng mã QR (tùy chọn)

Nếu website của khách khai báo khả năng Đăng nhập bằng mã QR, người mua và chủ cửa hàng đăng nhập được trang web của khách bằng cách quét mã QR trên trang đó bằng app MARZI. Khả năng này nằm ở website (lập trình viên thêm theo Tài liệu kết nối website, mục 6.6). Sau khi thêm, bấm "Thử kết nối" sẽ thấy dòng "Đăng nhập bằng mã QR"; app tự hiện mục quét mã, không cần cập nhật gì ở MARZI.

Website chưa làm đủ cũng không sao

Chỉ những phần website khai báo mới được bật. Website mới chỉ có sản phẩm thì app người mua xem được sản phẩm; đặt hàng, đăng nhập và app quản lý sẽ bật dần khi lập trình viên bổ sung. Quay lại bấm "Thử kết nối" để thấy khả năng mới.

MARZI từ chối một số địa chỉ

Vì lý do an toàn, MARZI chỉ nối tới website công khai bằng HTTPS: không nhận địa chỉ IP nội bộ, localhost, tên .local, địa chỉ có tên đăng nhập hay dấu ?, và một số cổng dịch vụ.

7. Cấp mã cho chủ cửa hàng

Bấm Tạo khách hàng. Màn hình tiếp theo hiện mã cửa hàng thật lớn cùng nút Sao chép mã. Gửi mã này cho chủ cửa hàng.

Tạo xong: mã cửa hàng mau-demo
Đã tạo xong. Đưa mã cho chủ cửa hàng.

Mã QR để vào cửa hàng

Ngoài mã chữ, mỗi cửa hàng có hai mã QR, hiện ở màn "Đã tạo khách hàng" và ở trang chỉnh sửa cửa hàng: một cho app người mua, một cho app quản lý. Quét mã bằng nút "Quét mã QR của cửa hàng" trong app (hoặc bằng camera điện thoại khi đã cài app) là vào đúng cửa hàng, khỏi gõ mã. Mã QR chỉ chứa mã cửa hàng, không có thông tin bí mật.

Hai mã QR của cửa hàng trong bảng điều khiển
Hai mã QR: app người mua và app quản lý. Có nút "Tải ảnh PNG" và "In áp phích".
Áp phích in
Áp phích khi in.

8. Chỉnh sửa sau khi tạo

Trong danh sách Khách hàng (cột mã, mẫu ngành, tính năng, trạng thái), bấm vào một cửa hàng để chỉnh. Mọi thay đổi áp dụng cho app ngay, không cần cập nhật app trên điện thoại. Khung xem trước hiện sản phẩm thật của website sau khi nối.

Danh sách khách hàng
Danh sách khách hàng của đại lý.
Trang chỉnh sửa khách hàng với khung xem trước app
Trang chỉnh sửa: giao diện, tính năng, nguồn dữ liệu và khung xem trước.

9. Hồ sơ cửa hàng và bán trên sàn

Trong trang chỉnh sửa khách hàng có hai thẻ liên quan đến việc bán trên sàn Marzi Market (app thứ ba gom sản phẩm của nhiều cửa hàng):

Thẻ Hồ sơ cửa hàng
Thẻ Hồ sơ cửa hàng.
Thẻ Bán trên sàn MARZI
Thẻ Bán trên sàn MARZI, đại lý xem được.
Việc của cửa hàng có website nếu muốn nhận đơn sàn

Cửa hàng tạo trên website một tài khoản thành viên riêng để nhận đơn sàn và đưa mã thành viên cho chủ hệ thống nhập vào thỏa thuận. Không cần sửa connector. Chi tiết cho lập trình viên: mục 6.7 của tài liệu kết nối website.

10. Thanh toán chuyển khoản QR

Thẻ Thanh toán chuyển khoản QR trong trang chỉnh sửa là nơi bạn nhập tài khoản ngân hàng của cửa hàng (tiền khách chuyển vào thẳng tài khoản này), quét thử mã QR bằng app ngân hàng và, nếu muốn đơn tự chuyển sang "đã thanh toán", nối với SePay. Thẻ cũng liệt kê tiền vào gần đây và thay đổi gần đây (kể cả thay đổi do nhân viên cửa hàng làm trong app quản lý). Hướng dẫn từng bước, quy tắc xử lý tiền và cách xử lý sự cố nằm ở Thanh toán chuyển khoản bằng mã QR.

Thẻ Thanh toán chuyển khoản QR
Thẻ Thanh toán chuyển khoản QR.
Luôn quét thử

Máy chủ chỉ lưu tài khoản khi người nhập xác nhận đã quét thử bằng app ngân hàng và thấy đúng tên chủ tài khoản. SePay chỉ gọi được MARZI khi MARZI chạy trên địa chỉ công khai có HTTPS.

11. Phản hồi và vận chuyển

12. Bàn giao cho khách

  1. Thử trước khi bàn giao. Tự cài app, nhập mã, đăng nhập bằng một tài khoản thử, xem sản phẩm, đặt một đơn thử, đăng nhập app quản lý và đổi trạng thái đơn đó.
  2. Gửi cho chủ cửa hàng: mã cửa hàng; hướng dẫn App quản lý; hướng dẫn App người mua để chia sẻ với khách của họ; và nếu cửa hàng nhận chuyển khoản QR, trang Thanh toán chuyển khoản QR.
  3. Nhắc chủ cửa hàng: người mua dùng tài khoản thành viên của website (đăng ký trên website); quên mật khẩu thì dùng chức năng của website.

13. Quản lý hằng ngày

14. Xử lý sự cố

Khi "Thử kết nối" báo lỗi

Thông báoCần kiểm tra
Website từ chối chữ ký (HTTP 401)Khóa hai bên phải giống hệt nhau (không thừa dấu cách khi dán). Đồng hồ máy chủ website đúng giờ. Connector nằm trong thư mục con thì lập trình viên phải cắt tiền tố thư mục trước khi kiểm chữ ký.
Không thấy connector ở địa chỉ này (HTTP 404)Địa chỉ hoặc thư mục cài connector sai. Thử mở địa chỉ trong trình duyệt để xem có phản hồi.
Website chuyển hướng sang địa chỉ khácNhập đúng địa chỉ cuối cùng: đúng https, có hoặc không có www, đúng dấu /.
Chứng chỉ HTTPS không hợp lệWebsite cần chứng chỉ còn hạn và đủ chuỗi chứng chỉ trung gian.
Không tìm thấy tên miền / Website từ chối kết nốiSai tên miền, website đang tắt, hoặc tường lửa chặn.
Website trả lời quá chậmQuá 10 giây: kiểm tra truy vấn chậm trên website.
Website trả lời không phải JSON hợp lệConnector in cảnh báo PHP/ASP hoặc trang lỗi HTML ra trước dữ liệu.
Website báo lỗi (HTTP 500...)Xem nhật ký lỗi của website.
Website này trỏ về địa chỉ nội bộTên miền đang trỏ về IP riêng. Dùng địa chỉ công khai.
Địa chỉ phải bắt đầu bằng https://Nhập lại địa chỉ với https://.

Lập trình viên của bạn có thể chạy bộ kiểm tra tự động trong Tài liệu kết nối website để thấy chính xác đường dẫn nào sai.

Khi tạo hoặc sửa khách hàng

Thông báoNghĩa là
Gói của công ty đã hết hạn, bị tạm dừng hoặc chưa được cấpLiên hệ chủ hệ thống để gia hạn.
Gói hiện tại cho tối đa N khách hàngĐã đủ số khách của gói. Nâng gói để thêm.
Mã này đã có người dùng · Mã này được giữ riêngChọn mã khác. Mã là duy nhất trên toàn hệ thống.
Gói hiện tại chưa gồm module...Module đó nằm ngoài gói của bạn.
Mẫu ngành này chưa sẵn sàngMẫu đang "Sắp có". Chọn mẫu khác.
Khóa bí mật cần từ 32 ký tự, không có khoảng trắngBấm "Tạo khóa" để tạo khóa đúng chuẩn.

Khi khách báo lỗi trong app

15. Cửa hàng không có website: tài khoản quản lý trên web

Khi cửa hàng chọn Dữ liệu nằm ở MARZI (không nối website), sản phẩm và đơn hàng nằm ở MARZI và chủ cửa hàng quản lý bằng trang /shop/ trên trình duyệt (xem Quản lý cửa hàng trên web). Bạn tạo tài khoản đăng nhập cho họ ngay trong bảng điều khiển.

  1. Mở cửa hàng: Khách hàng → chọn cửa hàng → kéo xuống thẻ Tài khoản quản lý cửa hàng (web) (thẻ chỉ có ở cửa hàng chưa nối website, và cần đã có mã cửa hàng).
  2. Tạo tài khoản: nhập tên đăng nhập (chữ thường không dấu, số, dấu chấm, ví dụ lan.nguyen), tên người dùng, và mật khẩu (từ 8 ký tự; để trống thì MARZI tự tạo).
  3. Gửi cho chủ cửa hàng: mật khẩu chỉ hiện một lần trong khung xanh cùng địa chỉ trang, mã cửa hàng và tên đăng nhập; bấm Sao chép rồi gửi qua tin nhắn. Đóng trang là mất mật khẩu (chỉ còn cách đặt lại).
  4. Về sau: Đặt lại mật khẩu tạo mật khẩu mới (cũ hết dùng ngay); công tắc Đang bật tắt một tài khoản (nhân viên nghỉ việc): có hiệu lực ngay, kể cả người đang đăng nhập.
Cho người cài máy chủ

Ảnh sản phẩm được lưu trên máy chủ (thư mục services/api/uploads, đổi bằng MEDIA_DIR): sao lưu thư mục này cùng cơ sở dữ liệu. Mỗi cửa hàng tối đa 300 MB (MEDIA_QUOTA_MB). Khi cập nhật bản mới nhớ chạy npm run migrate.

16. Trợ lý AI cho khách hàng của bạn

Khi gói của công ty bạn có tính năng Trợ lý AI (hỏi chủ hệ thống nếu chưa thấy), cửa hàng của bạn có thêm hai trợ lý chat:

  1. Bật tắt cho cả công ty: menu Trợ lý AI: ba công tắc (người mua, app quản lý, bảng điều khiển). Tắt là tắt cho mọi cửa hàng của công ty.
  2. Bật tắt từng cửa hàng: trang sửa khách hàng, thẻ Trợ lý AI; mỗi công tắc kèm dòng cho biết trợ lý đang chạy hay vì sao chưa (gói chưa có AI, đã tắt, hệ thống chưa cài dịch vụ chat).
  3. Đừng quên cập nhật thông tin công ty (điện thoại, email) ở trang chi tiết công ty để trợ lý chỉ đúng nơi liên hệ.
Lưu ý với chủ cửa hàng

Trợ lý chỉ nói về sản phẩm và giá có trong cửa hàng, nhưng vẫn có thể nhầm: app có dòng nhắc kiểm lại thông tin quan trọng. Khách đặt hàng như bình thường trong app, trợ lý không tự đặt đơn.