首页 > 其他分享 >话费充值API接口

话费充值API接口

时间:2023-01-15 12:12:29浏览次数:93  
标签:code app 话费 充值 API 参数 字符串 order

―、引言

1.1 文档概述

本文档提供话费充值接口规范说明,提供一整套的完整的接入示例(http 接口)供商户参 考,可以帮助商户开发人员快速完成接口开发与联调,实现与话费充值系统的交易互联。

公司官网:http://www.wikeyun.cn/

 

1.2 阅读对象

本文阅读对象:开发人员与微客云系统对接支付相关的技术人员。

 

1.3 业务流程

1、打开控制台 https://control.wikeyun.cn/ 进行注册账号

2、点击添加店铺,只勾选CMS即可,或者店铺ID保存。

3、联系客服申请 app_key与app_secret 。

4、开发对接,需求在控制台进行预存。

 

二、话费充值接口

1、充值请求下单(post 表单提交)

网关URL:https://router.wikeyun.cn/rest/Recharge/pushOrder

 

参数名

类型

必填

参数说明

store_id

字符串

店铺ID

mobile

字符串

充值号码

order_no   

字符串

充值订单号

money

整数

充值金额(100,200)

recharge_type

整型

1快充 0慢充

notify_url

字符串

异步回调地址(POST)

change

整数

失败更换渠道充值 0 否 1是

不传系统根据设置判断

source

整形

是否强制渠道

注意:因为每个渠道价格不同,不同用户提交的业务不同,默认不强制;

传source字段则可以强制某渠道,强制快充走94折则,source传6

失败返回数据格式:

{"code":"1003","msg":"app_key不能为空","time":"1624868000","data":null}

成功返回数据格式:

{"code":"0000","msg":"推送成功","data":{"order_number":"xxxx"}}

 

 

 

2、回调通知

 

参数名

类型

参数说明

order_no

字符串

充值订单号

order_number

字符串

官方订单号

status

字符串

交易结果(0 待支付 1 已付 充值中 2充值成功 3充值失败 需要退款 4退款成功 6待充值 7 已匹配)

收到回调后,商户必须同步返回字符串 success,否则平台认为商户没有收到回调,会重复发送5

次回调。

 

3、查询接口(post 表单提交)

网关URL:https://router.wikeyun.cn/rest/Recharge/query

 

参数名

类型

必填

参数说明

order_number

字符串

官方订单号

失败返回数据格式:

{"code":"1003","msg":"app_key不能为空","time":"1624868000","data":null}

成功返回数据格式:

{"code":"0000","msg":"获取成功","data":{"order_number":"xxxx","status":"1","mobile":"13786517891","amount":"100","order_no":"xxxx"}}

4、查询余额接口(post 表单提交)

网关URL:https://router.wikeyun.cn/rest/User/query

 

数据格式:

{"code":"0000","msg":"获取成功","data":{"money":"100","id":1234}}

 

三、油卡充值接口

 

1、添加充值卡

网关URL:https://router.wikeyun.cn/rest/Oil/addCard

 

参数名

类型

必填

参数说明

store_id

字符串

店铺ID

card_num

字符串

充值卡号

name

字符串

姓名

phone

字符串

手机号

user_num

             字符串

身份证

card_type

整数

0中石化 1中石油

 

2、充值下单请求(post 表单提交)

网关URL:https://router.wikeyun.cn/rest/Oil/pushOrder

 

参数名

类型

必填

参数说明

store_id

字符串

店铺ID

cardId

整数

充值卡ID,来自创建接口

order_no   

字符串

充值订单号

amount

整数

充值金额(500)

recharge_type

整型

1快充 0慢充,目前请传0

notify_url

字符串

异步回调地址(POST)

失败返回数据格式:

{"code":"1003","msg":"app_key不能为空","time":"1624868000","data":null}

成功返回数据格式:

{"code":"0000","msg":"推送成功","data":{"order_number":"xxxx"}}

   

3、回调通知

 

参数名

类型

参数说明

order_no

字符串

充值订单号

order_number

字符串

官方订单号

status

字符串

交易结果(0 待支付 1 已付 充值中 2充值成功 3充值失败 需要退款 4退款成功 6待充值 7 已匹配)

收到回调后,商户必须同步返回字符串 success,否则平台认为商户没有收到回调,会重复发送5

次回调。

 

4、查询接口(post 表单提交)

网关URL:https://router.wikeyun.cn/rest/Oil/query

 

参数名

类型

必填

参数说明

order_number

字符串

官方订单号

失败返回数据格式:

{"code":"1003","msg":"app_key不能为空","time":"1624868000","data":null}

成功返回数据格式:

{"code":"0000","msg":"获取成功","data":{"order_number":"xxxx","status":"1","mobile":"13786517891","amount":"100","order_no":"xxxx"}}

 

 

四、签名算法

 

1、系统参数:

以下参数必须传参,全部采用get传参(拼接至url内),系统参数包括:

参数名

类型

参数说明

app_key

字符串

应用唯一表示

timestamp

字符串

unix时间戳(秒单位)

client

字符串

客户端请求ip

v

字符串

客户端接口版本,目前是1.0

format

字符串

默认json

sign

字符串

sign签名

2、sign签名算法

把业务参数+系统参数合并成一个数组,然后对数组进行ksort排序(按ASCII由小到大排序),然后对合并后的数组进行循环拼接,格式如下:key1value1key2value2key3value3的形式拼接,最终首尾各拼接一个app_secret,对最终字符串进行md5大写加密。

3、sign案例

最终拼接完成的URL如下:https://router.wikeyun.cn/rest/Recharge/pushOrder?app_key=1037110417×tamp=1624862089&client=127.0.0.1&format=json&v=1.0&sign=831EFFE3A7A59A530DA8CEC4A05D744

然后对上面的url 进行post传业务参数

 

附录

1、充值请求code 状态码

 

0000

接口成功

1003

app_key不存在

1004

业务错误,具体看msg

1005

sign签名不对

1006

timestamp Out

1007

应用已禁用

1008

余额不足

1009

相同面值太多,请拆分充值或者稍后再试

 

注意事项(话费快充)

1、请勿同一时间段推送大量订单。

2、请勿推送大量相同面值的订单,比如全是50,全是100,又或者50,100相间有规律的金额

3、系统会严格审核充值金额,同时出现多个金额相同的单子,就会返回1009失败,请稍后再试或者拆分提交处理。

标签:code,app,话费,充值,API,参数,字符串,order
From: https://www.cnblogs.com/wikeyun/p/17053295.html

相关文章

  • 第十九节:Pinia简介及state、getter、action详解、常用Api、setup简化写法
    一. 简介       二.state       三.getter     四.action   五.常用Api    六.setup简化写法   ......
  • NET.AutoApi原理揭秘
    前言上一篇文章我们讲了怎么使用NET.AutoApi这个组件来动态生成webapi接口,让我们不需要创建控制器去转发业务层代码。这篇文章主要是讲解NET.AutoApi底层是怎么实现动......
  • Date时间API
    JDK8之前时间API 1.java.lang.System类  System类提供的publicstaticlongcurrentTimeMillis()用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时......
  • NET.AutoApi 动态webapi接口,一个配置让你无需创建控制器类
    前言如果你的控制器代码像下面一样,只是对业务层做一层转发,那么能否将这个控制器“动态创建”,让开发只需要关注业务代码就行呢?答案是可以的。publicclassUserControll......
  • MC群组服开服教程系列五: 基础插件PlaceholderAPI+ProtocolLib
    基础插件服务端需要很多插件的,插件和插件是有依赖关系,其中PlaceholderAPI+ProtocolLib是高频依赖的,我们这个文档主要介绍下这2个插件的安装和使用。ProtocolLibProtoco......
  • 持续集成:使用Jenkins API创建视图
    持续集成:通过JenkinsAPI创建项目和节点介绍了使用jenkinsAPI来创建项目和新建节点,jenkinsAPI也可以创建视图(view)。目录1.获取视图配置文件2.创建视图3.将job添加到......
  • arcgis api for 自定义zoom
    1.需求自定义UI,实现对地图的zoom操作,在view缩放的时候,带动画效果2.分析问题UI视图一般情况,可能大部分初学者会使用以下代码对zoom进行操作,这个方法是可以放大缩小,但是......
  • Apifox入门
    前言本篇博客意在简化官方文档,提炼出使用Apifox必要的一些知识,如果时间充裕,请完整阅读官方文档。1.简介国产版的postman,目前团队人数不设上限,不收费。这也是启用postman......
  • FFmpeg:音频解码(FFmpeg 5.x 新API)(参考decode_audio.c)
    如果不是特别熟悉C/C++,又要使用FFmpeg.API处理一些简单的音视频业务,那么可以使用org.bytedeco:ffmpeg-platform,下面记录一下使用ffmpeg-platform音频解码的方法。1.代码......
  • FFmpeg:视频解码(FFmpeg 5.x 新API)(参考decode_video.c)
    如果不是特别熟悉C/C++,又要使用FFmpeg.API处理一些简单的音视频业务,那么可以使用org.bytedeco:ffmpeg-platform,下面记录一下使用ffmpeg-platform视频解码的方法。1.代码......