Paypal 结帐返回数据

Posted

技术标签:

【中文标题】Paypal 结帐返回数据【英文标题】:Paypal checkout return data 【发布时间】:2013-08-03 04:02:36 【问题描述】:

我有一个paypal按钮如下:

<form id="fmPaypal" method="post" action= "https://www.sandbox.paypal.com/cgi-bin/webscr">
        <input type="hidden" name="cmd" value="_xclick">
        <input type="hidden" name="currency_code" value="NZD">
        <input type="hidden" name="business" value="blah01@yahoo.com">
        <input type="hidden" name="item_name" value="Order">
        <input type="hidden" id="item_number" name="item_number" value="123">
        <input type="hidden" name="amount" value="0.01">
        <input type="hidden" name="no_shipping" value="1">
        <input type="hidden" name="return" value="http://www.blah.com/checkout/return.cfm" />
        <input type="hidden" name="cancel_return" value="http://www.blah.com/checkout/cancel" />
</form>

这有效,用户被重定向到准备付款的贝宝。

但是,我是否应该期望通过返回 URL 从 paypal 返回一些数据?例如交易结果?或者如果用户被重定向到返回 url,我应该假设付款成功处理?

尝试从文档中获取此信息但没有成功。

【问题讨论】:

【参考方案1】:

用户将在 PayPal 平台上完成或取消付款并被重定向回您的网站;

他们在用户被重定向回来或通过即时付款通知 (IPN) 时完成付款。

【讨论】:

【参考方案2】:

https://developer.paypal.com/webapps/developer/docs/classic/paypal-payments-standard/integration-guide/Appx_websitestandard_htmlvariables/#id08A6HI0709B

当你想使用返回 url 时,你必须在表单上启用 rm 选项

return(可选)PayPal 将买家浏览器重定向到的 URL 在他们完成付款后。例如,在您的 显示“感谢您的付款”页面的网站。默认 - PayPal 将浏览器重定向到 PayPal 网页。 1,024

rm:(可选)返回方法。用于将数据发送到 返回变量指定的 URL。允许的值为:

0 - 所有购物车付款都使用 GET 方法

1 – 买方的 使用 GET 方法将浏览器重定向到返回 URL,但是 不包括付款变量

2 – 买家的浏览器是 使用 POST 方法重定向到返回 URL,并且所有付款 包含变量默认为0。

注意:rm变量只有在设置了return变量的情况下才会生效。

这是 IPN 返回的参考文档

https://developer.paypal.com/webapps/developer/docs/classic/ipn/gs_IPN/

然后我在这里引用它以方便查看

$item_name = $_POST['item_name']; $item_number = $_POST['item_number']; $payment_status = $_POST['payment_status']; $payment_amount = $_POST['mc_gross']; $payment_currency = $_POST['mc_currency']; $txn_id = $_POST['txn_id']; $receiver_email = $_POST['receiver_email']; $payer_email = $_POST['payer_email'];

你应该已经有了这份 PDF 文件,但我想我也应该把它放在这里 https://www.paypalobjects.com/webstatic/en_US/developer/docs/pdf/ipnguide.pdf

我要提醒一下重要的事情,你必须在你的帐户上启用“自动返回”

默认情况下自动返回是关闭的。要打开自动返回:

通过https://www.paypal.com 登录您的 PayPal 帐户。我的 出现帐户概览页面。单击配置文件子选项卡。简介 出现摘要页面。点击左侧的我的销售工具链接 柱子。在“在线销售”部分下,单击“更新”链接 网站首选项行。网站支付首选项页面 出现在网站付款的自动退货下,单击在单选 按钮启用自动返回。在返回 URL 字段中,输入 URL 您希望付款人在完成付款后重定向到的 付款。注意:PayPal 会检查您输入的退货 URL。如果 URL 格式不正确或无法验证,PayPal 不会 激活自动返回。滚动到页面底部,然后单击 保存按钮。

【讨论】:

太棒了!非常感谢我的朋友。 @Telvin 请你看看这个问题***.com/questions/27758114/…

以上是关于Paypal 结帐返回数据的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 快速结帐剩余销售税

贝宝嵌入式结帐页面返回到错误页面

成功结帐时的贝宝重定向

Woocommerce 和 Paypal | Paypal 结帐后的空白页

paypal沙盒api v2卡在结帐中

Paypal IPN - 获取 + 然后丢失数据?