php与paypal整合方法
2024-05-04 22:08:20
供稿:网友
我晕,最近这个用paypal付款的功能搞了我2天,还没搞完。郁闷死了。
先做个笔记,把已经搞定的部分写下来,省的以后忘了。
1 注册SandBox账号,并且建立两个虚拟账号,可以选择自动建立的那一项。一个buyer,一个seller。以供 开发的时候测试使用。
2 实现快速购买的代码。链接暂时指向SandBox便于开发时的测试。以后再改成正式的。
代码如下:
if(!defined("_f_afficherButtonPayPal"))
{ define("_f_afficherButtonPayPal",1);
function afficherButtonPayPal($nbr_point,$montant)
{
echo"<td width=/"50/"> </td>";
echo "<td>
<form action=/"https://www.sandbox.paypal.com/cgi-bin/webscr/" method=/"post/" target=/"_blank/">
<input type=/"hidden/" name=/"cmd/" value=/"_xclick/">
<input type=/"hidden/" name=/"business/" value=/"email_of_seller@emai.com/"> //这个是刚才建立的seller的账号
<input type=/"hidden/" name=/"item_name/" value=/"$nbr_point points/">
<input type=/"hidden/" name=/"currency_code/" value=/"EUR/"> //付款的币种,我写的是欧元
<input type=/"hidden/" name=/"amount/" value=/"$montant/"> // 快速付款的总金额
<input type=/"image/" src=/"../src/img/x-click-but01.gif/" name=/"submit/" alt=/"Veuillez vous payer par PayPal/"> //显示的paypal图片
</form>
</td>";
}
}
3 将已经付款的信息传回去,应该是要用IPN,还没搞定,再接再励
补充资料:
从参考文档得知:
Paypal专门开发了Sandbox给开发人员进行开发测试
首先到https://developer.paypal.com/ 注册一个开发帐号,
再进入Sandbox建立测试用的Paypal虚拟帐号(至少应该建立一个Business的和一个Personal的),
这种账号注册方法和Paypal的流程一样,信息可以是假的,包括银行帐号、信用卡(其实Paypal Sandbox会自动生成
一些随机的号码)。接着激活Paypal Sandbox的虚拟帐号,注意,这里不管你在Paypal Sanbox注册时填什么邮件地
址,有任何发送到虚拟帐号所填邮箱的邮件都存会在开发帐号的管理界面中的Email页(导航栏上有)中。登录Sandbox
的虚拟Paypal环境,还需要验证虚拟帐号的银行,这里可以随便填,然后通过Add Funds来给账户充值(想填多少填多
少)。然后,还需要激活IPN的选项,在Business的那个账户的Profile设置页面中,点击,然后点击Edit按钮,打开
IPN,这里如果你使用的是固定的IPN Handle,可以直接将地址填入。
接下来,我们测试的时候,应该将Paypal接口的地址设置为https://www.sandbox.paypal.com/cgi-bin/webscr
最后基本的流程为:
用户在我们的网站上选择商品、放入购物车,然后检查准备支付
网站根据购物车中的商品,生成Paypal的支付表单(也是提交到上面IPN用的Paypal接口地址),包含了此次交易的一