#

# 发券基本流程

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
}
1
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": "成功"
}

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



# 通过用户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"
    }
  ]
}

1
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": "成功"
}

1
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":"",
    }
  ]
}

1
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": "成功"
}

1
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"
    }
  ]
}

1
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": "成功"
}

1
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"}
   ]
}

1
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": []
}

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



# 券撤销核销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"
      }
    ]
}

1
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": "成功"
}

1
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,
}

1
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": "券已经被核销过,无法再次核销"
}

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



# 通过手机号码查询可用券接口

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
}

1
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": "成功"
}

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
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
}

1
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": "成功"
}

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
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",
}

1
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": "成功"
}

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



# 券作废接口

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
}

1
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": "成功"
}

1
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
}
1
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": []
}

1
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"}
	]
}

1
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": []
}

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
Last Updated: 2021/3/8 下午3:59:39