大家好,我是湯師爺~
今天聊聊線上交易系統流程詳解。
線上交易系統為新零售連鎖商家提供一站式線上交易解決方案。其核心目標是,透過數字化手段擴大商家的服務範圍,突破傳統門店的地理限制。系統支援電商、O2O等多種業務形態,為商家提供全方位的線上運營能力。
線上交易系統包含兩個核心流程:正向交易流程、逆向交易流程。
正向交易流程負責處理從訂單建立到完成的標準交易過程,而逆向交易流程則處理訂單取消、退款、退貨、換貨等異常交易場景。這兩個流程相互配合,共同確保交易系統的完整性。
正向交易系統流程
正向交易系統流程是指從使用者下單到訂單完成的標準交易過程,如圖所示,主要包含訂單建立、訂單支付、訂單履約、訂單完成這些環節。
11.2.2 訂單建立
訂單建立是電商系統的核心環節,需要多個模組的緊密協作。以下是訂單建立過程中涉及的主要步驟:
1、校驗商品資訊
系統首先校驗商品的狀態和價格,確保商品已上架,庫存充足,價格準確。如果發現異常,系統會提示使用者無法購買。
2、處理會員等級、積分和優惠券等客戶權益
根據使用者的會員等級,計算相應的折扣和積分獎勵。同時,驗證使用者的優惠券是否有效,是否符合使用條件,這一步確保能夠正確使用客戶權益。
3、計算各類優惠
系統獲取促銷活動、滿減和折扣等優惠,按照預設疊加互斥規則,計算優惠的疊加效果,為使用者提供最優價格方案。
4、驗證收貨地址、計算運費並預估配送時效
核實使用者提供的收貨地址是否合法、完整。根據地址計算運費,並預估配送時間,供使用者參考。
5、選擇合適的配送門店或倉庫
系統根據收貨地址和庫存情況,選擇最合適的配送門店或倉庫,這有助於提高配送效率,縮短送達時間。
6、檢查並預佔庫存
如果庫存足夠,系統會預先佔用對應的庫存,防止超賣。
庫存扣減方式會影響商品供應和使用者購買體驗。目前主流採用兩種方式:下單減庫存和付款減庫存。
1)下單減庫存
下單減庫存可立即鎖定商品,有效防止超賣,特別適用於秒殺、搶購等高併發場景,能提高使用者購買成功率。
但這種方式的缺點是:未付款訂單會佔用庫存,導致有真實購買需求的使用者無法下單,容易造成庫存積壓和銷售受阻。
為解決這些問題,可以設定訂單有效期,超時未付款則自動取消並釋放庫存。同時可限制單個使用者的購買數量,並透過風控策略識別和攔截異常下單行為。
2)付款減庫存
付款減庫存僅在使用者完成支付後才扣減庫存,能避免無效訂單佔用庫存,提升庫存利用效率。
但在高併發情況下,可能出現使用者付款成功而庫存不足的問題,導致無法發貨,引起投訴並影響商家信譽。
對此,可在使用者付款前進行實時庫存校驗,並及時提示庫存緊張狀況。
7、計算訂單總價、訂單明細價格
計算訂單各項明細的商品價格、優惠分攤金額和運費,並彙總計算訂單總金額。
8、最終生成訂單
完成上述步驟後,系統生成訂單記錄,包含所有相關資訊。訂單生成後,進入支付環節。
訂單支付
訂單生成後,系統將引導使用者進入支付環節。在這個階段,交易系統首先會向支付系統發起支付請求,生成相應的支付訂單。
系統隨後會自動跳轉到統一支付收銀臺介面,提供多種支付選項。使用者可以選擇微信支付、支付寶或銀行卡等方式完成支付。
當使用者完成支付操作後,支付系統會返回詳細的支付結果,包括支付流水號和支付時間等。
交易系統隨後根據這些資訊更新訂單狀態,將訂單標記為待發貨,為後續的訂單履約做好準備。
訂單履約
訂單履約是指從訂單支付完成到商品最終送達使用者手中的全過程,這是確保良好購物體驗的關鍵環節。
整個履約流程需要多個系統協同工作,主要依靠訂單履約系統、WMS倉儲系統和物流系統等核心系統的緊密配合。
在電商購物流程中,系統會將訂單智慧拆分為發貨單,並按照就近發貨原則分配至合適的倉庫。倉庫接收發貨指令後,按標準流程進行打單、揀貨、質檢和包裝,最後交由快遞公司配送。
在O2O購物流程中,系統根據使用者收貨地址將訂單分配給就近門店。門店接單後立即進行商品備貨、打包。對於自提訂單,系統生成取貨碼,並通知使用者到店提貨;對於外送訂單,系統會排程附近騎手配送,並全程追蹤配送狀態,直至商品順利送達。
訂單完成
訂單完成是訂單生命週期的最終狀態,表示正向交易流程已經結束。具體來說,當滿足以下條件時,訂單將被標記為完成:
- 使用者已確認收貨,或系統自動確認收貨(一般在快遞簽收後的7-15天)
- 訂單已超過售後服務期限(通常是收貨後7-15天)
- 所有的售後問題(如退換貨)已經處理完畢
- 訂單相關的貨款已完全結算給商家
一旦訂單完成,意味著買賣雙方的交易責任和義務都已履行完畢,訂單進入終態。此時除特殊情況外,使用者將無法再對該訂單發起售後申請。
逆向交易系統流程
在訂單生成後的狀態流轉過程中,可能出現三種逆向流程:取消訂單、僅退款和退貨退款。
使用者取消訂單
當使用者在提交訂單後還未進行支付時,可以選擇取消訂單。系統在處理取消訂單請求時,會執行一系列操作:
- 將訂單提交時預佔的庫存全部釋放,確保這些庫存能重新補充到銷售庫存;
- 系統會自動返還使用者下單時使用的所有優惠券、會員積分等權益,這些權益能在後續訂單中重新使用
- 系統將訂單狀態標記為"已關閉",完成整個取消流程。
由於這類訂單未涉及實際支付,處理邏輯相對簡單,無需與支付系統進行互動,也不存在退款等資金處理問題。
使用者僅退款
使用者完成支付後,可能因商品缺貨、發貨延遲或商品描述不符等原因申請退款。退款處理主要包含以下步驟:
1、使用者申請退款
使用者需要在系統中選擇要退款的商品,並填寫詳細的退款申請資訊,包括退款金額、退款原因和相關證明憑證。提交申請後,系統會自動將這些商品的狀態更新為"售後中",防止後續操作發生衝突。
2、商家稽核
商家稽核透過後,可在系統中確認退款。系統將透過原支付渠道發起退款,並詳細記錄所有退款相關的資金流水資訊。同時,系統會將商品狀態更新為"已退款",更新退款單據狀態,確保整個退款過程可追溯。
若商家稽核不透過,則可駁回退款申請,系統將自動將商品狀態恢復至"待發貨"狀態。
3、庫存處理
因為僅退款場景下並未發生實物商品的退回,因此無需進行庫存數量的變更操作。
4、權益處理
當訂單中所有商品完成退款後,系統會自動返還使用者的全部權益,包括優惠券和積分等。對於有活動資格限制的訂單,系統也會返還相應的活動資格。
使用者退貨退款
在商家發貨後,使用者可能因商品質量問題、實物與描述不符或尺寸不合適等原因,向商家申請退貨退款。退貨退款主要包含以下步驟:
1、使用者申請退貨退款
使用者需在系統中選擇"退貨退款"型別,並指定要退回的具體商品。然後,使用者需填寫完整的退款申請資訊,包括預期退款金額、退貨具體原因,以及相關的商品問題證明(如照片或影片)。申請提交後,系統將自動把相關商品狀態更新為"售後中",防止出現操作衝突。
2、商家稽核
商家收到退貨退款申請後,將根據使用者提供的資訊進行詳細稽核。稽核透過後,系統會立即通知使用者開始退貨流程,將申請單狀態更新為"待使用者退貨",併傳送退貨地址等資訊。
如果商家發現申請不符合退貨條件,可駁回申請。系統隨即將商品狀態恢復至原始狀態,並向使用者說明駁回原因。
3、使用者退貨
稽核透過後,使用者需在系統中填寫退貨物流資訊,包括快遞公司和運單號。使用者確認退貨後,系統自動將申請單狀態更新為"買家已退貨,待商家收貨",履約系統會生成退貨單,並開始跟蹤物流狀態。
3、商家收貨並退款
商家收到退回的商品後,會檢查商品的完整性和狀態。
如果商品沒有問題,確認收貨後,系統立即透過原支付渠道啟動退款流程。系統會生成詳細的退款資金流水記錄,同時將商品狀態更新為"已退款",並相應更新訂單狀態。
如果商品有問題,商家會拒絕收貨並記錄問題原因。此時,系統會將退貨申請狀態更新為"商家拒收",並通知使用者重新發起退貨,或與商家溝通解決方案。
4、庫存處理
退貨完成併入庫後,系統會自動將退回的商品數量,新增至可用庫存,確保庫存資料準確。
5、權益處理
當所有商品完成退款後,系統返還權益到使用者賬戶,例如,使用者購買時使用的優惠券、積分等權益資產。對於有活動資格限制的訂單,系統也會返還相應的活動資格。
系統核心功能
在前面的章節中,我們已經深入探討了線上交易系統的正向和逆向流程。
透過對正向和逆向流程的系統分析,我們可以明確線上交易系統必需的核心功能:
- 下單環節:購物車、訂單結算、價格計算、訂單建立、訂單取消。
- 支付環節:預支付、支付處理、支付回撥、支付型別。
- 履約環節:快遞、自提、核銷等場景的訂單狀態更新。
- 訂單完成:確認收貨、訂單評價。
- 訂單管理:訂單操作、訂單查詢、訂單詳情、訂單匯出。
- 逆向流程:買家退款/退貨退款、商家主動退款。
本文已收錄於,我的技術網站:tangshiye.cn 裡面有,演算法Leetcode詳解,面試八股文、BAT面試真題、簡歷模版、架構設計,等經驗分享。