Nếu Bagisto được chọn làm Nền tảng đích, giai đoạn chuẩn bị phải ghi nhận cả dữ liệu thương mại lẫn những cấu trúc ứng dụng Laravel đang sở hữu dữ liệu đó. Products có thể sử dụng nhiều loại Products, attribute families, channels, locales, currencies, inventory sources, các nhóm Customers, Categories, media, giá và URL keys. Extensions hoặc custom packages có thể bổ sung dữ liệu Marketplace, B2B, booking, subscription, payment, shipping, API hoặc Headless nằm ngoài mô hình catalog thông thường.
Mỗi hạng mục chuẩn bị cần chỉ rõ ai chịu trách nhiệm, tài liệu hoặc dữ liệu nào phải giữ lại và điều kiện nào cho biết hạng mục đã sẵn sàng. Đồng thời phải tách dữ liệu nguồn khỏi phần triển khai trên Nền tảng đích: quan hệ Products, lịch sử đơn hàng, CMS Pages, URLs, external identifiers và dữ liệu do package quản lý thuộc điều kiện sẵn sàng của di chuyển dữ liệu; còn payment, shipping, Tax, queue, search, theme và checkout đang hoạt động thuộc cấu hình/triển khai của Cửa hàng đích.
Chuẩn bị quyền truy cập Bagisto, Laravel, database, storage và khả năng khôi phục
Xác nhận quyền truy cập khu vực quản trị Bagisto, hosting/cloud, application files của Laravel, environment configuration, database, public/private storage, media của Products, downloadable files, queue và scheduler, logs, package management và các dịch vụ kết nối. Không sao chép secrets vào tài liệu dự án; chỉ ghi rõ chủ thể kiểm soát và nơi chúng được quản lý.
| Hạng mục chuẩn bị | Chủ thể chịu trách nhiệm | Tài liệu/thông tin cần giữ | Điều kiện sẵn sàng |
|---|---|---|---|
| Xác nhận quyền quản trị | Bagisto administrator | Account hoạt động và tóm tắt permissions | Có thể kiểm tra Products, attributes, Customers, Orders, channels, inventory và CMS. |
| Xác nhận application và database | Đội kỹ thuật | Thông tin hosting, Laravel project, database, storage, queue, scheduler và deployment | Xác định được đầy đủ nguồn dữ liệu có thẩm quyền. |
| Tạo backups có thể khôi phục | Đội hạ tầng | Database dump, application archive, storage/media/download archive và người chịu trách nhiệm khôi phục | Cửa hàng nguồn có thể được phục hồi độc lập với môi trường đang chạy. |
| Ghi nhận versions và packages | Đội phát triển | Bagisto, Laravel/PHP, database, theme, packages, modules và custom code | Những cấu trúc phụ thuộc version/extensions đã được ghi nhận. |
| Lập bản đồ hệ thống bên ngoài | Đội phụ trách tích hợp | ERP/PIM/WMS/CRM/Marketplace/search/payment/hệ thống xử lý đơn hàng cùng identifiers | Biết rõ hệ thống nào tiếp tục hoạt động và hệ thống nào có quyền cập nhật dữ liệu. |
Giữ internal/external identifiers của Products và Products con, attributes, attribute families, Categories, channels, inventory sources, Customers, Orders, invoices, shipments, refunds, CMS records, packages và các tích hợp.
Chuẩn bị các loại Products và quan hệ của mặt hàng có thể bán
Bagisto hỗ trợ nhiều loại Products có cấu trúc và quan hệ thương mại khác nhau. Simple Products đại diện mặt hàng thông thường. Configurable Products dùng selectable attributes và Products con liên kết. Grouped/bundle Products tham chiếu Products khác. Downloadable và virtual Products có cách xử lý sau mua khác Products vật lý, trong khi booking Products có thể mang quan hệ appointment, event, rental, table, slot, capacity và date.
| Loại Products hoặc mô hình | Thông tin cần chuẩn bị | Điều kiện sẵn sàng |
|---|---|---|
| Simple Products | ID, SKU, giá, nhóm Tax, stock, dimensions, Categories, channel, locale, media và Orders đại diện | Một bản ghi xác định rõ mặt hàng được bán và cách xử lý. |
| Configurable Products | Products cha, Products con, configurable attributes, option values, child SKUs, giá, stock và images | Mỗi Products con có thể bán truy ngược được về Products cha và attributes đã chọn. |
| Grouped Products | Products cha, simple Products liên kết, default quantities, thứ tự hiển thị và Orders đại diện | Group tách rõ khỏi danh tính từng component Products. |
| Bundle Products | Bundle options, input types, Products liên kết, default quantities, trạng thái required, giá và chi tiết mặt hàng trong Orders | Quan hệ bundle và components đầy đủ. |
| Downloadable Products | Files/links, title, giá, sample, limits, quan hệ Products và Orders đã hoàn tất | Có thể khôi phục dữ liệu chứng minh quyền truy cập nội dung số. |
| Virtual Products | Danh tính dịch vụ, giá, khả năng cung cấp dịch vụ và ngữ cảnh Orders | Không tạo giả shipping hoặc tồn kho vật lý. |
| Booking Products | Booking type, dates, slots, capacity, location, ticket/rental values, cancellation state và bản ghi Orders/booking | Quan hệ theo thời gian và capacity đã được ghi nhận. |
Không nên giả định Products nguồn có options sẽ luôn trở thành Configurable Products. Cần xác định mỗi lựa chọn thực tế tạo ra Products con có thể bán độc lập, attribute mô tả, bundle selection, booking choice hay dữ liệu Customers nhập một lần.
Chuẩn bị attributes, attribute families, Categories và media
Attributes của Bagisto có thể dùng text, textarea, price, Boolean, select, multi-select, date-time và nhiều kiểu khác. Attribute families nhóm attributes được dùng khi tạo và chỉnh sửa Products. Categories tổ chức Products, còn media và URL keys gắn với Products/Categories cụ thể.
| Cấu trúc | Thông tin cần chuẩn bị | Chủ thể | Điều kiện sẵn sàng |
|---|---|---|---|
| Attribute | Code, type, labels, options, required/unique, vai trò filtering/comparison và phạm vi locale/channel | Đội catalog | Chức năng kinh doanh của từng attribute đã rõ. |
| Attribute family | Code/name, nhóm attributes, Products assignments và mối phụ thuộc vào package | Đội catalog | Products có thể được gán family mà không mất trường bắt buộc. |
| Configurable attribute | Attribute, option values, Products cha/con và labels trong chi tiết mặt hàng của Orders | Đội catalog | Danh tính variants tách rõ khỏi dữ liệu mô tả Products. |
| Categories | ID, hierarchy, Products assignments, visibility theo channel/locale, media, metadata và URL key | Đội nội dung/catalog | Taxonomy và chủ thể sở hữu route công khai đã rõ. |
| Media | Products/Categories sở hữu, vai trò primary/gallery, file path/remote source, thứ tự sắp xếp và alt context | Đội nội dung | Tài nguyên ưu tiên có sẵn và liên kết đúng bản ghi. |
| Trường tùy chỉnh do package tạo | Schema, loại bản ghi sở hữu, kiểu dữ liệu, relationships và package sử dụng | Đội phát triển | Dữ liệu package không bị nhầm với attributes cốt lõi của Bagisto. |
Tạo ledger cho các trường dữ liệu, phân biệt danh tính mặt hàng có thể bán, mô tả Products, filtering, quản trị, các khóa tích hợp và trạng thái do package quản lý. Không gộp các trường có label giống nhau nếu chức năng kinh doanh khác nhau.
Chuẩn bị channels, locales, currencies và inventory sources
Channels có thể xác định hostname, Categories gốc, locales, currencies, theme, inventory sources và các ngữ cảnh storefront khác. Inventory sources đại diện các vị trí tồn kho có thể gán cho channels; số lượng Products có thể được lưu theo từng source.
| Khu vực ngữ cảnh | Thông tin cần chuẩn bị | Điều kiện sẵn sàng |
|---|---|---|
| Channel | ID/code, hostname, Categories gốc, locales, currencies, theme, inventory sources và người chịu trách nhiệm | Mỗi ngữ cảnh khách hàng sử dụng được liệt kê một lần. |
| Locale | Locale code, giá trị Products/Categories/nội dung được dịch, fallback và channel assignments | Bản ghi theo ngôn ngữ gắn đúng channel. |
| Currency | Currency code, base/default use, channel assignment và chủ thể quản lý giá | Giá trị thương mại không bị tách khỏi currency context. |
| Inventory source | ID/code, name, address, status, priority, channel assignments và external warehouse ID | Mỗi vị trí tồn kho có danh tính ổn định. |
| Số lượng Products | Products/child ID, source ID, quantity, ý nghĩa reserved/available khi có và hệ thống quản lý chính | Biết rõ mặt hàng có thể bán và vị trí của từng số lượng. |
| Trạng thái Products theo channel | Products/child, channel, status, visibility, khác biệt về giá/nội dung và Categories | Phạm vi Products được xác định rõ thay vì suy ra trên toàn hệ thống. |
Nếu ERP, WMS, Marketplace hoặc supplier feed kiểm soát stock, cần xác định hệ thống nào là nguồn dữ liệu chính và key nào kết nối hệ thống đó với Products và inventory source trong Bagisto.
Chuẩn bị các nhóm Customers, Customers, addresses và authentication
Chuẩn bị Customers cần bao gồm danh tính, nhóm Customers, addresses, trạng thái account, consent, Reviews, thông tin company/Tax khi có, external IDs và các yếu tố phụ thuộc của cơ chế xác thực. Extensions có thể bổ sung Marketplace sellers, company accounts, quotes, subscriptions, loyalty hoặc profiles khác.
| Khu vực account | Thông tin cần giữ | Chủ thể | Điều kiện sẵn sàng |
|---|---|---|---|
| Danh tính Customers | ID, email, name, status, group, locale/channel và external ID | Đội dữ liệu Customers | Duplicate/guest identities đã có quyết định rõ. |
| Nhóm Customers | Group ID/code, members, ảnh hưởng đến giá/quyền truy cập và các yếu tố phụ thuộc vào package | Đội thương mại | Ý nghĩa nhóm được mô tả ngoài tên label. |
| Address | ID, liên kết Customers, billing/shipping, country/state, company và các trường dữ liệu Tax | Chăm sóc khách hàng | Các địa chỉ đã lưu tách khỏi snapshots trong lịch sử đơn hàng. |
| Guest Customers | Email trong Orders, addresses và ngữ cảnh hỗ trợ | Đội dữ liệu Orders | Lịch sử guest không cần tạo account giả. |
| Authentication | Password scheme, social login/SSO, MFA, reset path và chủ thể phụ trách communication | Security | Có kế hoạch truy cập account mà không giả định credentials có thể chuyển trực tiếp. |
| Profile do extension quản lý | Customers/user ID, loại bản ghi package, role, status và commercial records liên quan | Đội phụ trách package | Dữ liệu account chuyên biệt có đích hoặc chủ thể tiếp tục quản lý. |
Chọn Customers từ nhiều nhóm, guest buyers, Customers có nhiều addresses, inactive accounts và account types do extensions tạo khi những cấu trúc này ảnh hưởng tới Orders hoặc quyền truy cập.
Chuẩn bị Orders, invoices, shipments, refunds và transactions
Xem Orders là dữ liệu thương mại lịch sử. Chuẩn bị headers, Customers/guests, addresses, Products/Products con trong từng dòng, options đã chọn, quantities, prices, discounts, Taxes, shipping, payment labels, status history, invoices, shipments, refunds, transactions, notes và external references. Packages Booking, Marketplace, B2B hoặc tùy chỉnh có thể bổ sung bản ghi liên quan.
| Nhóm dữ liệu Orders | Chủ thể | Điều kiện sẵn sàng |
|---|---|---|
| Header và chi tiết mặt hàng | Đội dữ liệu Orders | Products/child IDs, snapshot labels, selected values, quantities, prices và ngữ cảnh Customers đầy đủ. |
| Tổng tiền và điều chỉnh | Finance | Subtotal, discount, Tax, shipping, fees, refunds và final total đối chiếu được. |
| Invoice và shipment | Finance/đội xử lý đơn hàng | Document numbers, shipped lines, quantities, carrier/tracking, dates và files có thể truy xuất. |
| Refund | Finance/support | Amounts, affected lines, reasons, statuses và transaction IDs liên quan được ghi nhận. |
| Transaction | Finance | Payment label, transaction reference, amount, status và external provider key đã rõ. |
| Bản ghi Orders do package quản lý | Đội phụ trách package | Booking, seller, quote, subscription hoặc quy trình tùy chỉnh vẫn liên kết đúng Orders. |
| ID đơn hàng trong hệ thống bên ngoài | Đội tích hợp | Có thể truy vết quan hệ ERP, Marketplace, accounting hoặc hệ thống xử lý đơn hàng. |
Tổng tiền lịch sử phải được giữ như snapshot. Không tính lại bằng giá, Tax Categories, nhóm Customers, shipping hoặc payment configuration hiện tại.
Chuẩn bị CMS Pages, URLs, search và nội dung thương mại
Nội dung Bagisto có thể gồm CMS Pages, mô tả Products/Categories, metadata, URL keys, navigation, theme blocks, banners, search terms, cart rules, catalog rules và nội dung email/thông báo. Extensions có thể bổ sung page builders hoặc nguồn nội dung Headless.
| Khu vực nội dung | Thông tin cần chuẩn bị | Điều kiện sẵn sàng |
|---|---|---|
| CMS Page | ID, title, URL key, channel/locale, status, nội dung, metadata và vị trí navigation | Nội dung CMS tách rõ khỏi phần hiển thị theme. |
| Nội dung Products/Categories | ID, locale/channel, description, metadata, images và route ưu tiên | Nội dung catalog gắn đúng loại dữ liệu. |
| Navigation và theme block | Chủ thể, hierarchy/placement, object liên kết, media và mối phụ thuộc vào package/theme | Hành trình khách hàng không bị suy ra chỉ từ CMS hoặc Categories. |
| URL ưu tiên | Products/Categories/Page sở hữu, locale/channel, source path, backlinks/traffic value và mục đích của đích | Mỗi đường dẫn quan trọng có quyết định giữ, đổi, gộp, ngừng hoặc redirect. |
| Search và merchandising | Search terms, synonyms, rules, Categories, featured/new state và hệ thống chịu trách nhiệm | Inputs cho search/merchandising tách khỏi dữ liệu Products cốt lõi. |
| Promotion lịch sử | Rule/code, dates, conditions, Products/Customers bị ảnh hưởng và tham chiếu Orders | Dữ liệu discount lịch sử tách khỏi cấu hình promotions cho tương lai. |
Thu thập các paths ưu tiên từ analytics, search data, backlinks, campaigns, thông tin đã gửi cho Customers và internal navigation thay vì chỉ dựa vào sitemap.
Lập danh mục packages, custom tables, APIs và các yếu tố phụ thuộc của kiến trúc Headless
Kiến trúc Laravel cho phép packages và code tùy chỉnh đăng ký loại bản ghi, tables, events, jobs, APIs, Marketplace/B2B structures, booking, payment, shipping, search, feeds và các tích hợp với hệ thống bên ngoài. Cần tạo ledger về ownership trước khi quyết định dữ liệu nào nằm trong phạm vi.
| Thành phần phụ thuộc | Thông tin cần chuẩn bị | Điều kiện sẵn sàng |
|---|---|---|
| Package/module | Name, version, provider, status, purpose, người quản lý configuration, các lần di chuyển/tables, models và records bị ảnh hưởng | Dữ liệu package có đích hoặc chủ thể tiếp tục quản lý. |
| Custom table/model | Schema, keys, relationships, events, jobs và code sử dụng | Có thể diễn giải dữ liệu thay vì sao chép mù quáng. |
| API/cửa hàng Headless | Endpoints, resources, chủ thể authentication, IDs, giả định payload, routes và người chịu trách nhiệm triển khai | Các yếu tố phụ thuộc của frontend/tích hợp được ghi nhận mà không lộ secrets. |
| Package Marketplace/B2B | Sellers/companies, roles, catalogs, quotes, commissions, payouts, approvals và Orders liên kết | Dữ liệu thương mại chuyên biệt tách khỏi Customers/Orders cốt lõi. |
| Search/index service | Các trường được index, external IDs, source records, người chịu trách nhiệm rebuild và synonyms/rules | Dữ liệu index được sinh tự động không bị nhầm với nội dung có thẩm quyền. |
| Queue/scheduled process | Job, trigger, payload, destination, chủ thể xử lý retry/error và loại bản ghi bị ảnh hưởng | Automation vận hành tách khỏi dữ liệu tĩnh cần di chuyển. |
| Dữ liệu được sinh tự động | Cache, logs, sessions, queues, indexes, temporary imports và abandoned tables | Dữ liệu kỹ thuật không có thẩm quyền được loại trừ có chủ đích. |
Packages không còn hoạt động vẫn nên nằm trong ledger nếu dữ liệu của chúng còn xuất hiện trong Products, Customers, Orders, bookings, seller records hoặc reports.
Chọn các bản ghi đại diện để kiểm thử di chuyển dữ liệu
Chọn records làm lộ các loại Products, channels, inventory, ngữ cảnh Customers, Orders, nội dung và packages thực tế. Ghi source IDs, SKUs, URL keys, channel/locale, inventory source, external keys, bản ghi liên quan và lý do mỗi mẫu được chọn.
| Trường hợp đại diện | Thông tin cần chuẩn bị | Mục đích |
|---|---|---|
| Simple Products | Giá, Tax, stock, Categories, channel, locale, media và Orders | Tạo baseline cho Products thông thường. |
| Configurable Products | Products cha/con, configurable attributes, options, SKUs, prices, stock theo source, images và Orders | Kiểm tra danh tính variants. |
| Bundle/grouped/booking Products | Component/slot relationships, quantities, prices, capacity, package data và chi tiết mặt hàng trong Orders | Kiểm tra cấu trúc thương mại không đơn giản. |
| Inventory đa channel | Products/child, channels, locales, currencies, inventory sources, quantities và external warehouse IDs | Kiểm tra ngữ cảnh và quyền sở hữu stock. |
| Nhóm Customers hoặc account extension | Customers, group/profile, addresses, ảnh hưởng access/giá và Orders liên quan | Kiểm tra phân khúc hoặc account do package định nghĩa. |
| Orders phức tạp | Loại Products, options, discount, Tax, invoice, shipment, refund, transaction và external IDs | Kiểm tra lịch sử thương mại. |
| CMS/URL | CMS Page hoặc nội dung catalog, locale/channel, URL key, metadata, links và mục đích của đích | Kiểm tra ownership nội dung và routes. |
| Bản ghi do package quản lý | Bản ghi core, package model/table, các trường tùy chỉnh, jobs/events và khóa tích hợp | Làm lộ phạm vi ngoài Bagisto core trước khi thực thi. |
Bộ mẫu đã sẵn sàng khi mỗi bản ghi được chọn có kỳ vọng từ Cửa hàng nguồn, ngữ cảnh channel/inventory, files liên quan và người chịu trách nhiệm rà soát.
Hoàn tất điều kiện sẵn sàng cuối cùng cho Bagisto
| Khu vực | Điều kiện sẵn sàng |
|---|---|
| Access và recovery | Administration, Laravel application, database, storage, media/downloads, backups và người chịu trách nhiệm restoration đã rõ. |
| Catalog | Các loại Products, children/components, attributes, families, Categories, media, giá, stock và identifiers truy vết được. |
| Channels và inventory | Channels, locales, currencies, inventory sources, Products assignments, quantities và external authorities đã được ghi nhận. |
| Customers và Orders | Accounts, groups, addresses, Orders, lines, totals, invoices, shipments, refunds, transactions và external IDs có thông tin đối chiếu đầy đủ. |
| Nội dung và URLs | CMS Pages, nội dung catalog, navigation, priority paths, metadata, links và redirect decisions đã rõ. |
| Các thành phần phụ thuộc | Packages, custom tables/models, APIs, Headless clients, jobs, search và hệ thống bên ngoài có chủ thể chịu trách nhiệm. |
| Mẫu kiểm thử | Các bản ghi đại diện bao phủ mọi loại Products, channel, Customers, Orders, nội dung và package có ảnh hưởng đáng kể. |
Phạm vi Bagisto chỉ sẵn sàng khi mỗi bản ghi quan trọng có thể truy ngược tới chủ thể ở Cửa hàng nguồn, quan hệ liên quan, tài liệu cần giữ và đích dự kiến hoặc hệ thống tiếp tục quản lý.
Kết luận
Chuẩn bị cho Bagisto đòi hỏi bằng chứng có tổ chức trên nhiều lớp: quyền truy cập Laravel/database, các loại Products, attributes và families, Categories, channels, inventory sources, Customers, Orders, CMS records, URLs, packages, APIs và hệ thống bên ngoài. Checklist cần làm rõ các quan hệ đó trước khi thực thi thay vì xem Bagisto như database Products-Customers-Orders đơn giản.
Bộ hồ sơ sẵn sàng đầy đủ phải giữ nguồn có thể khôi phục, tách dữ liệu core khỏi cấu trúc do package quản lý, phân biệt giao dịch lịch sử với cấu hình đang hoạt động và chỉ rõ chủ thể cho từng tích hợp hoặc phần tùy chỉnh.
Câu hỏi thường gặp
Cần chuẩn bị gì trước tiên cho dự án chuyển sang Bagisto?
Trước tiên cần xác nhận quyền truy cập Bagisto Administration, Laravel application, database, storage, media, download, queue, scheduler và packages; tạo backups có thể khôi phục; đồng thời ghi nhận versions của Bagisto, Laravel, PHP, database, theme và packages.
Vì sao các loại Products trong Bagisto phải được kiểm kê riêng?
Configurable, grouped, bundle, downloadable, virtual và booking Products sử dụng các quan hệ Products con, component, file, slot, capacity và Orders khác nhau. Gộp tất cả thành simple Products sẽ làm mất cấu trúc khiến chúng có thể bán và vận hành đúng.
Attributes và attribute families nên được chuẩn bị như thế nào?
Ghi attribute codes, types, labels, options, vai trò filtering/comparison, required/unique, family assignment, Products assignment và xác định trường thuộc Bagisto core hay custom package.
Vì sao channels và inventory sources là một phần của việc chuẩn bị?
Channels có thể xác định hostname, locale, currency, Categories gốc, theme và phạm vi inventory sources. Số lượng Products có thể thuộc nguồn tồn kho cụ thể, vì vậy một tổng stock toàn cục không duy trì được ý nghĩa về vị trí hoặc channel.
Những Orders nào nên được chọn làm mẫu đại diện?
Nên có Orders chứa simple/configurable Products, bundles hoặc bookings khi sử dụng, discounts, nhiều Taxes, invoices, shipments, refunds, transactions, guest Customers, Customers theo nhóm, external IDs và quan hệ Orders do package quản lý.
Ledger packages và dữ liệu tùy chỉnh của Bagisto cần chứa những gì?
Ghi mọi package, custom table/model, API, Headless client, job, event, search service, thành phần Marketplace/B2B và connector bên ngoài đang tạo hoặc sử dụng dữ liệu kinh doanh. Mỗi hạng mục cần có chủ thể chịu trách nhiệm, bản ghi bị ảnh hưởng, thông tin kiểm chứng và quyết định về đích hoặc hệ thống tiếp tục quản lý.