###1.1 获取token###
请求URL:
.../v5/manage/pos/gettoken请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| devtoken | String | 是 | token值 | 
返回示例:
{ "retcode": "0", "retmsg": "成功", "devtoken" : "ff8080815a7d38ff015a7d3abb970003" }
###1.2 pos签到### 请求URL:
.../v5/manage/pos/login请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| termtype | String | 是 | 终端类型 | 
| termdate | String | 是 | 终端日期 | 
| termtime | String | 是 | 终端时间 | 
| deviceno | String | 是 | 终端编号 | 
| devseqno | String | 是 | 终端流水号 | 
| termno | String | 是 | PSAM卡号(后面统一用samno) | 
| paraverno | String | 是 | 参数版本号 | 
| feeverno | String | 是 | 费率版本号 | 
| payverno | String | 是 | 支付组版本号(多账户) | 
| cardverno | String | 是 | 黑名单版本号 | 
| devsoftverno | String | 否 | pos程序版本 | 
| devmac | String | 是 | PSAM对token计算得到的MAC | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| systime | String | 是 | 系统时间,yyyyMMddhhmmss | 
| devphyid | String | 是 | 终端物理ID | 
| deviceid | int | 是 | 终端ID | 
| paraverno | int | 是 | 设备参数版本号 | 
| feeverno | int | 是 | 设备费率版本号 | 
| payverno | int | 是 | 支付组版本号(多账户) | 
| cardverno | String | 是 | 黑名单版本号 | 
| mf1key | String | 是 | - | 
| paragroupid | int | 是 | 设备参数组ID | 
| feecfgid | int | 是 | 设备费率组ID | 
| paygroupid | int | 是 | 设备支付组ID(多账户) | 
| offlineflag | boolean | 是 | 是否允许脱机消费(多账户) | 
| keyindex | int | 是 | - | 
| onlinetermseqno | long | 是 | 联机终端流水号 | 
| credittermseqno | int | 是 | 授信终端流水号 | 
| offlinetermseqno | long | 是 | 脱机(B模式)终端流水号 | 
返回示例:
{ "retcode": "0", "retmsg": "成功", "systime": "20170410111324", "devphyid": "20000001", "deviceid": 11, "paraverno": 3, "feeverno": 1, "payverno": 2, "cardverno": "170410000012", "mf1key": "ff8080815a7d38ff015a7d3abb970003", "paragroupid": 1, "paygroupid": 1, "feecfgid": 1, "keyindex": 1, "onlinetermseqno": 512, "credittermseqno": 42, "offlinetermseqno": 11 }
###1.3 pos机新刷卡消费接口### 请求URL:
.../consume/pos/newcardpay请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| termseqno | String | 是 | 终端流水号 | 
| cardno | String | 是 | 卡号 | 
| amount | String | 是 | 金额,分 | 
| managefee | String | 是 | 搭伙费 | 
| managefeetype | String | 是 | 搭伙费类型 | 
| credittotal | String | 是 | 累计授信额度 | 
| creditpaycnt | String | 是 | 授信次数 | 
| creditavailable | String | 是 | 剩余授信额度 | 
| creditseqno | String | 是 | 授信期号 | 
| creditflag | Boolean | 是 | 申请授信标志 | 
| shopid | String | 否 | 商户id | 
| sourcetype | String | 是 | 交易渠道,如:‘pos’ | 
| cardmac | String | 是 | 卡mac (新增) | 
| posmac | String | 是 | psam卡mac (新增) | 
| termdate | String | 是 | 终端交易日期 (新增) | 
| termtime | String | 是 | 终端交易时间 (新增) | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| needpwdconfirm | Boolean | 是 | 是否需要密码 | 
| accdate | String | 是 | 记账日期 | 
| refno | String | 是 | 交易参考号 | 
| balance | long | 是 | 账户余额 | 
| creditretcode | String | 是 | 授信处理标志 | 
| creditline | Long | 是 | 授信额度 | 
| creditseqno | String | 是 | 授信期号 | 
| nexttermseqno | String | 是 | 下笔终端流水号 | 
| amount | int | 是 | 交易金额 | 
| managefee | int | 是 | 搭伙费 | 
| custname | int | 是 | 姓名 | 
| stuempno | boolean | 是 | 学工号) | 
| cardverno | int | 是 | 卡版本号 | 
| custexpiredate | long | 是 | 客户有效期 | 
| offlineForbidFlag | int | 是 | 禁止脱机消费标志 | 
###2.1 查询账户信息### 请求URL:
.../consume/pos/virtualaccquery请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| vtoken | String | 是 | 虚拟卡token | 
| tokenverno | String | 是 | 虚拟卡token版本 | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| balance | Long | 是 | 余额 | 
| frozenbal | Long | 是 | 冻结余额 | 
| feetype | int | 是 | 收费类别(搭伙费等计算) | 
| status | String | 是 | 卡状态 | 
| expiredate | String | 否 | 卡有效期 | 
| onceTimeLimit | Long | 否 | 单次消费限额 | 
| dayTotalLimit | Long | 否 | 日累计消费限额 | 
| custname | String | 是 | 姓名 | 
| stuempno | String | 是 | 学工号 | 
###2.2 POS消费### 请求URL:
.../consume/pos/virtualcardpay请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| vtoken | String | 是 | 虚拟卡token | 
| tokenverno | String | 是 | 虚拟卡token版本 | 
| termseqno | String | 是 | 终端流水号 | 
| amount | String | 是 | 交易金额,单位:分 | 
| shopid | String | 否 | 商户号 | 
| tradename | String | 否 | 交易名称(默认 POS消费) | 
| sourcetype | String | 是 | 交易渠道(pos/dmt/...) | 
| termdate | String | 是 | 终端日期 | 
| termtime | String | 是 | 终端时间 | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| needpwdconfirm | Boolean | 是 | 是否要输入密码 | 
| accdate | String | 是 | 记账日期 | 
| refno | String | 是 | 参考号 | 
| balance | String | 是 | 余额 | 
| custname | String | 是 | 姓名 | 
| stuempno | String | 是 | 学工号 | 
| amount | Integer | 是 | 消费金额 | 
| managefee | Integer | 是 | 学工号 | 
###2.3 POS密码消费确认### 请求URL:
.../consume/pos/virtualcardpayconfirm请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| termseqno | String | 是 | 终端流水号 | 
| accdate | String | 是 | 记账日期 | 
| refno | String | 是 | 参考号 | 
| cardpwd | String | 是 | 卡密码 (密文) | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| needpwdconfirm | Boolean | 是 | 是否要输入密码 | 
| accdate | String | 是 | 记账日期 | 
| refno | String | 是 | 参考号 | 
| balance | String | 是 | 余额 | 
| custname | String | 是 | 姓名 | 
| stuempno | String | 是 | 学工号 | 
| amount | Integer | 是 | 消费金额 | 
| managefee | Integer | 是 | 学工号 | 
###2.3 POS消费查询### 请求URL:
.../consume/pos/virtualcardpayquery请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| termseqno | String | 是 | 要查询流水的终端流水号 | 
| termdate | String | 是 | 要查询流水的终端日期 | 
| termtime | String | 是 | 要查询流水的终端时间 | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| accdate | String | 是 | 流水记账日期 | 
| refno | String | 是 | 流水参考号 | 
| dtlstatus | String | 是 | 流水状态 init-初始化,success-成功,fail-失败 | 
| balance | String | 是 | 余额 | 
| custname | String | 是 | 姓名 | 
| stuempno | String | 是 | 学工号 | 
| amount | Integer | 是 | 消费金额 | 
| managefee | Integer | 是 | 搭伙费、折扣 | 
###2.3 POS消费冲正### 请求URL:
.../consume/pos/virtualcardpayreverse请求方式/格式:
请求参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| devphyid | String | * | 设备物理ID,与termid必传一个 | 
| termid | String | * | 设备号(终端ID),与devphyid必须传一个 | 
| termseqno | String | 是 | 终端流水号 | 
| reversetermseqno | String | 是 | 要冲正的终端流水号 (日期仅为当天termdate或前一天) | 
| reversalflag | String | 是 | 冲正标志。CANCEL-自动;REVERSE-手动 | 
| termdate | String | 是 | 终端日期 | 
| termtime | String | 是 | 终端时间 | 
| vtoken | String | 是 | 虚拟卡token(手工冲正必须) | 
| tokenverno | String | 是 | 虚拟卡token版本 (手工冲正必须) | 
| sourcetype | String | 是 | 交易渠道 | 
| app_id | String | 是 | APPID | 
| term_id | String | 是 | 终端标识 | 
| timestamp | String | 是 | yyyyMMddhhmmss | 
| sign_method | String | 是 | HMAC | 
| sign | String | 是 | 参数签名 | 
返回参数:
| 参数名 | 类型 | 必须 | 说明 | 
|---|---|---|---|
| retcode | String | 是 | 0-成功,其他失败 | 
| retmsg | String | 是 | 返回信息,失败时返回错误信息 | 
| termseqno | String | 是 | 当前流水号 |