# 注意:本文档后期不在跟新,新文档迁移到:[http://www.openkit.cc/docs/openkit/#/](http://www.openkit.cc/docs/openkit/#/)
# 首先感谢使用OpenKit工具包
## 反馈交流QQ群:696279396
# 注意这里暂时只支持APP端支付,网页端支付将在2.0版本增加
## APP发起支付
- 首先我们需要 new 一个 AliPayConfig 对象
```java
/**
* appId:(必填)APPId
* privateKey:(必填)密钥
* publicKey:(必填)公钥
* serverUrl:(必填)支付宝开放安全地址
* doMain:(必填)支付宝返回回调地址前缀
* charset:(必填)设置字符集编码
* format:(必填)仅支持JSON
* signType:(必填)商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2
*/
AliPayConfig aliPayConfig = new AliPayConfig()
```
- 接下来,new 一个商品订单详情
```
/**
* body:(必填)商品描述
* subject:(必填)商品名称
* outTradeNo:(必填)商户订单号 可以使用 KitUtil.getOrderCode()
* timeoutExpress:(必填)有效时间;正常设置 30m 30分钟
* totalAmount:(必填)价格
* productCode:(必填)支付方式 QUICK_MSECURITY_PAY 即时到账
* notifyUrl:(必填)回调地址
*/
// 你又三种方法,可以造出对象
// 直接new一个新的,然后利用set掺入数据
Alipay alipay = new Alipay()
/**
* 默认了时间和支付方式
* @param body
* @param subject
* @param outTradeNo
* @param totalAmount
* @param notifyUrl
*/
Alipay alipay =new Alipay(String body, String subject,String outTradeNo,String totalAmount,String notifyUrl)
/**
* 默认了支付方式
* @param body
* @param subject
* @param outTradeNo
* @param timeoutExpress
* @param totalAmount
* @param notifyUrl
*/
Alipay alipay =new Alipay(String body, String subject,String outTradeNo,String timeoutExpress,String totalAmount,String notifyUrl)
/**
* 全部自定义
* @param body
* @param subject
* @param outTradeNo
* @param timeoutExpress
* @param totalAmount
* @param productCode
* @param notifyUrl
*/
Alipay alipay =new Alipay(String body, String subject,String outTradeNo,String timeoutExpress,String totalAmount,String productCode,String notifyUrl)
```
- 接下去,实例化支付宝支付接口
```
AlipayService alipayService = new AlipayServiceImpl();
```
- 接着,你只要直接调用下面的方法就可以了
```
alipayService.aliAppPay(AliPayConfig aliPayConfig,Alipay alipay)
```
- 返回值中 msg为200,说明成功 判断是订单号生成成功还是失败
## 单笔转账到个人支付宝账号
- 首先我们需要 new 一个 AliPayConfig 对象
- 接下来,new 一个转账订单详情
```
/**
* outBizNo:(必填)商品描述
* payeeAccount:(必填)商品名称
* amount:(必填)商户订单号 可以使用 KitUtil.getOrderCode()
* payeeRealName:(必填)有效时间;正常设置 30m 30分钟
* payerShowName:(必填)价格
* remark:(必填)支付方式 QUICK_MSECURITY_PAY 即时到账
* payeeType:(必填)回调地址
*/
// 你又三种方法,可以造出对象
// 直接new一个新的,然后利用set掺入数据
AlipayToIndividual alipayToIndividual = new AlipayToIndividual()
/**
* 默认了 支付方式
*/
AlipayToIndividual alipayToIndividual =new AlipayToIndividual(String outBizNo, String payeeAccount,String amount,String payeeRealName,String payerShowName,String remark)
/**
* 默认了支付方式
* @param body
* @param subject
* @param outTradeNo
* @param timeoutExpress
* @param totalAmount
* @param notifyUrl
*/
AlipayToIndividual alipayToIndividual =new AlipayToIndividual(String outBizNo, String payeeAccount,String amount,String payeeRealName,String payerShowName,String remark,String payeeType)
```
- 返回值是 boolean 那么 true 表示成功,false:表示失败
- 回调函数编写示例
```java
public Object alipayReturn(HttpServletRequest request, HttpServletResponse response){
//获取支付宝POST过来反馈信息
Map<String,String> params = new HashMap<String,String>();
Map requestParams = request.getParameterMap();
for (Iterator iter = requestParams.keySet().iterator(); iter.hasNext();) {
String name = (String) iter.next();
String[] values = (String[]) requestParams.get(name);
String valueStr = "";
for (int i = 0; i < values.length; i++) {
valueStr = (i == values.length - 1) ? valueStr + values[i]
: valueStr + values[i] + ",";
}
//乱码解决,这段代码在出现乱码时使用。
//valueStr = new String(valueStr.getBytes("ISO-8859-1"), "utf-8");
params.put(name, valueStr);
}
//切记alipaypublickey是支付宝的公钥,请去open.alipay.com对应应用下查看。
//boolean AlipaySignature.rsaCheckV1(Map<String, String> params, String publicKey, String charset, String sign_type)
boolean flag = false;
try {
flag = AlipaySignature.rsaCheckV1(params, aliPayConfig.getPublicKey(), aliPayConfig.getCharset(),"RSA2");
} catch (AlipayApiException e) {
e.printStackTrace();
}
// 通知支付宝,会调成功
PrintWriter writer = response.getWriter();
if(flag){
String notifyStr = XMLUtil.setXML("SUCCESS", "");
writer.write(notifyStr);
writer.flush();
return notifyStr;
}else{
String notifyStr = XMLUtil.setXML("LFAI", "");
writer.write(notifyStr);
writer.flush();
return notifyStr;
}
}
```
## 回调说明
具体回调参数见,支付宝开发文档
## 反馈交流QQ群:696279396
## 赞助
![](https://box.kancloud.cn/bf6f9c0e4f5a786c20d02c56b56a0eaf_600x500.png)