跳到主要内容

号卡分销接入规范

编写octopus_lpg编写时间2023-06-01
V1.0
V1.1
V1.2
V1.2.1
V1.2.2
V1.2.3
当前版本V1.2.4

修订历史

序号变更内容版本号版本日期
1初稿v1.02023-04-17
2一证五号校验接口,此接口再下单过程中会自动调用,不需要额外调用v1.12023-04-24
31. 增加福兔卡首充查询接口;2. 增加物流详细信息查询接口v1.22023-05-10
41. 表单提交接口,增加失败信息返回内容v1.2.12023-06-01
51. 套餐查询接口增加套餐类型请求参数v1.2.22023-08-04
61. 套餐查询接口移除废弃参数v1.2.32023-11-08
71. 选占号接口修改返回内容v1.2.42023-11-13

注意事项

  1. 接口接入方式采用标准 https/http+json 协议,通过 get/post 方式调用服务

  2. 调用接口前,需提前联系运营人员获取 octopusAuthCode 需设置在请求 header 中

  3. 测试环境: act.occoral.cn/openapi/test
    正式环境: act.occrab.cn/openapi/fenxiao

  4. 本省的号码只支持本省配送,用户地址选择时需注意

  5. 接口有频次限制,如服务器请求请提前联系运营人员,设置IP白名单

  6. 测试 octopusAuthCode : 37e632b03b818c37e28b0d10b36edb4d

0. 号卡表单流程

1. 请求header 示例

curl -H 'octopusAuthCode: 1a2b3c4d' -H 'version: v1.0'

2. 1证5户实名校验(此接口再下单过程中会自动调用,不需要额外调用

基本信息

请求方式post
uri/idc

Body请求示例

{
"regionId": "",
"certName": "",
"certNo": ""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1regionIdbodystring城市编码,来源城市地址接口
2certNamebodystring姓名
3certNobodystring身份证号

成功示例

{
"code" : 200,
"message" : "成功",
"data" : []
}

其他状态请参照返回值说明

3. 表单提交

基本信息

请求方式post
uri/addOrder

Body请求示例

{
"accessNum" : "",
"goodsId" : "",
"goodsSkuId" : "",
"offerCode": "",
"offerDesc": "",
"phone": "",
"certNo": "",
"certName": "",
"receiveProvince": "",
"receiveProvinceName": "",
"receiveCity": "",
"receiveCityName": "",
"districtCode": "",
"district": "",
"address": ""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1accessNumbodystring选占号码,来源手机号列表
2goodsIdbodystring产品信息编号,来源套餐接口
3goodsSkuIdbodystring产品sku编号,来源套餐接口
4offerCodebodystring产品编码,来源套餐接口
5offerDescbodystring产品描述,来源套餐接口
6phonebodystring联系方式
7certNobodystring身份证
8certNamebodystring姓名
9receiveProvincebodystring省份编码,来源省份地址接口
10receiveProvinceNamebodystring省份名称,来源省份地址接口
11receiveCitybodystring城市编号,来源城市地址接口
12receiveCityNamebodystring城市名称,来源城市地址接口
13districtCodebodystring地区编码,来源区域地址接口
14districtbodystring地区名称,来源区域地址接口
15addressbodystring详细地址

成功示例

{
"code" : 200,
"message" : "成功",
"data" : [
"uuid":"表单编号"
]
}

失败示例

{
"code" : 50001,
"message" : "订单提交失败",// 或替他失败描述
"data" : [
"respCode":"失败编码",
"respDesc":"描述"
]
}

其他状态请参照返回值说明

4. 手机号列表

基本信息

请求方式post
uri/phoneList

Body请求示例

{
"regionId": "",
"currentPage": "",
"pageSize": "",
"beautifulTag":"",
"fuzzyKey":""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1regionIdbodystring城市编码,来源城市地址接口
2currentPagebodystring当前页,默认 1
3pageSizebodystring每页显示数,默认10
4beautifulTagbodystring查询标识,0:非靓号1:靓号,默认0
5fuzzyKeybodystring模糊匹配关键字,至少3位不能为 192

成功示例

{
"code" : 200,
"message" : "成功",
"data" : ["192xxxxxxxx","192xxxxxxxx","192xxxxxxxx","192xxxxxxxx"]
}

其他状态请参照返回值说明

5. 号码选占号接口

基本信息

请求方式post
uri/choosePhone

Body请求示例

{
"regionId": "",
"accessNum": "",
"certNo": ""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1regionIdbodystring城市编码,来源城市地址接口
2accessNumbodystring选占号码
3certNobodystring身份证号

成功示例

{
"code" : 200,
"message" : "成功",
"data" : ["accessNum":"192xxxxxxxx"]
}

其他状态请参照返回值说明

序号名称类型说明
codestring返回代码
messagestring信息说明
dataobject
1accessNumstring成功占号的手机号

6. 套餐查询接口

基本信息

请求方式post
uri/chooseGoods

Body请求示例

{
"regionId": "",
"goodsType":0 // 0:原福兔卡套餐(已废弃) 1:福兔卡-纯流量版 2:福兔卡-升级版
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1regionIdbodystring省份编码,来源省份地址接口
2goodsTypebodyint套餐类型 0:原福兔卡套餐(已废弃) 1:福兔卡-纯流量版 2:福兔卡-升级版

成功示例

{
"code" : 200,
"message" : "成功",
"data" : {
"goodsSkuId":"",
"goodsId":"",
"name":"",
"info":"",
"childFee":"",
"activities":[
{
"offerCode":"",
"offerName":"",
"offerDesc":"",
"offerModes":"",
"straightDownAmount":""
}
]
}
}

返回值内容说明

序号名称类型说明
codestring返回代码
messagestring信息说明
dataobject
1goodsSkuIdstring商品goodsSkuId
2goodsIdstring商品goodsId
3namestring商品名称
4infostring商品信息
5childFeestring产品金额(金额单位:分
6activitiesobject促销信息
6.1offerCodestring促销代码
6.2offerNamestring促销名称
6.3offerDescstring促销说明
6.4offerModesstring类型 1 打折 2 立减
6.5straightDownAmountstring打折金额 或 立减金额(金额单位:分

其他状态请参照返回值说明

7. 配送地址校验

基本信息

请求方式post
uri/addressCheck

Body请求示例

{
"receiveProvince" : "",
"receiveCity" : "",
"districtCode" : "",
"address" : "",
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1receiveProvincebodystring省份编码,来源省份地址接口
2receiveCitybodystring城市编码,来源城市地址接口
3districtCodebodystring区域编码,来源区域地址接口
4addressbodystring详细地址

成功示例

{
"code" : 200,
"message" : "成功",
"data" : []
}

其他状态请参照返回值说明

8. 省份地址接口

基本信息

请求方式get
uri/area/provinceList

Body请求示例

{}

请求参数

名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0

成功示例

{
"code": 200,
"message": "成功",
"data": [
{
"id": "AH00",
"name": "安徽省"
}
]
}

返回内容说明

序号名称类型说明
dataobject[]
1idstring省份编码
2namestring省份名称

其他状态请参照返回值说明

9. 城市地址接口

基本信息

请求方式get
uri/area/cityList

Body请求示例

{
"receiveProvince":""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1receiveProvincebodystring省份编码,来源省份地址接口

成功示例

{
"code": 200,
"message": "成功",
"data": [
{
"id": "010",
"name": "北京市"
}
]
}

返回内容说明

序号名称类型说明
dataobject[]
1idstring城市编码
2namestring城市名称

其他状态请参照返回值说明

10. 区域地址接口

基本信息

请求方式get
uri/area/districtList

Body请求示例

{
"receiveCity":""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1receiveCitybodystring城市编码,来源城市地址接口

成功示例

{
"code": 200,
"message": "成功",
"data": [
{
"id": "72",
"name": "朝阳区"
}
]
}

返回内容说明

序号名称类型说明
dataobject[]
1idstring区域编码
2namestring区域名称

其他状态请参照返回值说明

11. 全部地址接口

注意:因本接口为全部地址信息,请各个对接方减少请求频率,接口限制每1小时请求1次,请进行本地缓存

基本信息

请求方式get
uri/area/all

Body请求示例

{}

请求参数

名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0

成功示例

{
"code": 200,
"message": "成功",
"data": [
{
"id": "ZJ00",
"name": "浙江省",
"children": [
{
"id": "0571",
"name": "杭州市",
"children": [
{
"id": "1220",
"name": "淳安县"
},
{
"id": "1214",
"name": "余杭区"
}
]
}
]
}
]
}

返回内容说明

序号名称类型说明
dataobject[]
1idstring省份编码
2namestring省份名称
3childrenobject[]城市列表
3.1idstring城市编码
3.2namestring城市名称
3.3childrenobject[]区域列表
3.3.1idstring区域编码
3.3.2namestring区域名称

其他状态请参照返回值说明

12. 取消订单接口

基本信息

请求方式get
uri/cancelOrder

Body请求示例

{
"cancelContent":"",
"cancelType":"",
"uuid":""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1cancelContentbodystring取消说明
2cancelTypebodystring取消类型,取值范围 0:客户要求 1:超时取消 2:客户拒签
3uuidbodystring订单编号,来源表单提交

成功示例

{
"code": 200,
"message": "成功",
"data": []
}

其他状态请参照返回值说明

13. 订单信息接口

基本信息

请求方式get
uri/getInfo

Body请求示例

{
"uuid":""
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1uuidbodystring订单编号,来源表单提交

成功示例

{
"code": 200,
"message": "成功",
"data": {
"orderId": "C20221016000000000000",
"outOrderId": "C20221016000000000000",
"orderBigType": "C",
"orderType": "15",
"orderStatus": "2",
"orderSum": 3800,
"orderPreferentialSum": 0,
"orderPaySum": 3800,
"expressCharges": 0,
"cityCode": "0871",
"createTime": "2022-10-16 21:31:26",
"finishTime": "2022-10-17 12:20:36",
"userId": "1579048222437629954",
"userName": "19208716126",
"payWay": "1",
"payStatus": "1",
"payCenterOrderNo": "20221016959779136538050674688",
"channelId": "cd_20220516_173041",
"channelName": "中国广电营业厅(微信小程序)",
"delflag": "N",
"goodsDetails": [
{
"createBy": null,
"createDate": null,
"updateBy": null,
"updateDate": null,
"delFlag": null,
"orderId": "C20221016000000000000",
"orderDetailId": "32022101621312562462589409246587",
"goodsId": "db363aaf0127477592bb0005fb9f4f5c",
"skuId": "21c1c1f303fb4ca289a437f594c30282",
"thirdGoodsId": null,
"bossGoodsId": null,
"orderNum": 1,
"goodsPrice": 3800,
"goodsPreferentialPrice": -3000,
"goodsPayPrice": 6800,
"goodsType": "C01",
"goodsName": "精彩 38 元套餐",
"goodsName2": null,
"goodsDesc": null,
"goodsImagUrl": null,
"activitiesId": null,
"activitiesName": null,
"firstCateCode": "C01 ",
"goodsStandard": null,
"isOld": null,
"goodsFromType": null,
"resCode": null,
"plantId": null,
"color": null,
"orderDetailNcs": null,
"orderDetailContracts": null,
"orderDetailBatchs": null,
"orderDetailBusis": [
{
"createBy": null,
"createDate": null,
"updateBy": null,
"updateDate": null,
"delFlag": null,
"orderDetailId": "32022101621312562462589409246587",
"busiCode": "ADD_PRODUCTS",
"busiValue": "[\"10000001\",\"10000003\",\"10000006\",\"10000268\",\"10000269\",\"10000277\",\"10000278\"]",
"finishTime": null,
"id": null
},
{
"createBy": null,
"createDate": null,
"updateBy": null,
"updateDate": null,
"delFlag": null,
"orderDetailId": "32022101621312562462589409246587",
"busiCode": "PHONE_ID",
"busiValue": "19208716126",
"finishTime": null,
"id": null
},
{
"createBy": null,
"createDate": null,
"updateBy": null,
"updateDate": null,
"delFlag": null,
"orderDetailId": "32022101621312562462589409246587",
"busiCode": "CUST_CARD_NO",
"busiValue": "530111198902206716",
"finishTime": null,
"id": null
},
{
"createBy": null,
"createDate": null,
"updateBy": null,
"updateDate": null,
"delFlag": null,
"orderDetailId": "32022101621312562462589409246587",
"busiCode": "OCCUPY_TYPE",
"busiValue": "1",
"finishTime": null,
"id": null
},
{
"createBy": null,
"createDate": null,
"updateBy": null,
"updateDate": null,
"delFlag": null,
"orderDetailId": "32022101621312562462589409246587",
"busiCode": "IDEN_TYPE",
"busiValue": "1",
"finishTime": null,
"id": null
}
],
"orderBusiMap": {
"ADD_PRODUCTS": "[\"10000001\",\"10000003\",\"10000006\",\"10000268\",\"10000269\",\"10000277\",\"10000278\"]",
"PHONE_ID": "19208716126",
"CUST_CARD_NO": "530111198902206716",
"OCCUPY_TYPE": "1",
"IDEN_TYPE": "1"
},
"viewImeis": null,
"secondCateCode": null,
"goodsSinglePrice": 3800,
"viewDistImeis": null,
"orderDetailBatchDist": null,
"orderDetailDistBatchs": null,
"offerList": null,
"hasBindedGoods": null,
"action": "0",
"hasEvaluate": null,
"id": null
}
],
"orderRecvAddr": {
"orderId": "C20221016000000000000",
"receiveName": "刘昆",
"receiveCountry": "中国",
"receiveProvince": "YN00",
"receiveProvinceName": "云南省",
"receiveCity": "0871",
"receiveCityName": "昆明市",
"receiveCounty": "3912",
"receiveCountyName": "五华区",
"receiveAddress": "华尔贝大厦 28 楼 b1 室",
"receiveLandline": null,
"receivePostcode": "7",
"receiveDelivery": null,
"receiveIsConfirm": null,
"receiveMobile": 13678750000,
"isOld": null
},
"orderInvoice": null,
"orderLogistics": {
"createBy": "admin",
"createDate": "2022-10-16 23:16:41",
"updateBy": null,
"updateDate": null,
"delFlag": "1",
"orderId": "C20221016000000000000",
"logisticsType": "1",
"logisticsId": "JD",
"logisticsName": "京东物流",
"logisticsNum": "JDV008584380000",
"transportType": "4",
"cpCode": "京东物流",
"logisticsStatus": "SE",
"logisticsStatusDesc": "配送中",
"status": "1",
"sendTime": null,
"sendGoodsName": "手机卡",
"sendNum": 0,
"remark": "{\"expressCompany\":\"JD\",\"expressNo\":\"JDV008584380000\",\"iccid\":\"89861500242220002070 \",\"orderId\":\"C20221016000000000000\",\"orderStatus\":\"SE\",\"orderStatusDesc\":\"配送中\"}",
"logisticsDetailList": null,
"id": null
},
"deliveryTime": null,
"orderMsisdn": {
"orderId": "C20221016000000000000",
"msisdn": "19208716126",
"simId": "89861500242220002070",
"cardNum": "530111100000000000",
"cardName": "刘某",
"cityCode": "0871",
"cardNumSuffix": null,
"activityCodeId": null,
"activityCode": null,
"createTime": "2022-10-16 21:31:26",
"sendStatus": null,
"sendTime": null,
"orderStatus": null,
"msisdnType": "1",
"parentPhone": null,
"msisdnTypeList": null,
"planId": null,
"offerId": "10000090",
"transactionId": null,
"sourcePath": null,
"msisdnStatus": "1",
"planName": null,
"certType": null,
"custAddr": null,
"password": null,
"userphoto": null,
"certphoto": null,
"gender": null,
"nation": null,
"mainAcctId": null,
"outOrderId": null,
"birthDate": null,
"cardFee": 3800,
"depositFee": null,
"county": null,
"ismi": null,
"goodsImgUrl": null,
"certphoto2": null,
"idenEffDate": null,
"idenExpDate": null,
"idenAddress": null,
"psptOrgName": null,
"contNumber": "13678750735",
"countryOfBirth": null,
"acctType": "1",
"prestoreFee": "0",
"payMentModeId": null,
"peerBussinessId": null,
"invoiceMode": "1",
"payTag": null,
"regionId": "YN00",
"channelId": "cd_20220516_173041",
"idenType": "1"
},
"channelType": "1",
"remarks": null,
"moreRemarks": "调用成功",
"orderActId": "processing",
"orderActName": "待处理"
},
"extend": null
}

返回内容说明

序号名称类型说明
codestring状态码
messagestring信息说明
dataobject
1orderInfoobject订单详情
1.1orderIdstring订单编号
1.2orderBigTypestring订单大类型
1.3orderTypestring订单类型
1.4orderStatusstring订单状态,详细内容请参考:订单状态枚举值(orderStatus)
1.5order_act_proc_statestring订单环节状态
1.6orderActIdstring当前环节状态
1.7orderPreferentialSumstring订单优惠总金额
1.8expressChargesstring运费
1.9orderPaySumstring订单支付总金额
1.10createTimestring下单时间
1.11finishTimestring订单完成时间
1.12userIdstring用户ID
1.13userNamestring用户名称
1.14payStatusstring支付状态
1.15payWaystring支付方式
1.16payCenterOrderNostring支付中心流水号
1.17orderDetailobject订单详情
1.17.1goodsIdstring商品 ID
1.17.2skuIdstringskuID
1.17.3goodsSinglePricestring商品单价
1.17.4orderNumstring订购数量
1.17.5goodsPricestring商品总金额
1.17.6goodsPreferentialPricstring商品优惠总金额
1.17.7goodsPayPricestring商品支付总金额
1.17.8firstCateCodestring一级类目
1.17.9goodsTypestring商品类型
1.17.10goodsNamestring商品名称
1.17.11goodsDescstring商品描述
1.17.12goodsStandardstring商品规格
1.17.13goodsImagUrlstring商品图片
1.17.14orderDetailNcsobject号卡信息
1.17.14.1regTypestring证件类型
1.17.14.2regNamestring证件姓名
1.17.14.3regAddressstring证件地址
1.17.14.4phonestring手机号
1.17.14.5preFeestring预充值
1.17.14.6baseSetstringoptBusi
1.17.14.7reqBusistring必选业务;多个必选业务,以,分隔
1.17.14.8optBusistring可选业务多个可选业务,以;分隔
1.17.15offerListobject营销活动
1.17.15.1offerCodestring营销活动编码
1.17.15.2offerNamestring营销活动名称
1.17.15.3offerDescstring营销活动描述
1.18orderRecvAddrobject收货信息
1.18.1receiveNamestring收货人姓名
1.18.2receiveCountrystring所在国家
1.18.3receiveProvincestring所在省份
1.18.4receiveCitystring所在地州
1.18.5receiveCountystring所在县区
1.18.6receiveAddressstring详细地址
1.18.7receiveLandlinestring联系座机
1.18.8receivePostcodestring邮编
1.18.9receiveMobilestring联系手机
1.19orderInvoiceobject开票信息
1.19.1invoiceTypestring发票类型
1.19.2invoiceTitleTypestring发票内容类型
1.19.3invoice_titlestring发票抬头
1.19.4invoiceTaxCodestring单位税号
1.19.5registeredAddressstring注册地址
1.19.6registeredPhonestring单位注册电话
1.19.7bankOfDepositstring开户银行
1.19.8bankAccountstring银行账户
1.20orderLogisticsobject订单物流信息
1.20.1logisticsIdstring物流公司 ID(LOGISTICS_COMPAN)
1.20.2logisticsNamestring物流公司名称
1.20.3logisticsNumstring物流编号
1.21orderActIdstring订单当前环节状态,详细内容请参考:订单当前环节状态枚举值
1.22orderActNamestring订单当前环节状态描述

订单状态枚举值(orderStatus)

类型编号说明
0订单生成
1订单正在运行
2订单成功结束
3订单异常取消
4号卡开户流程订单中间状态,可以理解为和1同等,最后该值会变成2
6订单取消中

订单当前环节状态枚举值

orderActIdorderActName描述
end已完成orderStatus=2,代表该订单已完结 orderStatus=3,代表该订单已取消订单成功(完结)
perrorEnd办理失败orderStatus=3,代表该订单下单失败 (完结)
processing待处理orderStatus=4,代表该订单正在配送途中(暂时不可取消订单) orderStatus=2,代表该订单已激活成功 (完结)
rejected已拒签orderStatus=4,代表该订单已配送到达且已拒签 (可取消订单)
package待发货orderStatus=4,代表该订单下单成功 (等待发货)

14. 福兔卡首充结果查询接口

基本信息,注意:仅支持正式环境

请求方式get
uri/firstRecharge

Body请求示例

{
"phoneNumber":"",
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1phoneNumberbodystring192开头订阅号码

成功示例

{
"code": 200,
"message": "成功",
"data": "未首充"
}

其他状态请参照返回值说明

15. 物流信息详细查询

基本信息,注意:仅支持正式环境

请求方式get
uri/getOrderLogistics

Body请求示例

{
"uuid":"",
}

请求参数

序号名称位置类型必选说明
octopusAuthCodeheaderstring授权码
versionheaderstring固定值:v1.0
bodybodyobject
1uuidbodystring订单编号,来源表单提交

成功示例

{
"code": 200,
"message": "成功",
"data": {
"tradeNo": null,
"expressNo": "JDVxxxxxxxxx",
"infoList": [
{
"content": "您的订单将下传北京仓库,准备出库",
"operationTime": "2023-03-27 15:06:16"
}
]
}
}

返回内容说明

序号名称类型说明
codestring状态码
messagestring信息说明
dataobject
1tradeNostring交易号
2expressNostring订单物流运输号
3infoListobject[]订单物流详情
3.1contentstring物流详情
3.2operationTimestring物流详情时间

其他状态请参照返回值说明

返回值说明

code说明(message)
200成功
--
40301请求频率受限
--
40400未授权
40401版本不能为空
40402相关参数不能为空
40403没有可选的手机号
40404找不到可用的套餐信息
40405该地址无法配送
40406身份校验失败
40407不存在的订单信息
40408取消状态类型错误
--
50001订单提交失败
50200请重新提交
--
50401地区信息获取失败
50402该订单状态不允许取消
50403取消订单失败