Paypal支付按钮和IPN:如何独特地链接用户?

时间:2010-11-26 10:04:18

标签: paypal

奇怪的是,Paypal网站上的文档并未涵盖这一点。

我们有一个付款按钮,可重定向到Paypal以处理付款。

我们还有一台运行的IPN服务器,一旦完成就会收到PayPal付款。

但是,我们可以在哪里将系统用户的“用户ID”放在paypal按钮中,以便将其转发到IPN请求,以便在用户支付的系统上匹配用户。 Paypal似乎希望人们手动执行此操作,这是一项真正的使命。

4 个答案:

答案 0 :(得分:4)

我目前正在进行一些PayPal集成,我同意他们的文档很乱!

我终于找到了一个指南,详细说明了PayPal按钮表单的哪些变量被转发到IPN回调。您可以使用变量item_name转发用户ID:

<input type="hidden" name="item_name" value="{user id}">

答案 1 :(得分:3)

您应该使用:

<input type="hidden" name="item_number" value="{user id}">

以下是文档:

https://www.paypalobjects.com/IntegrationCenter/ic_std-variable-ref-buy-now.html

答案 2 :(得分:3)

如文档(https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNandPDTVariables/

所述

在您的表单中:

<input type="hidden" name="custom" value="<?php echo $id ?>">

并通过ipn:

获取
$_POST['custom']

答案 3 :(得分:0)

对于任何试图使此功能适用于Paypal SmartButtons的人,您应该执行以下操作:

return actions.order.create({
  purchase_units: [{
       invoice_id: 'your_custom_stuff1',
       custom_id: 'your_custom_stuff2',
       amount: {
         value: '100'
       }
  }]
});

IPN将其作为POST数据发送,例如在PHP中:

$_POST['invoice']; // 'your_custom_stuff1'
$_POST['custom']; // 'your_custom_stuff2'