支付寶轉賬-提取根證書失敗 AlipayRootCert Is Invalid

問題解決:缺少jar包

在這裏插入圖片描述

轉賬相關代碼

	 /**
	  * 支付寶單筆轉賬
	  * @param payee_account  收款方賬戶(支付寶賬戶)
	  * @param payee_name 收款方真實姓名
	  * @param amount 金額(單位:元)
	  * @param memo 備註
	  * @param orderNum 訂單號
	  */
	 public static Integer ailPayTransfer(String payee_account,String payee_name,String amount,String orderNum,String memo) {
		
	 	try {
	 		
	 		//獲取根目錄
	 		String filePath=AlipayUtil.class.getResource("/").getPath();	
	 		System.out.println(filePath);
	 		CertAlipayRequest certAlipayRequest = new CertAlipayRequest();
	 		certAlipayRequest.setServerUrl(URL);
	 		certAlipayRequest.setAppId(APP_ID);
	 		certAlipayRequest.setPrivateKey(APP_PRIVATE_KEY);
	 		certAlipayRequest.setFormat("json");
	 		certAlipayRequest.setCharset(CHARSET);
	 		certAlipayRequest.setSignType(SIGN_TYPE);
	 		certAlipayRequest.setCertPath(filePath+"appCertPublicKey_2019032963724751.crt");
	 		certAlipayRequest.setAlipayPublicCertPath(filePath+"alipayCertPublicKey_RSA2.crt"); 
	 		certAlipayRequest.setRootCertPath(filePath+"alipayRootCert.crt");
	 		 
	 		DefaultAlipayClient alipayClient = new DefaultAlipayClient(certAlipayRequest); 
	 		AlipayFundTransUniTransferRequest request = new AlipayFundTransUniTransferRequest();
	 		request.setBizContent("{" +
		 		"\"out_biz_no\":\""+orderNum+"\"," +//商戶端的唯一訂單號,對於同一筆轉賬請求,商戶需保證該訂單號唯一。
		 		"\"trans_amount\":"+amount+"," +	//訂單總金額,單位爲元,精確到小數點後兩位,
		 		"\"product_code\":\"TRANS_ACCOUNT_NO_PWD\"," +//收發現金紅包固定爲:STD_RED_PACKET; 單筆無密轉賬到支付寶賬戶固定爲:TRANS_ACCOUNT_NO_PWD; 單筆無密轉賬到銀行卡固定爲:TRANS_BANKCARD_NO_PWD
		 		"\"biz_scene\":\"DIRECT_TRANSFER\"," +  //描述特定的業務場景,可傳的參數如下: PERSONAL_COLLECTION:C2C現金紅包-領紅包; DIRECT_TRANSFER:B2C現金紅包、單筆無密轉賬到支付寶/銀行卡
		 		"\"order_title\":\"轉賬業務的標題\"," +//轉賬業務的標題,用於在支付寶用戶的賬單裏顯示
		 		//"\"original_order_id\":\"20190620110075000006640000063056\"," +//原支付寶業務單號。C2C現金紅包-紅包領取時,傳紅包支付時返回的支付寶單號;B2C現金紅包、單筆無密轉賬到支付寶/銀行卡不需要該參數。
		 		"\"payee_info\":{" +		//收款方信息
		 			"\"identity\":\""+payee_account+"\"," +		//參與方的唯一標識
		 			"\"identity_type\":\""+PAYEE_TYPE+"\"," +	//參與方的標識類型,目前支持如下類型: 1、ALIPAY_USER_ID 支付寶的會員ID  2、ALIPAY_LOGON_ID:支付寶登錄號,支持郵箱和手機號格式
		 			"\"name\":\""+payee_name+"\"" +				//參與方真實姓名,如果非空,將校驗收款支付寶賬號姓名一致性。當identity_type=ALIPAY_LOGON_ID時,本字段必填。若傳入該屬性,則在支付寶回單中將會顯示這個屬性
		 		"  }," +
		 		"\"remark\":\""+memo+"\"" +  //業務備註 
	 		"  }");
	 		AlipayFundTransUniTransferResponse response = alipayClient.certificateExecute(request);
	 		if(response.isSuccess()){
	 			System.out.println("調用成功");
	 			return 1;
	 		} else {
	 			System.out.println("調用失敗");
	 		}
		} catch (AlipayApiException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			System.out.println("出錯");
		}	
		return 0;
	}

相關文檔地址
https://docs.open.alipay.com/309/106236

證書升級步驟
https://docs.open.alipay.com/291/twngcd/

大致描述步驟:
1 下載證書軟件
2 運行軟件,輸入企業信息,生成CSR文件
3 上傳CSR文件到支付寶開發平臺的應用

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