集成过paypal登陆的帮忙看下

温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
PayPalBusinessConsultingMichel
paypal顾问
LOFTER精选
PayPal支付功能其实一直在更新文档和接口,这里说的是一个简单的支付功能大概流程如下
1,在网站的结账页面,设置一个提交到PayPal网站的form,里面有一些金额,商品名称,商家收款账号、结账成功后返回URL等内容,
2,用户结账时,通过点击‘使用PayPal结账’的按钮到达PayPal的结账页面,输入自己的PayPal用户名和密码并确认支付
3,PayPal会根据是否支付成功来决定返回网站的哪个页面,并在后台对网站的某个页面发起post请求,这个动作称作IPN,告诉网站这笔付款的到账情况,比如completed即为完成付款
4,网站收到PayPal的notify通知后,即可给用户发货或者其他的处理逻辑
这里有一张图来解释
更为简单的流程图
我们要完成整个流程,其实只需要两个页面来处理
checkout.php 这个页面用来显示购物车信息,并让用户点击按钮导航到PayPal进行支付
notify.php
这个页面是用来接收PayPal的IPN信息的,判断用户的付款是否到账等状态,并处理网站收款之后的业务逻辑
记录一下代码:
checkout.php 这个页面其实可以是HTML
/cgi-bin/webscr" method="post"&
hidden" name="ev_csrf"&value="cf4f1075dfa43c216d7cec"&
hidden" name="cmd"&value="_cart"&
hidden" name="upload"&value="1"&
hidden" name="charset"&value="utf-8"&
hidden" name="currency_code"&value="USD"&
hidden" name="business"&value=&
hidden" name="cancel_return"&value=””&
hidden" name="return"&value=””&
hidden" name="notify_url"&value="
hidden" name="custom"&value="userid:31;ip:182.114.240.221"&
hidden" name="item_number"&value="ARO0101"&
hidden" name="item_name"&value="AD182m"&
hidden" name="quantity"&value="1"&
hidden" name="amount"&value="70"&
submit"&value="Checkout with PayPal"&
这个form中包含了一些PayPal支付必须要加的项,需要注意的是notify.php是PayPal会在后台进行调用的
notify.php这个页面有两个功能,一个是接收PayPal的post内容并加上标签返回,一个是接收到PayPal的认证信息之后进行网站内部的逻辑处理
$req = 'cmd=_notify-validate';
foreach ($_POST as $key =& $value) {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
// post back to PayPal system to validate
$header .= "POST /cgi-bin/webscr HTTP/1.0\r\n";
$header .= "Content-Type:
application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen ('ssl://', 443, $errno, $errstr,
if (!$fp) {
// HTTP ERROR
} else {//HTTP OK
fputs ($fp, $header . $req);
while (!feof($fp)) {
$res = fgets ($fp, 1024);
if (strcmp ($res, "VERIFIED") == 0) {
//process business of website
else if (strcmp ($res, "INVALID") == 0) {
// log for manual investigation
fclose ($fp);
&paypal顾问-Michel(陈思思)
外贸资源共享群:
(如果是初次接触PayPal的,可以从“博文分类”中寻找您所想知道的内容(如看搜到我博客,请直接Q我吧)
阅读(396)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'PayPal接口集成之:PHP集成PayPal标准支付接口',
blogAbstract:'\n\t\t\t\n
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}最近刚建了个网店,准备做paypal的支付接口,关于集成方式,求建议!!!_百度知道
最近刚建了个网店,准备做paypal的支付接口,关于集成方式,求建议!!!
近刚建网店准备做paypal支付接口目前两种集式website payment stardardexpress checkout知道种比较没做给点建议
提问者采纳
LZ您高兴能帮助您解决PayPal相关问题 Website Payment Standard(网站付款标准版,简称WPS)Express Checkout(快速结账,简称EC)PayPal集见两种式特点比: 1.WPS信息采集式通给网页让用户自行填写EC直接通APIPayPal调用买家信息;2.WPS集预估间3-5工作EC集间15-20工作
总结:EC相比起WPS能给买家更优质用户体验(付款流程短用网站填写量信息)网站设计要求相较高且技术相复杂风险控制更优势建议根据自网站技术团队具体情况选择 PS:用像Zencart类源模板建站用考虑技术问题Zencart等模板自带PayPal付款接口直接台设置相关参数行推荐使用EC集式
提问者评价
学习到了,还要慢慢研究下,感谢之O(∩_∩)O
其他类似问题
paypal的相关知识
按默认排序
其他1条回答
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁.Net集成PayPal的Demo - jackchain - 推酷
.Net集成PayPal的Demo - jackchain
近来项目中需要使用Paypal(贝宝)支付,研究了一下接口,真是吐血,花了一个下午+一个晚上,屡败屡战,海淘了若干文档,终于尝试成功了,分享一下,希望对将要使用paypal的朋友有所帮助。
paypal提供3种类型的对外付款接口,可参考:/c2/cgi-bin/?cmd=_render-content&content_ID=pages_c2/profile_comparison_new&fli=true
我们这里采用标准的网页版本,其中标准的网页版本又分为三种实现方式:
1.按钮方式,也就是一个商品一个按钮
2.购物车方式,让paypal托管你的购物车
3.你自己的购物网站有购物车,付款时候将购物车数据提交到paypal即可付款
考虑自由度问题,当然我们需要第三种方式。
1.到中申请一个正式的账号,注意银行卡目前只能用信用卡和借记卡,并且需要支持不同币种的,否则可能开通失败。
2.用刚才申请的账号到/ 中创建开发者模拟账号,为啥?因为开发者账号测试不需要收费
这里需要创建两个账号,买家和卖家,默认系统会给你创建卖家的。
账号创建好了之后,注意修改每个账号的登录密码,在profile里改。
哦,忘记了,创建买家账号的时候,千万别忘记充值哦,充值金额&10000刀。
3.设置好了之后,我们到沙箱里登录卖家账号,单击链接 Enter Sandbox site,用Business类型账号登录,然后做如下设置
&IPN即时付款通知的意义是什么呢?交互原理如下:
我们提交购物车到paypal,完成付款以后,paypal会想我们设置好的IPN代理,发送消息,从而使我们自己的程序得知是否付款成功,以备后续操作,而且这个操作是在后台调用的,其主要目的就是为了防止用户主动关闭浏览器,造成程序订单状态无法更新的问题。
付款自动返回设置,指的是完成付款之后跳转到我们自己网站的界面,这个是显示给用户看的,而且这个接收界面,paypal会发送相关订单数据,付款状态等到这个页面上,也就是“付款数据传输(可选)”这项,勾上之后在返回URL界面就可接收到相关数据了(用户付款完成后,恶意关闭的情况除外)
4.当然上面两个值在账号里面设置是全局的,你可以在具体的提交按钮里面设置
5.在我们的购物网站,实现购物车界面代码:
&form action=&https://www./cgi-bin/webscr& method=&post&&
&input type=&hidden& name=&cmd& value=&_cart&&
&input type=&hidden& name=&upload& value=&1&&
&input type=&hidden& name=&business& value=&jacsonwu-&&
&input type=&hidden& name=&item_name_1& value=&San Francisco Bay(32'X32')&&
&input type=&hidden& name=&amount_1& value=&1.00&&
&input type=&hidden& name=&quantity_1& value=&2&&
&input type=&hidden& name=&item_name_2& value=&Mount Hamilton(24'x15')&&
&input type=&hidden& name=&amount_2& value=&1.00&&
&input type=&hidden& name=&quantity_2& value=&1&&
&input type=&hidden& name=&currency_code& value=&CNY&&     &!--这里重写url,将覆盖全局设置--&
&input type=&hidden& name=&return& value=&http://127.0.0.1:56508/ok.aspx&&
&input type=&Hidden& name=&notify_url& value=&http://127.0.0.1:56508/pp.aspx& /&
&input type=&submit& value=&Upload Cart& alt=&Make payments with PayPal-it's fastfree and secure!& /&
6.付款成功界面代码,也就是return
string strFormValues = Request.Params.ToString();
string strNewV
string strR
string serverURL = &https://www./cgi-bin/webscr&;
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(serverURL);
req.Method = &POST&;
req.ContentType = &application/x-www-form-urlencoded&;
strNewValue = &cmd=_notify-validate&;
strNewValue = &cmd=_notify-synch&tx=& + Request.QueryString[&tx&] + &&at=access_token你的&;
//req.ContentLength = strNewValue.L
StreamWriter stOut = new StreamWriter(req.GetRequestStream(), System.Text.Encoding.ASCII);
stOut.Write(strNewValue);
stOut.Close();
StreamReader stIn = new StreamReader(req.GetResponse().GetResponseStream());
strResponse = stIn.ReadToEnd();
stIn.Close();
if (strResponse.StartsWith(&SUCCESS&))
&7.IPN后台数据接收
//Post back to either sandbox or live
string strSandbox = &https://www./cgi-bin/webscr&;
string strLive = &/cgi-bin/webscr&;
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(strSandbox);
//Set values for the request back
req.Method = &POST&;
req.ContentType = &application/x-www-form-urlencoded&;
byte[] param = Request.BinaryRead(HttpContext.Current.Request.ContentLength);
string strRequest = Encoding.ASCII.GetString(param);
string ipnPost = strR
strRequest += &&cmd=_notify-validate&;
req.ContentLength = strRequest.L
//for proxy
//WebProxy proxy = new WebProxy(new Uri(&http://url:port#&));
//req.Proxy =
//Send the request to PayPal and get the response
StreamWriter streamOut = new StreamWriter(req.GetRequestStream(),
System.Text.Encoding.ASCII);
streamOut.Write(strRequest);
streamOut.Close();
StreamReader streamIn = new StreamReader(req.GetResponse().GetResponseStream());
string strResponse = streamIn.ReadToEnd();
streamIn.Close();
// logging ipn messages... be sure that you give write
// permission to process executing this code
string logPathDir = ResolveUrl(&&);
string logPath = string.Format(&{0}\\{1}.txt&,
Server.MapPath(logPathDir), DateTime.Now.Ticks);
File.WriteAllText(logPath, ipnPost + & & + strResponse);
if (strResponse == &VERIFIED&)
//check the payment_status is Completed
//check that txn_id has not been previously processed
//check that receiver_email is your Primary PayPal email
//check that payment_amount/payment_currency are correct
//process payment
else if (strResponse == &INVALID&)
//log for manual investigation
//log response/ipn data for manual investigation
Response.Write(strResponse);
最后听我一言,程序写好了之后,一定要发布到公网iis上,再测试,不然IPN永远都是INVALID,就是这个鸟问题让我搞了一个晚上,气死了。
ok了,再有问题,可以联系我。
已发表评论数()
&&登&&&陆&&
已收藏到推刊!
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见

我要回帖

更多关于 paypal手续费 的文章

 

随机推荐