One:前言:微信支付和支付寶支付pc端和app端是不一樣的兩種形式,如下是我整理的demo,你們能夠下載:
Two:下載:php
1>微信pc:http://www.taikongliu.com/pay/example/WxpayAPI_php_v3.zip
(也能夠在微信支付平臺/開發者文檔/掃碼支付下載sdk包)
2>支付寶pc:http://www.taikongliu.com/pay/example/pc_ali.zip
(也能夠在:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.iUPkW7&treeId=203& articleId=105910&docType=1)
3>微信和支付寶app:http://www.taikongliu.com/pay/example/pay_app.zip
(https://github.com/dcloudio/H5P.Server/tree/master/payment/alipay)
Three:微信開放平臺和微信公衆平臺的區別和做用:
1>微信開放平臺:主要面向App開發者,一般是擁有成熟的應用程序以後,經過開放平臺將內容分享至朋友圈或發送給某個微 信好友/羣聊
2>信公衆平臺:強調信息流,向微博同樣主要推送內容,像10086同樣根據用戶發來的消息進行智能回覆或後臺實現某些功 能
Four:微信支付(微信開放平臺):
使用微信支付功能需到微信開放平臺申請移動應用並開通支付功能
微信APP支付接入商戶服務中心
申請應用後能夠獲取AppID和AppSecret值。
開通支付功能後可獲取支付業務服務器配置數據
PARTNER:財付通商戶號
PARTNER_KEY:財付通密鑰s
PAYSIGNKEY:支付簽名密鑰
1》微信pc:
1>下載下demo後,在lib/WxPay.Config.php中配置
const APPID = ‘綁定支付的APPID’
const MCHID = 商戶號
const KEY = '商戶支付密鑰,參考開戶郵件設置';
const APPSECRET = 公衆賬號secert
cert/文件下把加密的證書進行所有換掉
2>訪問example/native.php,把訂單號,金額,同步回掉地址,異步回調等支付信息配置好,就能夠生成一張漂亮的二維 碼啦!
3>支付成功,在異步回掉接到回掉的訂單號等各類微信支付成功的信息,而後進行寫上本身的業務邏輯
4>最後記得必定要在異步回掉寫上日誌,記錄交易是否成功等記錄
2》微信app:(建議下載Hbuilder調試app端)
1>下載下demo後,在wapay/index.php中配置
2>財付通商戶號
$PARTNER = "%商戶號(PartnerID)%";
$PARTNER_KEY = 財付通密鑰
$APP_ID="appid;
$APP_SECRET= 公衆賬號secert
$PaySignKey="簽名;
$notify_url = "支付完成後的異步回調處理頁面";
3>配置號這些信息以後,經過jsonp請求發送須要的訂單號(惟一的),每次用這些訂單號查詢出商品的價格,名稱,商品詳 情,等這些信息,有了這些信息以後,demo會自定調起微信支付!
4>支付成功,在異步回掉接到回掉的訂單號等各類微信支付成功的信息,而後進行寫上本身的業務邏輯
5>最後記得必定要在異步回掉寫上日誌,記錄交易是否成功等記錄
Five:支付寶支付(螞蟻金服)
1》首先是申請(企業帳戶認證,須要準備如下資料):
1>營業執照
2>申請人有效身份證信息
3>提交申請人企業委託受權書
4>銀行對公帳戶
2》申請流程:(螞蟻金服:https://cshall.alipay.com/enterprise/index.htm)
1>註冊帳戶
2>實名認證
3>簽約申請-(後申請簽約手機支付)html
https://b.alipay.com/order/productDetail.htm?productId=2013080604609688
4>經過審覈,技術集成
3》審覈經過後須要提過接入的PID/KEY
1>合做者身份Id(partner)和交易安全效驗碼(key)是商戶與支付寶簽約後,商戶得到的支付寶商戶惟一識別碼與密鑰
,當商戶把支付寶功能接入商戶網站時會用到它們,以便讓支付寶認證商戶。
2>登錄支付寶官網(www.alipay.com)
3>點擊導航欄中(「商家服務」)
4>點擊查詢(PID,KEY),便可查詢到合做者身份ID,以2008開頭的16位純數字
5>輸入支付密碼,查詢key
pc支付:
1>下載demo後,在alipay.config.php中配置
$alipay_config['partner']= 合做身份者ID,簽約帳號,以2088開頭由16位純數字組成的字符串,
$alipay_config['key']= 'MD5密鑰,安全檢驗碼,由數字和字母組成的32位字符串';
$alipay_config['notify_url'] = "http://商戶網址/create_direct_pay_by_user-PHP-UTF-8/notify_url.php"; // 服務器異步通知頁面路徑
$alipay_config['return_url'] = "http://www.month11.com/pay/alipay2/return_url.php"; //同步回掉路徑
2>在alipayapi.php中配置
$out_trade_no = $_POST['WIDout_trade_no']; //商戶訂單號,商戶網站訂單系統中惟一訂單號,必填
$subject = $_POST['WIDsubject']; //訂單名稱,必填
$total_fee = $_POST['WIDtotal_fee']; //付款金額,必填
$body = $_POST['WIDbody']; //商品描述,可空
3>配置好以後訪問到alipayapi.php,就會生成很漂亮的二維碼
4>支付成功,在異步回掉接到回掉的訂單號等各類微信支付成功的信息,而後進行寫上本身的業務邏輯
5>最後記得必定要在異步回掉寫上日誌,記錄交易是否成功等記錄
app支付:
1>下載demo後,在index.php中配置//
$priKey = "-----BEGIN RSA PRIVATE KEY-----生成密鑰時獲取的私鑰字符串,直接使用pem文件的完整字符串 -----END RSA PRIVATE KEY-----";
$partner = "%支付寶PartnerID%"; //支付寶合做者身份ID,以2088開頭的16位純數字
$seller_id = '%支付寶帳號,一般爲郵箱地址%'; // 支付寶帳號
$base_path = urlencode('http://101.***4***38/moblie/index.html'); //同步回掉
$notify_url = urlencode('http://www.t******tify_url.php'); // 異步通知地址
$subject = '***';
$body = '*****'; // 訂單詳情
$out_trade_no = date('YmdHis', time()); // 訂單號,示例代碼使用時間值做爲惟一的訂單ID號
2>配置好這些以後,在經過jsonp傳遞訂單號,支付寶就會調起支付寶支付
3>支付成功,在異步回掉接到回掉的訂單號等各類微信支付成功的信息,而後進行寫上本身的業務邏輯
4>最後記得必定要在異步回掉寫上日誌,記錄交易是否成功等記錄git
注意:全部的異步回調地址,必須寫日誌或者信息入庫,爲了防止用戶偷單,還要判斷用戶支付的金額是否和該商品的價格相同github
若是不一致,則訂單狀態不改變json
six:complete!api