接口平台

上量全场景渠道电子卷接口平台

类型

权益类型分为2种

  1. 卡密
  2. 直冲

直冲下单一般情况下三分钟内到账,可使用查询订单查询状态

部分平台的直冲需先获取卡密,再调用兑换卡密实现直冲

错误码

建议调用者通过 error.code != 0 判断接口调用失败

if (response.error.code != 0 ) {
    log(response.error.message)
}
0         成功
1         失败(原因见 error.message)

100120001 AK错误
100120002 SK错误

100130001 重复订单
100130002 卡密库存不足
100130003 此订单无记录
100130004 优惠券ID不存在
100130006 优惠券调用超过每日限制
100130007 卡密不存在
100130008 卡密已被兑换过

100140001 余额不足

直冲下单

POST https://coupon.admpv.com/api/coupon/order/submit

提交充值账号下单

因为官方平台限制,下单成功不代表充值成功,下单后一分钟需要通过 查询订单 接口确认充值是否成功

下单会先先扣款,如果充值失败,会在最快1分钟后退款.

Request

Header  
Content-Type application/json
Body    
ak string  
sk string  
couponID number 优惠券ID
consumerClientIP string 消费者客户端IP
clientOrderNumber string 客户订单号,建议为uuid,用于后续查询订单和处理消费幂等
channel string 渠道,用于同一个客户标识不同渠道
rechargeAccount string 充值账户,一般为qq号,手机号,账户名

示例请求JSON

// 正式提交时替换  为正确值
{
    "ak": "",
    "sk": "",
    "couponID": 3,
    "consumerClientIP": "",
    "clientOrderNumber": "",
    "channel": "abc",
    "rechargeAccount": "1198882221"
}

Response

//  下单成功
{
    "error": {
        "code": 0,
        "message": ""
    }
}

// 订单号重复: 此时请检查 clientOrderNumber 是否重复
{
    "error": {
        "code": 100130001,
        "message": "订单号重复"
    }
}

查询订单

POST https://coupon.admpv.com/api/coupon/order/query

查询订单

Request

Header  
Content-Type application/json
Body    
ak string  
sk string  
couponID number 优惠券ID
clientOrderNumber string 客户订单号,建议为uuid,用于后续查询订单和处理消费幂等

示例请求JSON

// 正式提交时替换  为正确值
{
    "ak": "",
    "sk": "",
    "couponID": 3,
    "clientOrderNumber": "此处填写直冲下单时候提交的clientOrderNumber",
}

Response

// 正在充值
{
    "status": 1,
    "description": "处理中",
    "error": {
        "code": 0,
        "message": ""
    }
}

// 充值成功
{
    "status": 2, // 
    "description": "订单成功",
    "error": {
        "code": 0,
        "message": ""
    }
}
// 充值失败
{
    "status": 3,
    "description": "订单失败",
    "error": {
        "code": 0,
        "message": ""
    }
}
// 未查询到订单
{
    "status": 4,
    "description": "未查询到订单,请人工核实",
    "error": {
        "code": 0,
        "message": ""
    }
}

获取卡密

POST https://coupon.admpv.com/api/coupon/get_stock

获取卡密

Request

Header  
Content-Type application/json
Body    
ak string  
sk string  
couponID number 优惠券ID
consumerClientIP string 消费者客户端IP
clientOrderNumber string 客户订单号,建议为uuid,用于后续查询订单和处理消费幂等
channel string 渠道,用于同一个客户标识不同渠道

示例请求JSON

/ 正式提交时替换  为正确值
{
    "ak": "",
    "sk": "",
    "couponID": 3,
    "consumerClientIP": "",
    "clientOrderNumber": "",
    "channel": "abc",
}

Response

// 成功
// type 1 时读取 cdkey
// type 2 时读取 exchangeNumber|exchangePassowrd
// type 3 时读取 exchangeLink
{
    "cdkey": "ea73bdd18c58",
    "type": 1,
    "exchangeNumber": "",
    "exchangePassowrd": "",
    "exchangeLink": "",
    "error": {
        "code": 0,
        "message": ""
    }
}

// 订单号重复: 此时请检查 clientOrderNumber 是否重复
{
    "error": {
        "code": 100130001,
        "message": "重复订单,请通过 /api/coupon/stock_by_client_order_number 接口查询订单信息"
    }
}

查询卡密

POST https://coupon.admpv.com/api/coupon/stock_by_client_order_number

使用订单号查询卡密

Request

Header  
Content-Type application/json
Body    
ak string  
sk string  
couponID number 优惠券ID
clientOrderNumber string 客户订单号,建议为uuid,用于后续查询订单和处理消费幂等

示例请求JSON

// 正式提交时替换  为正确值
{
    "ak": "",
    "sk": "",
    "couponID": 3,
    "clientOrderNumber": ""
}

Response

// 成功
// type 1 时读取 cdkey
// type 2 时读取 exchangeNumber|exchangePassowrd
// type 3 时读取 exchangeLink
{
    "cdkey": "ea73bdd18c58",
    "type": 1,
    "exchangeNumber": "",
    "exchangePassowrd": "",
    "exchangeLink": "",
    "error": {
        "code": 0,
        "message": ""
    }
}

// 订单无记录
{
    "error": {
        "code": 100130003,
        "message": "此订单无记录"
    }
}

兑换卡密

POST https://coupon.admpv.com/api/coupon/exchange

Request

Header  
Content-Type application/json
Body    
ak string  
sk string  
accountName string  
mobile string  
qq string  
code string 查询卡密接口获取的 cdkey
couponID string 优惠券ID

示例请求JSON

// 正式提交时替换  为正确值
{
    "ak": "",
    "sk": "",
    "couponID": 3,
    "accountName": "timtom"
}

Response

// 成功
{
    "error": {
        "code": 0,
        "message": ""
    }
}

// 已经兑换过
{
    "error": {
        "code": 100130008,
        "message": "已经兑换过"
    }
}