合作方ID: 像 自我游 这样的合作方唯一标识ID,partnerId;
合作方商户ID: 提供产品的商户在 合作方 的商户唯一标识ID,如没有下级商户可传 0, partnerShopId;
马蜂窝供应商ID:提供产品的商户在 马蜂窝 的 商 户 唯 一 标 识 ID, mfwShopId;
合作方产品ID: 合作方 产品唯一标识ID,partnerProductId;
马蜂窝产品ID: 马蜂窝 产品唯一标识ID,mfwProductId;
1. 请求以及验证
· 马蜂窝提供的接口
· 请求方式 GET
· 请求url: https://openapi.mafengwo.cn/oauth2/token
请求参数:
参数名称 | 参数类型 | 是否必填 | 描述 |
grant_type | string | 是 | 固定值(client_credentials) |
client_id | string | 是 | 分配给合作方的client_id |
client_secret | string | 是 | 分配给合作方的client_secret |
接口返回参数/数据(JSON 格式数据包):
· 正常回执 {"accesstoken":"3a6312c6713bf06284f561240813b8a3","tokentype":"GET", "expire":7200}
· 错误回执 {"error":"invalid_request"}
· 马蜂窝提供的接口
· 接口地址: https://openapi.mafengwo.cn/deals + 业务url
· 请求方式: POST
接口请求参数:
参数名称 | 参数类型 | 是否必填 | 描述 |
partnerId | int | 是 | 合作方ID |
action | string | 是 | 请求接口的动作 |
sign | string | 是 | 请求数据的签名 |
timestamp | int | 是 | 请求发起的时间戳 |
nonce | string | 是 | 随机串 |
data | string(加密串) | 是 | 业务接口请求数据(需要加密) |
access_token | string | 是 | 合作方获取的token |
sign 签名算法
· sign = MD5(partnerId + action + timestamp + key + nonce + data)
action 请求的方法
· action 具体定义请参考各业务接口中对action 的定义
data 业务加密数据
· data 是JSON 的加密数据
· 该JSON 串是根据各个业务接口的需求分别定义的,具体可参见各业务接口中对data 参数的定义
· 加密规则 1.AES256/CBC/PKCS7Padding(PKCS7:block_size=16(bytes)) 2.对AES 加密数据进行一次base64 编码
接口回包数据 (加密的 JSON 数据):
参数名称 | 参数类型 | 是否必填 | 描述 |
code | int | 是 | 接口交互代码 |
message | string | 是 | 错误说明 |
data | string | 否 | 业务接口回包数据 |
· 回包数据需要加密,加密方式同上
· 回包数据为JSON 格式
· 参考样例:
//加密前
$partnerId = 1;
$action = 'changeProduct';
$timeStamp = '1491965247';
$nonce = 'HHIqIrPlWgu5MNZW';
$encodingAesKey = 'abcdefghijklmnopqrstuvwxyz012345';
$productRequetData = array('productId' => '10009','status' =
> '4'); //加密后
$data = 'RnzZtT1gN5i6pp5Kmx3exJyxxfge+3zbHfQrlMQ8cMOoNu/02Ll89HkdVbQG4DweB/dnuwi4lubj4G6ObspOoQ==';
$sign = '57baf7e4ee5beaf868e3adc894c8cc8b';
2. 产品接口说明
· 马蜂窝提供的接口
· url:/ticket/product/change
· action:changeProduct
· 合作方产品信息发生变动时,主动调用此接口进行变更通知
· 可通知产品下架,马蜂窝会下架产品
· 可通知产品上线,马蜂窝会重新拉取产品,运营进行审核后上线
· 可推送新产品,马蜂窝会拉取产品,运营进行审核后上线
· 马蜂窝会每天全量拉取产品
· 合作方产品的价格日历发生变动时主动调用此接口进行变更通知
接口请求业务数据对象: ChangeProduct
参数名称 | 参数类型 | 是否必填 | 描述 |
partnerProductId | string | required | 合作方产品ID |
partnerShopId | string | required | 合作方商户ID |
status | integer | required | 产品状态表 |
接口返回业务数据对象:ChangeProductResponse
参数名称 | 参数类型 | 是否必填 | 描述 |
mfwProductId | string | required | 马蜂窝产品ID |
产品状态表(status)
取值 | 描述 |
0 | 产品下架 |
1 | 产品上架 |
2 | 产品信息变化 |
3 | 产品的价格日历变化 |
4 | 推送新的产品 |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 产品变化成功 |
2000 | 产品下架失败 |
2001 | 产品上架失败 |
2002 | 产品信息变化失败 |
2003 | 产品的价格日历变化失败 |
2004 | 推送新的产品失败 |
· 马蜂窝主动调用的接口
· url:由合作方提供
· action:getProduct
· 马蜂窝主动调用此接口,获取合作方产品的基本信息
· 多点拉取方式,method 参数等于multi,该方式必须要实现,适用于马蜂窝拉取单个产品
· 批量拉取方式,method 参数等于page。适用于马蜂窝批量拉取合作方产品
获取合作方产品的基本信息请求对象 GetProduct
参数名称 |
参数类型 | 是否必填 |
描述 |
method |
string |
required | page:分页查询;multi:多个查询,支持单个 |
currentPage |
integer |
optional | 当前页数 1、2、3...., 当method=page 时必传 |
pageSize |
integer |
optional | 每页记录数默认值为 20,当method=page 时必传 |
partnerProductIds | array[string] | optional | 产品ID, 当method=multi 时必传 |
partnerShopId | string | required | 合作方商户ID |
获取合作方产品的基本信息返回对象 GetProductResponse
参数名称 | 参数类型 | 是否必填 | 描述 |
total | integer | required | 合作方产品总数量 |
data | array[Product] | required | 产品基本信息表集合 |
产品基本信息表(Product)
参数名称 |
参数类型 | 是否必填 |
描述 |
partnerProductId | string | required | 合作方产品ID |
partnerId |
integer |
required | 合作方ID,用以区分属性相同但合作方不同的门票 |
partnerShopId | string | required | 合作方商户ID |
salesType |
integer |
required | 参考门票细分品类表,默认为: 11 |
mfwPoiId | integer | required | 对应马蜂窝的POIID |
name |
string |
required | 供应商的票种名称,如:“大门票”、“故宫(钟表馆)”、“故宫(珍宝馆)”、 “冰川公园索道+印象丽江演出票”等,没有值时请输入“门票” |
status |
integer |
required | 0-下线(不可售)、1-上线(可售) |
ticketDays |
integer |
required | 行程天数,如单日票即为 1,两日票则为 2,... |
dayType |
integer |
required | 票售卖日期类型,1-平日、2-周末/节假日,主要处理一个产品多个对接码情形,比如xxx 商户故宫门票平日票和周末/节假日票对接码不同,默认为 0-不限 |
smsSender | integer | required | 0-马蜂窝发送、1-合作方发送 |
anteDays |
integer |
required | 提前预订天数,为 0 则为当天可 订、为 1 则为提前 1 天可订 |
anteTime |
string |
required | 提前预订时间(和anteTime 组合使用),格式为HH:mm:ss 默认为 00:00:00,如anteDays=1, anteTime=13:00:00 表示提前 1 天13:00:00 之前可订 |
minNum | integer | required | 单次最小购买数,>0 的整数 |
maxNum | integer | required | 单次最大购买数,>0 的整数 |
userType |
integer |
required | 门票适用人群,见门票适用人群表userType |
visitorUnit |
integer |
required | 人/份,每一份门票对应几个人, 如一份双人票,需要填写两个出行人的信息,最小值为 1 |
visitorInfoRule |
VisitorInfoRule |
required | 游玩人信息要求,见游玩人信息要求VisitorInfoRule |
ticketType |
integer |
required | 门票资源类型,0-不限,1-单票,2-套票 |
isUnion | integer | required | 是否联票,0-否,1-是 |
hasDeal | integer | required | 是否特惠,0-否,1-是 |
isSellingSeason |
integer |
required | 是否淡旺季,0-不限,1-淡季, 2-旺季 |
validityInterval |
integer |
required | 可用时间段,0-不限,1-日场, 2-夜场,3-上午场,4-下午场, 根据具体入园时间来进行区分 |
buyNote |
BuyNote |
optional | 购买须知,如费用包含、适用人群说明、适用方法、退改说明 等,下单页的预订协议里展示, 见购买须知BuyNote |
refundRule | RefundRule | required | 见退改规则RefundRule |
riskControl | RiskControl | optional | 基本风控限制 |
servicePhones |
array[ServicePhone] |
required | 服务电话,见服务电话ServicePhone |
门票细分品类表(salesType)
11-景区/场馆,90-节庆/嘉年华,91-游乐园,92-温泉票,94-通票/年票,95-游船票,
96-观光巴士票,默认为:11
取值 | 品类名称 |
11 | 景区/场馆 |
90 | 节庆/嘉年华 |
91 | 游乐园 |
92 | 温泉票 |
94 | 通票/年票 |
95 | 游船票 |
96 | 观光巴士票 |
门票适用人群表(userType)
取值 | 描述 |
1 | 成人票 |
2 | 儿童票 |
3 | 老人票 |
4 | 学生票 |
5 | 婴幼儿票 |
6 | 中/高考考生特惠票 |
7 | 中学生票 |
8 | 情侣票 |
9 | 女士票 |
10 | 男士票 |
11 | 双人票 |
12 | 三人票 |
13 | 团队票 |
14 | 大学生票 |
15 | 教师人票 |
16 | 残疾票 |
17 | 军人票 |
18 | 女大学生票 |
19 | 家庭票(2 大 1 小) |
20 | 家庭票(2 大 2 小) |
21 | 亲子票(1 大 1 小) |
游玩人信息要求(VisitorInfoRule)
参数名称 | 参数类型 | 是否必填 |
描述 |
visitorMode |
integer |
required | 0-不需要游玩人信息,1-每单仅需一名游玩人信息, 2-每张票需要一名游玩人信息 |
name | boolean | optional | 是否需要中文姓名 true 是, false 否 |
pinyin | boolean | optional | 是否需要中文姓名拼音 true 是, false 否 |
mobile | boolean | optional | 是否需要电话 true 是, false 否 |
gender | boolean | optional | 是否需要性别 true 是, false 否 |
boolean | optional | 是否需要邮箱地址 true 是, false 否 | |
idType |
integer |
optional | 所需证件类型,0-不需要,1-身份证,2-护照,3-军官证,4-士兵证,5-台胞证,6-回乡证,7-台湾通行证,8-港澳通行证,9-户口簿、10-出生证明,11-其他 |
退改规则(RefundRule)
参数名称 |
参数类型 | 是否必填 |
描述 |
refundType |
integer |
required | 退改类型,0-不可退,1-随时退,2-有条件退 |
partRefund |
integer |
required | 是否支持部分退,0-支持部分退,1-不支持部分退。如果不支持部分退, 则退款类型必须为有条件退, refundType=2 |
refundNote | string | required | 退款说明 |
refundStairsRules |
array[RefundStairsRule] |
optional | 有条件退具体退款规则[见refundStairsRules] |
有条件退款具体规则(RefundStairsRule)
参数名称 |
参数类型 | 是否必填 |
描述 |
refundFeeMode |
integer |
required | 退款手续费类型,具体见退款手续费类型表(refundFeeMode) |
refundFee | number(double) | required | 退款手续费 |
refundTimeType |
integer |
required | 退款时间类型,0-无时间限制,1-有时间限制 |
refundTime |
integer |
optional | 退款时间,refundTimeType=1 时必填,以使用日期当天 00:00:00 为准相隔时间 戳,比如使用日期前 1 天 12:00 则refundTime=-43200,使用日期后一天12:00 则refundTime=43200 |
退款手续费类型表(refundFeeMode)
取值 |
描述 |
0 | 无手续费 |
1 | 每张票扣除多少手续费,精确到分。如每张票扣除 2.33 此时refundFee=2.33 |
2 | 每笔订单扣除多少手续费,精确到分。如每笔扣除 23.33 此时 refundFee = 23.33 |
3 | 扣除手续费为订单销售价格的百分比,小数点后保留两位。如收取 23%手续费,此时refundFee=0.23 |
基本风控(RiskControl)
参数名称 | 参数类型 | 是否必填 |
描述 |
order |
integer |
optional | 每笔订单最大预订数量,0 表示不限制数量,默认为 0 |
phone |
integer |
optional | 每个手机号最大预订数量,0 表示不限制数量,默认为 0 |
idNumber |
integer |
optional | 每个证件号最大预订数量,0 表示不限制数量,默认为 0 |
ip |
integer |
optional | 每个ip 最大预订数量,0 表示不限制数量,默认为 0 |
partnerShopId |
integer |
optional | 每个商户id 最大预订数量,0 表示不限制数量,默认为 0 |
uid |
integer |
optional | 每个马蜂窝账户最大预订数量,0 表示不限制数量,默认为 0 |
phoneSameDay |
integer |
optional | 同游玩日同手机号最大预订数量,0 表示不限制数量,默认为 0 |
idNumberSameDay |
integer |
optional | 同游玩日同证件号最大预订数量,0 表示不限制数量,默认为 0 |
partnerShopIdSameDay |
integer |
optional | 同游玩日同商户产品最大预订数量,0 表示不限制数量,默认为 0 |
uidSameDay |
integer |
optional | 同游玩日同马蜂窝帐号最大预订数量,0 表示不限制数量,默认为 0 |
phoneSameIdNumber |
integer |
optional | 同手机号同身份证最大预订数量,0 表示不限制数量,默认为 0 |
服务电话(ServicePhone)
参数名称 | 参数类型 | 是否必填 | 描述 |
phone | string | required | 服务电话号码 |
startTime | string | required | 服务开始时间,格式HH:mm:ss,默认值 00:00:00 |
endTime | string | required | 服务结束时间,格式HH:mm:ss,默认值 23:59:59 |
购买须知表(BuyNote)
参数名称 | 参数类型 |
是否必填 |
描述 |
containProjects |
string |
required | 产品费用包含项目,对门票产品包含项目的详细描述 |
exclusiveProjects |
string |
optional | 费用不含,如不传值,则展示“一切个人消费及费用包含中未提及的任何费用” |
userTypeNote |
string |
required | 对于门票种类(人群)的补充说明,如老人票: 65 周岁及以上。成人票:指 12 周岁(含)~ 64 周岁(含)等 |
activeMinutes |
integer |
required | 购票后生效时间,单位为分,如activeMinutes=30,表示购票后 30 分钟凭证生效,默认为 0,0 为立即生效; |
validityType |
integer |
required | 门票有效期类型,0-绝对有效日期、1-相对有效日期 |
validityDays |
integer |
optional | validityType 为 1 时必填,兑换凭证后相对有效天数 |
validityEnd |
string |
optional | validityType 为 0 时必填,绝对有效日期截止时间,格式为yyyy-MM-dd,
如 2018-11-01;前台输出:指定出行日期至“2018 年 11 月 1 日有效 |
idNumberLimitDay |
integer |
optional | 身份证限购规则天数,单位为天,默认为 0, 表示无限购规则; |
idNumberLimitUnit | integer | optional | 身份证限购规则单位,0-张,1-次 |
idNumberLimit |
integer |
optional | 身份证购买限制数量,单位由idNumberLimitUnit 取值决定,默认为 0,表示无限购规则;
如idNumberLimitDay = 1, idNumberLimitUnit = 0, idNumberLimit =1,则表示同一身份证 1 天内最多可购买 1 张 |
phoneLimitDay | integer | optional | 手机号限购天数,单位为天 |
phoneLimitUnit | integer | optional | 手机号限购规则单位,0-张,1-次 |
phoneLimit |
integer |
optional | 身份证购买限制数量,单位由idNumberLimitUnit 取值决定,默认为 0,表示无限购规则;
如:phoneLimitDay = 1, phoneLimitUnit = 1,phoneLimit =2,则表示同一手机号 1 天内最多可购买 2 次 |
useWay | string | required | 0-无需换票,1-需换票 |
voucherType |
string |
required | 入园所需凭证,多选,如:身份证、商家电子码、二维码等 |
voucherUse |
srting |
required | 0-表示只需要 voucherType 中的一个凭证, 1-表示同时需要多个voucherType 里选择的凭证 |
voucherAddr | string | optional | 换票地点 |
voucherTimeStart | string | optional | 换票开始时间(文本) |
voucherTimeEnd |
string |
required | 换票结束时间(文本),若开始时间大于结束时间,则表示可跨天换票 |
useAddr | string | required | 入园地点(文本) |
useTimeStart | string | required | 入园开始时间(文本) |
useTimeEnd |
string |
required | 入园结束时间(文本),若开始时间大于结束时间,则表示可跨天入园 |
importantNote |
string |
optional | 补充说明条款,门票使用贴士信息,
如“同一订单内所有出行人须同时入园,不可分开出游,如不同时间入园,请提供不同证件号分批下单”等重要条款提示 |
invoiceNote | string | optional | 供应商开具发票说明信息 |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 获取推送产品信息成功 |
2100 | 获取推送产品信息失败 |
3. 获取合作方库存信息
· 马蜂窝主动调用的接口
· url: 由合作商提供
· action: getStock
· 马蜂窝主动调用此接口获取合作方产品的价格、库存等信息
· 定时拉取,获取产品的价格信息动态
· 支持单个查询
获取合作方库存信息请求对象 GetStock
参数名称 | 参数类型 | 是否必填 | 描述 |
partnerProductId | string | required | 合作方产品ID |
partnerShopId | string | required | 合作方商户ID |
获取合作方库存信息返回对象 GetStockResponse
参数名称 |
参数类型 | 是否必填 |
描述 |
data |
array[MFWSku] |
required | 马蜂窝库存信息集合,如马蜂窝库存id、售卖日期、售卖价格、分销价、市场价等,见马蜂窝库存信 息MFWSku |
马蜂窝库存信息(MFWSku)
参数名称 |
参数类型 | 是否必填 |
描述 | ||
partnerProductId | string | required | 合作方产品ID | ||
partnerShopId | string | required | 合作方商户ID | ||
priceType |
integer |
required | 价格类型,0-单天价格:适用于每一天的价格不同的门票;1-区间波动价格:适用于价格在一段时间内波动的门票;2-单一价格:适用于产品上线之后价格不随时间变化的门票; | ||
soldDate |
string |
required | 库存在马蜂窝的售卖日期,格式为yyyy-MM-dd,如 2000-01-01,当priceType=2 时传 0000-00-00 | ||
marketPrice | number | (double) | required | 库存市场价 | |
mfwPrice | number | (double) | required | 马蜂窝售卖价 | |
settlementPrice | number | (double) | required | 马蜂窝与合作方结算价 | |
limitMode |
integer |
required | 0-库存可卖数不限量,1-库存可卖数限量 | ||
remain |
integer |
required | 库存可卖数,limitMode 效 | =0 时不生 | |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 获取推送库存信息成功 |
3001 | 获取推送库存信息失败 |
4. 订单接口说明
· 马蜂窝主动调用的接口
· url: 由合作商提供
· action: preCheck
· 校验是否有足够创建订单的库存
接口请求业务数据对象:PreCheck
参数名称 | 参数类型 | 是否必填 | 描述 |
productId | string | 是 | 马蜂窝产品ID |
partnerShopId | string | required | 合作方商户ID |
partnerProductId | string | 是 | 合作方产品ID |
buyPrice | decimal(10,2) | 是 | 商品结算单价 (单位元) |
totalPrice | decimal(10,2) | 是 | 订单总金额 (单位元) |
quantity | int(32) | 是 | 商品购买数量 |
travelDate | string | 是 | 出行日期,格式 YYYY-MM-DD |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 订单校验成功 |
10060030 | 虚拟账户余额不足 |
10060031 | 账户过期 |
10060032 | 规则校验失败 |
10060033 | 库存不足 |
10060034 | 产品已下线 |
10060035 | 当前日期没有价格日历 |
10060036 | 无此产品编码或产品编码错误 |
10060037 | 该手机号购买数量超过购买限制 |
10060038 | 该身份证购买数量超过购买限制 |
10060039 | 该身份证号不可购买此产品 |
10060043 | 出行人手机号不正确 |
10060046 | 预订人手机号不正确 |
· 马蜂窝主动调用的接口
· url: 由合作商提供
· action: createOrder
· 如果需要校验订单价格,请在此接口中进行,并返回对应的错误代码
· 合作商户需要做创建订单请求的幂等。由于本接口的重要程度,马蜂窝会在地址请求失败时采取重试的操作。所以合作商户需要做好不会重复创建订单的处理。
接口请求业务数据对象:CreateOrder
参数名称 | 参数类型 | 是否必填 | 描述 |
orderId | string | 是 | 马蜂窝订单ID |
productId | string | 是 | 马蜂窝产品ID |
partnerShopId | string | required | 合作方商户ID |
partnerProductId | string | 是 | 合作方产品ID |
buyPrice | decimal(10,2) | 是 | 商品结算单价 (单位元) |
totalPrice | decimal(10,2) | 是 | 订单总金额 (单位元) |
quantity | int(32) | 是 | 商品购买数量 |
buyer | string | 否 | 联系人姓名 |
mobile | string | 否 | 联系人手机 |
string | 否 | 联系人邮箱 | |
visitorList | Visitor List | 否 | 出行人对象列表 |
travelDate | string | 是 | 出行日期,格式 YYYY-MM-DD |
出行人对象 Visitor
参数名称 | 参数类型 | 是否必填 | 描述 |
name | string | 否 | 中文姓名 |
pinyin | string | 否 | 姓名拼音 |
mobile | string | 否 | 游客手机号 |
idType | int(32) | 否 | 证件类型, 参见证件类型对应表 |
idNo | string | 否 | 证件号码 |
gender | string | 否 | 性别 |
接口返回业务数据对象:CreateOrderResponse
参数名称 | 参数类型 | 是否必填 | 描述 |
partnerOrderId | string | 是 | 合作方订单ID |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 订单创建成功 |
4001 | 需要人工确认 |
4002 | 规则校验失败 |
4003 | 价格校验失败 |
4004 | 缺失必要的出行人信息 |
4100 | 产品已下线 |
4101 | 库存不足 |
4102 | 当前日期没有价格日历 |
4999 | 其他错误 |
· 马蜂窝主动调用的接口
· url: 由合作商提供
· action: payOrder
· 用户在马蜂窝平台支付成功后,会调用此接口通知合作方
· (部分商家)如果合作方接口返回支付失败,马蜂窝会立刻给用户退款
接口请求业务数据对象: PayOrder
参数名称 | 参数类型 | 是否必填 | 描述 |
orderId | string | 是 | 马蜂窝订单ID |
partnerOrderId | string | 是 | 合作方订单ID |
接口返回业务数据对象: PayOrderResponse
参数名称 |
参数类型 | 是否必填 |
描述 |
orderId | string | 是 | 马蜂窝订单ID |
partnerOrderId | string | 是 | 合作方订单ID |
asyReturnVoucher | boolean | 是 | 是否异步回传电子票 1:是 0: 否 |
voucherType |
int(32) |
否 | 电子票类型,如 果 asyReturnVoucher=0 则必填 |
quantity |
int(32) |
否 | 门票数量,如果 asyReturnVoucher=0 则必填 |
voucherList |
voucher List |
否 | 电子票凭证码数组 如 果 asyReturnVoucher=0 则必填 |
电子票类型 voucherType
code 值 | 描述 |
1 | 商家一码一验码(一码一验:一张票对应一个码) |
2 | 商家一码多验码(一码多验:多张票对应一个码) |
Voucher 对象
参数名称 | 参数类型 | 是否必填 |
描述 |
voucher | string | 是 | 凭证码,如果拿不到凭证码,请用字符串'none'代替 |
voucherPic | string | 否 | 二维码凭证 |
idNo |
string |
否 | 用户证件号,如果是实名制票,且核销/退票都需要提供证件号码的时候,需要此字段 |
invalidTime | string | 否 | 核销/退票 时间 , 格式:YYYY-MM-DD hh:ii:ss |
status | int(32) | 是 | 凭证状态 |
Voucher.status 映射表
code 值 | 描述 |
1 | 未使用 |
2 | 已使用 |
3 | 已退款 |
4 | 已废弃 对应的门票还未消费,但是此凭证码作废了 |
5 | 申请退票中 |
6 | 退票拒绝 |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 支付成功 |
4001 | 支付失败 |
· 马蜂窝提供的接口
· url: /ticket/order/consumeNotice
· action: consumeNotice
· 当用户消费产品后,合作方可主动调用此接口通知马蜂窝订单的消费情况
接口请求业务数据对象: ConsumeNotice
参数名称 |
参数类型 | 是否必填 |
描述 |
orderId | string | 是 | 马蜂窝订单ID |
partnerOrderId | string | 是 | 合作方订单ID |
quantity | int(32) | 是 | 订单门票总数量 |
usedQuantity | int(32) | 是 | 订单门票已使用数量 |
voucherList |
Voucher List |
否 | 本次核销的凭证(如果一码多验可以不传此参) |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 接收成功 |
4001 | 接收失败 |
· 马蜂窝提供的接口
· url: /ticket/order/ticketingNotice
· action: ticketingNotice
接口请求业务数据对象:TicketingNotice
参数名称 | 参数类型 | 是否必填 | 描述 |
orderId | string | 是 | 马蜂窝订单ID |
partnerOrderId | string | 是 | 合作方订单ID |
ticketingType | int(32) | 是 | 出票状态:1 出票成功 2 出票失败 |
voucherType | int(32) | 否 | 电子票类型 |
quantity | int(32) | 否 | 门票数量 |
voucherList | Voucher List | 否 | 电子票凭证对象列表 |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 接收成功 |
4001 | 此订单已通知过出票 |
4999 | 接收失败 |
· 马蜂窝主动调用的接口
· url: 由合作商提供
· action: queryOrder
· 马蜂窝用于查询订单状态
接口请求业务数据对象:QueryOrder
参数名称 | 参数类型 | 是否必填 | 描述 |
orderId | string | 是 | 马蜂窝订单ID |
partnerOrderId | string | 是 | 合作方订单ID |
partnerShopId | string | 是 | 合作方商户ID |
接口返回业务数据对象:QueryOrderResponse
参数名称 | 参数类型 | 是否必填 | 描述 |
orderId | string | 是 | 马蜂窝订单ID |
partnerOrderId | string | 是 | 合作方订单ID |
status | int(32) | 是 | 订单状态 |
quantity | int(32) | 是 | 订单总票数 |
usedQuantity | int(32) | 是 | 订单已经使用的总票数 |
refundedQuantity | int(32) | 是 | 订单已经退款的总票数 |
voucherType | int(32) | 是 | 凭证类型 |
voucherList | Voucher List | 是 | 消费凭证信息 |
订单状态 QueryOrderResponse.status 映射表
code 值 | 描述 |
1 | 创建成功 |
2 | 创建失败 |
3 | 支付成功 |
4 | 支付失败 |
5 | 出票成功 |
6 | 出票失败 |
· 马蜂窝主动调用的接口
· url: 由合作商提供
· action: refundApply
· 马蜂窝向合作方提交退款申请, 用退款流水号标记退款申请唯一性
· 马蜂窝提交退款申请后,请准确返回此退款流水号的退款进度code
接口请求业务数据对象: RefundApply
参数名称 |
参数类型 | 是否必填 |
描述 |
orderId | string | 是 | 马蜂窝订单ID |
refundId | string | 是 | 马蜂窝退款流水号 |
partnerOrderId | string | 是 | 合作方订单ID |
vouchers | string List | 是 | 退票对应的凭证码列表 |
idNos | string List | 否 | 退票对应的证件号码 |
refundQuantity | int(32) | 是 | 要求退票的数量 |
buyPrice | decimal(10,2) | 是 | 商品结算单价 (单位元) |
unitPrice | decimal(10,2) | 否 | 马蜂窝用户下单的单价 |
refundFee | decimal(10,2) | 是 | 根据退款规则合作方扣除的费用 |
refundTime |
string |
是 | 用户申请退款的时间 YYYY-MM- DD HH:ii:ss |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 退款申请接收成功 |
2000 | 同意退改,可直接退费给用户,无需走退款申请流程 |
4001 | 已退款 |
4004 | 不支持退款 |
4005 | 订单已消费,不可退款 |
4999 | 其他错误 |
· 马蜂窝提供的接口
· url: /ticket/order/refundNotice
· action: refundNotice
· 合作方退款审批完毕后,可以回调通知马蜂窝退款结果
接口请求业务数据对象:RefundNotice
参数名称 | 参数类型 | 是否必填 | 描述 |
orderId | string | 是 | 马蜂窝订单ID |
refundId | int(32) | 是 | 马蜂窝退款流水号 |
partnerOrderId | string | 是 | 合作方订单ID |
quantity | int(32) | 是 | 订单总票数 |
usedQuantity | int(32) | 是 | 订单已经使用的总票数 |
refundedQuantity | int(32) | 是 | 订单已经退款的总票数 |
refundState | int(32) | 是 | 1 同意退改, 2 不同意退改 |
vouchers | string List | 是 | 退票对应的凭证码列表 |
refundFee | decimal(10,2) | 是 | 合作方收取的退票费用 |
接口 code 交互代码映射表
code 值 | 描述 |
1000 | 接收成功 |
4001 | 接收失败 |