paypal - 我应该如何使用 Paypal 获得可靠的结账流程?

标签 paypal paypal-ipn

我网站上的监听器“监听”通过 Paypal 进行的成功购买。监听器检索到的数据包括一个 post 变量,我可以在开始购买之前对其进行设置。这可以通过 Paypal 的 IPN(即时付款通知)实现。我试图让 IPN 在购买时识别我网站上的用户帐户。我网站上的每个帐户都有一个唯一的用户 ID 号。

我已经尝试通过 Paypal 的“自定义”变量传递帐户唯一 ID,以便 IPN 可以监听它。虽然我认为这是一个坏主意,因为如果人们通过了他们的唯一 ID,就可以为另一个帐户购买东西。虽然这是一个有保证的购买处理程序,但黑客可以通过社会工程利用这一点。

我看到有些人反而通过了 session_id with php ,但这并不安全,因为如果 session_id 消失,监听器将无法识别用户的网站帐户。我还看到人们会传递与用户的唯一帐户相关联的 cookie。我认为这不是一个好主意,因为 cookie 可能会被清除。

我的印象是,如果无法识别用户帐户(无需手动操作),我将无法发送退款或取消购买。我应该执行什么结帐流程?

最佳答案

我会在您的系统中创建一个本地发票记录,并且这张发票会得到一个与之关联的客户 ID。

然后您可以使用 INVOICE 参数将发票 ID 传递给 PayPal,它会返回到 IPN 中,然后您可以根据该发票 ID 查找客户 ID。

关于paypal - 我应该如何使用 Paypal 获得可靠的结账流程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47587549/

相关文章:

ios - 在 Paypal Sandbox 帐户 iOS 中检查付款

paypal - 即时付款通知 (IPN)

paypal - 更正暂停订阅的 paypal IPN 变量

php - Paypal IPN开发

PayPal 的自适应支付 API 和分期付款的链式支付

javascript - 带有服务器集成的 PayPal 客户端 JavaScript SDK - 设置付款金额

javascript - PayPal onApprove 不调用 ajax 函数

javascript - 为什么我的提交按钮在此代码中不起作用?

paypal - 如何重新发送 PayPal ipn 数据?

paypal - 付款后修改 PayPal Express Checkout 自定义参数