支付系列 | 支付宝沙箱模式模拟支付
生活随笔
收集整理的這篇文章主要介紹了
支付系列 | 支付宝沙箱模式模拟支付
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、沙箱環境使用說明
2、配置沙箱環境
復制一下文件中的內容
3、掃碼后提示一下信息
導致這種錯誤的原因是我們使用了正式環境的支付寶APP掃描的沙箱環境下的付款二維碼,解決辦法就是使用沙箱版本的支付寶APP掃描或者使用沙箱版本的支付寶賬號密碼登錄付款即可。
下載地址:https://ur.alipay.com/kIL
?4、下載沙箱版錢包app,支付寶會提供測試賬號,里面有余額。
使用以下賬號登錄沙箱錢包App
?
遇到問題:使用了https 電腦網頁支付的異步通知死活收不到信息
通過?https://cryptoreport.websecurity.symantec.com/checker/?檢測 提示?
解決辦法:
配置一個http協議的域名,不要驗證,則可以接受到異步通知的信息。重新配置支付回調配置文件信息
'notify_url' => 'http://http.tinywan.com/api/notify', 'return_url' => 'http://http.tinywan.com/api/return',異步通知
{ "gmt_create": "2019-11-16+09%3A42%3A12", "charset": "utf-8", "gmt_payment": "2019-11-16+09%3A42%3A19", "notify_time": "2019-11-16+09%3A42%3A20", "subject": "Tinywan%E6%B5%8B%E8%AF%95%E5%95%86%E5%93%81", "sign": "c2ndONot0oUd4ZP2aBfSav8Bd716RG3yICVohEn0peL44ORxFrD2EfMiabaaV5PXRJbrLi%2F0ypTK3alw6boOTcnG4eOEW7KIYZA7C6jcrbki2BOnj%2FxQGd2A2R8wo%2FFc0RQOIupWnIvuy5TOEx1aWDaPMae8JatUJIkpfDl6tQN3gkw4poLIngk7q%2FDR4oUGLvMB9qQ%2FSWXhvpzu8%2BclUdgIjbpUn%2B7C5K3gIjwxgeC2utzd%2F7o%2BWif86Hi7K9rMqLlch17sxud2kgeT1GuxDBIcDu8ZYy0MKtqDVtiBUtPnRpX46duKOtxVH4VqyJpX%2F8%2FPfoMs%2Fte1YkMpWu6PSw%3D%3D", "buyer_id": "2088102169214338", "invoice_amount": "200.00", "version": "1.0", "notify_id": "2019111600222094219014331000593195", "fund_bill_list": "%5B%7B%22amount%22%3A%22200.00%22%2C%22fundChannel%22%3A%22ALIPAYACCOUNT%22%7D%5D", "notify_type": "trade_status_sync", "out_trade_no": "1573868513", "total_amount": "200.00", "trade_status": "TRADE_SUCCESS", "trade_no": "2019111622001414331000043846", "auth_app_id": "2016090900470841", "receipt_amount": "200.00", "point_amount": "0.00", "app_id": "2016090900470841", "buyer_pay_amount": "200.00", "sign_type": "RSA2", "seller_id": "2088102174818255" }同步參數
{ "charset": "utf-8", "out_trade_no": "1573868513", "method": "alipay.trade.page.pay.return", "total_amount": "200.00", "sign": "wXROS0xz107qQ68DFSpITPFlQitmXLZTUBHoBMV4Vn3NCjJRo0TcEb3ra4oGrT6Qm5C5WXpj1UL2aTB7FccGOJ3ismd2uKCr42PGESkWOUaNhnKDFly5940T3Anq7r2c37PaFZ7aiQai268UFDXiPwpw0U7hoZnTP1qEq89T7TJZplU8yFCoW1GjEpJMz7ggz1bV3GkoHomTbSvw/J8il7sk9kckvIFtjAZgVL+8Z+nPa/Zn8MhHCd5vLS9ZTl+6g5eUfyxP7RaljsVjCEK71mbmUC6CQpdyz4cGPexk/UZkQXXJCpW/Z4e8Gkd1z/B+dPLZmZs0Kzwp8n306sTXvA==", "trade_no": "2019111622001414331000043846", "auth_app_id": "2016090900470841", "version": "v1", "app_id": "2016090900470841", "sign_type": "RSA2", "seller_id": "2088102174818255", "timestamp": "2019-11-16 09:42:27" }?簽名驗證失敗問題
// 簽名驗證 $aliPay = Pay::alipay($config); $verifyData = $aliPay->verify(); // InvalidSignException?錯誤日志
INVALID_SIGN: Alipay Sign Verify FAILED?錯誤原因就是發起支付和異步回調加載的配置文件不統一造成的
發起支付加載
public function pay() {$config = Config::get('pay.alipay');// 沙箱模式if ($isTrue = true) {$config['mode'] = 'dev';}$order = ['out_trade_no' => time(),'total_amount' => rand(10,99),'subject' => '測試商品'.rand(111,9999),];$alipay = Pay::alipay($config)->web($order);return $alipay->send(); }?異步回調加載
$config = Config::get('pay.alipay'); // 沙箱模式 if ($isTrue = true) {$config['mode'] = 'dev'; }// 簽名驗證 $aliPay = Pay::alipay($config); $verifyData = $aliPay->verify(); // InvalidSignException Log::debug('[異步通知] 簽名驗證參數 ' . json_encode($verifyData)); Log::debug('[異步通知] 簽名原始數據'.json_encode($verifyData->all())); $verifyRes = 0;配置文件注意
protected $config = [....// 這里加載的是支付寶的公鑰,而不是應用公鑰'ali_public_key' =>'AB....',// 加密方式: **RSA2** 'private_key' => 'MIIEpAIBAAKCAQE==',.... ];參考:Android支付寶沙箱環境使用教程
總結
以上是生活随笔為你收集整理的支付系列 | 支付宝沙箱模式模拟支付的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谁在纵容币圈乱象“李笑来”们?
- 下一篇: 赛门铁克windows server备份