从 PHP 表单向 PayPal 提交订阅请求

Posted

技术标签:

【中文标题】从 PHP 表单向 PayPal 提交订阅请求【英文标题】:Submit subscription request to PayPal from PHP form 【发布时间】:2018-12-31 18:36:15 【问题描述】:

关于这个问题的文档到处都非常模糊,网上的问题也是如此(包括这个网站): 我有一个表格,用户必须填写几个字段。例如,用户名和密码。然后,他们必须通过 PayPal 购买东西。我已经创建了一个企业帐户。当用户提交我的表单时,它只是通过 php 查询并将它们添加到本地数据库中。我想首先通过 PayPal 验证付款,然后将它们添加到数据库中。我还尝试默认使用“paid=0”将它们添加到数据库中,然后尝试让 PayPal 向我发送成功令牌或其他东西,然后我可以将值翻转为 1,但我不知所措从哪里开始。

【问题讨论】:

Paypal Payment Standard: Callback URL的可能重复 developer.paypal.com/docs/checkout @DarkBee 答案中的两个链接都已失效,例如。二,我已经看过了。我不明白,因为有很多相互矛盾的例子。 @MarvinFischer 这不是我的问题的答案,afaik 不支持订阅计划。 然后看看新指南,here 和 here 【参考方案1】:

首先我建议你使用PHP Paypal offical SDK 和offical subscription's example。

在任何 Paypal 请求之前存储交易是个好主意,因为您可以跟踪错误。

使用“status”字段来存储交易状态。之后,您可以进行 Paypal 付款。 之后,您根据 Paypal 响应更改状态。

希望这会有所帮助。

【讨论】:

那么你真正的问题是什么? 我不明白如何简单地将交易验证为“OK”并将其发送到我的站点。我应该使用 REST api 还是 IPN 的东西?我是否只有一个 .php 坐在服务器端验证交易,我如何将它连接到 IPN 响应或他们发送给我的任何内容? 在我看来,IPN 是个好方法。我找到了 php IPN example EDIT: To use IPN 我的服务器上现在有这个,但我不确定如何处理它。这会捕获所有付款请求吗?更重要的是,它是否处理订阅? 这是Paypal webhooks 的列表。如您所见,有BILLING.SUBSCRIPTION.CREATED,BILLING.SUBSCRIPTION.SUSPENDED。要使用它,您必须在您的 Paypal 帐户 中配置它。之后,您必须创建一个脚本(或路由),Paypal 将能够在其中为每个配置的挂钩发送请求

以上是关于从 PHP 表单向 PayPal 提交订阅请求的主要内容,如果未能解决你的问题,请参考以下文章

表单的提交有两种方式:GET和POST,这两种方式的区别是啥?

从商家网站取消 PayPal 订阅

使用 jQuery AJAX 向所需的 PHP POST 请求处理程序提交表单不起作用

如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的

使用 JavaScript 提交表单时,如何从用户那里获取数量变量?

如何防止用户向 php 文件发送如此多的 post 请求