在获得授权之前,我应该记得付款吗?

时间:2014-11-26 14:51:43

标签: paypal

我认为Paypal SDK(由REST API支持)有三个步骤:

  1. 创建付款

    payment = Payment({...})
    payment.create()
    return redirect( redirect_url( payment))
    
  2. 客户通过Paypal支付并授权付款

  3. 重定向到我们执行付款的网站,从而转移资金

  4. 我应该在第1步存储创建的付款吗?因此,我会捕获所有付款尝试,无论是否成功。或者我可以创建付款,直到第3步才记住它?也就是说,仅记录成功付款(在各自的发票内)。如果我不在第1步存储它,是否存在任何可靠性或安全性问题或其他伤害

    我怀疑无法回滚失败。


    在Paypal条款中,它们具有sale意图,用于支付所提供服务的发票。卡数据不会触及我们的服务器,我会在处理它时推迟Paypal。

    我使用paypalrestsdk,Paypal的Python SDK。

1 个答案:

答案 0 :(得分:1)

以前,当PayPal将页面重定向回您的服务器以授权您时,将PaymentId恢复是很棘手的,因为第3步无法获得PaymentId

但是,现在,PaymentId作为URL的一部分返回,如第3步所示:

http://localhost/Server-SDK/PayPal-PHP-SDK/sample/payments/ExecutePayment.php?success=true&paymentId=PAY-62998961VU1587338KR3AXWQ&token=EC-4YC2489096181311L&PayerID=REABK2UGK7PLW

正如您所看到的,它有paymentId,这是您需要存储的ID。 所以,回答你不需要存储任何东西,直到第3步。

附加说明:

但是,如果您想提供一些复杂的逻辑/服务。例如。向他们发送电子邮件提醒(如果你有他们的emailId),提醒他们是否放弃你的卡等等。但是,除了使用这些步骤之外,还有很多方法可以做到这一点。