# 券
# 发券基本流程
1)首先在猫酷后台创建待投放的券模板
2)以邮件的方式通知猫酷的开发者管理人员,需要投放那些券给到哪个开发者应用,且提相关参数给到猫酷的开发者管理人员。(具体参数请咨询猫酷的开发者管理人员)
3)由猫酷的开发者管理人员把相关的券模板投放到开发者应用下
4)第三方开发者调用【获取券模板投放信息接口】获取相关发券数据
5)根据【获取券模板投放信息接口】获取到的数据调用【发券接口】进行发券
# 获取券模板投放信息V4
TIP
返回开发者已拥有的全部券模板集合,如果开发者需要进行发券则必须先调用此接口获取已经投放给开发者的券模板数据,然后再调用发券接口进行发券
接口地址:https://openapi10.mallcoo.cn/Coupon/PutIn/v4/GetAll/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
PICMIDList | List<string> | 否 | 投放ID集合 |
PageSize | int | 是 | 每页条数(默认20,单次获取限制为最多100条) |
PageIndex | int | 是 | 当前页码(默认1,从1开始) |
# 调用示例
{
"PageIndex": 1,
"PageSize": 10
}
2
3
4
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
MallName | string | 是 | 商场名称 |
MallLogo | string | 否 | 商场Logo |
PICMID | string | 是 | 投放ID |
StoreCount | int | 是 | 库存总数(此券在本开发者下最多可以发放的券数量) |
StoreOverCount | int | 是 | 剩余库存(此券在本开发者下的剩余可发放的券数量) |
IsEPMaxGetInfinite | bool | 是 | 是否开启每人无限领取 (如果为true,则不对同一用户的领取数量做限制) |
EPMaxGet | int | 是 | 每人最多领取数量 (此券针对同一用户在本开发者下最多可领取的数量) |
IsEDMaxGetInfinite | bool | 是 | 是否开启每日无限领取 (如果为true,则不对每日发券的数量做限制) |
EDMaxGet | int | 是 | 每日最多领取数量(此券针对当天在本开发者下最多可领取的数量) |
EDMaxGetOverplus | int | 否 | 每日最多领取数量剩余[只有关闭每日无限领取此字段才有值且才有效] |
IsEPEDMaxGetInfinite | bool | 是 | 是否开启每人每日无限领取(如果为true,则不对每人每日数量做限制) |
EPEDMaxGet | int | 是 | 每人每日最多领取数量(此券针对当天的同一用户在本开发者下最多可领取的数量) |
RuleNo | string | 是 | 券模板编号 |
Name | string | 是 | 券标题(名称) |
Subtitle | string | 否 | 券副标题 |
SingleCosts | double | 否 | 单张成本[元] |
Subsidy | double | 否 | 单张补贴[元] |
Type | int | 是 | 卡券类型(详情看CouponType枚举字典) |
ReduceMoney | double | 否 | 减免金额【代金券专用】 |
Deductible | double | 否 | 抵扣条件(消费满多少元可用。如不写则默认:消费满任意金额可用)[元]【代金券专用】 |
DiscountAmount | double | 否 | 折扣额度【折扣券专用】 |
InsteadMoney | double | 否 | 抵用金额(元)【停车券专用】 |
InsteadTime | long | 否 | 抵消时常(分钟)【停车券专用】 |
Desc | string | 否 | 简介 |
ConsumerHotline | string | 否 | 客服电话 |
IndateType | int | 是 | 有效期类别(详情请看IndateType枚举) |
IndateDesc | string | 是 | 有效期描述(按照有效期类别动态拼接的友好中文描述) |
FixedDateBegin | DateTime | 否 | 固定日期[开始] (IndateType == 2时有效) |
FixedDateEnd | DateTime | 否 | 固定日期[结束] (IndateType == 2时有效) |
DelayEffectiveDays | int | 否 | 延后生效天数 (IndateType == 3时有效) |
DelayEffectiveTime | TimeSpan | 否 | 延后生效具体时分秒(IndateType == 3时有效) |
EffectiveDays | int | 否 | 有效天数(IndateType == 3时有效) |
EffectiveTime | TimeSpan | 否 | 有效天数具体时分秒(IndateType == 3时有效) |
DateCycleType | int | 否 | 相对有效期周期类别(详情看DateCycleType枚举字典,这里只返回int类型) |
PartTimeList | List< int> | 否 | 每周可用时段集合(存储:1 [代表周一],2 [代表周二]...)(注:无值表示不限制周几可用) |
Verification | int | 是 | 核销方(1:不用核销 2:商场 3:商家) |
JoinShopList | List<JoinShop> | 否 | 参与商家集合(核销商户)(注:当核销方为商家时,此处必定有值) |
ExchangeInfo | string | 否 | 兑换说明【兑换券专用】 |
YouHuiInfo | string | 否 | 优惠说明【优惠券专用】 |
DPTList | List<DailyPartTime> | 否 | 每日可用时段(注:无值表示任意时段可用) |
UseDesc | string | 是 | 使用须知(如使用的具体时间,使用的地点与注意事项)(注:此处是富文本框值) |
# JoinShop
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
ID | long | 是 | 猫酷商家ID |
Name | string | 是 | 商家名称 |
Logo | string | 否 | 商家Logo地址 |
# DailyPartTime
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Week | int | 是 | 星期【1-7】(存储:1 [代表周一],2 [代表周二]...) |
TimeBegin | TimeSpan | 是 | 适用时段[开始] |
TimeEnd | TimeSpan | 是 | 适用时段[结束] |
# 返回示例
{
"Code": 1,
"Data":
[
{
"MallLogo": "http://i1.mallcoo.cn/sp_mall/6ek6l2b0-3315-4465-a50d-62d913a31e87_0.jpg",
"MallName": "蓝天白云(勿随意修改)",
"PICMID": "dmTVs41pbbMQEGs6JuicMr45b3eMcyZYrQvHWpFJ2jU=",
"StoreCount": 1,
"StoreOverCount": 1,
"EPMaxGet": 0,
"IsEPMaxGetInfinite": true,
"EDMaxGet": 0,
"IsEDMaxGetInfinite": true,
"EDMaxGetOverplus": 0,
"EPEDMaxGet": 0,
"IsEPEDMaxGetInfinite": true,
"RuleNo": "KQ10296202005060003",
"Name": "投放测试050605",
"Subtitle": "测试券投放",
"SingleCosts": 30.0,
"Subsidy": 30.0,
"Type": 1,
"ReduceMoney": 27.0,
"Deductible": null,
"DiscountAmount": null,
"InsteadMoney": 0.0,
"InsteadTime": 0,
"Desc": "价值27元代金券一张",
"ConsumerHotline": "1001",
"IndateType": 3,
"IndateDesc": "领券后当天生效,生效第30天失效",
"FixedDateBegin": "0001/01/01 00:00:00",
"FixedDateEnd": "0001/01/01 00:00:00",
"DelayEffectiveDays": 0,
"DelayEffectiveTime": "00:00:00",
"EffectiveDays": 30,
"EffectiveTime": "23:59:59",
"DateCycleType": 1,
"PartTimeList": [
6,
7
],
"Verification": 3,
"JoinShopList": [
{
"ID": 1004321,
"Name": "测试(请勿接单!)",
"Logo": "http://i1.mallcoo.cn/sp_mall/62e2kbe9-8a25-4ead-9042-9aed360c3893_0.jpg"
},
{
"ID": 1002087,
"Name": "Jordan",
"Logo": "http://i1.mallcoo.cn/sp_mall/6ca26a50-c403-4648-be2c-cc0faaa54aa5_0.jpg"
}
],
"ExchangeInfo": null,
"YouHuiInfo": null,
"DPTList": [],
"UseDesc": "这里是须知!!!!qqq"
}
],
"Message": "成功"
}
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
# 通过用户ID发券
TIP
通过用户ID向指定的用户发送券
注:
1. 每次最多可批量发送 50 张券
2. 返回结果中,最外层的Code是调用接口的结果(一般是对入参和基本数据校验)
3. 返回结果中,内层的每个Code是每张券的发放结果
接口地址:https://openapi10.mallcoo.cn/Coupon/v2/Send/ByOpenUserID/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
UserList | List<UserInfo> | 是 | 用户信息集合 |
# UserInfo
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
BussinessID | string | 否 | 事务ID【可用重复】(相同的事务ID代表为同一个事务) (若有可能做“券作废操作”,则必须要有值,值由调用方自定义) |
TraceID | string | 是 | 追踪ID【不可重复】(保持请求的的唯一性,防止重复提交)【格式:自定义编号+AppID】 |
PICMID | string | 是 | 投放ID【由猫酷提供】 |
OpenUserID | string | 是 | 用户在当前【开发者账号+项目(集团)】下的唯一标识(相当于用户ID)【由猫酷提供】 |
# 调用示例
{
"UserList":
[
{
"BussinessID": null,
"TraceID": "5d025700bb79458ca73ae5050cf626ab",
"PICMID": "zlgZd1864dvRloTxWd2XGrfCCb+S9a2HNaOjEKnuLLA=",
"OpenUserID": "252117ba5367449c"
}
]
}
2
3
4
5
6
7
8
9
10
11
12
13
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
BussinessID | string | 否 | 事务ID |
TraceID | string | 是 | 追踪ID |
OpenUserID | string | 是 | 用户在当前【开发者账号+项目(集团)】下的唯一标识(相当于用户ID) |
PICMID | string | 是 | 投放ID |
Code | int | 是 | 返回状态 |
IsSuccess | bool | 是 | 券是否领取成功 |
FailReason | string | 失败时 | 失败原因 |
VCode | string | 成功时/重复提交时 | 验证码 |
EnableTime | DateTime | 成功时/重复提交时 | 启用时间 |
OverdueTime | DateTime | 成功时/重复提交时 | 过期时间 |
# 返回示例
{
"Code": 1,
"Data": [
{
"BussinessID": null,
"TraceID": "5d025700bb79458ca73ae5050cf626ab",
"OpenUserID": "f43e9069383bb4dc",
"PICMID": "jBBn1JzXBMf1rjE4GjGjrMjFF8W5InJFSqwmB04DjXc=",
"Code": 1,
"IsSuccess": true,
"FailReason": null,
"VCode": "011425754626",
"EnableTime": "2017-01-01T00:00:00",
"OverdueTime": "2017-04-29T23:59:59"
}
],
"Message": "成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 通过用户手机号码发券
TIP
通过用户手机号向指定的用户发送券
注:
1. 每次最多可批量发送 50 张券
2. 返回结果中,最外层的Code是调用接口的结果(一般是对入参和基本数据校验)
3. 返回结果中,内层的每个Code是每张券的发放结果
接口地址:https://openapi10.mallcoo.cn/Coupon/v2/Send/ByMobile/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
UserList | List<UserInfo> | 是 | 用户信息集合 |
# UserInfo
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
BussinessID | string | 否 | 事务ID【可用重复】(相同的事务ID代表为同一个事务) (若有可能做“券作废操作”,则必须要有值,值由调用方自定义) |
TraceID | string | 是 | 追踪ID【不可重复】(保持请求的的唯一性,防止重复提交)【格式:自定义编号+AppID】 |
PICMID | string | 是 | 投放ID【由猫酷提供】 |
Mobile | string | 是 | 手机号码 |
InternationalMobileCode | string | 否 | 国际电话区号 【当手机号为非中国大陆电话号码时,此字段填写国际电话区号。例:美国电话号码,这里填入1】 |
# 调用示例
{
"UserList":
[
{
"BussinessID": null,
"TraceID": "6d025700bb79458ca73ae5051cf626ab",
"PICMID": "jBBn1JzXBMf1rjE4GjGjrMjFF8W5InJFSqwmB04DjXc=",
"Mobile": "18626596531",
"InternationalMobileCode":"",
}
]
}
2
3
4
5
6
7
8
9
10
11
12
13
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
BussinessID | string | 否 | 事务ID |
TraceID | string | 是 | 追踪ID |
PICMID | string | 是 | 投放ID |
Code | int | 是 | 返回状态 |
IsSuccess | bool | 是 | 券是否领取成功 |
FailReason | string | 失败时 | 失败原因 |
VCode | string | 成功时/重复提交时 | 验证码 |
EnableTime | DateTime | 成功时/重复提交时 | 启用时间 |
OverdueTime | DateTime | 成功时/重复提交时 | 过期时间 |
# 返回示例
{
"Code": 1,
"Data":
[
{
"BussinessID": null,
"TraceID": "6d025700bb79458ca73ae5051cf626ab",
"PICMID": "jBBn1JzXBMf1rjE4GjGjrMjFF8W5InJFSqwmB04DjXc=",
"Code": 638,
"IsSuccess": false,
"FailReason": "[638]已经领取过",
"VCode": "981765754626",
"EnableTime": "2017-01-01T00:00:00",
"OverdueTime": "2017-04-29T23:59:59"
}
],
"Message": "成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 通过会员卡号发券
TIP
通过用户会员卡号向指定的用户发送券
注:
1. 每次最多可批量发送 50 张券
2. 返回结果中,最外层的Code是调用接口的结果(一般是对入参和基本数据校验)
3. 返回结果中,内层的每个Code是每张券的发放结果
接口地址:https://openapi10.mallcoo.cn/Coupon/v2/Send/ByMallCardNo/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
UserList | List<UserInfo> | 是 | 用户信息集合 |
# UserInfo
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
BussinessID | string | 否 | 事务ID【可用重复】(相同的事务ID代表为同一个事务) (若有可能做“券作废操作”,则必须要有值,值由调用方自定义) |
TraceID | string | 是 | 追踪ID【不可重复】(保持请求的的唯一性,防止重复提交)【格式:自定义编号+AppID】 |
PICMID | string | 是 | 投放ID【由猫酷提供】 |
MallCardNo | string | 是 | 猫酷会员卡号 |
# 调用示例
{
"UserList":
[
{
"BussinessID": null,
"TraceID": "6d025700bb79458ca73ae5051cf626ab",
"PICMID": "jBBn1JzXBMf1rjE4GjGjrMjFF8W5InJFSqwmB04DjXc=",
"MallCardNo": "1234567890"
}
]
}
2
3
4
5
6
7
8
9
10
11
12
13
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
BussinessID | string | 否 | 事务ID |
TraceID | string | 是 | 追踪ID |
PICMID | string | 是 | 投放ID |
Code | int | 是 | 返回状态 |
IsSuccess | bool | 是 | 券是否领取成功 |
FailReason | string | 失败时 | 失败原因 |
VCode | string | 成功时/重复提交时 | 验证码 |
EnableTime | DateTime | 成功时/重复提交时 | 启用时间 |
OverdueTime | DateTime | 成功时/重复提交时 | 过期时间 |
# 返回示例
{
"Code": 1,
"Data":
[
{
"BussinessID": null,
"TraceID": "6d025700bb79458ca73ae5051cf626ab",
"PICMID": "jBBn1JzXBMf1rjE4GjGjrMjFF8W5InJFSqwmB04DjXc=",
"Code": 638,
"IsSuccess": false,
"FailReason": "[638]已经领取过",
"VCode": "981765754626",
"EnableTime": "2017-01-01T00:00:00",
"OverdueTime": "2017-04-29T23:59:59"
}
],
"Message": "成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 券核销V2
TIP
此接口的主要功能是为了核销券系统所发出去的券,券的唯一查询条件就是验证码(VCode),券模板的核销方如果是商家则McShopID、CrmShopID、DevShopID三者必传其一,券模板的核销方如果是商场则三者都不传或传空。
注:
1. 每次最多可批量发送 100 张券
2. 返回结果中,最外层的Code是调用接口的结果(一般是对入参和基本数据校验)
3. 返回结果中,内层的每个Code是每张券的发放结果
接口地址:https://openapi10.mallcoo.cn/Coupon/Code/v2/BatchUse/ByVCodes/Standard/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Verification | int | 是 | 核销方 2:商场 3:商家 |
McShopID | long | 三选一 | 猫酷核销商户ID[如果核销方为商户则三选一] (如果此字段被赋值则以此为准) |
CrmShopID | string | 三选一 | CRM商户编号[如果核销方为商户则三选一](此编号必须在猫酷系统当中存在才可以) |
DevShopID | string | 三选一 | 开发者商户编号[如果核销方为商户则三选一](此编号必须在猫酷系统当中存在才可以) |
IsAllSuccess | bool | 是 | 是否必须全部成功(如果此字段等于true,有一张券核销失败则全部券都将核销失败) |
POSID | string | 否 | POS机编号 |
TradeSerialNo | string | 否 | 交易流水号 |
OrderNo | string | 否 | 订单编号 |
ThirdOperator | string | 否 | 第三方核销人 |
UseInfoList | BatchUseByVCodes_In | 是 | 要核销的券码信息集合 |
# BatchUseByVCodes_In
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
VCode | string | 是 | 券码 |
# 调用示例
{
"Verification":3,
"McShopID":1000068,
"CrmShopID":null,
"DevShopID":null,
"IsAllSuccess":false,
"POSID":null,
"TradeSerialNo":null,
"OrderNo":null,
"ThirdOperator":null,
"UseInfoList":[
{"VCode":"957032765080401"},
{"VCode":"957038238685725"}
]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
McShopID | long | 否 | 猫酷核销商户ID |
CrmShopID | string | 否 | CRM商户编号 |
DevShopID | string | 否 | 开发者商户编号 |
OperatorTime | DateTime | 否 | 核销时间 |
POSID | string | 否 | POS机ID【第三方核销的时候传入的】 |
TradeSerialNo | string | 否 | 流水号【第三方核销的时候传入的】 |
OrderNo | string | 否 | 订单编号【第三方核销的时候传入的】 |
ThirdOperator | string | 否 | 第三方核销人名称【第三方核销的时候传入的】 |
UseInfoList | BatchUseByVCodes_Out | 否 | 券核销结果 |
# BatchUseByVCodes_Out
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponRuleNo | string | 是 | 券模板编号 |
VCode | string | 是 | 券码 |
OperatorTime | DateTime | 是 | 核销时间 |
Code | int | 是 | 核销结果代码 |
CodeMsg | string | 是 | 核销结果描述 |
# 返回示例
{
"Code": 1,
"Data": {
"McShopID": 1000068,
"CrmShopID": null,
"DevShopID": null,
"POSID": "111",
"TradeSerialNo": "222",
"OrderNo": "333",
"ThirdOperator": "444",
"UseInfoList": [{
"CouponRuleNo":"KQ10008201903200008",
"VCode": "957038238685725",
"OperatorTime": "2019/03/20 10:27:29",
"Code": 1,
"CodeMsg": "成功"
}, {
"CouponRuleNo":"KQ10008201905210112",
"VCode": "957038238685726",
"OperatorTime": "2019/03/20 09:49:08",
"Code": 616,
"CodeMsg": "券已经被核销过,无法再次核销"
}]
},
"Message": "成功",
"Extension": []
}
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
# 券撤销核销V2
TIP
此接口的主要功能是为了因为操作失误造成把不需要核销的券核销掉之后,重新返还给用户的
接口地址:https://openapi10.mallcoo.cn/Coupon/Code/v2/CancelUse/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponInfoList | List<ReturnCoupon> | 是 | 待撤销券集合 |
# ReturnCoupon
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
VCode | string | 是 | 券码 |
TraceID | string | 是 | 追踪ID【不可重复(当前应用下必须唯一)】(保持请求的的唯一性,防止重复提交) |
# 调用示例
{
"CouponInfoList":
[
{
"VCode": "981765754626",
"TraceID": "d2b130ebd8f24967a87236c34f6d2b6a"
}
]
}
2
3
4
5
6
7
8
9
10
11
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
VCode | string | 是 | 券码 |
IsSuccess | bool | 是 | 操作是否成功 |
Code | int | 是 | 返回状态 |
Msg | string | 是 | 操作描述 |
TraceID | string | 是 | 追踪ID【不可重复(当前应用下必须唯一)】(保持请求的的唯一性,防止重复提交) |
# 调用示例
{
"Code": 1,
"Data":
{
"CouponInfoList":
[
{
"VCode": "981765754626",
"IsSuccess": true,
"Code": 1,
"Msg": "撤销核销成功",
"TraceID": "d2b130ebd8f24967a87236c34f6d2b6a"
}
]
},
"Message": "成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 券核销检查
TIP
此接口的主要功能是在核销券之前验证此券是否可以核销并获取到券的详情信息,如果是商户方调用此接口请务必传入商户信息以免核销失败。因为此接口在传入了商户信息后会检查此商户是否可以核销当前的券
注:不支持核销“停车券”
接口地址:https://openapi10.mallcoo.cn/Coupon/Code/v1/Check/ByVCode/Standard (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
VCode | string | 是 | 券码 |
McShopID | long | 商户核销三选一 | 猫酷核销商户ID |
CrmShopID | string | 商户核销三选一 | CRM商户编号 |
DevShopID | string | 商户核销三选一 | 开发者商户编号 |
# 调用示例
{
"VCode": "013936298566",
"McShopID": 1000035,
"CrmShopID": null,
"DevShopID": null,
}
2
3
4
5
6
7
8
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponID | long | 是 | 券ID |
CouponName | string | 是 | 券标题(名称) |
CouponRuleNo | string | 是 | 券模板编号 |
CouponSubtitle | string | 否 | 券副标题 |
CouponType | int | 是 | 卡券类型 |
CouponDesc | string | 是 | 券简介 |
EnableTime | DateTime | 是 | 启用时间 |
OverdueTime | DateTime | 是 | 过期时间 |
PartTimeList | List< int> | 是 | 每周可用时段集合(存储:1 [代表周一],2 [代表周二]...) |
DPTList | List<DailyPartTime> | 是 | 每日可用时段 |
SingleCosts | double | 否 | 单张成本(元) |
Subsidy | double | 否 | 单张补贴(元) |
ReduceMoney | double | 否 | 减免金额(元)【代金券专用】 |
Deductible | double | 否 | 抵扣条件(消费满多少元可用。如不写则默认:消费满任意金额可用)[元]【代金券专用】 |
DiscountAmount | double | 否 | 折扣额度【折扣券专用】(1 ~ 9.9) [1代表一折] |
InsteadMoney | double | 否 | 抵用金额(元)【停车券专用】(与抵消时常二选一有值) |
InsteadTime | long | 否 | 抵消时常(分钟)【停车券专用】(与抵扣金额二选一有值) |
ExchangeInfo | string | 否 | 兑换说明【兑换券专用】 |
PromotionInfo | string | 否 | 优惠说明【优惠券专用】 |
UseState | int | 是 | 使用状态 1:已使用 2:未使用 |
UseTime | DateTime | 否 | 使用时间【已使用的券有值】 |
Mobile | string | 否 | 用户手机号 |
# DailyPartTime
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Week | int | 是 | 星期【1-7】(存储:1 [代表周一],2 [代表周二]...) |
TimeBegin | TimeSpan | 是 | 适用时段[开始] |
TimeEnd | TimeSpan | 是 | 适用时段[结束] |
# 返回示例
{
"Code": 616,
"Data": {
"CouponID": "88888",
"CouponName": "代商户券31501",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"CouponDesc": "价值1元代金券一张",
"EnableTime": "2017-03-15T00:00:00",
"OverdueTime": "2027-04-13T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"SingleCosts":0,
"Subsidy":0,
"ReduceMoney": 1,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null,
"UseState": 1,
"UseTiem": "2017-05-02T11:38:09",
"Mobile": "13821523655"
},
"Message": "券已经被核销过,无法再次核销"
}
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
# 通过手机号码查询可用券接口
TIP
此接口的主要功能是在核销券之前获取到当前用户可以核销的券列表,如果是商户方调用此接口请务必传入商户信息。因为此接口在传入了商户信息后会检查此商户是否可以核销当前的券
接口地址:https://openapi10.mallcoo.cn/Coupon/v1/GetCanUse/ByMobile/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
InternationalMobileCode | string | 否 | 国际电话区号 【当手机号为非中国大陆电话号码时,此字段填写国际电话区号。例:美国电话号码,这里填入1】 |
Mobile | string | 是 | 手机号码 |
CouponType | int | 否 | 券类型 |
McShopID | long | 商户核销三选一 | 猫酷核销商户ID |
CrmShopID | string | 商户核销三选一 | CRM商户编号 |
DevShopID | string | 商户核销三选一 | 开发者商户编号 |
MinID | long | 是 | 查询小于XX券ID的数据(首页则填写0)【分页查询这里传入的是本次请求返回结果中最小的那个券ID即可】 |
PageSize | int | 是 | 每页查询数据的数量 |
# 调用示例
{
"InternationalMobileCode":"",
"Mobile": "18626596531",
"CouponType": 0,
"McShopID": 0,
"CrmShopID": null,
"DevShopID": null,
"PageSize": 5,
"MinID": 0
}
2
3
4
5
6
7
8
9
10
11
12
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponInfoList | List<CouponInfo> | 是 | 券详情集合 |
Count | int | 是 | 当前查询条件下的数据总数量 |
# CouponInfo
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponID | long | 是 | 券ID |
CouponName | string | 是 | 券标题(名称) |
CouponRuleNo | string | 是 | 券模板编号 |
CouponSubtitle | string | 否 | 券副标题 |
CouponType | int | 是 | 卡券类型 |
VCode | string | 是 | 券码 |
CouponDesc | string | 是 | 券简介 |
EnableTime | DateTime | 是 | 启用时间 |
OverdueTime | DateTime | 是 | 过期时间 |
PartTimeList | List< int> | 是 | 每周可用时段集合(存储:1 [代表周一],2 [代表周二]...) |
DPTList | List<DailyPartTime> | 是 | 每日可用时段 |
ReduceMoney | double | 否 | 减免金额(元)【代金券专用】 |
Deductible | double | 否 | 抵扣条件(消费满多少元可用。如不写则默认:消费满任意金额可用)[元]【代金券专用】 |
DiscountAmount | double | 否 | 折扣额度【折扣券专用】(1 ~ 9.9) [1代表一折] |
InsteadMoney | double | 否 | 抵用金额(元)【停车券专用】 |
InsteadTime | long | 否 | 抵消时常(分钟)【停车券专用】 |
ExchangeInfo | string | 否 | 兑换说明【兑换券专用】 |
PromotionInfo | string | 否 | 优惠说明【优惠券专用】 |
# DailyPartTime
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Week | int | 是 | 星期【1-7】(存储:1 [代表周一],2 [代表周二]...) |
TimeBegin | TimeSpan | 是 | 适用时段[开始] |
TimeEnd | TimeSpan | 是 | 适用时段[结束] |
# 返回示例
{
"Code": 1,
"Data": {
"CouponInfoList": [
{
"CouponID": 415037,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "011621453314",
"EnableTime": "2017-05-02T00:00:00",
"OverdueTime": "2017-05-31T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 415036,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "012828904152",
"EnableTime": "2017-05-02T00:00:00",
"OverdueTime": "2017-05-31T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 415035,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "017804164370",
"EnableTime": "2017-05-02T00:00:00",
"OverdueTime": "2017-05-31T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 414905,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "011183903010",
"EnableTime": "2017-04-21T00:00:00",
"OverdueTime": "2017-05-20T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 414904,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "012702929630",
"EnableTime": "2017-04-21T00:00:00",
"OverdueTime": "2017-05-20T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
}
],
"Count": 12
},
"Message": "成功"
}
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
100
101
102
103
104
105
106
107
108
109
110
111
# 通过会员卡号查询可用券接口
TIP
此接口的主要功能是在核销券之前获取到当前用户可以核销的券列表,如果是商户方调用此接口请务必传入商户信息。因为此接口在传入了商户信息后会检查此商户是否可以核销当前的券
接口地址:https://openapi10.mallcoo.cn/Coupon/v1/GetCanUse/ByMallCardNo/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
MallCardNo | string | 是 | 猫酷会员卡号 |
CouponType | int | 否 | 券类型 |
McShopID | long | 商户核销三选一 | 猫酷核销商户ID |
CrmShopID | string | 商户核销三选一 | CRM商户编号 |
DevShopID | string | 商户核销三选一 | 开发者商户编号 |
MinID | long | 是 | 查询小于XX券ID的数据(首页则填写0)【分页查询这里传入的是本次请求返回结果中最小的那个券ID即可】 |
PageSize | int | 是 | 每页查询数据的数量 |
# 调用示例
{
"MallCardNo": "8888888888",
"CouponType": 0,
"McShopID": 1000035,
"CrmShopID": "mydiycode",
"DevShopID": null,
"MinID":0,
"PageSize":5
}
2
3
4
5
6
7
8
9
10
11
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# Data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponInfoList | List<CouponInfo> | 是 | 券详情集合 |
Count | int | 是 | 当前查询条件下的数据总数量 |
# CouponInfo
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponID | long | 是 | 券ID |
CouponName | string | 是 | 券标题(名称) |
CouponRuleNo | string | 是 | 券模板编号 |
CouponSubtitle | string | 否 | 券副标题 |
CouponType | int | 是 | 卡券类型 |
VCode | string | 是 | 券码 |
CouponDesc | string | 是 | 券简介 |
EnableTime | DateTime | 是 | 启用时间 |
OverdueTime | DateTime | 是 | 过期时间 |
PartTimeList | List< int> | 是 | 每周可用时段集合(存储:1 [代表周一],2 [代表周二]...) |
DPTList | List<DailyPartTime> | 是 | 每日可用时段 |
ReduceMoney | double | 否 | 减免金额(元)【代金券专用】 |
Deductible | double | 否 | 抵扣条件(消费满多少元可用。如不写则默认:消费满任意金额可用)[元]【代金券专用】 |
DiscountAmount | double | 否 | 折扣额度【折扣券专用】(1 ~ 9.9) [1代表一折] |
InsteadMoney | double | 否 | 抵用金额(元)【停车券专用】 |
InsteadTime | long | 否 | 抵消时常(分钟)【停车券专用】 |
ExchangeInfo | string | 否 | 兑换说明【兑换券专用】 |
PromotionInfo | string | 否 | 优惠说明【优惠券专用】 |
# DailyPartTime
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Week | int | 是 | 星期【1-7】(存储:1 [代表周一],2 [代表周二]...) |
TimeBegin | TimeSpan | 是 | 适用时段[开始] |
TimeEnd | TimeSpan | 是 | 适用时段[结束] |
# 返回示例
{
"Code": 1,
"Data": {
"CouponInfoList": [
{
"CouponID": 415037,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "011621453314",
"EnableTime": "2017-05-02T00:00:00",
"OverdueTime": "2017-05-31T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 415036,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "012828904152",
"EnableTime": "2017-05-02T00:00:00",
"OverdueTime": "2017-05-31T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 415035,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "017804164370",
"EnableTime": "2017-05-02T00:00:00",
"OverdueTime": "2017-05-31T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 414905,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "011183903010",
"EnableTime": "2017-04-21T00:00:00",
"OverdueTime": "2017-05-20T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
},
{
"CouponID": 414904,
"CouponName": "开放平台专用代金",
"CouponRuleNo": "KQ10008201910220015",
"CouponSubtitle": null,
"CouponType": 1,
"VCode": "012702929630",
"EnableTime": "2017-04-21T00:00:00",
"OverdueTime": "2017-05-20T23:59:59",
"PartTimeList": [1,2,3,4,5,6,7],
"DPTList": [],
"CouponDesc": "价值500元代金券一张",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"PromotionInfo": null
}
],
"Count": 12
},
"Message": "成功"
}
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
100
101
102
103
104
105
106
107
108
109
110
111
# 通过券码获取该券的详细信息
TIP
此接口的主要功能是根据传入的券码来查询此券的详细信息
接口地址:https://openapi10.mallcoo.cn/Coupon/v1/Get/ByVCode/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
VCode | string | 是 | 券码 |
# 调用示例
{
"VCode": "957059999572419",
}
2
3
4
5
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# CouponInfo
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CouponID | long | 是 | 券ID |
CouponRuleNo | string | 是 | 券规则编号 |
Name | string | 是 | 券标题(名称) |
Subtitle | string | 是 | 券副标题 |
CouponType | int | 是 | 卡券类型【见枚举字典】 |
UseState | int | 是 | 使用状态(单券状态(1:已使用,2:已过期,3:待使用,5:已作废)) |
VCode | string | 是 | 券码 |
Desc | string | 是 | 券简介 |
ReduceMoney | double | 否 | 减免金额【代金券专用】 |
Deductible | double | 否 | 抵扣条件(消费满多少元可用。如不写则默认:消费满任意金额可用)[元]【代金券专用】 |
DiscountAmount | double | 否 | 折扣额度【折扣券专用】 |
InsteadMoney | double | 否 | 抵用金额(元)【停车券专用】 |
InsteadTime | double | 否 | 抵消时长(分钟)【停车券专用】 |
ExchangeInfo | string | 否 | 兑换说明【兑换券专用】 |
YouHuiInfo | string | 否 | 优惠说明【优惠券专用】 |
EnableTime | DateTime | 是 | 启用时间(有效期开始时间,从每日的00: 00:00开始(实际的时间格式中没有空格,加空格是防止样式乱了)) |
OverdueTime | DateTime | 是 | 过期时间(有效期结束时间,至每日的23: 59:59结束(实际的时间格式中没有空格,加空格是防止样式乱了)) |
PartTimeList | List<int> | 否 | 每周可用时段集合(存储:1 [代表周一],2 [代表周二]...) |
DPTList | List<DailyPartTime> | 否 | 每日可用时段 |
UseTime | DateTime | 否 | 使用时间(只有券使用状态为已使用时,才会出现) |
Verification | int | 是 | 核销方(1:不用核销 2:商场 3:商家) |
JoinShopList | List<JoinShop> | 否 | 核销商户列表 |
ConsumerHotline | string | 否 | 客服电话 |
IsPwdForVerify | bool | 是 | 是否开启口令验证[仅做展示用,开放平台暂不支持口令核销] |
ShowType | int | 是 | 展示类型(1:二维码,2:条形码,3:第三方条形码) |
OperationTips | string | 否 | 操作提示(例如:到店请主动出示券,由店员核销) |
UseDesc | string | 否 | 使用须知(如使用的具体时间,使用的地点与注意事项) |
Subsidy | double | 否 | 单张补贴[元] |
SingleCosts | double | 否 | 单张成本[元] |
# DailyPartTime
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Week | int | 是 | 星期【1-7】(存储:1 [代表周一],2 [代表周二]...) |
TimeBegin | TimeSpan | 是 | 适用时段[开始] |
TimeEnd | TimeSpan | 是 | 适用时段[结束] |
# JoinShop
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
ID | int | 是 | 猫酷商户ID |
Name | string | 是 | 商户名称 |
Logo | string | 否 | 商户logo |
# 返回示例
{
"Code": 1,
"Data": {
"CouponID": 415037,
"CouponRuleNo": "KQ10010201708030001",
"Name": "开放平台专用代金",
"Subtitle": null,
"CouponType": 1,
"UseState": 3,
"VCode": "96250147d521dd",
"Desc": "仅限停车使用",
"ReduceMoney": 500,
"Deductible": 0,
"DiscountAmount": 0,
"InsteadMoney": 0,
"InsteadTime": 0,
"ExchangeInfo": null,
"YouHuiInfo": null,
"EnableTime": "2017-05-02T00:00:00",
"OverdueTime": "2017-05-31T23:59:59",
"PartTimeList": null,
"DPTList": null,
"UseTime": null,
"Verification": 2,
"JoinShopList": null,
"ConsumerHotline": "021-15202633",
"IsPwdForVerify": false,
"ShowType": 1,
"OperationTips": "请到场出示二维码使用",
"UseDesc": "任意时段可用"
},
"Message": "成功"
}
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
# 券作废接口
TIP
当用户不再满足发券条件或发错时,第三方通过此接口将发出去的券进行作废
接口地址:https://openapi10.mallcoo.cn/Coupon/Code/v1/CancelSend/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
OpenUserID | string | 三选一 | 用户在当前【开发者账号+项目(集团)】下的唯一标识(相当于用户ID) |
MallCardNo | string | 三选一 | 会员卡号 |
Mobile | string | 三选一 | 用户手机号码 |
BussinessID | string | 是 | 事务ID【可用重复】(相同的事务ID代表为同一个事务)(发券时传入的BusinessID,会作废此BusinessID下的所有券) |
IsAllSuccess | bool | 是 | 是否必须同时作废成功(必填,默认为true,若为true,则有一张券作废失败时,则全都作废失败) |
# 调用示例
{
"OpenUserID": "f43e9069383bb4dc",
"BussinessID": "MZ17061910010100025",
"IsAllSuccess": true
}
2
3
4
5
6
7
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
VCode | string | 是 | 券码 |
IsSuccess | bool | 是 | 当前券是否作废成功 |
Code | int | 是 | 返回状态 |
Msg | string | 是 | 操作描述 |
# 返回示例
{
"Code": 1,
"Data": {
"CancelSendList": [
{
"VCode": "981765754626",
"IsSuccess": true,
"Code": 1,
"Msg": "成功"
}
]
},
"Message": "成功"
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 券冻结解冻接口
TIP
与 券作废接口 组合使用,当冻结后,用户将不能去使用券,一般用于业务退款流程
接口地址:https://openapi10.mallcoo.cn/Coupon/Code/v1/FreezeAndThaw/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
OpenUserID | string | 三选一 | 用户在当前【开发者账号+项目(集团)】下的唯一标识(相当于用户ID) |
MallCardNo | string | 三选一 | 会员卡号 |
Mobile | string | 三选一 | 用户手机号码 |
BussinessID | string | 是 | (发券时传入的事务ID[即:三级渠道ID],一旦传入则代表当前事物下的券通通冻结或解冻,请谨慎操作) |
IsFreeze | bool | 是 | 是否冻结【必填】(true:冻结 false:解冻[恢复正常]) |
IsAllSuccess | bool | 是 | 是否必须全部成功(如果此字段等于true,有一张不能冻结,则全部不会冻结)【必填】 |
# 调用示例
{
"Mobile":"15002193842",
"BussinessID":"HD01602237366643891038",
"IsFreeze":true,
"IsAllSuccess":true
}
2
3
4
5
6
7
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
IsSuccess | bool | 是 | 是否操作成功(如果业务不理会是否为重复操作,可直接根据此字段判断是否成功) |
FreezeAndThawList | Json | 是 | 返回数据 |
# FreezeAndThawList
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Name | string | 是 | 券名称 |
VCode | string | 是 | 券码 |
UseState | int | 是 | 券使用状态 |
Code | int | 是 | 返回状态(1是成功,677是重复操作(券已经处于正要操作到的状态,比如券已处于冻结,再去冻结则会返回此状态)) |
Message | string | 是 | 操作描述 |
# 返回示例
{
"Code": 1,
"Data": {
"IsSuccess": true,
"FreezeAndThawList": [
{
"Name": "无可用时段1111",
"VCode": "957075459992843",
"UseState": 2,
"Code": 1,
"Message": "成功"
}
]
},
"Message": "成功",
"Extension": []
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 导入第三方券码接口
TIP
此接口的主要功能是将第三方券码批量导入到猫酷中,指定一个使用第三方券码的券模板,然后批量导入第三方券码
注:每批次最多支持导入的第三方券码数量:1000 个,若要导入的第三方券码超出此数量,请分批次导入
接口地址:https://openapi10.mallcoo.cn/Coupon/Code/v1/ThirdVCode/BatchAdd/ (opens new window)
请求类型:POST
数据格式:application/json; charset=utf-8
参数类型:JSON
# 接口调用参数
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
CardVoucherRuleNo | string | 是 | 券编号 |
VCodeList | List<VCode> | 是 | 要导入的券码集合(1000 个以内) |
# VCode
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | string | 是 | 券码 |
# 调用示例
{
"CardVoucherRuleNo": "KQ10008201805160001",
"VCodeList": [
{"Code": "abc12346"},
{"Code": "abc12348"},
{"Code": "abc12346"}
]
}
2
3
4
5
6
7
8
9
10
# 返回结果
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
Code | int | 是 | 状态码 |
Data | Json | 是 | 返回数据 |
Message | string | 是 | 返回状态描述 |
# data
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
SumCount | int | 是 | 总数据量 |
FailureCount | int | 是 | 导入失败的数据量 |
FailureList | List<FailVCode> | 否 | 导入失败的券码集合 |
SuccessCount | int | 是 | 导入成功的数据量 |
# FailVCode
名称 | 数据类型 | 必填 | 说明 |
---|---|---|---|
VCode | VCode | 是 | 券码实体 |
Message | string | 是 | 错误信息 |
# 返回示例
{
"Code": 1,
"Data": {
"SumCount": 3,
"FailureCount": 3,
"FailureList": [{
"VCode": {
"Code": "abc12346"
},
"Message": "券码重复"
},
{
"VCode": {
"Code": "abc12346"
},
"Message": "抱歉,该券码已存在[数据已经存在]"
},
{
"VCode": {
"Code": "abc12348"
},
"Message": "抱歉,该券码已存在[数据已经存在]"
}
],
"SuccessCount": 0
},
"Message": "成功",
"Extension": []
}
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