手Q支付(QQ錢包)

之前做過騰訊的微信支付,剛開始以爲會跟微信支付一樣的那,雖然說不是完全相同吧,但也是大同小異,廢話不多說上代碼~~

1.DEMO

這個是代碼樣例,我們用來做支付用的是payRequest.php文件,裏面有支付得接口,而payNotifyUrl.php是回調的接口,
clientRefund.php是退款接口(一般不涉及退款不用考慮開發這個接口)

2.支付接口

$token_id="";
/* 公衆帳號uin */
$pubAcc="";
/* 公衆帳號關注提示語 */
$pubAccHint="";
/* 商戶號,上線時務必將測試商戶號替換爲正式商戶號 */
$partner = "***********";
/* 密鑰 */
$key = "*************";
接口裏會提供測試賬號,因爲正是賬號可能因爲合同的原因會很久纔可以測試,,所以用測試賬號即可。
/* 接收財付通通知的URL*/
$notify_url = "http://127.0.0.1:8180/qpay/payNotifyUrl.jsp";
這個爲支付得異步通知,將URL改爲自己服務器的回調地址。
<pre name="code" class="php">$queryReq->setParameter("total_fee", "1");
這個是支付接口中傳遞錢的參數,大家小心一下單位,代碼樣例裏面給的是分爲單位,正式上線的時候記得乘以100倍。在代碼樣例中的JS代碼沒有太大用,直接刪掉就可以了
$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 />

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章