单笔转账到支付宝账户接口

应用公钥、应用私钥
1、下载https://docs.open.alipay.com/291/106097RSA签名验签工具。选择密钥格式:PKCS8,密钥长度:2048,点击生成密钥。复制商户应用公钥,在蚂蚁金服开放平台创建的应用中填写在应用公钥中,系统会自动生成支付宝公钥,这个支付宝公钥在调用接口的时候会用到。

2、pom文件中添加maven依赖:

  <dependency>
            <groupId>com.alipay.sdk</groupId>
            <artifactId>alipay-sdk-java</artifactId>
            <version>3.0.1</version>
        </dependency>

调用示例:

package com.yz.discount.test;

import com.alipay.api.AlipayClient;
import com.alipay.api.DefaultAlipayClient;
import com.alipay.api.request.AlipayFundTransToaccountTransferRequest;
import com.alipay.api.response.AlipayFundTransToaccountTransferResponse;
import com.yz.discount.common.utils.DateUtils;
import org.junit.Test;

/** * alipay单笔转账到支付宝账户接口测试 * Created by lsk on 2018-5-21. */
public class AliPayTransferTest {

    private static String APPID = "";
    private static String SERVERURL = "https://openapi.alipay.com/gateway.do";
    //应用私钥
    private static String PRIVATEKEY = "";
    //支付宝公钥
    private static String ALIPAY_PUBLICKEY = "";

    @Test
    public void testAliPay(){
        AlipayClient alipayClient = new DefaultAlipayClient(SERVERURL,APPID,PRIVATEKEY,
                "json","utf-8",ALIPAY_PUBLICKEY,"RSA2");

        AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest();

        String outTradeNo = DateUtils.now("yyyyMMddHHmmss");
        request.setBizContent("{" +
                "\"out_biz_no\":\""+outTradeNo+"\"," +
                "\"payee_type\":\"ALIPAY_LOGONID\"," +
                "\"payee_account\":\"支付宝账户\"," +
                "\"amount\":\"0.1\"," +
                "\"payer_show_name\":\"转账方名称\"," +
                "\"payee_real_name\":\"支付宝真实用户名\"," +
                "\"remark\":\"备注\"" +
                "}");

        try {
            AlipayFundTransToaccountTransferResponse response = alipayClient.execute(request);
            if(response.isSuccess()){
                System.out.println("调用成功:orderId:"+response.getOrderId()+";outBizNo:"+response.getOutBizNo()+";payDate:"+response.getPayDate());
            } else {
                System.out.println("调用失败");
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }

}
阅读更多

更多精彩内容