鍍金池/ 問答/Java  數(shù)據(jù)庫/ 電商秒殺活動使用支付寶/微信支付

電商秒殺活動使用支付寶/微信支付

目前有一個需求,秒殺商品活動可以使用支付寶或微信來支付,但是問題是需求必須要支付完成后才減去庫存,下訂單不減庫存。也就是說當(dāng)支付寶/微信支付通知我的時候才知道是支付成功了,但是這樣就有可能出現(xiàn)庫存不足的情況。
例如:某個商品只剩1件,用戶A和用戶B同時下訂單(下訂單不減庫存,支付成功才減庫存),然后同時彈出支付寶/微信的輸入密碼界面,當(dāng)支付完成后支付寶/微信會通知我支付成功,此時庫存只有一件,但有兩人付了款,如何才能避免庫存不足呢

我現(xiàn)在有兩個解決方案1是自動退款,2是下訂單時減去庫存(毆打產(chǎn)品經(jīng)理),不知道各位有沒有更好的方案呢

回答
編輯回答
胭脂淚

我覺得毆打產(chǎn)品經(jīng)理是最好的方案了。

2017年5月26日 12:42
編輯回答
夏夕

支付成功再減庫存的話,會出現(xiàn)用戶支付成功了,但是實際上被別人買走了的情況,導(dǎo)致庫存不足發(fā)生,影響用戶體驗,這是肯定不允許的,這種方式也不可取。

我在其他文章看到了一段描述,說的挺有道理(以下是原文描述):

到底是個什么業(yè)務(wù),搶購秒殺本來就拼了一部分運氣,最后剩幾個了其實無所謂那個誰先來搶了結(jié)果無庫存,而后一個晚了會兒又搶到了退回庫中的庫存,這時候拼的就是運氣。他們也不在乎。
所以下單減,未付款超時就再加回來。
超時就又退回庫存了啊。他愛玩就讓他玩兒唄。如果人工發(fā)現(xiàn)了,直接把庫存清了,最后一件不賣了還不行,批量大的話還在乎這幾件,再說你還得留一些供退換貨的啊。這都不是事兒,我們程序員很多時候不需要把這些條件想的太完美或者做過多設(shè)計,特別是產(chǎn)品經(jīng)理,腦子更要清楚,哪有那么完美的事兒。
另外,你還可以在庫存為0時顯示下未付款的訂單量,讓沒有搶到的客戶等一等,看看未付款訂單會不會最后撤銷掉重新開賣。
2018年7月2日 20:01