中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

外貿(mào)獨(dú)立站之國(guó)外支付接口Paypal對(duì)接

2023-02-08    分類: 網(wǎng)站建設(shè)

1.首先去開發(fā)者平臺(tái)注冊(cè)測(cè)試賬號(hào),注冊(cè)網(wǎng)站是
2.好了之后再進(jìn)入Sandbox建立測(cè)試用的Paypal虛擬帳號(hào)(至少應(yīng)該建立一個(gè)Business的和一個(gè)Personal的),這個(gè)虛擬帳號(hào)可以建一個(gè)商家號(hào)和一個(gè)支付號(hào),可用于測(cè)試,里面的金額可以自由設(shè)定。
3.商家號(hào)那里一般填寫的是郵箱(測(cè)試的時(shí)候,正式的商家號(hào)不是郵箱)。
4.需要注意的是:
5.1、把相關(guān)配置信息盡量放到數(shù)據(jù)庫(kù)中。
6.2、測(cè)試帳號(hào)下的支付完成后是不會(huì)觸發(fā)異步回調(diào)地址的,需要到開發(fā)者平臺(tái)的去模擬相關(guān)觸發(fā)。
7.3、為了回調(diào)支付準(zhǔn)確,增加了一個(gè)可以自定義的驗(yàn)證密鑰,參與加密驗(yàn)證。
8.基本配置信息:
function__construct(){
parent::__construct();
$testConfig=array(
'payUrl'=>'https://www.sandbox.paypal.com/cgi-bin/webscr',//支付地址
'business'=>'3HSV6******',//商家號(hào)
'currency_code'=>'USD',//支付幣種具體代碼可參考:https://developer.paypal.com/docs/classic/api/currency_codes/
'lc'=>'US',//支付頁面的語言具體代碼可參考:https://developer.paypal.com/docs/classic/api/country_codes/
'key'=>'siteape',//個(gè)人加密字符串
);
$prodConfig=array(
'payUrl'=>'https://www.paypal.com/cgi-bin/webscr',//支付地址
'business'=>'3HSV6******',//商家號(hào)
'currency_code'=>'USD',//支付幣種具體代碼可參考:https://developer.paypal.com/docs/classic/api/currency_codes/
'lc'=>'US',//支付頁面的語言具體代碼可參考:https://developer.paypal.com/docs/classic/api/country_codes/
'key'=>'siteape',//個(gè)人加密字符串
);
$payConfig=$testConfig;//這里切換測(cè)試環(huán)境和生產(chǎn)環(huán)境
$this->payConfig=$payConfig;
}
9.paypal支付提交處理
publicfunctionpaypalpay(){
$oid=I('oid');
//數(shù)據(jù)信息
$order=M('order')->find($oid);//訂單信息
if(!$order){
$this->display('Public:404');
exit();
}
$data=$this->payConfig;
//訂單詳情信息
$orderDetail=M('order_detail')->where(array('oid'=>$oid))->select();
$goodsInfo='';
foreach($orderDetailas$k=>$v){
$product=M($v['name'])->field('title')->find($v['pid']);
$product_color=M($v['name'].'_colors')->field('title')->find($v['color_id']);
$goodsInfo.=$product['title'].'-'.$product_color['title'].'-'.$v['diameter'].'-'.$v['number'].'-';
}
//加密傳值
$signSrc='';
$signArr=array(
'invoice'=>$order['order_num'],//自定義訂單號(hào)
'key'=>$data['key'],//自定義的加密字符串
);
foreach($signArras$k=>$v){
$signSrc.=$v;
}
$signInfo=strtoupper(hash("sha256",$signSrc));
//表單提交
$formData=array(
'cmd'=>'_xclick',
'business'=>$data['business'],
'item_name'=>string_replace($goodsInfo),
'currency_code'=>$data['currency_code'],
'amount'=>$order['real_money'],
'notify_url'=>C('PROTOCOL').$_SERVER['SERVER_NAME'].U('Pay/paypalnotifyurl'),
'return'=>C('PROTOCOL').$_SERVER['SERVER_NAME'].U('Order/info',array('order_num'=>$order['order_num'],'paypal'=>1)),//支付成功后網(wǎng)頁跳轉(zhuǎn)地址把order_num帶上
'cancel_return'=>C('PROTOCOL').$_SERVER['SERVER_NAME'].U('Order/info',array('order_num'=>$order['order_num'])),//用戶取消支付后跳轉(zhuǎn)的地址
'invoice'=>$order['order_num'],//自定義訂單號(hào)
'no_shipping'=>1,
'custom'=>$signInfo,//自定義變量原樣返回訂單id號(hào)
'charset'=>'utf8',
'lc'=>$data['lc'],
);
header("Content-type:text/html;charset=utf-8");
//輸出提交表單
$payForm=''.inputs($formData).'';
echo$payForm;
}
10.paypal回調(diào)地址
publicfunctionpaypalnotifyurl(){
$data=$this->payConfig;
//加密接收值
$getData=array(
'invoice'=>I('post.invoice'),
'key'=>$data['key'],
);
//鍵名和鍵值和上面的原加密字符串一致
$payment_status=I('post.payment_status');
$custom=I('post.custom');//接收的加密字符串
$signSrc='';
foreach($getDataas$k=>$v){
$signSrc.=$v;
}
$signInfo=strtoupper(hash("sha256",$signSrc));
//驗(yàn)證與修改
if($signInfo==$custom&&$payment_status=='Completed'){
//改變訂單的狀態(tài)為已支付
$saveData=array(
'pay_create_time'=>time(),
'pay_sign_info'=>$signInfo,
'status'=>2,
);
$re=M('order')->where(array('order_num'=>$getData['invoice']))->data($saveData)->save();
$payResult="Congratulations,paymentissuccessful!";
}else{
$payResult="Datavalidationfailed";
}
/*支付的異步記錄備查*/
$logData=I('post.');
$logfile=.'/payPalLog_c451f8e6e53014.txt';
import("Org.Util.File");
$logObj=new\File($logfile);
$logfile=$logObj->getRealFile();
file_put_contents($logfile,serialize($logData),FILE_APPEND);
}
}
11.組裝表單域
functioninputs($data){
$inputs='';
foreach($dataas$k=>$v){
$inputs.='';
}
return$inputs;
}

標(biāo)題名稱:外貿(mào)獨(dú)立站之國(guó)外支付接口Paypal對(duì)接
分享網(wǎng)址:http://www.rwnh.cn/news/235937.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣、企業(yè)建站網(wǎng)站維護(hù)、商城網(wǎng)站面包屑導(dǎo)航、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
隆昌县| 百色市| 青冈县| 临安市| 澄江县| 祁门县| 广汉市| 潮安县| 北碚区| 泗水县| 清苑县| 思茅市| 夹江县| 江达县| 牡丹江市| 平安县| 西昌市| 乐至县| 镇安县| 乐业县| 慈溪市| 武宁县| 涟源市| 淳安县| 汉阴县| 昭通市| 沙田区| 蒙山县| 宝应县| 弥勒县| 金溪县| 楚雄市| 台北市| 汕尾市| 武乡县| 淳安县| 前郭尔| 化州市| 龙陵县| 察隅县| 东明县|