我如何在我的成功页面上知道客户贝宝交易是不是成功

Posted

技术标签:

【中文标题】我如何在我的成功页面上知道客户贝宝交易是不是成功【英文标题】:How do i know whether the client paypal transaction is successful or not on my success page我如何在我的成功页面上知道客户贝宝交易是否成功 【发布时间】:2016-04-22 21:04:17 【问题描述】:

在我的订单页面上,我使用的是这个表格:

<input type="hidden" name="item_number" value="<?php echo $refNumber; ?>">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="<?php echo $paypal_email; ?>" />
<input type="hidden" name="currency_code" value="USD" />
<input type="hidden" name="return" value="<?=$_SESSION["web_site_url"]?>/payment_success.php?OrderID=<?=$refNumber;?>" />
input type="hidden" name="amount" id="amount" value="<?=$product_vals["discount_prize"]?>" />
<input type="hidden" name="item_name" id="item_name" value="<?=$product_vals["name"]?>" />

现在我想要一个用于我的 payment_success 页面的示例代码,从中我开始了解 paypal 是否验证了客户付款或客户的付款是否成功......这样我就可以继续下一步从客户那里收集信息。

我已阅读 Paypal 文档,但无法从中学到有用的东西。帮我解决这个问题。此外,我还想获取客户的贝宝电子邮件和交易 id / payment_success 变量(即真/假),以便我帮助我确定付款是否成功..

提前致谢。

【问题讨论】:

【参考方案1】:

您可以使用 Micah Carrick 的 paypal 课程。这是一个非常清晰的类,它支持通知 URL、返回 URL 和成功 URL。您不需要使用任何形式或其他东西,只需使用此类并让此类完成您的工作。 示例代码是:

$p = new paypal_class;   
$p->add_field('business', $paypal_email);
$p->add_field('return', $add_fund_url.'/success.php');
$p->add_field('cancel_return', $add_fund_url.'/cancel.php');
$p->add_field('notify_url', $notify_url );
$p->add_field('item_name', $item_name);
$p->add_field('item_number', $item_number);
$p->add_field('custom',$custom_field);
$p->add_field('amount', $amount);
$p->add_field('no_shipping', '1');
$p->submit_paypal_post(); // submit the fields to paypal

【讨论】:

【参考方案2】:

如果您在他们付款后收集更多数据,那么您应该真正使用 Express Checkout API,而不是像现在使用的 PayPal Standard。即使在您的 PayPal 个人资料中启用了自动返回,用户仍然可能无法返回您的网站(例如,他们可以在重定向发生之前简单地关闭浏览器。)

使用 Express Checkout,即使在最后一次完成付款之前,用户也总是会回到您的网站,因此如果您愿意,甚至可以在完成付款之前从用户那里收集更多详细信息。

在Implementing the Simplest Express Checkout Integration 上查看本指南。这将使您熟悉应如何设置 Express Checkout(即您将进行的 API 调用)。

然后,获取此PayPal PHP SDK 并使用它进行 API 调用。它为您完成了所有设置,因此您可以快速轻松地集成到结帐中。

【讨论】:

以上是关于我如何在我的成功页面上知道客户贝宝交易是不是成功的主要内容,如果未能解决你的问题,请参考以下文章

返回关于成功付款贝宝的客户信息

贝宝购物车变量传递的概念问题

如何验证paypal支付成功

贝宝沙箱IPN php

简单的贝宝按钮订阅会员

如何在成功的贝宝付款上发布表格?