從0到1構建電商平臺之財務系統:商家財務結算

9 評論 30374 瀏覽 282 收藏 10 分鐘

由于每家電商公司的業務需求不同,財務系統也不盡相同,這篇文章主要討論商家對訂單的結算申請流程,與其中可能存在的一些風險點及應對方案。

(1)訂單貨款的走向

  1. 用戶通過支付寶或微信對訂單付款之后,貨款將進入我們公司支付寶和微信的對公賬戶;
  2. 商家到了賬期之后就可以對該筆訂單進行申請結算;
  3. 由平臺的工作人員進行審核,確認無誤之后,將賬款線下打款,然后上傳線下打款的憑證照片并通知商家。(由于我們平臺的財務系統暫時未接入第三方代收款機構,所以暫不支持將貨款線上直接支付給商家,只能線下打款)

所以商家后臺會有兩個頁面:

  1. 結算申請頁面:商家用于申請可結算的金額;
  2. 結算記錄單頁面:商家用于查看進行中或已結算的歷史結算單。

管理后臺會有一個頁面:

3.結算審核頁面:工作人員用于審核商家的結算單,并上傳打款憑證。

接下來解釋每個頁面所包含的字段、可能出現的風險點及應對方案。

一、結算申請頁面

(這是我之前做的原型圖,把一些可能會涉及到公司機密的字段做了修改或刪減)

該頁面主要包括三個字段:待結算金額、可結算金額、凍結金額。

  1. 先解釋一下我們平臺的規則:用戶確認收貨之后再加上與商家的賬期,時間到了之后商家才能對該筆訂單進行結算申請;比如該商家結算周期為10天,用戶下單后商家1號發貨,如果用戶5號手動確認收貨就是15號能結算,如果用戶11號自動確認收貨就是21號能結算。
  2. 為什么要這么制定:除去資金流動等公司層面的考慮,還有一個原因就是用戶在確認收貨之后是有15天的可申請售后時間的,為了盡可能的減少商家把錢申請走了后用戶再來退款的情況,所以加上一個賬期,當然賬期的時間長短就要看公司怎么制定了;一般來說至少是7天,因為大部分商品支持7天無理由退換貨,過了7天就不能隨便退換貨了。
  3. 這里面存在一個漏洞:一般商家會有一筆保證金,當商家把錢提走之后,用戶又來申請退款并且成功退款,這時該筆訂單金額就會在商家的保證金里扣;但是如果出現多個用戶同時發起申請的金額大于保證金的情況呢?如果商家知道這個漏洞也保不齊會出現故意刷單的情況。

有兩個方案:

  • 一是限制賬期的時間:強制賬期為15天,也就是等用戶無法申請售后之后,但這會增加商家的回款時長,并不是每個商家都能接受;
  • 二是限制結算金額:申請未過15天的訂單金額不得大于保證金,比如保證金5k,可結算金額為10k,其中2k已確認收貨后且過了15天,而8k的訂單金額未過15天,這時商家能申請結算的金額為2k+5k。

具體哪個方案就得看公司的業務需求,如果有大佬有更合理的方案,歡迎在評論區討論!

1. 待結算金額

指商家還不能結算的金額,也就是用戶還未確認收貨且還未過賬期的金額。要有這個字段是可以讓商家清楚的看到,也可以把這些金額對應的哪些訂單列出來。

2. 可結算金額

指商家可以結算的金額,也就是用戶確認收貨(訂單狀態處于已收貨)且已到賬期的金額。

需要注意一點:商家發起結算申請時不能手動改申請的金額;比如可結算的200元由兩筆100元的訂單組成,商家只能申請100或200元,不能申請50元,是因為訂單的金額不能做拆分。如果商家能申請50元,就會把這50元分配到多個訂單頭上,然后就需要記錄哪些訂單當前已結算多少金額,是否已結算完等,大大增加了復雜度。

3. 凍結金額

指用戶申請了售后但還未完結的訂單金額。上一篇“退貨退款”講到過,當用戶發起售后之后,會對一整筆訂單都凍結,而不是一個商品。

首先解釋凍結:比如用戶購買了A商品2件,B商品1件;當用戶對A商品中的1件發起退款之后,商家將暫時不能對該筆訂單發起申請,只有當該筆訂單下的售后單完結時(售后單狀態處于已完成或已關閉)。如果成功退款,那商家才能對剩余的貨款發起結算申請;如果售后單關閉沒有成功退款,就可以全部申請。所以得先凍結起來,因為并不知道該筆售后單是否能成功退款。

然后解釋為什么是一整筆訂單而不是單個商品:如果只凍結單個商品,可能會出現的情況是當用戶對A商品申請售后,商家對B發起了結算申請,而A商品的售后單又關閉了,商家又對A發起結算申請,這樣一個訂單就被拆成兩次申請。

諸如此類的分支情況很多,并不是技術上不能實現,而是出現這種情況后在頁面上會有很復雜的展示才能解釋清楚,反而增加了商家或平臺工作人員的認知成本。

二、結算記錄單頁面

商家后臺的結算申請單會有三個狀態:結算中、已結算、被駁回

為什么會有被駁回這個狀態,是考慮到兩種情況:

  • 一是可能系統計算錯誤,導致金額出現錯誤對不上,工作人員在管理后臺審核后駁回,由商家再次申請,當然這種情況是極小概率;
  • 二是由于我們平臺沒有強制要求商家的結算周期必須15天,所以可能出現商家對該筆訂單發起結算申請后,用戶再發起退貨申請,此時由于該筆訂單本該處在凍結狀態中,所以需要駁回。

那為什么不是由系統自動凍結而是由人工駁回再次申請:比如商家今天申請了500元,而這筆結算單中一筆100元的訂單用戶發起了售后。如果是由系統自動凍結,工作人員在管理后臺看到了該筆結算單提示一筆訂單凍結,只結算了400元,這樣可能會對商家造成誤解,我明明申請的500元卻只打給我400元?但如果由人工駁回商家再次申請,相當于告知商家出現的情況,可能會減少一些誤會。

三、結算審核頁面

管理后臺的結算申請單會有四個狀態:待審核、待結算已結算、被駁回。

  • 待審核狀態對應的操作為“審核”:可通過或駁回申請。
  • 待結算狀態對應的操作為“已打款確認”:當結算單審核無誤且通過之后,將會由出納進行線下打款,打款完成之后,點擊“已打款確認”按鈕后出現的彈窗可以上傳打款的圖片憑證,確認后該結算單狀態變為已結算,同時商家可看到該打款憑證。
  • 可能會出現的一種風險則是:當出納已經把款打到商家賬戶了,用戶再來申請退款,且成功退款,那這時就只能在商家的保證金里扣除,如果做了前面說的申請結算金額的限制,則可以規避保證金被扣完的風險。

相關閱讀

從0到1構建電商平臺之訂單系統(3):處理訂單

從0到1構建電商平臺之訂單系統(2):支付訂單

從0到1構建電商平臺之訂單系統(1):提交訂單

從0到1構建電商平臺之售后系統:退貨退款

 

本文由 @橘鉆 原創發布于人人都是產品經理,未經作者許可,禁止轉載。

題圖來自Unsplash,基于CC0協議。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 比如保證金5k,可結算金額為10k,其中2k已確認收貨后且過了15天,而8k的訂單金額未過15天,這時商家能申請結算的金額為2k+5k。

    為什么有保證金5k,就可以結算5k呢?可這5k還沒有到賬期

    來自廣東 回復
  2. 但如果由人工駁回商家再次申請,相當于告知商家出現的情況,可能會減少一些誤會。這里的意思是不是說,給商家400元時,商家并不會注意到這是被凍結后的金額,需要人工來個操作,強調一下,那是否可以在給400元時,強調一下含被凍結金額的情況?

    來自廣東 回復
  3. 這有沒有具體的表格

    來自陜西 回復
  4. 這種結算,是不是存在平臺二清支付的風險

    來自湖北 回復
    1. 錢不是直接打給我們平臺的,而是寄存在支付寶微信的賬戶里

      來自重慶 回復
    2. 寄存在你們賬戶里,這個錢還是要打給商戶的。 還是二清行為吧,現在電商 沒有支付拍照就只能做自營

      來自廣東 回復
    3. 對呀對呀,不管是支付寶微信賬戶,終究還是你們直接下發給商戶,怎么都是二清的行為,不知道筆者跟bghn558這邊是如何處理的?

      來自廣東 回復
  5. 為啥強制賬期為15天?

    回復
    1. 因為超過15天后,用戶就不能申請售后了,為了防止將款打給商家后,用戶又申請退換貨

      來自重慶 回復