# 缴费大厅-对接标准
# 1、对接流程
对接方(即学校缴费系统)需要提供待缴明细查询地址及缴费结果通知接收地址,具体流程如下:
# 2、接口
# 2.1 待缴明细查询
2.1.1 接口描述
腾讯微校通过该接口获取用户的待缴明细信息
2.1.2 接口地址
由对接方提供
2.1.3 请求方法
POST(application/json)
2.1.4 请求参数
{
"school_code" : "school_code",
"card_number": "5110006235",
"app_key": "appkey",
"timestamp": "timestamp",
"nonce": "nonce",
"signature": "signature"
}
参数 | 必填 | 类型 | 示例 | 说明 |
---|---|---|---|---|
school_code | 是 | String(16) | 1013957946 | 学校code |
card_number | 是 | String(32) | 5110006235 | 学号 |
app_key | 是 | String(16) | CA1D905AC89ACDCA | 服务商或学校的APP_KEY |
timestamp | 是 | Int | 1514276659 | 当前unix时间戳 |
nonce | 是 | String(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 随机字符串 |
signature | 是 | String(32) | A790E009D30C09BD8605810EAF9C44B0 | 按照签名生成的算法 |
2.1.5 响应参数
{
"code": 0,
"message": "ok",
"data": {
"card_number": "5110006235",
"name": "陈小东",
"arrears": [{
"project_name": "住宿费",
"project_code": "X123",
"project_description": "统一四人间",
"project_mch_id": "1900008371",
"amount": "80000",
"arrear_amount": "80000",
"year": "2018",
"semester": "1",
"is_batch": 0,
"min_amount": 10000,
"is_need": 0,
"status": 0,
"end_at": "2019-01-01 00:00:00",
"orders": [{
"out_trade_no": "WEIXIAOA20181213284",
"out_refund_no": "WEIXIAOREFUND2018121",
"amount": "100",
"status": 0,
"remark": "住宿费",
"refund_remark": "支付金额有误",
"operated_by": "陈老师",
"pay_at": "2019-04-01 00:00:00",
"refund_at": "2019-04-10 00:00:00"
}]
}]
}
}
参数 | 必填 | 类型 | 示例 | 说明 |
---|---|---|---|---|
code | 是 | Int | 0 | 状态码 |
message | 是 | String | OK | 状态描述 |
data | 是 | Json | [] | 业务数据 |
card_number | 是 | String(32) | 5110006235 | 学号 |
name | 是 | String(32) | 学生A | 姓名 |
arrears | 是 | Json | [] | 缴费项 |
project_name | 是 | String(255) | 缴费对接 | 缴费项目名称 |
project_code | 是 | String(255) | X123 | 缴费项目编号(需保证唯一) |
project_description | 否 | String(255) | 统一四人间 | 缴费项目描述 |
project_mch_id | 否 | String(255) | 1900008371 | 缴费项目收款商户号 |
amount | 是 | Int | 80000 | 缴费项目应缴金额(单位为分) |
arrear_amount | 是 | Int | 80000 | 缴费项目待缴金额(单位为分) |
year | 否 | Int | 2018 | 年份,默认为0,不分学年 |
semester | 否 | Int | 1 | 学期,默认为0,不分学期 |
is_batch | 否 | Int | 0 | 是否允许分次缴费,默认为0不允许分次缴费,1为允许分次缴费 |
min_amount | 否 | Int | 10000 | 最低缴费金额(单位为分), 当 is_batch = 1 时有效,单次缴费金额不能低于最低缴费金额 |
is_need | 否 | Int | 0 | 是否必缴,默认为0非必缴,1为必缴 |
status | 否 | Int | 0 | 缴费状态,默认为0未缴完,1为缴费完成,2 已过期, 3 已删除, 4缓交/助学贷款 |
end_at | 否 | Datetime | 2019-01-01 00:00:00 | 项目截止时间 |
orders | 否 | Json | [] | 支付记录 |
out_trade_no | 是 | String(255) | WEIXIAOA20181213284 | 内部交易订单号 |
out_refund_no | 否 | String(255) | WEIXIAOREFUND2018121 | 内部退款订单号 |
amount | 是 | Int | 100 | 支付金额(单位为分) |
status | 是 | Int | 0 | 交易状态,2为支付成功,4为已退款(本系统不支持部分退款) |
remark | 否 | String(255) | 住宿费 | 支付备注 |
refund_remark | 否 | String(255) | 支付金额有误 | 退款备注 |
operated_by | 否 | String(255) | 陈老师 | 退款操作人 |
pay_at | 是 | Datetime | 2019-04-01 00:00:00 | 支付时间 |
refund_at | 否 | Datetime | 2019-04-10 00:00:00 | 退款时间 |
# 说明
- project_mch_id 为收款商户号,仅在创建缴费项目(首次同步至微校)时有效,已创建的项目不允许更改收款商户,否则将导致同步失败。
# 2.2 缴费结果通知
2.1.1 接口描述
用户支付后,腾讯微校将缴费结果实时推送到该接口
2.1.2 接口地址
由对接方提供
2.1.3 请求方法
POST(application/json)
2.1.4 请求参数
{
"card_number": "5110006235",
"name": "陈小东",
"project_name": "住宿费",
"project_code": "x123",
"out_trade_no": "WEIXIAO1234567890",
"amount": "80000",
"pay_at": "2019-10-10 10:00:00",
"app_key": "appkey",
"timestamp": "timestamp",
"nonce": "nonce",
"signature": "signature"
}
参数 | 必填 | 类型 | 示例 | 说明 |
---|---|---|---|---|
card_number | 是 | String(32) | 5110006235 | 学号 |
name | 是 | String(32) | 陈小东 | 姓名 |
project_name | 是 | String(255) | 住宿费 | 缴费项目名称 |
project_code | 是 | String(255) | X123 | 缴费项目编号(需保证唯一) |
out_trade_no | 是 | String(255) | WEIXIAO1234567890 | 支付内部订单号 |
app_key | 是 | String(16) | CA1D905AC89ACDCA | 服务商或学校的APP_KEY |
amount | 是 | Int | 80000 | 缴费支付金额(单位为分) |
pay_at | 是 | datetime | 2019-10-10 10:00:00 | 支付时间 |
timestamp | 是 | Int | 1514276659 | 当前unix时间戳 |
nonce | 是 | String(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 随机字符串 |
signature | 是 | String(32) | A790E009D30C09BD8605810EAF9C44B0 | 按照签名生成的算法 |
2.1.5 响应参数
{
"code": 0,
"message": "ok",
}
参数 | 必填 | 类型 | 示例 | 说明 |
---|---|---|---|---|
code | 是 | Int | 0 | 状态码 |
message | 是 | String | OK | 状态描述 |
# 签名算法
签名算法统一使用微校签名算法 (opens new window) APP KEY 采用的是学校服务商或者学校的APP KEY