43 paypal
我一直在使用快速结账API将我网站上的人员帐户转换为付款后的高级帐户.唯一的问题是它不会将用户发回网站,直到他们点击按钮返回,并在发生这种情况时更新他们的权限.大约40%的用户似乎没有这样做....所以他们的帐户永远不会在付款后得到记入.
尽管paypal在成功支付后立即回复,但我从来没有能够立即更新用户的帐户,因为我无法将其发送回某些信息,以确定刚完成付款的用户.当你被送回发送交易ID的网站时,我只能这样做,我用回发后记录.它搜索它,并在DB中找到它时授予权限.
有没有办法向paypal提交某种变量,然后它会发回给我?像&user_id = 123这样的东西,可以非常方便地更新用户的权限.
dsp*_*nov 34
Iten_number隐藏变量在我的应用程序中不起作用.但我发现custom隐藏的领域工作得很好.只需将此字段添加到由paypal生成的表单中:<input type="hidden" name="custom" value="YOUR VALUE FROM DB"/>.之后,您可以读取此值以识别,例如,已购买的产品.(Java代码):String custom = request.getParameter("custom");
T.J*_*der 27
是的,如果您发送item_number,IPN通知将在其发回给您时包含该通知.我在用户启动付款流程时在数据库中记录一个唯一的ID,并在将它们发送到PayPal时包含该ID.当IPN进入时,该唯一ID与数据库中的记录匹配,为我提供了所需的所有信息.
编辑重新评论:
我希望在上面链接的网站上有一个代码示例,但基本上在我的情况下,我使用的是一个表格,我发布到https://www.paypal.com/cgi-bin/webscr.在该表格中,IPN内容中记录了各种隐藏字段(cmd要执行的命令,business指定您的业务ID,item_namePayPal UI中的良好描述,item_number上面提到的项目编号等等).当IPN回复到您的IPN地址时,它包含各种字段(例如payment_status - 一种重要的字体!&mdash以及item_number您在发布给他们时输入的内容).
jum*_*art 18
只是为了补充这个老问题......
有一些选项参数通常用于通过paypal发送自定义数据.
自定义字段名称的这些选项标签为on0,on1或on2,自定义字段值为os0,os1和os2.
我会发送on0值为"UserID",os0发送实际ID.
这些值将在IPN中表示如下:
os0表示为option_selection1
os1表示为option_selection2
os2表示为option_selection3
on0表示为option_name1
on1表示为option_name2
on2表示为option_name3
根据PayPal付款标准的HTML变量,您可以发送所有"传递"变量:
item_number传递变量,用于跟踪购买的产品或服务或所做的贡献.您指定的值将在付款完成后传回给您.如果您希望PayPal跟踪库存或跟踪按钮销售的商品的盈亏,则需要此变量.
自定义传递变量用于您自己的跟踪目的,买家看不到.默认 - 没有变量传回给您.
和
发票 可用于识别此次购买的发票号的直通变量.默认 - 没有变量传回给您.
所有这些传递变量都由IPN在支付响应信息中发回.
您只需要在服务器端呈现HTML模板,然后在HTML代码中将字段写回来
<input type="hidden" name="item_number" value="{{ productID }}">
<input type="hidden" name="invoice_id" value="{{ invoiceID }}">
<input type="hidden" name="custom" value="{{ jsonInfo }}">
Run Code Online (Sandbox Code Playgroud)
从技术上讲,如果要处理更多数据,"自定义"字段可以是JSON编码的字符串
myItemObject = {
"customerEmail" : "john@doe.com
"customerID: "AAFF324"
}
jsonInfo = json.dumps( myItemObject )
return render_template(tmpl_name, jsonInfo=jsonInfo, productID=productID, invoiceID=invoiceID)
Run Code Online (Sandbox Code Playgroud)
小智 6
我终于得到了这个答案,我希望与大家分享一下:
在您的HTML表单上放置此代码(这是Paypal沙箱):
form action="https://www.sandbox.paypal.com/cgi-bin/webscr?custom=YOUR_VAR" method="post"
Run Code Online (Sandbox Code Playgroud)
在Paypal重定向到您的页面成功后的PHP上:使用cmGET变量:
$example = $_GET["cm"];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
44519 次 |
| 最近记录: |