指南

如何建立網上商店:商品、購物車、結帳及庫存

要建立網上商店,你需要商品目錄、購物車、透過 Stripe 等付款服務商收款的結帳流程、記錄訂單及扣減庫存的方法,以及一個用來處理訂單的管理介面。AI 應用程式生成工具可以根據清晰的描述把以上功能全部組合起來。最值得花心思的其實不是店面,而是與金錢相關的部分:何時訂單才算已付款、庫存如何預留,以及如何處理稅項、運費和退款。

自訂商店還是 Shopify?先決定這一點

開始建造之前,請先誠實考慮這一點。

如果符合以下情況,託管式商務平台(Shopify、Squarespace Commerce、WooCommerce 等)通常較好:

  • 你售賣實體商品,需要運費計算、運單及退貨處理
  • 你需要計算多個地區的稅項
  • 非技術人員每日都要新增商品及處理訂單
  • 你想使用應用程式商店提供的附加功能,例如評價、電郵行銷、積分計劃
  • 你透過多個銷售渠道售賣,並需要統一的庫存數字

Shopify 的收費是月費,如果選擇按年付費可享折扣;信用卡付款另外要收取手續費。價格因地區而異,請查看其定價頁面了解你所在國家的收費。

如果符合以下情況,自訂商店通常較適合:

  • 產品較特別:按訂單製作的配置器、預約加商品、附授權的數碼下載、按客戶劃分的 B2B 價目表
  • 商店只是更大型應用程式的一部分(例如課程平台、會員網站、市集)
  • 你售賣的商品種類不多,並希望完全掌控設計及結帳流程
  • 你希望擁有程式碼,並避免被平台綁定

很多小型賣家最適合使用平台。如果你的需要很普通,這是好事,直接走捷徑就好。

網上商店需要什麼

資料

資料表主要欄位
商品名稱、slug、描述、圖片、價格、是否上架(是/否)、分類
商品變體所屬商品、選項值(尺寸、顏色)、SKU、價格覆寫、庫存
訂單編號、客戶電郵、送貨地址、狀態、小計、運費、稅項、總額、付款 ID
訂單項目所屬訂單、商品變體、數量、購買時的單價
庫存變動商品變體、變動數量(+/−)、原因(銷售、補貨、退款、更正)、日期
折扣碼代碼、類型、金額、到期日、使用上限 — 日後再加,不必一開始就做

務必在每個訂單項目上記錄購買時的價格。如果你下個月改了價格,舊訂單仍須顯示客戶當時付的金額。

頁面

  • **店面:**主頁、分類或系列頁、商品頁、購物車、結帳跳轉、訂單確認頁。
  • **管理後台:**商品及庫存、附狀態(已付款、已包裝、已寄出、已退款)的訂單、客戶、簡單的銷售數字。
  • **法律及政策:**運送、退貨、私隱及條款。顧客在購買前會查看這些頁面,而且很多地區的法例規定必須提供部分內容。

權限

讓顧客不用登入帳戶也能購物:訪客結帳可以省去一個步驟,帳戶功能則可日後再加。只有管理員可以查看訂單及編輯商品,管理後台必須以真正的登入機制及伺服器端檢查加以保護。

結帳流程應如何運作

自訂商店最安全的做法是使用代管結帳頁面。以 Stripe 為例:

  1. 顧客按下結帳按鈕。你的伺服器會從資料庫重新核對價格及庫存,絕不信任瀏覽器傳來的資料,然後建立 Stripe Checkout 工作階段。
  2. 顧客在 Stripe 的頁面付款,卡資料不會經過你的伺服器。
  3. Stripe 會呼叫你應用程式的 webhook 端點,通知付款已成功。只有到這時,你才把訂單標記為已付款並扣減庫存。
  4. 顧客會被導向你的確認頁面,而你會發送確認電郵。

要避免兩個錯誤:一是在成功頁面的跳轉中建立「已付款」訂單(人們可能關掉分頁,而跳轉也可能被偽造),二是在瀏覽器中計算總額。除非你特別註明,否則 AI 很容易在這兩點出錯。

Stripe 的標準收費為每筆成功的信用卡付款收取百分比加固定費用,沒有開設費或月費(截至 2026 年 9 月);實際費率視乎你所在國家及卡種而定。請先用 Stripe 測試模式及其測試卡號把所有功能建好。我們的為應用程式加入付款功能指南涵蓋金鑰、測試模式及 webhook。

稅項、運費及庫存的決定

以下屬於業務決定,AI 無法替你作出:

  • **稅項。**你是否須要收取銷售稅或增值稅,以及稅率多少,取決於你及客戶所在的地區。Stripe 提供相關服務(Stripe Tax),如果你的情況簡單,也可以設定固定稅率。如有疑問,請諮詢會計師。
  • **運費。**可以先從幾個固定費率開始(本地、海外、超過某金額免運費)。即時承運商運費及列印運單,正是 Shopify 等平台可為你大幅節省工夫的地方。
  • **庫存。**決定庫存是在結帳開始時預留,還是只在付款成功時才扣減。對小型商店來說,付款成功後扣減,並在結帳前再次核對,會比較簡單;但偶爾會出現最後一件被超賣的情況,所以要事先想好處理方法。如需商店以外的庫存追蹤,請參閱如何建立庫存管理應用程式。

一個有效的首個提示

為 Loam & Clay 建立一個網上商店,這是一間售賣杯子、碗和花瓶的小型陶瓷工作室。店面方面:主頁展示精選商品;商店頁面設有分類篩選;商品頁面有圖片庫、顏色變體及庫存狀態;另有滑出式購物車。把商品、變體、訂單及訂單項目儲存在資料庫中,並預先加入 10 件貼近現實的商品。管理後台(需要登入)可新增及編輯商品、上傳圖片、更改庫存,以及查看附狀態(已付款/已包裝/已寄出)的訂單。結帳按鈕暫時可以只是佔位,我們稍後再加入 Stripe Checkout。設計要溫暖簡約,以手機為優先。不要加入虛假評價或「全球免運費」之類的說法。

先以佔位結帳開始是刻意的做法:先把商品目錄及管理後台做好,然後才在獨立的步驟中接入付款,這樣才能妥善測試。

建造步驟

  1. 商品目錄及商品頁面,使用真實的商品名稱、價格及相片。
  2. 購物車,要能在重新整理頁面後保留內容。
  3. 管理後台:商品、變體、庫存、圖片上傳。以登入機制加以保護。
  4. Stripe Checkout,使用測試模式,並由伺服器重新核對價格及庫存。
  5. Webhook,把訂單標記為已付款並扣減庫存。使用測試卡完整測試一次。
  6. 訂單電郵,發送給客戶及你自己。
  7. 政策及 SEO:運送及退貨頁面、商品標題及描述、分享圖片。請參閱AI 建立的網站如何做 SEO。
  8. 正式上線:切換為正式 Stripe 金鑰,自己下一張真實的小額訂單,然後退款。

常見錯誤

  • **信任瀏覽器傳來的價格。**務必在伺服器重新計算。
  • 在成功頁面而非 webhook 中把訂單標記為已付款。
  • 直接覆寫庫存數字,而不記錄每次變動,結果會失去庫存變動原因的歷史。
  • 未有運送及退貨頁面就上線。
  • **圖片過大。**壓縮圖片,並從檔案儲存空間提供,不要放在程式碼內。
  • 在第一張訂單之前就做願望清單、評價及積分功能。

營運成本

需要預算的項目包括:主機及資料庫、每筆銷售的付款手續費、網域、用於發送訂單確認的電郵服務,以及可能需要的稅務服務。自訂商店不需要平台月費及應用程式費用,但你要自己承擔維護工作:結帳出問題時,就要由你來修理。

如果你想讓其他賣家加入,即每位賣家各自收取款項,那就是市集,付款規則亦不同。請參閱如何建立市集。

用 Mythex 建立

在 Mythex,你描述想要的商店,agent 會在即時預覽中建好商品目錄、購物車及管理後台;商品與訂單資料儲存在 Postgres 資料庫,商品圖片則使用檔案儲存空間。文件中的商店使用案例建議的順序正是上述步驟:先做商品目錄,之後再處理結帳。

付款功能使用你自己的 Stripe 帳戶:把 Stripe 金鑰加入為專案祕密值,然後要求 agent 加入 Checkout,接着在預覽中用 Stripe 測試卡測試(Stripe 教學)。Webhook 需要公開網址,所以要先發布,之後才能把 Stripe 指向它(webhook 教學)。稅項、運費及庫存同步並非 Mythex 內建功能,亦沒有原生的 Shopify 整合;如果你需要現成的完整解決方案,Shopify 會是較好的選擇。如需起點,可參考商店範本,例如電子商店。

常見問題

我可以用 AI 建立網上商店嗎?

可以。AI 應用程式生成工具可以建立商品目錄、商品頁面、購物車及訂單管理,並使用你自己的帳戶把結帳連接到 Stripe 等付款服務商。稅項、運費及配送規則仍須由你自行決定,並仔細測試。

要網上售賣,我一定要用 Shopify 嗎?

不一定。你可以用自訂商店加上 Stripe 等付款服務商來售賣。不過,如果你希望庫存、運費、稅項及應用程式都由同一個產品處理,或者日常營運由非技術人員負責,Shopify 仍然是較容易的選擇。

自訂網上商店如何收款?

大部分自訂商店會把顧客導向 Stripe Checkout,這是由 Stripe 代管的付款頁面,並在 Stripe 透過 webhook 確認付款後才建立訂單。你的卡資料不會經過你自己的伺服器,這樣做更簡單,也更安全。

如何確保庫存數字準確?

只在付款獲確認後才扣減庫存,在建立結帳前再次核對庫存,並把每次變動(銷售、補貨、退款)記錄為一項變動,而不是直接覆寫數字。在其他銷售渠道售出的商品,也必須同步更新同一個庫存數字。

Mythex · Pricing · 用 AI 建造任何嘢 · 網站及應用程式範本 · Mythex 比較 · AI 應用程式開發詞彙表 · 免費 AI 應用程式開發工具 · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(台灣)