`
huafeiit
  • 浏览: 3985 次
文章分类
社区版块
存档分类
最新评论
阅读更多

上周刚完成公司的活动开发,产品需求是要在用户关注我们微信公众号后,可以抽一个话费红包,话费红包金额在1元到10元。筛选了几家服务商,从接口文档完整性、费用、稳定性、数据查看等各方面评估后,最终选择了互亿无线,我将相关资料分享,方便其他同学后期使用:


话费接口服务商:互亿无线(www.ihuyi.com)
话费接口地址:http://f.ihuyi.com/phone



1.单号码充值话费
请求(POST 或者GET)
类型 参数名称 参数值描述
参数 action recharge
参数 username 用户名(签名)
参数 mobile 手机号码(签名)
参数 package 套餐数额(签名)
参数 orderid 订单ID(签名)
参数 timestamp 时间戳(签名)
格式如:yyyyMMddHHmmss
允许 10 分钟 统一以东 8 时间
参数 sign 签名

返回值(JSON格式)
命名 类型 描述
code int 代码(1为提交成功)
message string 消息描述
taskid string 任务id,提交失败则没有






 
2.帐号余额查询
请求(POST 或者GET)
类型 参数名称 参数值描述
参数 action getbalance
参数 username 用户名(签名)
参数 timestamp 时间戳(签名)
格式如:yyyyMMddHHmmss
允许 10 分钟 统一以东 8 时间
参数 sign 签名

返回值(JSON格式)
命名 类型 描述
code int 代码
message string 消息描述
balance float 剩余余额






3.充值状态查询
请求(POST 或者GET)
类型 参数名称 参数值描述
参数 action getreports
参数 username 用户名(签名)
参数 count 一次取数量(签名)
参数 timestamp 时间戳(签名)
格式如:yyyyMMddHHmmss
允许 10 分钟 统一以东 8 时间
参数 sign 签名

返回值(JSON格式)
命名 类型 描述
code int 代码(1为提交成功)
message string 消息描述
reports+ array 报告
    taskid string 任务id
    mobile string 手机号码
    state int 状态(0失败, 1成功)
    message string 消息

注意:状态获取后服务器则会删除状态





4.充值状态推送
请求(POST方式推送到配置的网址)
类型 参数名称 参数值描述
参数 taskid 充值任务ID
参数 mobile 手机号码(签名)
参数 state 状态(签名) 1:成功 2:失败
参数 message 消息(签名)
参数 sign 签名

注意:充值状态查询和充值状态推送两种方式只能选择其中一种



5. 获取话费包档位
请求(POST 或者GET)
类型 参数名称 参数值描述
参数 action getpackages
参数 username 用户名(签名)
参数 timestamp 时间戳(签名)
参数 sign 签名

返回值(JSON格式)
命名 类型 描述
code int 代码
message string 消息描述
packages+ float 套餐
    type string 类型(cncm:中国移动 cncu:中国联通 cnct:中国电信)
    name string 话费包
    number int 数值(用于充值请求)
    state int 状态(1启用,0未启用)
    price int 单价




6.状态码
数值 描述
0 未知错误
1 提交成功
1000 无此操作类型(action为空或不存在)
1001 用户名为空
1002 用户名错误
1003 手机号码为空
1004 手机号码为空
1005 套餐不能为空
1006 时间戳不能为空
1007 不存在的套餐
1008 签名不能为空
1009 签名错误
1010 签名过期
1011 账号被冻结
1012 余额不足
1013 访问ip与备案ip不相同
1014 订单ID不能为空
1015 订单ID已存在

2001 不支持的手机号码
2002 手机号码已加入黑名单
2003 不支持的地区
3001 扣费失败
4001 系统内部故障


7. 签名说明
需要把apikey(登录系统获取)放到要签名的键值对中,按照asc排序键值对参数名排序,拼接键值对字符串(参数名小写),再用32位md5加密

注意:用户名请使用小写

如:
sign=md5(aaaa=aaaa&bbbb=bbbb&cccc=cccc&dddd=dddd)


PHP充值签名代码如下:
$sign = md5(sprintf(“apikey=%s&mobile=%s&orderid=%s&package=%s&timestamp=%s&username=%s”,
                            $apikey,
                            $mobile,
   $orderid,
                            $package,
                            date("YmdHis"),
                            $username));

GET方式地址如:
http://f.ihuyi.com/phone?action=recharge&username=testname&mobile=13800000000&orderid=xxxxxxxxx&package=10&timestamp=1457954906&sign=e08ecdcedac8f9e07b1727e1005b8d32



8.PHP充值代码DEMO

$basicUrl  = "http://f.ihuyi.com/phone?action=recharge&%s";
$username   = 'testname';
$apikey     = 'testapikey';
$mobile     = '18801850000';
$package    = 1;
$orderId    = 'TEST_'.date("YmdHis").mt_rand(100, 1000);

$dataGet = array();
$dataGet['package'] = $package;
$dataGet['username'] = $username;
$dataGet['timestamp']     = date("YmdHis");
$dataGet['mobile'] = $mobile;
$dataGet['orderid'] = $orderId;
$dataGet['sign']  = md5(sprintf(“apikey=%s&mobile=%s&orderid=%s&package=%s&timestamp=%s&username=%s”,
                            $apikey,
                            $mobile,
   $orderid,
                            $package,
                            date("YmdHis"),
                            $username));

$dataReturn = array();
foreach ($dataGet as $key => $row) {
    $dataReturn[] = sprintf("%s=%s", $key, $row);
}

$urlGet = sprintf($basicUrl, implode("&", $dataReturn));

$ch     = \curl_init();
curl_setopt($ch, CURLOPT_URL, $urlGet); //定义表单提交地址
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); //60秒
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_REFERER, 'http://' . $_SERVER['HTTP_HOST']);
curl_setopt($ch, CURLOPT_POST, 0);
$data = curl_exec($ch);
curl_close($ch);

$res        = explode("\r\n\r\n", $data);
$dataRet    = $res[1];

if ($dataRet['code'] == 1) {
      //提交成功
      $apiTaskid  = $dataRet['taskid'];
} else {
      //提交错误处理
      //.....
}

 

 

0
0
分享到:
评论

相关推荐

    话费充值小程序源码开源代码充值话费

    在微信小程序开发中,话费充值是一个常见的应用场景,通常用于为用户提供便捷的手机充值服务。开源代码意味着开发者可以查看、学习并修改源代码,这对于初学者或者希望自定义功能的开发者来说,是一个宝贵的学习和...

    手机话费充值系统源码.rar

    手机话费充值系统是信息化社会中不可或缺的一部分,它使得用户能够方便快捷地为自己的移动通信设备充值,无需离开家门或办公室。这个“手机话费充值系统源码”压缩包包含了一个实现此类功能的软件系统的原始编程代码...

    三网话费余额查询的API系统

    综上所述,这个"三网话费余额查询的API系统"不仅是一个基础的查询服务,还具备了API接口的开放性和可扩展性。对于熟悉PHP和ThinkPHP框架的开发者来说,这是一个极具价值的资源,可以作为构建相关业务的起点,同时也...

    易一网络科技手机话费充值中心

    "易一网络科技手机话费充值中心"是这样一款系统或平台,它利用技术手段,如调用淘宝接口数据,为用户提供手机话费充值服务,并且有优惠政策,比如充100元可以节省1元。 1. **接口调用**:这里的“调用淘宝接口数据...

    ecshop话费充值接口

    这个接口的实现原理是对接了果丰网(假设这是一个提供话费充值服务的第三方平台)的API,将话费视为虚拟商品进行交易处理。 话费充值接口的设计与实现涉及到以下几个重要的技术知识点: 1. **接口设计**:接口设计...

    手机话费充值程序

    3. **数据库管理**:在手机话费充值过程中,需要记录用户信息、充值记录、交易状态等数据,因此系统很可能与数据库紧密相连。常用的数据库管理系统如MySQL可能会被用来存储这些信息。 4. **安全性**:由于涉及金钱...

    最新话费充值系统源码,附带系统安装教程

    4. **支付集成**:与第三方支付平台的接口对接是话费充值系统的核心部分。这部分源码会涉及到OAuth认证、支付回调处理等,有助于理解支付流程的实现。 5. **安全性**:源码中应该包含对用户信息和交易数据的加密...

    话费充值系统源码话费直充快充慢充系统源码

    《话费充值系统源码详解:打造高效便捷的充值服务》 在当今信息化社会,话费充值服务已经成为了人们日常生活中不可或缺的一部分。本文将详细解析一款名为“话费充值系统”的源码,涵盖直充、快充、慢充等多种功能,...

    话费充值系统

    话费充值系统是信息技术在日常生活中广泛应用的一个实例,它主要负责处理手机或固定电话用户的充值操作,确保用户能够及时、安全地为自己的通信账户添加余额。在这个系统中,涉及的技术点广泛且深入,涵盖了数据库...

    2022最新话费充值系统源码.zip

    《2022最新话费充值系统源码详解》 在当今信息化社会,话费充值作为日常生活中的必备服务,其背后的系统技术也日新月异。"2022最新话费充值系统源码"正是这样一款先进的技术产品,它为开发者提供了深入了解和研究...

    三网快速充值话费通道源码.zip

    基于Vue2.0开发的话费充值APP,数据接口主要调用 `聚合数据` 提供的话费充值API实现。很关键的一点因为我聚合账户没有钱,所以没办法来真正的提交钱来测试,不过丝毫不影响,因为这里我前端已经模拟了下单成功后返回...

    小额话费充值系统

    - 小额话费充值系统一般采用分布式架构,包含前端用户界面、后端处理逻辑以及与各运营商接口的交互模块。 - 前端用户界面设计简洁易用,提供多种充值方式如手机号码输入、扫描二维码等,确保用户体验流畅。 - ...

    充值系统源码 油卡三网话费充值系统

    前端使用H5技术与后端通过API接口进行通信,实现数据交换,提高系统灵活性和可维护性。 3. **支付接口集成**:系统需要集成各种支付渠道,如支付宝、微信支付等,以便用户能够便捷地完成在线支付。这涉及到第三方...

    话费充值系统/话费直充/快充慢充系统/话费直充系统

    3. 接口设计:API接口应遵循RESTful原则,提供安全的认证机制,如OAuth2,确保数据传输的安全性。同时,使用JSON格式进行数据交换,便于跨平台开发。 4. 数据库优化:采用合适的数据库引擎(如InnoDB),合理设计...

    话费充值系统源码+安装教程.zip

    【标题】"话费充值系统源码+安装教程.zip"所涵盖的知识点主要涉及软件开发、电子商务、支付处理以及系统集成。在这个压缩包中,我们得到了一个用于实现在线话费充值功能的系统的完整源代码,以及相关的安装教程,这...

    手机充值程序源码

    手机充值程序源码是用于开发在线手机充值服务的软件代码,这种程序通常包含一系列功能,如用户接口、支付处理、通信接口等,旨在为用户提供便捷的手机话费充值体验。以下是对这个主题的详细说明: 1. **用户接口**...

    PHP话费充值通道网站完整运营源码/全解密无授权源码

    3. **接口对接**:充值服务通常需要与运营商的API接口进行对接,例如中国移动、中国联通、中国电信的充值接口。这涉及到HTTP请求的发送和接收,以及JSON或XML数据的解析。开发者需了解RESTful API的工作原理,并能...

    三网余额查询接口 -(蚂蚁API系统源码).zip

    2. `蚂蚁API - 稳定的三网余额查询API接口.lnk`:这是一个快捷方式文件,指向API接口的详细文档或者演示页面。 3. `js`、`images`、`css`、`fonts`:这些是前端资源文件夹,分别包含了JavaScript代码、图片资源、...

    web 接口充值接口文档

    本文档是化机科技缴费平台话费充值接口的详细说明,主要针对Web接口设计,用于指导软件开发人员实现与平台的交互功能。文档内容包括接口的定义、请求格式、响应格式以及使用注意事项,以确保充值流程的顺畅进行。 *...

    手机充值源码_bbs.vyidc.cn_网游点卡冲值接口程序

    手机充值源码是一种用于实现手机话费以及网络游戏点卡在线充值的应用程序代码,通常由专业的开发者编写,以供网站或应用程序集成使用。在本案例中,"手机充值源码_bbs.vyidc.cn_网游点卡冲值接口程序" 指的是一套...

Global site tag (gtag.js) - Google Analytics