为广大中小型企业提供全国三网手机话费充值接口,支持单号码充值批量充值。丰富企业、商家的产品和服务。
支持中国移动、中国联通、中国电信三大运营商,多种充值方式,平均1分钟之内到账。 5分钟到帐,如遇高峰期,会有适当延时。
1元 | 2元 | 5元 | 10元 | 20元 | 30元 | |
50元 | 100元 | 200元 | 300元 | 500元 | ||
1元 | 2元 | 5元 | 10元 | 20元 | 30元 | |
50元 | 100元 | 200元 | 300元 | 500元 | ||
1元 | 2元 | 5元 | 10元 | 20元 | 30元 | |
50元 | 100元 | 200元 | 300元 | 500元 |
参数列表描述
参数名 | 类型 | 描述 | 备注 |
appId | String | 商户唯一ID | 由平台提供 |
param | String | 业务参数 | Base64.encodeBase64String(Des (source串,appKey)) |
DES加密后成为二进制Bytes数组,然后通过Base64. encodeBase64String将Bytes数组转为可视的字符串, 该字符串即为param的值。
业务请求参数见第二部分:接口描述
完整参数请求Request JSON示例如下:
{
"appId": "5b11886057",
"param": "g9Gfx97qeC2FGCfapbCaSi0m0+QBWzzPvlifHi/2siSkVH8MtDCFL+rlrndZplrurYqQ6pHfxyRmEES2r0hJmfMO2N+
QJGD2FMhPH89OylxRyHqdN9CNj4QyZEgOA/
iLCFLMkXgObj4qXSf3eZt26UZdpvIEm8Jbs60ONsZfOnfm+
ELJnuuxCfij49gpA0i3VNIRiqQyrGrSBAZE/bNx4t2MjW4DFoKfYhrbh6uFM6s="
}
参数名 | 类型 | 描述 | 备注 |
status | Int | 接口返回状态 | (每个接口返回码详见第二部分具体参数描述) |
data | json | 返回业务数据实体 | (每个接口返回业务参数详见第二部分具体参数描述) |
msg | String | 接口状态描述 | |
throwable | String | 扩展字段,暂时不用 |
沙箱接口测试地址: http://platform.17bst.com/sandbox
① 请求地址:http://platform.17bst.com/charge-api/product/getProductList
② 请求方式:POST
③ 业务请求source参数列表:
参数名 | 参数类型 | 描述 | 备注 |
agtPhone | String | 代理号码 | 由平台提供 |
业务请求参数示例(source串):
{
"agtPhone": "15889640829"
}
④返回业务参数说明:
参数名 | 参数类型 | 描述 | 备注 |
productCode | Number | 产品编号 | |
businessCode | Number | 业务类型编号 | |
arriveType | Number | 到账类型 | 话费 0 慢充,1 正常; Q币 2-声讯,3-直通车 |
provinceId | Number | 省份编号 | |
cityId | Number | 城市编号 | |
province | String | 省份名称 | |
city | String | 城市名称 | |
tradeFace | Number | 面额 | |
price | Number | 原价 | |
businessName | String | 业务类型名称 | |
discount | Number | 折扣系数 |
status状态码、msg错误 对应表:
status | msg |
1000 | 查询成功 |
1013 | 代理号码不存在 |
1003 | 其他错误 |
完整冲正接口返回Response JSON示例:
{
"data": [
{
"productCode": 8,
"businessCode": 1,
"arriveType": 1,
"provinceId": 200,
"cityId": -1,
"province": "广东",
"city": null,
"tradeFace": 500,
"price": 500,
"discount": 96.89
},
{
"productCode": 12,
"businessCode": 1,
"arriveType": 1,
"provinceId": 200,
"cityId": -1,
"province": "广东",
"city": null,
"tradeFace": 100,
"price": 100,
"discount": 97.33
},
{
"productCode": 18,
"businessCode": 3,
"arriveType": 1,
"provinceId": 200,
"cityId": -1,
"province": "广东",
"city": null,
"tradeFace": 300,
"price": 500,
"discount": 89.56
}
],
"status": 1000,
"throwable": null,
"msg": "产品查询成功"
}
① 请求地址:http://platform.17bst.com/charge-api/trade/charge
② 请求方式:POST
③ 业务参数source包描述:
参数名 | 参数类型 | 描述 | 备注 |
reqStreamId | String | 请求方充值流水号 | 不可重复 |
agtPhone | String | 代理号码 | |
productCode | Int | 产品编号 | |
chargeAddr | String | 充值号码 | 支持手机号码、qq号码、支付宝号码 |
chargeType | String | 充值类型 | 话费:0-慢充 1-正常 Q币:2-声讯 3-直通车.话费不填默认为1,Q币为必传字段 |
chargeMoney | Int | 充值金额(元) | 话费比如50元就填50; Q币比如2个就填2; 支付宝比如 50元就填50; |
tradePwd | String | 交易密码 | 32位md5小写 |
notifyUrl | String | 回调地址 | http://xxxxxx.com/trade/notify |
请求source明文串:
{
"reqStreamId": "2017020309223010002",
"agtPhone": "15889640829",
"productCode": 4,
"chargeAddr": "15889640821",
"chargeMoney": 30,
"tradePwd": "bae5e3208a3c700e3db642b6631e95b9",
"notifyUrl": "http: //xxx.com/notify"
}
④ 返回业务参数说明
参数名 | 参数类型 | 描述 | 备注 |
reqStreamId | String | 请求方充值流水号 | |
orderNo | String | 平台订单号 | |
balance | Number | 充值后代理商保证金余额 | 单位:元 |
applyTime | String | 交易时间 | |
chargeNumBalance | Number | 充值后客户号码余额 | 单位:元 |
状态码对应表:
status状态码、msg错误 对应表
status | msg |
1000 | 充值成功(成功) |
1001 | 充值失败(失败) |
1002 | 未设置供应商(失败) |
1003 | 服务器内部错误(处理中) |
1004 | 交易密码错误(失败) |
1004 | 交易密码错误(失败) |
1005 | 代理商账号已被冻结(失败) |
1006 | 未开通该业务类型(失败) |
1007 | 无效号码或空号(失败) |
1008 | 未上架该产品(失败) |
1009 | 非法号段(失败) |
1010 | 余额不足(失败) |
1011 | 订单正在处理中(处理中) |
1011 | 订单正在处理中(处理中) |
1012 | 其他存疑错误(处理中) |
1013 | 代理号不存在(失败) |
1014 | 充值超时(处理中) |
1016 | 相同流水号不允许重复提交(失败) |
1020 | ip不合法 |
完整返回参数示例:
{
"data": {
"reqStreamId": "201605271125260035",
"orderNo": "0000000000294930",
"balance": 857.27,
"applyTime": "2016-06-17 15:16:43",
"chargeNumBalance": 667.02
},
"status": 1000,
"throwable": null,
"msg": "充值成功"
}
① 请求地址:http://platform.17bst.com/charge-api/trade/queryAgtBalance
② 请求方式:POST
③ 业务请求source参数列表:
参数名 | 参数类型 | 描述 | 备注 |
agtPhone | String | 代理号码 | 由平台提供 |
tradePwd | String | 交易密码 | 由平台提供 |
业务请求参数示例(source串):
{
"agtPhone": "13412341234",
"tradePwd": "1bbd886460827015e5d605ed44252251"
}
④ 返回业务参数说明
参数名 | 参数类型 | 描述 | 备注 |
credit | Number | 保证金余额 | 单位元 |
freeze | Number | 冻结金额 | 单位元 |
profit | Number | 佣金余额 | 单位元 |
status状态码、msg错误 对应表
status | msg |
1000 | 查询成功 |
1013 | 代理号码不存在 |
1004 | 交易密码错误 |
1003 | 服务器内部错误 |
完整冲正接口返回Response JSON示例:
{
"data": {
"credit": 917.279,
"freeze": 210,
"profit": 10.2
},
"status": 1000,
"throwable": null,
"msg": "查询成功"
}
当充值接口返回处理中时,此笔订单的最终结果会由平台主动发送回调通知到请求方
① 请求地址:(范例如下)
http://www.baishitong.com/notify?agtPhone=15889640829&reqStreamId=201605271125260040&state=0&sign=7cd65de92e2bb381104d1053d5efd7bc
② 请求方式:GET
③ 业务请求source参数列表:
参数名 | 参数类型 | 描述 | 备注 |
agtPhone | String | 代理号码 | 由平台提供 |
reqStreamId | String | 接入方充值流水号 | |
state | Int | 订单状态 | 0成功; 1失败 |
sign | String | 签名 | 32位md5小写(agtPhone+reqStreamId+state+appKey) |
④ 返回参数说明
接入方接收成功返回 0
接入方接收失败返回 1
① 请求地址:http://platform.17bst.com/charge-api/trade/getOrderInfo
② 请求方式:POST
③ 业务请求source参数列表:
参数名 | 参数类型 | 描述 | 备注 |
reqStreamId | String | 请求方原充值流水号 | |
agtPhone | String | 代理号码 | 由平台提供 |
业务请求参数示例(source串):
{
"reqStreamId": "201606161725120324",
"agtPhone": "15889640829"
}
④ 返回业务参数说明
参数名 | 参数类型 | 描述 | 备注 |
reqStreamId | String | 请求方请求流水号 | |
orderNo | String | 平台订单号 |
status状态码、msg错误 对应表
status | msg | 客户端相应处理措施 |
1000 | 充值成功 | 成功处理 |
1001 | 充值失败 | 失败处理 |
1015 | 订单信息不存在 | 失败处理 |
1018 | 已冲正 | 失败处理 |
1011 | 充值中 | 当做充值中,5分钟后再次查询或人工核实 |
1013 | 代理号码不存在 | 当做充值中,5分钟后再次查询或人工核实 |
1003 | 其他错误 | 当做充值中,5分钟后再次查询或人工核实 |
1017 | 查询频率过快 | 当做充值中,5分钟后再次查询或人工核实 |
1019 | 查询端口关闭 | 当做充值中,5分钟后再次查询或人工核实 |
PS:同一笔订单号五分钟内,只有第一次查询有效,5分钟内的其他查询均返回1017查询频率过快
完整查询接口返回Response JSON示例:
{
"data": {
"reqStreamId": "201606161725120324",
"orderNo": "0000000000277718"
},
"status": 1000,
"throwable": null,
"msg": "充值成功"
}
系统对帐解决xx平台与三方的帐务问题。
系统对帐的原则:渠道对账以xx对帐文件为准。
系统对帐的方式:
1、每天xx平台定时生成各接入渠道的对账明细;
2、渠道平台定时从FTP服务器中下载前日的对帐清单文件;
3、渠道平台依据对帐清单文件,对自己的系统做平帐处理;
4、渠道平台如果对对帐有疑问,可以通过双方约定的管理流程进行后续的处理。
对帐文件格式:
对帐文件名:渠道编码_年月日 + .RESULT
例如:GLJ_20080715.RESULT
文件内容:(只包含从渠道账户扣款成功交易)
例:
三方流水号|被充值号码 |金额| 充值时间 |运营商类型|我方平台交易流水
DES加密解密算法