# VIP相关接口
# VIP开关
启动接口 /api/v2/bootstrappers
接口中返回 vip-switch
,值为 true
或 false
# VIP配置
GET /api/v2/vip/configs
1
响应状态
Status: 200 OK
1
响应体
响应体说明:
config
字段为价格配置内容,low
,middle
,high
表示三个等级的会员enable
表示是否启用此等级的会员{'low' | 'middle' | 'high' }
下的setting
则表示每个时间段的会员价格配置等信息exchange
表示低等级到高等级兑换的天数
{
"switch": true, // 会员功能是否开启
"exchange": 1, // exchange 表示低等级到高等级兑换的天数
"config": {
"low": {
"enable": true, // 如果为false表示不显示
"level": "low",
"name": "白金会员",
"setting": [{
"duration": 1, // 时长
"original": 10, // 原价格
"iap": null, // iap商品id
"iap_price": 12, // iap购买展示价格
"price": 9, // 非iap实际价格
"enable": false // 是否启用,如果为false表示不显示
},
{
"duration": 3,
"original": 30,
"iap": "103",
"iap_price": 30,
"price": 27,
"enable": true,
"currency": 30
},
{
"duration": 12,
"original": 127,
"iap": null,
"iap_price": 127,
"price": 108,
"enable": false
}]
},
"middle": {
"enable": true,
"level": "middle",
"name": "钻石会员",
"setting": [
{
"duration": 1,
"original": 20,
"iap": null,
"iap_price": 20,
"price": 18,
"enable": false
},
{
"duration": 3,
"original": 60,
"iap": "203",
"iap_price": 60,
"price": 54,
"enable": true,
"currency": 60
},
{
"duration": 12,
"original": 240,
"iap": null,
"iap_price": 240,
"price": 216,
"enable": false
}]
},
"high": {
"enable": true,
"level": "high",
"name": "黑钻会员",
"setting": [
{
"duration": 1,
"original": 30,
"iap": null,
"iap_price": 30,
"price": 27,
"enable": false
},
{
"duration": 3,
"original": 90,
"iap": "303",
"iap_price": 90,
"price": 81,
"enable": true,
"currency": 90
},
{
"duration": 12,
"original": 360,
"iap": null,
"iap_price": 360,
"price": 324,
"enable": false
}
]
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# 创建会员订单
POST /api/v2/vip/orders
1
输入:
参数 | 类型 | 描述 |
---|---|---|
vip_type | string | 必须,购买类型:month:月度会员;quarter:季度会员;year:年度会员 |
buy_type | integer | 必须,购买方式:1:人民币购买;2:积分购买 |
quantity | integer | 必须,购买数量,1~65535 |
pay_score | integer | 可选,使用积分支付的数量,积分购买时必传 |
pay_method | string | 可选,支付方法,余额和积分无法完成支付时必传,可选值:Alipay_AopApp 支付宝APP支付Alipay_AopWap 支付宝H5网页支付Alipay_AopPage 支付宝PC网页支付WechatPay_App 微信APP支付WechatPay_Js 微信小程序、公众号支付 |
pay_balance | integer | 可选,使用钱包余额支付的金额 |
redirect_url | string | 可选,当pay_method=Alipay_AopWap/Alipay_AopPage 时支付完成后的重定向URL,最长256个字符 |
openid | string | 可选,当pay_method=WechatPay_Js 时需提供当前用户的openid |
appid | string | 可选,当pay_method=WechatPay_Js 时需提供当前的appid |
app_type | string | 可选,当pay_method=WechatPay_Js 时需提供当前的APP类型,可选 app:公众号 micro:小程序,提供了此参数且没提供appid,系统将读取配置中的appid |
成功响应:
Status: 201 OK
1
{
"user_id": 1, // 订单所有者用户ID
"vip_type": "month", // 购买类型
'buy_type': 1,//购买方式
"quantity": 1, // 购买的数量
"total_amount": 1000, // 订单总金额/总积分
"pay_balance": 100, // 使用余额支付的金额
"pay_score": 0, // 使用积分支付的数量
"pay_amount": 0, // 使用第三方支付支付的金额
"trade_no": "xxxxxx", // pay_method不为None时才有订单号
"pay_method": "None", // 订单支付方式,如果用余额全额支付则为None,否则为传入的值
"pay_data": {}, // pay_method不为None时才有,用于第三方支付的数据,可能是任何数据类型。
"pay_status": 2, // 支付状态 0未支付、1已支付,但处理失败(三方平台支付的金额已充值到余额),2已支持且处理购买逻辑成功
"paid_at": "2019-04-25 09:20:13", // 订单支付后才有此标识
"updated_at": "2019-04-25 09:20:13",
"created_at": "2019-04-25 09:20:13",
"id": 46,
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
客户端错误响应:
Status: 400|403|422 OK
1
{
// 错误消息,当为以下错误时才有此字段
// score_not_enough 可用的积分不足
// balance_not_enough 可用的余额不足
"error_type": "unsupported_area",
"message": "错误消息",
}
1
2
3
4
5
6
7
2
3
4
5
6
7
# 购买/续费会员
POST /api/v2/vip/orders
1
请求体
参数 | 类型 | 描述 |
---|---|---|
quantity | integer | 可选,购买数量,默认 1 |
timezone | string | 必选, 客户端所在时区 |
duration | integer | 必选,购买时长,仅可选 1 , 3 , 12 |
level | string | 必选,购买/续费会员类型 仅可选 low , middle , high |
pay_method | string | 必选,购买/续费会员的支付方式 仅可选 Alipay_AopApp ,Alipay_AopWap ,Alipay_AopPage ,WechatPay_App ,WechatPay_Js ,Iap |
响应
Status: 201 Created
1
响应体
{
"pay_method":"WechatPay_App",
"quantity":1,
"duration":"1","level":"low",
"vip_info":{
"level":"low",
"name":"白金会员",
"duration":1,
"price":1,
"iap":"001",
"iap_price":12,
"currency":10,
"timezone":"Asia/Shanghai"
},
"user_id":8,
"pay_amount":1,
"total_amount":1,
"pay_status":0,
"updated_at":"2020-05-21T08:21:08Z",
"created_at":"2020-05-21T08:21:08Z",
"id":89,
"trade_no":"20200521162108287MO2H",
"pay_data":{
"appid":"wxfdbfcc9bf46384bf",
"partnerid":"1486014122",
"prepayid":"wx211621088964897b0f7bb9141256071600",
"package":"Sign=WXPay",
"noncestr":"2b370611bf1a5af065c587b221c4df2f",
"timestamp":1590049268,
"sign":"D4873472BFA320CCBBD819C5B438DEA8"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 转为高等级会员
PATCH /api/v2/vip/exchange-vip
1
参数 | 类型 | 描述 |
---|---|---|
level | string | 必选,需要转到哪一种VIP等级 |
操作成功的响应
Status: 201 Created
1
操作失败的响应
Status: 403 Forbidden
1
# IAP支付结果检查
POST /api/v2/vip/check-iap-result/{orderId}
1
参数 | 类型 | 描述 |
---|---|---|
receipt | string | 必选,支付成功后的结果 |
购买成功响应
Status: 200 OK
1
暂定其他响应
Status: 500 Server Error
1
# 查看用户购买vip订单
GET /api/v2/vip/orders
1
参数 | 类型 | 描述 |
---|---|---|
offset | string | 必选,偏移量,默认0 |
limit | string | 必选,分页量,默认15 |
s | string | 可选,开始日期 |
d | string | 可选,结束日期 |
响应
Status: 200 OK
1
响应体
[
{
"id": 6,
"trade_no": "20191223111755687MO6",
"user_id": 1,
"total_amount": 8100,
"quantity": 1,
"pay_method": "WechatPay_App",
"pay_amount": 8100,
"pay_status": 0,
"level": "high",
"duration": 3,
"vip_info": {
"name": "黑钻会员",
"level": "high",
"price": 8100,
"duration": 3
},
"paid_at": null,
"user_deleted_at": null,
"platform_deleted_at": null,
"created_at": "2019-12-23 03:17:55",
"updated_at": "2019-12-23 03:17:55"
},
{
"id": 9,
"trade_no": "20191223152502114MO9",
"user_id": 1,
"total_amount": 9000,
"quantity": 1,
"pay_method": "Iap",
"pay_amount": 9000,
"pay_status": 0,
"level": "high",
"duration": 3,
"vip_info": {
"iap": "303",
"name": "黑钻会员",
"level": "high",
"price": 8100,
"duration": 3,
"ipa_price": 90
},
"paid_at": null,
"user_deleted_at": null,
"platform_deleted_at": null,
"created_at": "2019-12-23 07:25:02",
"updated_at": "2019-12-23 07:25:02"
}
]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# 查看单条订单
GET /api/v2/vip/orders/{order}
1
order
为 订单列表中返回的id
响应
Status: 200 OK
1
响应体
{
"id": 9,
"trade_no": "20191223152502114MO9",
"user_id": 1,
"total_amount": 9000,
"quantity": 1,
"pay_method": "Iap",
"pay_amount": 9000,
"pay_status": 0,
"level": "high",
"duration": 3,
"vip_info": {
"iap": "303",
"name": "黑钻会员",
"level": "high",
"price": 8100,
"duration": 3,
"ipa_price": 90,
"timezone": "Asia/Shanghai"
},
"paid_at": null,
"user_deleted_at": null,
"platform_deleted_at": null,
"created_at": "2019-12-23 07:25:02",
"updated_at": "2019-12-23 07:25:02"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 软删除订单
DELETE /api/v2/vip/orders/{order}
1
order
为 订单列表中返回的id
响应
Status 204 No Content
1
# VIP协议
GET /api/v2/vip/protocol
1
响应
Status: 200 OK
1
响应体
<h1>VIP协议</h1>
1
# 检测订单是否成功
GET /api/v2/vip/check-order/{orderId}
1
响应
Status: 200 OK
1
响应体
{
status: true
}
1
2
3
2
3
status
只有true和false, 当为true的时候,表示订单已经接受第三方支付的回调,成功购买了会员