問題解決:缺少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文件到支付寶開發平臺的應用