###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 | 是 | 当前流水号 |