凡是會出貨的東西,就是一筆 order item,用 type 區分來源。


購物車裡除了客戶自己選的商品,還會冒出兩種東西:滿額贈品、加價購商品。

我看過幾種處理方式:贈品另外開一張 order_gifts 表;加價購塞進 order_items 但價格欄位放折扣後的價;或是乾脆把贈品寫進訂單備註,叫倉庫自己看。

這些做法上線之後,倉庫一定會出錯。因為揀貨的人要看三個地方,才知道這張單到底要出哪些東西。

我的判準很簡單:會出貨、會扣庫存、有 SKU 的,就是一筆 order item。 不管它是買的、贈的、還是加購的。

所以我的 order_items 有一個 type 欄位:

product   一般購買
add_on    加價購
gift      贈品

計算完成後,購物車狀態直接攤平成訂單品項:

public function toOrderItems(): array

一般商品照原價、加價購用加購價、贈品 unit_price 給 0,note 寫「滿 3000 元贈」。

這樣做的結果是:

倉庫只看一張表。 出貨單就是這張單的所有 order items,一行一行揀,不會漏掉贈品。

金額公式不用改。 items_subtotal 就是所有 order items 的 subtotal 相加。贈品是 0,加總不受影響;加價購是它的加購價,本來就該收這筆錢。

前台顯示也順。 同一份清單掃過去,遇到 gift 就標「贈品」、遇到 add_on 就標「加價購」,不需要把三份資料合併排版。

另一邊,折扣就不要塞進 order items。

折扣沒有 SKU、不出貨、不扣庫存,它跟商品是完全不同的東西。硬要放進 order items,你就得發明一個「數量 1、單價 -360」的假商品,然後倉庫的出貨單上會出現一行「折扣」,很荒謬。

折扣走另一張 order_discounts(label + amount),跟商品行分開。

判準說到底就一句:問這個東西「要不要出貨」。 要出貨的,進 order items;不出貨只影響金額的,進 order discounts。這條線一畫,之後不管加什麼行銷玩法,你都知道它該放哪裡。


⭐️ Shopify 網站開發服務(給品牌)
https://job.turn.tw/shopify-services

⭐️ 川川電商事務所(全客製電商開發服務)
https://chuanchuan.tw

⭐️ 台灣 Shopify 商家交流 LINE 群(非官方)
https://line.me/ti/g2/PZ_1LILWVWWuzZQ50HNpYA-A3k6QXWF6znqoBQ

⭐️ 台灣 Shopify 開發者 LINE 群(非官方)
https://line.me/ti/g2/YUasX5K3CJ4QdIx76zppjHlh3-q8w-xkSyK1LA

共有 0 則留言


⭐️ Shopify 網站開發服務(給品牌)
https://job.turn.tw/shopify-services

⭐️ 川川電商事務所(全客製電商開發服務)
https://chuanchuan.tw

⭐️ 台灣 Shopify 商家交流 LINE 群(非官方)
https://line.me/ti/g2/PZ_1LILWVWWuzZQ50HNpYA-A3k6QXWF6znqoBQ

⭐️ 台灣 Shopify 開發者 LINE 群(非官方)
https://line.me/ti/g2/YUasX5K3CJ4QdIx76zppjHlh3-q8w-xkSyK1LA
🏆 本月排行榜
🥇
站長阿川
📝45   💬1  
643
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次