充值和读卡服务版本
diff --git "a/source/_posts/\344\270\200\345\215\241\351\200\232V4\347\254\254\344\270\211\346\226\271\350\257\273\345\215\241\346\234\215\345\212\241\347\250\213\345\272\217\346\216\245\345\217\243\346\226\207\346\241\243.docx" "b/source/_posts/\344\270\200\345\215\241\351\200\232V4\347\254\254\344\270\211\346\226\271\350\257\273\345\215\241\346\234\215\345\212\241\347\250\213\345\272\217\346\216\245\345\217\243\346\226\207\346\241\243.docx"
new file mode 100644
index 0000000..4402761
--- /dev/null
+++ "b/source/_posts/\344\270\200\345\215\241\351\200\232V4\347\254\254\344\270\211\346\226\271\350\257\273\345\215\241\346\234\215\345\212\241\347\250\213\345\272\217\346\216\245\345\217\243\346\226\207\346\241\243.docx"
Binary files differ
diff --git "a/source/_posts/\344\270\200\345\215\241\351\200\232V5\347\254\254\344\270\211\346\226\271\350\257\273\345\215\241\346\234\215\345\212\241\347\250\213\345\272\217\346\216\245\345\217\243\346\226\207\346\241\243Lite.docx" "b/source/_posts/\344\270\200\345\215\241\351\200\232V5\347\254\254\344\270\211\346\226\271\350\257\273\345\215\241\346\234\215\345\212\241\347\250\213\345\272\217\346\216\245\345\217\243\346\226\207\346\241\243Lite.docx"
new file mode 100644
index 0000000..e17cde5
--- /dev/null
+++ "b/source/_posts/\344\270\200\345\215\241\351\200\232V5\347\254\254\344\270\211\346\226\271\350\257\273\345\215\241\346\234\215\345\212\241\347\250\213\345\272\217\346\216\245\345\217\243\346\226\207\346\241\243Lite.docx"
Binary files differ
diff --git "a/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\345\205\205\345\200\274\346\216\245\345\217\243\346\226\207\346\241\243.md" "b/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\345\205\205\345\200\274\346\216\245\345\217\243\346\226\207\346\241\243.md"
index df0d82b..5e5130b 100644
--- "a/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\345\205\205\345\200\274\346\216\245\345\217\243\346\226\207\346\241\243.md"
+++ "b/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\345\205\205\345\200\274\346\216\245\345\217\243\346\226\207\346\241\243.md"
@@ -112,24 +112,36 @@
|参数名 | 类型 | 必选 | 说明 |
|-----|------|-----|------|
-|partner_id|String|是 |本系统分配给各个接入应用的合作伙伴id号|
-|stuempno|String|是| 发起消费对象的学号|
-|tradeno|String(32)|是|第三方系统唯一流水号|
-|tradename|String(60)|是|交易名称|
-|amount|Integer|是|充值金额(分)|
-|timestamp|String|是|时间戳格式为yyyyMMddhh24miss|
-|sign|String|是| 签名|
-|sign_method|String|是|参数的加密方法选择,可选值是:HMAC 加密方式为HAMC-SHA1|
+|partner_id|String|是|本系统分配给各个接入应用的合作伙伴id号|
+|student_id|String|是|用户唯一号|
+|student_idtype| String |是|指定用户唯一号类型(stuempno,custid,cardno,idno等)|
+|extdata|String|否|备用,扩展字段|
+|amount|String|是|整数,单位分|
+|transdate|String|是|交易日期,yyyyMMdd|
+|transtime|String|是|交易时间,HHmmss|
+|fundtype|String|是|资金类型,指定入账科目(1-现金;2-支票;3-经费本)|
+|billno|String|否|票据号,现金类型时可空,其他必传|
+|tradeno|String|是|外部流水号。唯一,不能重复|
+|operid|String|是|指定充值操作员|
+|termid|String|否|区分发起终端|
+|sourcetype|String|否|发起来源|
+|timestamp|String|是|时间戳 yyyyMMddHHmmss|
+|sign_method|String|是|`HMAC`|
+|sign|String|是|签名|
**请求内容示例:**
```html
-URI:https://ip:port/epayapi/services/thirdparty/common/pay
+URI:https://ip:port/epayapi/services/thirdparty/common/recharge
partner_id:10000
-stuempno:09893092
+student_id:09893092
+student_idtype:stuempno
tradeno:20160607000001
-trandename:微信充值
-amount:2000
+transdate:20180808
+transtime:100404
+amount:2000
+operid:90
+fundtype:1
timestamp:20150119130901
sign:5195f9b9116e4adf67eeebc9935d33dc683f677d
sign_method:HMAC
diff --git "a/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\346\266\210\350\264\271\346\216\245\345\217\243\346\226\207\346\241\243.md" "b/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\346\266\210\350\264\271\346\216\245\345\217\243\346\226\207\346\241\243.md"
index c5899c1..c3e15bb 100644
--- "a/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\346\266\210\350\264\271\346\216\245\345\217\243\346\226\207\346\241\243.md"
+++ "b/source/_posts/\344\270\200\345\215\241\351\200\232v5\347\254\254\344\270\211\346\226\271\346\266\210\350\264\271\346\216\245\345\217\243\346\226\207\346\241\243.md"
@@ -63,8 +63,10 @@
"retmsg":"query success",
"stuempno":"09893092",
"username":"王二小",
+ "onceTimeLimit":"5000",
+ "dayTotalLimit":"10000",
+ "expiredate":"20191010",
"balance":4850,
- "cardno":103920299,
"status":"normal",
"timestamp":"20160606150902",
"sign":"hjAtBGygGjFyOKEZmWdxi1tk51/xqLYTr5tm2+zQVfD1RHRzGVC9GNm4ZaXnUsHnu5o3kAZ4U32m0YNiSFpncs0pl1AnnCf1n2hhn39ruABsvD//GzkEINHjyHsnxBr44G2UhyNxplUj+s7s0a7ggjbiMk+BYC3u7VkU9/l+kZOTkEyqs+wZKumfByMZGvKVkY2c2Nr67RaSWd7bsfOJ6HYw2spvu3ptAo2RTrfCxZ0Kn5DcSDm4cagzPMZSHxB8isqqNGrdUaAU0wzzC7704iA5zze//SvCqpCJfYt0OrHOiJEN5kw1d4KESrKGMG6bezlXzAp0LbNlhl+HwZJcag==",
@@ -95,7 +97,7 @@
|stuempno|String|学号|
|username|String|姓名|
|balance|Integer|余额(分)|
-|cardno|Integer|卡号|
+|expiredate|String|卡有效期|
|status|String|状态(正常)|
@@ -115,12 +117,18 @@
|参数名 | 类型 | 必选 | 说明 |
|-----|------|-----|------|
|partner_id|String|是 |本系统分配给各个接入应用的合作伙伴id号|
-|cardphyid|String|二选一|查询对象的卡物理id|
+|cardphyid|String|二选一|查询对象的卡物理id,需要单独校验实体卡|
|stuempno|String|二选一| 发起消费对象的学号|
|tradeno|String(32)|是|第三方系统唯一流水号|
|tradename|String(60)|是|交易名称|
|amount|Integer|是|消费金额(分)|
|calcmanagefee|String|否|是否计算搭伙费T计算,F或不传不计算|
+|encryptpwd|Sting|否|卡片密码,消费超限额时需要密码校验,加密算法 AES/ECB/PKCS5Padding|
+|termid|Integer|否|终端号,实体卡消费时需要|
+|cardmac|Sting|否|卡片mac校验值,实体卡消费时需要|
+|posmac|Sting|否|终端mac校验值,实体卡消费时需要|
+|termdate|Sting|否|终端交易日期yyyyMMdd,实体卡消费时需要|
+|termtime|Sting|否|终端交易时间hh24miss,实体卡消费时需要|
|timestamp|String|是|时间戳格式为yyyyMMddhh24miss|
|sign|String|是| 签名|
|sign_method|String|是|参数的加密方法选择,可选值是:HMAC 加密方式为HAMC-SHA1|
@@ -147,10 +155,11 @@
```json
{
"retcode":"0",
- "retmsg":"success"
+ "retmsg":"success",
"tradeno":"20160607000001",
"balance":4850,
"refno":"20160605190200000001",
+ "needpwdconfirm":false,
"timestamp":"20160606150902",
"sign":"hjAtBGygGjFyOKEZmWdxi1tk51/xqLYTr5tm2+zQVfD1RHRzGVC9GNm4ZaXnUsHnu5o3kAZ4U32m0YNiSFpncs0pl1AnnCf1n2hhn39ruABsvD//GzkEINHjyHsnxBr44G2UhyNxplUj+s7s0a7ggjbiMk+BYC3u7VkU9/l+kZOTkEyqs+wZKumfByMZGvKVkY2c2Nr67RaSWd7bsfOJ6HYw2spvu3ptAo2RTrfCxZ0Kn5DcSDm4cagzPMZSHxB8isqqNGrdUaAU0wzzC7704iA5zze//SvCqpCJfYt0OrHOiJEN5kw1d4KESrKGMG6bezlXzAp0LbNlhl+HwZJcag==",
"sign_method": "RSA"
@@ -164,7 +173,19 @@
{
"retcode":"1",
"retmsg":"账户余额不足",
- "tradeno":"20160607000001",
+ "timestamp":"20160606150902",
+ "needpwdconfirm":false,
+ "sign": "hjAtBGygGjFyOKEZmWdxi1tk51/xqLYTr5tm2+zQVfD1RHRzGVC9GNm4ZaXnUsHnu5o3kAZ4U32m0YNiSFpncs0pl1AnnCf1n2hhn39ruABsvD//GzkEINHjyHsnxBr44G2UhyNxplUj+s7s0a7ggjbiMk+BYC3u7VkU9/l+kZOTkEyqs+wZKumfByMZGvKVkY2c2Nr67RaSWd7bsfOJ6HYw2spvu3ptAo2RTrfCxZ0Kn5DcSDm4cagzPMZSHxB8isqqNGrdUaAU0wzzC7704iA5zze//SvCqpCJfYt0OrHOiJEN5kw1d4KESrKGMG6bezlXzAp0LbNlhl+HwZJcag==",
+ "sign_method":"RSA"
+}
+
+```
+
+```json
+{
+ "retcode":"1",
+ "retmsg":"消费超限,请输入密码",
+ "needpwdconfirm":true,
"timestamp":"20160606150902",
"sign": "hjAtBGygGjFyOKEZmWdxi1tk51/xqLYTr5tm2+zQVfD1RHRzGVC9GNm4ZaXnUsHnu5o3kAZ4U32m0YNiSFpncs0pl1AnnCf1n2hhn39ruABsvD//GzkEINHjyHsnxBr44G2UhyNxplUj+s7s0a7ggjbiMk+BYC3u7VkU9/l+kZOTkEyqs+wZKumfByMZGvKVkY2c2Nr67RaSWd7bsfOJ6HYw2spvu3ptAo2RTrfCxZ0Kn5DcSDm4cagzPMZSHxB8isqqNGrdUaAU0wzzC7704iA5zze//SvCqpCJfYt0OrHOiJEN5kw1d4KESrKGMG6bezlXzAp0LbNlhl+HwZJcag==",
"sign_method":"RSA"
@@ -181,6 +202,9 @@
|tradeno|String|第三方流水号|
|refno|String|本系统生成流水号|
|balance|Integer|余额(分)|
+|needpwdconfirm|Boolean|是否需要输入密码|
+
+密码加密算法为 AES/ECB/PKCS5Padding 秘钥线下约定