Browse Source

支付宝转账交易

Signed-off-by: fengb <fengbin1989@aliyun.com>
cangku
fengb 3 years ago
parent
commit
17b9f58d0f
  1. 63
      hiver-modules/hiver-app/src/main/java/cc/hiver/app/util/AliPayUtil.java

63
hiver-modules/hiver-app/src/main/java/cc/hiver/app/util/AliPayUtil.java

@ -0,0 +1,63 @@
package cc.hiver.app.util;
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.CertAlipayRequest;
import com.alipay.api.DefaultAlipayClient;
import com.alipay.api.domain.AlipayFundTransUniTransferModel;
import com.alipay.api.domain.Participant;
import com.alipay.api.request.AlipayFundTransUniTransferRequest;
import com.alipay.api.response.AlipayFundTransUniTransferResponse;
/**
* @类描述
* @作者 冯彬
* @时间 2023/8/9-下午3:48
*/
public class AliPayUtil {
public static String pay(String phoneNumber,String name,String transAmount,String orderNo) throws AlipayApiException {
//应用私钥
String privateKey = "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCCcuKPxgpRhBLRG4/2W2c+zqSXRRXCZPsB1FeKIUs7cC9PZy3Bmm747BJrFqrNOUSkEXKJSJoqPfvmbzOlCgYAKea5st06vv0+WOm7wffGWOMnQyqALPL1PDO2RAbMagU6PCUcr27SC88M8gEWyaOrAiogaDEL6EC8rbBBvYhHp8jWKMtNgiJYM8IxWk2pmGKT19pKp8QdnkFmN6u+JauMpXa+MKAjTtY5X7nYTB0RD+nxpnKkeIWfL0gkzwnHmRYJIVdykUuIZ9JEnjtqc3hlJK6KmnyIaEtvKEUuqtcYU2adQu2SIUhxpjnq8WXhn3lRdt37pKIpxJ4c0R5ns6KpAgMBAAECggEAA0pMhp3TIs03AEk2r1sM1pu1sQ8QBnAvmJM3hgdi82PX/aO3lruDcwnZSRQwSK7aGV1LS0Umhkw770r8vXvsPNLRu/tT8yhgENODSbYRvtH9IL9j8gmwMxlKoJ1EoqFF8nsT4I5YODoOBeCQwHdjhmuujlSyb/9yqo+i83WJW21JvmZ6d0S3/G24hev4V3plhERE7xBKAjJvSiIrHKwHAvl888u+dbbFiiNnMF+2VJpOAJce03FSp5CqFlWJbvwAYhVxNDCtog/AntYlfg4NiQk9aj14EjZ6bVd6x/7iOmhJadn8qBSOGWhTSKlM01/13pKKMQNcbnDw4T4E31RAAQKBgQC48cnOqJ/gE9D9arD+JqjxSk2Z7oHKZ2PyZUdNz9d+58e9cYmrgjj3bC0PyskWD7XxjsRcv+0pF0c1Xg4/lBku+rHf+QlnykzNEVWckg/RPQ3wK2gaOsk3njZfzoowuehjgmjSfRsV3i+Y0eJAFDJFG0lx74WilrBpa/shtb7oAQKBgQC0kSvmiXF5YMW87tnmIWhlkb4aDjbYVuoCuDvnyjL3XlKpdW4UJttx8SL4wuE77AkwdybwLBI89GvEQe7Se8GqVYw6W6i/2mMVhnwkKDe7vZK5fx4z5DmJ2t77mmkYJzRe691HhPZffn19yiPTJvl6cKemqEydujQPLxIPEhx6qQKBgQCZO9xVWel9I24ZSfjz2txHb6T0UWVAaoGpKLj3g6mtACXClPvYGsFQX1TGrOIHYWUCi6OupWa+kQby9MchbnefMR+HzzM3x6nyjtY8L9jjKI8P2ycZ9HMbnf63Ss28qYweRsLLA9UZPUp6eAvZw+IS2BT2TdqPaAMqlckxmQBgAQKBgQCxzbni+ziIAyjz0Gc023THf2ookhKjmYI5R12F82+YcoMHZyEMKu8wFfkP6CaOMPEjjlEDcwJKj4yG5z3aeg7MQg0hchyLPusOySz5Fbk734LZsjj1dCjMfH/SVcxjAkfpqGxu/pj0k8PS1/fK9rf3P3N3AobfUfntcbZgrL7qcQKBgChg4FWPyW6sxg1KxGecrozGhmF31VzOft147aifro3LQEhwr468+nDGlgQQCVDzCvAkxMFKPfRT0+n7CBScaUhfqnaJ+VsuwLkag0/D91FjBCCTeGuFy/kwdX5jIcXfzYdTrA/rIbNyt0NbGnR00q6YZsxToj4sIA5PIijIgQ6l";
CertAlipayRequest alipayConfig = new CertAlipayRequest();//支付宝配置
alipayConfig.setPrivateKey(privateKey);
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
alipayConfig.setAppId("2021003125682609");//支付宝分配给开发者的应用ID 小青科技
alipayConfig.setCharset("UTF8");
alipayConfig.setSignType("RSA2");
alipayConfig.setEncryptor("");
alipayConfig.setFormat("json");
alipayConfig.setCertPath("/Users/fengbin/dahongmen/appCertPublicKey.crt");//应用公钥证书文件路径,例如:/foo/appCertPublicKey_2019051064521003.crt
alipayConfig.setAlipayPublicCertPath("/Users/fengbin/dahongmen/alipayPublicKey_RSA2.crt");//支付宝公钥证书文件路径,例如:/foo/alipayCertPublicKey_RSA2.crt
alipayConfig.setRootCertPath("/Users/fengbin/dahongmen/alipayRootCert.crt");//支付宝根证书文件路径,例如:/foo/alipayRootCert.crt
AlipayClient alipayClient = new DefaultAlipayClient(alipayConfig);
AlipayFundTransUniTransferRequest request = new AlipayFundTransUniTransferRequest();//转账类型请求
AlipayFundTransUniTransferModel model = new AlipayFundTransUniTransferModel();//转账请求参数
model.setOutBizNo(orderNo);//商家侧唯一订单号
model.setRemark("返佣");//
model.setBusinessParams("{\"payer_show_name_use_alias\":\"true\"}");
model.setBizScene("DIRECT_TRANSFER");//单笔无密转账固定为 DIRECT_TRANSFER
Participant payeeInfo = new Participant();//收款方信息
payeeInfo.setIdentity(phoneNumber);
payeeInfo.setIdentityType("ALIPAY_LOGON_ID");
payeeInfo.setName(name);//必填
model.setPayeeInfo(payeeInfo);
model.setTransAmount(transAmount);
model.setProductCode("TRANS_ACCOUNT_NO_PWD");
model.setOrderTitle("软件返佣");
request.setBizModel(model);
AlipayFundTransUniTransferResponse response = alipayClient.certificateExecute(request);
System.out.println(response.getBody());
if (response.isSuccess()) {
return "调用成功";
} else {
return "调用失败";
// sdk版本是"4.38.0.ALL"及以上,可以参考下面的示例获取诊断链接
// String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response);
// System.out.println(diagnosisUrl);
}
}
}
Loading…
Cancel
Save