【问题标题】:Should I place an order or wait for payment?我应该下订单还是等待付款?
【发布时间】:2012-08-08 19:27:27
【问题描述】:

我正在构建一个简单的电子商务来处理我的订单请求(这是一个不同的电子商务,因为我将销售印刷电路板)。

所以,最大的问题是:当用户结帐时,购物车中有商品我该怎么办:

  • 完成订单,将 session 中的数据插入数据库,然后将状态设置为pending 并等待支付公司的付款(如 PayPal,但来自巴西)
  • 或者,我应该只在用户支付产品费用时下订单(当我收到回调时)

对此的怀疑,是因为在付款前下单,可能会在数据库中创建大量未付款的订单(一些临时清理应该可以工作)。

付款后下订单可能会很困难,因为付款公司只返回几个字段(我有很多字段用于每个印刷电路板)。

也许我已经给出了“答案”,但我真的对此感到困惑,我会欣赏第二个意见......

谢谢

【问题讨论】:

    标签: web-applications e-commerce payment-processing


    【解决方案1】:

    这确实是一种设计选择,但如果您不想处理用户未付款的订单,则在用户付款后下订单似乎是合乎逻辑的。

    所以, 用户支付 -> 将订单添加到数据库,然后跟踪您需要的任何其他信息。

    我能想到的唯一其他示例是您希望事先添加到数据库的位置,例如愿望清单

    【讨论】:

      【解决方案2】:

      好吧,从逻辑上考虑。下单时,无论订单最终是否通过,您都希望存储订单信息。有多种原因:

      • 分析您的订单(支付多少等)
      • 跟踪需要付款的用户的待处理订单。

      ...在其他用途​​中。

      由此,您可以得出结论,您肯定要存储挂单。将信息存储在单独的数据库/表中是没有意义的。

      您应该意识到的一件重要的事情是,即使从未通过的挂单也可以用于其他目的,因此它们应该包含在已通过的其余订单中。

      【讨论】:

        【解决方案3】:

        我过去做过的是:

        1. 当他们点击“确认付款”时,我将订单添加到数据库中,状态为待处理。
        2. 下一步是与支付公司沟通并获得回复。
        3. 使用支付网关的响应更新状态

        这样您还可以跟踪任何奇怪的差异,例如拒绝交易(例如被盗卡)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-11-03
          • 1970-01-01
          • 2017-06-27
          • 2017-06-27
          • 2013-12-04
          • 2018-04-03
          • 2015-01-19
          • 1970-01-01
          相关资源
          最近更新 更多