手机话费充值接口文档下载: 点击下载
本文档主要提供给互亿平台的用户对接接口的使用说明,开发者可以利用 ihuyi 提供的 HTTP 接口,调用 ihuyi 的手机话费充值服务。
本文档包含单号码话费充值、账户余额查询、充值状态推送、订单信息查询、充值状态批量查询等。
GET / POST
1、采用HTTPS协议提交请求
2、通过MD5动态签名方式加密
登录用户中心,进入【数字权益】模块,在产品总揽页面右上角。
通过POST、 GET 方式进行短信提交,数据编码采用utf-8格式,24小时全天发送。
http(s)://api.ihuyi.com/f/phone?action=recharge
GET / POST
x-www-form-urlencoded
参数名称 | 参数类型 | 参数值描述 | 参与验签 |
username | String | API ID | 是 |
mobile | String | 手机号码 | 是 |
package | Int | 套餐数额 | 是 |
orderid | String | 订单ID | 是 |
timestamp | String | 时间戳 格式如:yyyyMMddHHmmss 允许 10 分钟 统⼀以东 8 时间 |
是 |
sign | String | 签名(详见第8部分) | 否 |
http://api.ihuyi.com/f/phone?action=recharge&username=testname&mobile=13800000000&orderid=xxxxxxxxx&package=10×tamp=20161028120101&sign=e08ecdcedac8f9e07b1727e1005b8d32
返回值(JSON格式)
命名 | 类型 | 描述 |
code | Int | 代码(1 为提交成功,其他值请参考第7部分) |
message | String | 消息描述 |
taskid | string | 任务id,提交失败则没有 |
通过接口可以方便的查询你的账户数字权益余额。
api.ihuyi.com/f/basic?action=getbalance
GET / POST
x-www-form-urlencoded
参数名称 | 参数类型 | 参数值描述 | 参与验签 |
username | String | API ID | 是 |
timestamp | String | 时间戳 格式如:yyyyMMddHHmmss 允许 10 分钟 统⼀以东 8 时间 |
是 |
sign | String | 签名 | 否 |
返回值(JSON格式):
命名 | 类型 | 描述 |
code | Int | 状态码(请参考第7部分) |
message | String | 消息描述 |
balance | Float | 剩余余额 |
我们会以POST 方式推送到您配置的Url,Content-Type为multipart/form-data。
参数名称 | 参数类型 | 参数值描述 | 参与验签 |
taskid | String | 充值任务ID | 是 |
orderid | String | 客户订单ID | 否 |
mobile | String | 手机号码 | 是 |
state | Int | 状态 1:成功 2:失败 |
是 |
message | String | 消息 | 是 |
sign | String | 签名 | 否 |
cert | String | 凭证 | 否 |
money | Float | 扣费金额 | 否 |
注意:成功接收请输出字符"success" (不包含引号)结束推送,处理失败可输出任意字符,最多推送5次。
通过接口可以方便的查询你的账户充值订单状态,仅支持查询7天内的订单数据。
api.ihuyi.com/f/phone?action=getorderinfo
GET / POST
x-www-form-urlencoded
参数名称 | 参数类型 | 参数值描述 | 参与验签 |
orderid | String | 客户订单 ID | 是 |
username | String | API ID | 是 |
timestamp | String | 时间戳 格式如:yyyyMMddHHmmss 允许 10 分钟 统⼀以东 8 时间 |
是 |
sign | String | 签名(详见第8部分) | 否 |
返回值(JSON格式):
命名 | 类型 | 描述 |
code | Int | 状态码 |
orderid | String | 客户订单ID |
taskid | String | 任务id |
status | Int | 充值状态 0:已收单 1:充值中 2:充值成功 3:充值失败 -1:未知状态 |
mobile | String | 手机号码 |
package | Int | 套餐(元) |
submit_time | String | 提交时间 |
result_time | String | 最后处理时间 |
cert | String | 凭证 |
money | Float | 订单金额 |
通过接口可以方便的获取手机话费套餐档位。
api.ihuyi.com/f/phone?action=getpackages
GET / POST
x-www-form-urlencoded
参数名称 | 参数类型 | 参数值描述 | 参与验签 |
username | String | API ID | 是 |
timestamp | String | 时间戳 格式如:yyyyMMddHHmmss 允许 10 分钟 统⼀以东 8 时间 |
是 |
sign | String | 签名(详见第8部分) | 否 |
返回值(JSON格式):
命名 | 类型 | 描述 |
code | Int | 状态码(请参考第7部分) |
message | String | 消息描述 |
packages+ | Array | 套餐 |
type | String | 类型 cncm:中国移动 cncu:中国联通 cnct:中国电信 |
name | String | 话费包 |
number | Int | 数值(用于充值请求) |
state | Int | 状态 1:启用 0:未启用 |
price | Int | 单价 |
code | 描述 | 订单处理建议 |
0 | 未知错误 | 核单处理 |
1 | 提交成功 | 提交成功处理 |
1000 | 无此操作类型(action为空或不存在) | 提交失败处理 |
1001 | API ID为空 | 提交失败处理 |
1002 | API ID错误 | 提交失败处理 |
1003 | 手机号码为空 | 提交失败处理 |
1004 | 手机号码为空 | 提交失败处理 |
1005 | 套餐不能为空 | 提交失败处理 |
1006 | 时间戳不能为空 | 提交失败处理 |
1007 | 不存在的套餐 | 提交失败处理 |
1008 | 签名不能为空 | 提交失败处理 |
1009 | 签名错误 | 提交失败处理 |
1010 | 签名过期 | 提交失败处理 |
1011 | 账号被冻结 | 提交失败处理 |
1012 | 余额不足 | 提交失败处理 |
1013 | 访问ip与备案ip不相同 | 提交失败处理 |
1014 | 订单ID不能为空 | 提交失败处理 |
1015 | 订单ID已存在 | 核单处理 |
1016 | ⽆此订单 | 核单处理 |
2001 | 不支持的手机号码 | 提交失败处理 |
2002 | 手机号码已加入黑名单 | 提交失败处理 |
2003 | 不支持的地区 | 提交失败处理 |
3001 | 扣费失败 | 提交失败处理 |
4001 | 系统内部故障 | 核单处理 |
在生成签名时,需要将接口请求参数中“参与验签”一列中标为“是”的参数,以及您账户的APIKEY(登录系统获取) 以键值对的形式拼接起来,并将参数名(键)按照 asc (升序)的方式排序,键值对字符串的参数名小写,再用 32 位 md5 加密。
注意:API ID请使用小写。
例如:
sign=md5(aaaa=aaaa&bbbb=bbbb&cccc=cccc&dddd=dddd)
PHP充值签名代码如下:
$sign = md5(sprintf("apikey=%s&mobile=%s&orderid=%s&package=%s×tamp=%s&username=%s", $apikey, $mobile, $orderid, $package, date("YmdHis"), $username));
PHP充值代码DEMO:
验证码已发送到您的手机,请查收!
输入验证码后,点击“开通体验账户”按钮可立即开通体验账户。