2012-08-12 52 views
1

我正在建立一個簡單的電子商務,將處理我的訂單請求(這是一個不同的電子商務,因爲我將銷售印刷電路板)。我應該下訂單還是等待付款?

所以,最大的問題是:當用戶進入結帳,在他的車中的商品怎麼辦:

  • 完成訂單,並在數據庫中插入來自會話的數據,然後設置狀態爲pending並等待來自支付公司支付(如PayPal,但來自巴西)
  • 或者,我應該只下訂單時,用戶支付的產品(當我收到的回調)

對此的疑問是導致在付款前下訂單,可能會在數據庫上創建大量的未付訂單(一些臨時清理工作)。

付款後下訂單可能很難,因爲付款公司只給我幾個字段(我每個印刷電路板有很多這樣的字段)。

也許我已經給出了「答案」,但我真搞不清楚這一點,我會apreciate一個seccond意見了......

感謝

回答

2

那麼,從邏輯上思考一下吧。訂單下達後,無論訂單是否最終通過,您都希望存儲訂單的信息。有多種原因:

訂單的
  • 分析未決對於那些需要付費的用戶訂單
  • 飼養軌道(多少與支付等經歷)。

...等用途。

由此可以得出結論,您肯定希望存儲掛單。將信息存儲在單獨的數據庫/表中是沒有意義的。

您應該認識到的一件重要事情是,即使是從未經歷過的掛單也可以用於其他目的,所以它們應該包含在所有經過的訂單中。

2

我在過去所做的是什麼:

  1. 當他們點擊「確認付款」時,我將訂單添加到數據庫中,狀態爲掛起。
  2. 下一步是與支付公司進行溝通並獲得回覆。從支付網關

響應這種方式,您還跟蹤(例如偷來的卡),如拒絕交易任何奇怪的差異

  • 更新狀態。

  • 0

    這真的是一個設計選擇,但如果您不想處理用戶的未付訂單,那麼在用戶付款後下訂單似乎相當合理。

    因此, 用戶支付 - >將訂單添加到數據庫,然後跟蹤您需要的任何其他信息。

    唯一的另一個例子,我可以想到你想在手前添加到數據庫的地方將在例如