[TOC]
## **首先配置config.xml**
![](https://box.kancloud.cn/23ff65bbd9b30551532d9694ef4488b2_781x439.png)
~~~
<feature name="aliPay">
<param name="urlScheme" value="AliPayA*****" />
</feature>
~~~
**注:** ****表示应用的编号,用‘AliPay’和 widgetId (合作者身份PID)拼接
* * * * *
## **配置res/key.xml**
> 可以写在微信的key.xml文件中
在res文件下面创建一个key.xml文件(在这配置,后面代码中可以不配置,**可选**)
~~~
<?xml version="1.0" encoding="UTF-8"?>
<security>
<item name="aliPay_partner" value="2088********"/><!-商户号-->
<item name="aliPay_seller" value="2088******"/><!-商户号-->
<item name="aliPay_rsaPriKey" value="******"/><!--私钥-->
<item name="aliPay_rsaPubKey" value="********"/><!--公钥-->
<item name="aliPay_notifyURL" value="www.kancloud.cn"/><!--回调地址-->
</security>
~~~
## **关于私钥公钥**
**登录https://b.alipay.com**
![](https://box.kancloud.cn/25ca53cf1735c73a8fdb490c3d49bef1_696x481.png)
**输入支付宝密码进入即可查看设置RSA秘钥**
![](https://box.kancloud.cn/f2cf8eed309067f0f017b3c8e244b200_1020x515.png)
# **生成公钥私钥的方法**(最坑的地方)
![](https://box.kancloud.cn/f6be0054a0cc56a376d8ec7d8aaba72e_1392x770.png)
本文介绍第一种方法
下载相应的生存工具
解压之后
![](https://box.kancloud.cn/0f5e0fce991cfd5a1e53891b103f8da1_720x292.png)
**注:此处不用--支付宝RAS密钥生成器SHAwithRSA1024_V1.0.bat**
进入--文件夹RSA
![](https://box.kancloud.cn/35a255aebfa07223d09904204d847a72_598x225.png)
进入--文件夹openssl
![](https://box.kancloud.cn/967217fdef6312e9214fd97fde23aa53_644x280.png)
进入后按照顺序点击(我的文件是已经生成过得和第一次进入的文件不一样)
![](https://box.kancloud.cn/15a81f0188f4748a8c2ae3d07ad320a3_808x470.png)
生成红框中的文件
![](https://box.kancloud.cn/1924a7ea0f34d385068b26e62bb9d4f2_400x141.png)
上传此时生成的公钥---私钥在写代码的时候用
![](https://box.kancloud.cn/af800e8088ca065cb0562a17ef754d18_427x260.png)
**注:**私钥中将顶部和底部注释去掉 其余代码全部都要 不可丢到==号
![](https://box.kancloud.cn/8a17013ff961e2bc47ee26f189323a18_857x436.png)
## 配置支付宝支付方法代码
第二种方法
> 当aliPay.config返回值成功之后再进行第二步
此处的aliPay.config配置 partner 和 seller 都是商户ID
第一步
~~~
var aliPay = api.require('aliPay');
aliPay.config({
partner: '12345678901234',
seller: '123456789024354',
rsaPriKey: 'testKEY',
rsaPubKey: 'testKEY',
notifyURL: 'http://www.apicloud.com'
}, function(ret, err) {
api.alert({
title: '支付结果',
msg: ret.msg,
buttons: ['确定']
});
});
~~~
第二步
~~~
var aliPay = api.require('aliPay');
var notifyURL = 'http://www.apicloud.com';
aliPay.pay({
subject: '订单名',
body: '订单描述',
amount: '0.01',
tradeNO: '4563548735674'
}, function(ret, err) {
api.alert({
title: '支付结果',
msg: ret.code,
buttons: ['确定']
});
});
~~~
具体的返回值参考官方文档