之前做過騰訊的微信支付,剛開始以爲會跟微信支付一樣的那,雖然說不是完全相同吧,但也是大同小異,廢話不多說上代碼~~1.DEMO
這個是代碼樣例,我們用來做支付用的是payRequest.php文件,裏面有支付得接口,而payNotifyUrl.php是回調的接口,clientRefund.php是退款接口(一般不涉及退款不用考慮開發這個接口)2.支付接口
$token_id=""; /* 公衆帳號uin */ $pubAcc=""; /* 公衆帳號關注提示語 */ $pubAccHint=""; /* 商戶號,上線時務必將測試商戶號替換爲正式商戶號 */ $partner = "***********"; /* 密鑰 */ $key = "*************";
接口裏會提供測試賬號,因爲正是賬號可能因爲合同的原因會很久纔可以測試,,所以用測試賬號即可。這個是支付接口中傳遞錢的參數,大家小心一下單位,代碼樣例裏面給的是分爲單位,正式上線的時候記得乘以100倍。在代碼樣例中的JS代碼沒有太大用,直接刪掉就可以了/* 接收財付通通知的URL*/ $notify_url = "http://127.0.0.1:8180/qpay/payNotifyUrl.jsp"; 這個爲支付得異步通知,將URL改爲自己服務器的回調地址。 <pre name="code" class="php">$queryReq->setParameter("total_fee", "1");
$token_id = $queryRes->getParameter("token_id");
當運行程序獲取到了token_id,說明你已經測試成功了,,這個還是比較簡單的。
3.回調(payNotifyUrl.php)
要測試回調是否成功,只是需要兩點
1.驗證簽名成功
isTenpaySign()是驗證簽名的方法,不許任何改動,當返回true則爲成功
2.返回支付成功
$resHandler->getParameter("pay_result") 獲取異步通知的時候傳回的支付狀態,當獲取的值是0的時候
當這兩點驗證成功之後就可以獲取當時獲取的商戶訂單號$sp_billno = $resHandler->getParameter("sp_billno");這裏的訂單號就是支付時傳的商戶訂單號,這裏就可以進行業務的操作了,例如修改訂單狀態
</pre><br /><br />
手Q支付(QQ錢包)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.