訂單金額拆分
父訂單如果被拆分,那么跟隨訂單一起變化的不僅僅只有商品和商品數量,訂單的金額也會跟隨變化,同時為了方便解決后續售后問題,必須對拆分后的訂單金額進行合理拆分,我們先看下訂單金額組成:

本圖展示了一筆訂單的金額組成,它由正值和負值兩部分組成
正值:商品金額、運費
負值:促銷優惠金額、積分抵扣、優惠券優惠、后台改價等
這里優惠金額涉及:改SKU的價格,滿減、滿折,優惠券,優惠碼等等金額。后台需要標記每一個金額扣減時,對應的字段,方便統計查詢。
訂單金額計算流程:
1. 先計算商品金額(即:改商品價格)
2. 促銷后商品小計金額(即:滿減、滿折、滿贈,優惠券)
3. 促銷后訂單金額(即:滿減、滿折、滿贈)
4. 后續針對訂單的優惠券、優惠碼
5. 金額累計疊加后,再判斷是否包郵,計算運費
6. 積分抵扣訂單金額
7. 其他金額抵扣,如:后台人工修改價格(需要使用獨立字段記錄,不能直接在原訂單金額上直接修改)
訂單拆分后金額分布:
訂單涉及跨店鋪拆分的情況,一般建議商品包郵上架避免訂單分拆后單獨計算運費,這對用戶來講難以接受(一筆訂單需要支付多筆運費),商品包郵上架后同時免去郵費分攤的問題
舉一個例子:
1. 針對指定商品的滿減活動,需要將促銷后的金額來分攤
例如 一筆訂單 如下:
SKUA 2件 共25 元 單品參加 滿20減5 促銷
SKUB 2件 共60 元 無促銷
SKUC 1件 共20 元 無促銷
全場促銷活動:滿100減10
使用了一張優惠券: 滿80減10
包郵
這筆訂單促銷后,用戶實際需要支付(實付款)為:105-5-10-10=80 元
假如我門把它拆分成三個子訂單,1、2、3 分別對應三種SKU,各個子訂單的金額應該如何分布?這里面 就涉及 優惠金額 分攤的問題了
對於子訂單1(SKU A)
商品總價:25元
促銷優惠:5元
促銷分攤優惠:(25-5)/(20+60+20)*10=2 元
優惠券分攤優惠:(25-5)/(20+60+20)*10=2 元
訂單實付款:25-5-2-2=16 元
對於子訂單2(SKU B)
商品總價:60 元
促銷分攤優惠:60/(20+60+20)*10=6 元
優惠券分攤優惠:60/(20+60+20)*10=6 元
訂單實付款:60-6-6=48 元
對於子訂單3(SKU C)
商品總價:20 元
促銷分攤優惠:20/(20+60+20)*10=2 元
優惠券分攤優惠:20/(20+60+20)*10=2 元
訂單實付款:20-2-2=16 元
拆分后訂單售后如何處理
如果執行部分訂單退款時,就必須根據每筆子訂單的實付款進行退款。
如果執行售后退貨退款時,也必須根據子訂單的實付款進行退款處理。
如果涉及積分抵扣的情況,也一樣根據上述公式,把積分抵扣的金額分攤的每筆子訂單上去,不過在執行退款時,需要將對應金額的等比例積分返還用戶
執行部分退款,因為一般沒有指定金額的優惠券(優惠券一般不支持部分退),所以執行部分退款時,優惠券不退
如果全部退款,可以考慮退回優惠券,具體情況視業務需求而定
*注:上述分攤規則也只是一個折中的方案,涉及跨店鋪的情況時,由於每種商品的毛利率都不同,按照商品金額進行比例分攤,可能導致部分店鋪虧損
例如:肥皂毛利率10%,杯子毛利率50%,由於優惠時根據商品金額等比例分攤,有可能導致肥皂實際上是被虧本的。此問題目前並沒有特別好的解決方案。