Php 如何完全跳过PayPal支付确认页面?

Php 如何完全跳过PayPal支付确认页面?,php,paypal,payment,hosted,Php,Paypal,Payment,Hosted,我的客户网站正在使用PayPal英国网站Payments Pro托管解决方案 当客户被引导到PayPal付款时,他们有两种选择 “用我的贝宝账户支付”或“用我的借记卡或信用卡支付” 如果客户选择使用他们的paypal帐户,他们将登录并付款,然后进入paypal付款确认页面,页面上会显示“感谢您的订单。您现在要返回…”此页面悬停约5-10秒,然后将客户重定向回确认订单和发送电子邮件等的网站 我的问题是,一些客户没有等待重定向,这导致订单确认错误。 我的问题是如何完全跳过PayPal支付确认页面?

我的客户网站正在使用PayPal英国网站Payments Pro托管解决方案

当客户被引导到PayPal付款时,他们有两种选择

“用我的贝宝账户支付”或“用我的借记卡或信用卡支付”

如果客户选择使用他们的paypal帐户,他们将登录并付款,然后进入paypal付款确认页面,页面上会显示“感谢您的订单。您现在要返回…”此页面悬停约5-10秒,然后将客户重定向回确认订单和发送电子邮件等的网站

我的问题是,一些客户没有等待重定向,这导致订单确认错误。

我的问题是如何完全跳过PayPal支付确认页面?

我有自动返回功能。我已经设置了一个返回URL。付款数据传输已打开

showHostedThankyouPage = false
我的想法都快用完了


如果用户选择另一个选项并输入他们的信用卡详细信息,这一切都会完美地工作

你看起来有点分散了。您在原始帖子中描述的内容听起来像是支付标准或快速结帐。Payments Pro根本没有任何重定向到PayPal的功能

然后我看到你评论说你正在使用BMCreateButton。这是ButtonManagerAPI的一部分,它是支付标准。不专业。Payments Standard没有像Express Checkout那样使用SOLUTIONTYPE和LANDINGPAGE参数强制完整CC表单的选项

如果您使用的是full Payments Pro,则需要使用DoDirectPayment API或PayFlow,具体取决于安装的版本。然后你会有Payments Pro托管,它在你的页面上使用iframe。不过,这两种方法都不会发生重定向


如果你使用的是BMCreateButton,那就不专业了。你需要弄清楚你注册的Pro的确切版本,并相应地集成这些API。

我从PayPal的技术部门得到了极好的回复。谢谢伊格纳西奥。我会将我的发现分享给其他有此问题的人。这就是我收到的答复

我的网站是使用PayPal英国网站Payments Pro托管的 解决方案当客户被引导到PayPal付款时 他们有两种选择,“用我的贝宝账户支付”或“用我的贝宝账户支付” 我的借记卡或信用卡

网站Payments Pro托管解决方案有两种不同的支付方式:

  • 直接使用信用卡支付,它在内部使用我们的DoDirectPayment API来使用没有PayPal帐户的信用卡
  • 使用PayPal帐户付款,基本上是重定向到我们的PayPal标准付款方法和页面
如果客户选择使用他们的PayPal帐户,他们将登录并 支付他们的款项,并被带到贝宝支付确认 页面上写着“感谢您的订单”。你现在要回去了 …'此页面悬停约5-10秒,然后重定向 客户返回确认订单的网站并发送电子邮件 发送等

这是PayPal标准中的预期行为,当客户使用PayPal帐户付款并启用自动退货时

事实上,Pro托管解决方案中包含的“使用PayPal支付”选项之所以出现这种情况,是因为,如上所述,该选项基本上是我们的PayPal标准支付方法,因此行为完全相同

我的问题是有些客户没有等待重定向, 这导致订单确认出现错误。我的问题是怎么做 我可以跳过贝宝支付确认页面吗

不幸的是,根本没有办法跳过这一页。不是通过PayPal帐户设置,也不是通过发送任何变量。

我有自动返回功能。我已经设置了一个返回URL。支付数据传输 正在播放。showHostedHankYouPage=false。我的想法都快用完了。。。 我不想使用IPN,因为它将意味着进一步的集成和 编程

我们绝对推荐IPN作为一种更可靠的获取新付款通知的方式,因为即使“自动退货”立即生效,一些客户仍然可以立即关闭浏览器

如果启用IPN,PayPal将始终向您的通知URL发送帖子,无论客户是否返回您的站点


有办法解决这个问题吗?在升级到Payments Pro之前,我们 使用快速签出,只需通过SOLUTIONTYPE=Sole即可 LANDINGPAGE=账单,我们可以跳过确认 页面步骤。我希望有一种方法可以做类似的事情 不需要重新编写

快速结账流程不同于PayPal标准。当客户在PayPal中单击“Continue/Pay”时,我们不会尝试接受付款,而是立即将客户带回RETURNURL,这将是您自己的集成—通过发送DoExpressCheckoutPayment API请求来完成付款

但是,Pro托管解决方案中的“使用PayPal支付”选项同样使用PayPal标准,而不是Express Checkout


除了使用IPN之外,我可以建议的唯一替代方案是在Pro托管解决方案中禁用“使用PayPal支付”选项(这可以从我们这边完成),这样客户只能选择直接信用卡支付,而不能使用PayPal支付,然后为您的PayPal支付实施独立于Pro托管解决方案的快速结账。

这始终是一个问题。处理它的方法是实现Paypal的IPN(即时支付通知)解决方案,该解决方案独立于用户看到的内容进行操作。在升级到Payments Pro之前,我们使用的是express che