# API接口

注:以下接口中$API_HOST对应值

  • 线下环境 $API_HOST = https://inf-openapi.apigw.test.meituan.com/api/sqt/openapi
  • 线上环境 $API_HOST = https://bep-openapi.meituan.com/api/sqt/openapi

# 1.查询周边运力

# 1.1 接口说明

名称 描述
功能 用于查询用户当前位置附近司机,包括当前位置附近的全部车型
HTTP方法 POST
请求方 第三方平台
响应方 商企通平台
url $API_HOST/dache/queryNearByDrivers
method dache.query.nearby.driver

# 1.2 业务参数

名称 类型 是否必填 示例 说明
supplyCode int 1 供给类型,1:打车
longitude double 116.375598 经度,GCJ-02(火星坐标系)
latitude double 40.099965 纬度,GCJ-02(火星坐标系)
carTypeIds String 1 运力类型,多个运力类型用","分割,举例:1,2,3

# 1.3 业务响应

名称 类型 是否非空 示例 说明
code int 0 业务状态码。0成功,非0标识失败
message string 参数错误 响应提示信息
data array 结果列表
data[].longitude double 116.375598 经度
data[].latitude double 40.099965 纬度
data[].carTypeId int 1 运力ID. 1:出租车 2:经济型 3:舒适型 4:六座商务 5:豪华 6:代驾
data[].partnerId int 1 运力供应商id
data[].partnerCarTypeId int 1 供应商车型id
data[].direction double 100 车头方向[0,360),0表示正北,数组顺时针
data[].distance int 100 接驾导航距离单位m
data[].duration int 100 接驾时长单位ms
data[].timestamp long 1557207812000 司机位置时间戳单位ms

# 1.4 示例结果

请求

{
    "supplyCode": 1,
    "entId": 617,
    "method": "dache.query.nearby.driver",
    "ts": 1629857463,
    "longitude": 116.488541,
    "latitude": 40.006428
}

响应

{
    "code": 0,
    "data": [
        {
            "longitude": 116.48602565294897,
            "latitude": 40.01041636564252,
            "direction": 1.0,
            "duration": 82166,
            "timestamp": 1629858386087,
            "distance": 493,
            "carTypeId": 1,
            "partnerId": 1,
            "partnerCarTypeId": 1
        },
        {
            "longitude": 116.484057,
            "latitude": 40.009581,
            "direction": 1.0,
            "duration": 86500,
            "timestamp": 1629858387152,
            "distance": 519,
            "carTypeId": 1,
            "partnerId": 1,
            "partnerCarTypeId": 1
        },
        {
            "longitude": 116.48508699999998,
            "latitude": 40.0116,
            "direction": -1.0,
            "duration": 107666,
            "timestamp": 1629858280444,
            "distance": 646,
            "carTypeId": 1,
            "partnerId": 1,
            "partnerCarTypeId": 1
        },
        {
            "longitude": 116.485522,
            "latitude": 40.011942,
            "direction": -1.0,
            "duration": 110833,
            "timestamp": 1629858367364,
            "distance": 665,
            "carTypeId": 1,
            "partnerId": 1,
            "partnerCarTypeId": 1
        },
        {
            "longitude": 116.48544976128473,
            "latitude": 40.01148654513889,
            "direction": -1.0,
            "duration": 103500,
            "timestamp": 1629858333542,
            "distance": 621,
            "carTypeId": 2,
            "partnerId": 1,
            "partnerCarTypeId": 2
        },
        {
            "longitude": 116.48499077690973,
            "latitude": 40.0117054578993,
            "direction": 300.0,
            "duration": 110000,
            "timestamp": 1629858382389,
            "distance": 660,
            "carTypeId": 2,
            "partnerId": 1,
            "partnerCarTypeId": 2
        },
        {
            "longitude": 116.4849888780382,
            "latitude": 40.01171006944445,
            "direction": 300.0,
            "duration": 110166,
            "timestamp": 1629858382399,
            "distance": 661,
            "carTypeId": 2,
            "partnerId": 1,
            "partnerCarTypeId": 2
        },
        {
            "longitude": 116.485522,
            "latitude": 40.011942,
            "direction": -1.0,
            "duration": 110833,
            "timestamp": 1629858314407,
            "distance": 665,
            "carTypeId": 2,
            "partnerId": 1,
            "partnerCarTypeId": 2
        }
    ],
    "message": "成功"
}

# 2.查询预估价

# 2.1 接口说明

名称 描述
功能 出发位置到目的地位置打车需要的价格预估,是下单前的参考价格
HTTP方法 POST
请求方 第三方平台
响应方 商企通平台
url $API_HOST/dache/queryEstimatedPrice
method dache.query.estimated.price

# 2.2 业务参数

名称 类型 是否必填 示例 说明
supplyCode int 1 供给类型,1:打车
fromLongitude double 116.375598 出发地经度,GCJ-02(火星坐标系)
fromLatitude double 40.099965 出发地纬度,GCJ-02(火星坐标系)
startPointName string xxx 出发地名称
endPointName string xxx 目的地名称
toLongitude double 116.975598 目的地经度,GCJ-02(火星坐标系)
toLatitude double 40.999965 目的地纬度,GCJ-02(火星坐标系)
reserveType int 1 服务类型,1.实时、2.预约
partnerId int 1 合作商id
carTypeId int 2 运力类型id.1:出租车 2:经济型 3:舒适型 4:六座商务 5:豪华 6:代驾
partnerCarTypeIdList string 1 具体车型id列表(同时预估以','分隔),传递时默认取参数中的车型与美团配置车型交集车型的预估价;不传时使用美团对合作方配置的车型集合预估价
departureTime long 1557207812000 出发时间.单位毫秒(ms).

# 2.3 业务响应

名称 类型 是否非空 示例 说明
code int 0 业务状态码。0成功,非0标识失败
message String 参数错误 响应提示信息
data object 结果列表
data.estimatePrices array 运力预估价格信息列表
data.estimatePrices[].partnerId int 1123 合作方ID
data.estimatePrices[].partnerName string 曹操出行 合作方名称
data.estimatePrices[].carTypeId int 1 运力id。1:出租车 2:经济型 3:舒适型 4:六座商务 5:豪华 6:代驾
data.estimatePrices[].carTypeName string 1 运力类型中文
data.estimatePrices[].partnerCarTypeId int 1 合作商车型ID:首汽专车,神州舒享型,阳光经济型等
data.estimatePrices[].partnerCarTypeName string 聚合经济型 合作商车型名称
data.estimatePrices[].estimateId string e100 预估标识,创建订单时使用,有效期10分钟
data.estimatePrices[].selfReduce int 100 平台自身优惠金额,单位分
data.estimatePrices[].partnerReduce int 100 合作方优惠金额,单位分
data.estimatePrices[].distance int 1 预估距离,单位米(m),不足1m,返回1
data.estimatePrices[].estimateTime int 60 预估时间,单位秒(S),不足60秒,返回60
data.estimatePrices[].travelPrice int 60 基础车费原价,单位分
data.estimatePrices[].distancePrice int 0 行驶里程费,单位分
data.estimatePrices[].timePrice int 60 行驶时长费,单位分
data.estimatePrices[].initPrice int 0 订单起步价,单位分
data.estimatePrices[].minPrice int 60 最少费用/套餐费,单位分
data.estimatePrices[].nightPrice int 0 夜间里程费,单位分
data.estimatePrices[].driveLongDistancePrice int 60 远途行使里程费,单位分
data.estimatePrices[].driveHighwayPrice int 0 高速费,单位分
data.estimatePrices[].deliveringStartTime int 60 预计送驾时间,单位秒
data.estimatePrices[].servicePrice int 60 服务金额费,单位分
data.estimatePrices[].dynamicPrice int 0 动态调价费,单位分
data.estimatePrices[].priceDifference int 0 基础车费补足,单位分
data.estimatePrices[].priceTagGroupId int 0 特殊区域计价ID
data.estimatePrices[].estimateUserPayableTotalPrice int 60 用户预估阶段应付原价,单位分
data.estimatePrices[].estimateUserPayableBalancePrice int 60 用户预估阶段应付尾款,单位分
data.estimatePrices[].estimateTotalDiscounts int 60 预估阶段总的优惠金额,单位分

# 2.4 示例结果

请求

{
    "supplyCode": 1,
    "entId": 617,
    "method": "dache.query.estimated.price",
    "ts": 1629857638,
    "fromLongitude": 116.488541,
    "fromLatitude": 40.006428,
    "toLongitude": 116.419153,
    "toLatitude": 40.003063,
    "reserveType": 1
}

响应

{
    "code": 0,
    "data": {
        "estimatePrice": [
            {
                "partnerId": 200000,
                "partnerName": "聚合服务商",
                "carTypeId": 2,
                "carTypeName": "经济",
                "partnerCarTypeId": 2000001,
                "partnerCarTypeName": "聚合经济型",
                "estimateId": "test-estimate-price",
                "estimatePrice": 7000,
                "selfReduce": 0,
                "partnerReduce": 0,
                "distance": 10000,
                "estimateTime": 1800000,
                "travelPrice": 7000,
                "distancePrice": 1500,
                "timePrice": 500,
                "initPrice": 1500,
                "minPrice": 0,
                "nightPrice": 0,
                "driveLongDistancePrice": 0,
                "driveHighwayPrice": 0,
                "deliveringStartTime": 0,
                "servicePrice": 0,
                "dynamicPrice": 0,
                "priceDifference": 3500,
                "priceTagGroupId": null,
                "estimateUserPayableTotalPrice": 7000,
                "estimateUserPayableBalancePrice": 7000,
                "estimateTotalDiscounts": 0
            }
        ]
    },
    "message": "成功"
}

# 3.提交下单

# 3.1 接口说明

名称 描述
功能 提交订单
HTTP方法 POST
请求方 第三方平台
响应方 商企通平台
url $API_HOST/dache/submitOrder
method dache.submit.order

# 3.2 业务参数

名称 类型 是否必填 示例 说明
supplyCode int 1 供给类型,1:打车
channelPartnerOrderId string 111111 合作方订单id
mobile string 18511111111 下单用户手机号,对于identifyType=50可以不传值,但是需要保证mobile能标识企业员工的唯一性
userIdentifyCode string 70000183 下单用户唯一标识值!对于某些企业mobile使用虚拟号且可能存在重复情况,使用此标识值标定企业下的员工/用户
identifyType int 30 20:邮箱 30:工号 50:手机号
fLng double 120.099965 起点经度
fLat double 40.099965 起点纬度
fromAddress String 北京市朝阳区望京东路4号 起点地址
tLng double 120.999965 终点经度
tLat double 40.399965 终点纬度
toAddress String 北京西站 终点地址
networkType String 4G 网络类型,例如wifi、4G
clientIp String 4G 客户端IP
reserveType int 1 订单类型1:实时单2:预约单
reserveTime long 1 预约时间,若为预约单需要有此时间
carTypeRequestList List<CarTypeRequestDTO 见下面CarTypeRequestDTO字段说明 用车请求参数

CarTypeRequestDTO字段说明

名称 类型 是否非空 示例 说明
estimateId string 1123 预估id
estimateAmount int 1 预估价,单位分
carTypeId int 1 运力id,例如出租车,舒适,豪华
partnerId int 1 供应商id
partnerCarTypeId int 1 具体车型id,例如曹操专车
originFee int 100 没有减去优惠的原始预估价,单位分

# 3.3 业务响应

名称 类型 是否非空 示例 说明
code int 0 业务状态码。0成功,非0标识失败
message string 参数错误 响应提示信息
data object 结果列表
data.mtOrderId string 28739832749183724129 美团订单号

# 3.4 示例结果

请求

{
    "supplyCode": 1,
    "entId": 617,
    "method": "dache.submit.order",
    "ts": 1629857312,
    "channelPartnerOrderId": "4fccd962-1ef3-4b0c-9442-6c40eb682387",
    "mobile": "1366489439",
    "userIdentifyCode": "70000185",
    "identifyType": 30,
    "fLng": 116.488541,
    "fLat": 40.006428,
    "fromAddress": "望京国际研发园(东南门)",
    "tLng": 116.419153,
    "tLat": 40.003063,
    "toAddress": "大屯路东(地铁站)",
    "networkType": "4G",
    "clientIp": "172.30.194.206",
    "reserveType": 1,
    "carTypeRequestList": [
        {
            "estimateId": "1000000001-1428228663219847187-1629351223174",
            "estimateAmount": 2380,
            "carTypeId": 2,
            "partnerCarTypeId": 1,
            "originFee": 2380
        }
    ]
}

响应

{
  "message": "成功",
  "code": 0,
  "data": 
    {
      "mtOrderId": "143035144198107963915429100000"
    }
}

# 4.取消订单

# 4.1 接口说明

名称 描述
功能 取消订单接口。例如:在有取消费的情况,接收响应超时,会再次发起取消调用,能返回取消费
HTTP方法 POST
请求方 第三方平台
响应方 商企通平台
url $API_HOST/dache/cancelOrder
method dache.cancel.order

# 4.2 业务参数

名称 类型 是否必填 示例 说明
supplyCode int 1 供给类型,1:打车
mtOrderId string 111111 美团订单号
channelPartnerOrderId string 18511111111 合作方订单号
cancelCode Integer 10 取消原因,参见附录【用户取消原因】
type int 1 取消类型,1:询问取消费;2:确认取消

# 4.3 业务响应

名称 类型 是否非空 示例 说明
code int 0 业务状态码。0成功,非0标识失败
message String 参数错误 响应提示信息
data Object 结果列表
data.cancelPrice int 100 取消费,单位为分

# 4.4 示例结果

请求

{
    "supplyCode": 1,
    "entId": 617,
    "method": "dache.cancel.order",
    "ts": 1629857773,
    "mtOrderId": "143009655634578641215429100000",
    "channelPartnerOrderId": "314253f8-912b-4c7e-9f25-bcd5ae4be8cc",
    "cancelCode": 10,
    "type": 2
}

响应

{
    "code": 0,
    "data": {
        "cancelPrice": 0
    },
    "message": "成功"
}

# 5.实时订单状态拉取

# 5.1 接口说明

名称 描述
功能 查询订单详情
HTTP方法 POST
请求方 第三方平台
响应方 商企通平台
url $API_HOST/dache/queryRealTimeOrder
method dache.query.real.time.order

# 5.2 业务参数

名称 类型 是否必填 示例 说明
supplyCode int 1 供给类型,1:打车
mtOrderId string 1851101101102112 美团订单号
channelPartnerOrderId string 18511111111 合作方订单号

# 5.3 业务响应

名称 类型 是否非空 示例 说明
code int 0 业务状态码。0成功,非0标识失败
message string 参数错误 响应提示信息
data object 结果列表
data.orderStatus int 订单状态,具体值参见订单状态定义
data.updateTime long 订单状态更新时间,unix时间戳,ms
data.mtOrderId string 美团订单号
data.channelPartnerOrderId string 合作方订单Id
data.userPriceInfo object 费用信息
data.userPriceInfo.userPayableTotalPrice int 用户应付原价(取消费不体现)
data.userPriceInfo.userPayableBalancePrice int 用户应付尾款(包含取消费)建议接入方使用此字段
data.userPriceInfo.cancelFee int 用户应付取消费
data.userPriceInfo.totalPrice int 【行程费用】行程基础类费用总额,单位分。完成履约行为后,除去高速费、停车费、感谢费、其他费用四项附加类费用项外订单产生的行程费用总和
data.userPriceInfo.driveStartPrice int 【行程费用】起步价。订单开始履约需要收取的费用,包含一定的里程和时长。注:当时长费和里程费不满起步价,但需要按照起步价金额收取的时候,里程费和时长费不需要传递,只传起步价金额。
data.userPriceInfo.driveDistance int 【行程描述】行驶里程,单位m
data.userPriceInfo.driveDistancePrice int 【行程费用】里程费。行驶里程产生的费用总额,里程费=正常里程费+夜间里程费
data.userPriceInfo.driveTime int 【行程描述】行驶时长,单位ms
data.userPriceInfo.driveTimePrice int 【行程费用】时长费。行驶时间产生的费用总额
data.userPriceInfo.driveLongDistancePrice int 【行程费用】远程费。超过一定里程之后收取的远途行驶里程费用总和
data.userPriceInfo.dynamicPrice int 【行程费用】动态调价费。根据供需关系对订单费用进行实时调价的金额。(此值可正可负,当为正值时美团会处展示成溢价费;当为负值时美团会展示为动态折扣)
data.userPriceInfo.servicePriceAmount int 行程费用】服务费
data.userPriceInfo.taxiMeterFee int 行程费用】出租车打表费
data.userPriceInfo.driveHighwayPrice int 【行后费用】高速费。订单履约过程产生的高速类费用,此费用为代收代付类费用不能开票,不能抽佣,不能使用红包抵扣
data.userPriceInfo.driveTollPrice int 【行后费用】通行费。订单履约过程产生的过路过桥类费用,此费用为代收代付类费用不能开票,不能抽佣,不能使用红包抵扣
data.userPriceInfo.driveParkPrice int 【行后费用】停车费。订单履约过程产生的停车类费用,此费用为代收代付类费用不能开票,不能抽佣,不能使用红包抵扣
data.userPriceInfo.driveOtherPrice int 【行后费用】其他费。订单履约过程中产生的其他代收代付类费用,如:清洁费等费用项,此费用为代收代付类费用不能开票,不能抽佣,不能使用红包抵扣
data.userPriceInfo.longDispatchPrice int 【行前费用】远途调度费
data.userPriceInfo.waitFee int 【行程费用】等待费。等待时间产生的费用总和
data.userPriceInfo.waitTime int 行程描述】等待时长,单位ms
data.userPriceInfo.waitFee int 【行程费用】等待费。等待时间产生的费用总和
data.userPriceInfo.thanksFee int 【行前费用】感谢费
data.userPriceInfo.eDispatchPrice int 【行程费用】电调费金额,单位:分。出租车场景下,国家允许收取的加价费用
data.userPriceInfo.partnerReducePrice int 【行程费用】折扣费用。正值
data.userPriceInfo.priceDifference int 【行程费用】基础车费补足(正常情况下>=0)
data.driverInfo object 接单后司机信息,状态编码为30~100情况下必传,接单后取消的场景也必须传,其他情况不传
data.driverInfo.name string 司机名称
data.driverInfo.lng double 司机当前经度
data.driverInfo.lat double 司机当前纬度
data.driverInfo.direction double 司机车头方位
data.driverInfo.phone string 司机电话(虚拟号)
data.driverInfo.orderNum int 司机接单数
data.driverInfo.carBrand string 车牌品牌
data.driverInfo.carTypeId int 运力类型id
data.driverInfo.carColor string 颜色
data.driverInfo.carPlateNo string 车牌
data.driverInfo.driverId string 司机id
data.driverInfo.driverPic string 司机头像图片地址
data.driverInfo.driverStar string 司机评分
data.driverInfo.carPic string 车辆图片地址
data.driverInfo.companyId string 车辆公司id
data.driverInfo.companyName string 公司名称
data.driverInfo.partnerId int 运力供应商id
data.driverInfo.partnerCarTypeId int 运力供应商车型id
data.payInfo object 支付相关信息
data.payInfo.payUtime long 支付时间
data.payInfo.payMode int
data.payInfo.payType string

# 5.4 示例结果

请求

{
    "supplyCode": 1,
    "entId": 617,
    "method": "dache.query.real.time.order",
    "ts": 1629857871,
    "mtOrderId": "143231256719104411736909100000",
    "channelPartnerOrderId": "1a888420a05e4123a190164687c0107a"
}

响应

{
    "code": 0,
    "data": {
        "userPriceInfo": {
            "userPayableBalancePrice": 200,
            "cancelFee": 0,
            "userPayableTotalPrice": 200,
            "totalPrice": 200,
            "driveStartPrice": 200,
            "driveDistance": 1000,
            "driveDistancePrice": 0,
            "driveTime": 60000,
            "driveTimePrice": 0,
            "driveLongDistancePrice": 0,
            "dynamicPrice": 0,
            "servicePriceAmount": 0,
            "taxiMeterFee": 0,
            "driveHighwayPrice": 0,
            "driveTollPrice": 0,
            "driveParkPrice": 0,
            "driveOtherPrice": 0,
            "longDispatchPrice": 0,
            "waitFee": 0,
            "waitTime": 0,
            "thanksFee": 0,
            "eDispatchPrice": 0,
            "partnerReducePrice": 0,
            "priceDifference": 0
        },
        "orderStatus": 8,
        "mtOrderId": "143231256719104411736909100000",
        "channelPartnerOrderId": "1a888420a05e4123a190164687c0107a",
        "updateTime": 1639149106000,
        "driverInfo": {
            "name": "mock姓氏师傅",
            "lng": null,
            "lat": null,
            "direction": null,
            "phone": null,
            "orderNum": 64,
            "carBrand": "mock车型",
            "carTypeId": 2,
            "carColor": "mock车黑色",
            "carPlateNo": "京A00085",
            "driverId": "7501810351",
            "driverPic": null,
            "driverStar": null,
            "carPic": null,
            "companyId": null,
            "companyName": null,
            "partnerId": 200000,
            "partnerCarTypeId": 2000001
        },
        "payInfo": {
            "payUtime": 1639149106000,
            "payMode": 1,
            "payType": "meituanpay"
        }
    },
    "message": "成功"
}

# 6.通知支付完成

# 6.1 接口说明

名称 描述
功能 合作方支付订单、取消费后通知美团
HTTP方法 POST
请求方 第三方平台
响应方 商企通平台
url $API_HOST/dache/notifyPaidResult
method dache.notify.paid.result

# 6.2 业务参数

名称 类型 是否必填 示例 说明
supplyCode int 1 供给类型,1:打车
mtOrderId string 111111 美团订单号
channelPartnerOrderId string 18511111111 合作方订单号
price int 100 支付金额,单位为分。取订单的应付尾款字段-userPayableBalancePrice

# 6.3 业务响应

名称 类型 是否非空 示例 说明
code int 0 0成功, 非0见附录 错误状态码
message int 0 失败原因描述,若成功值可为空
data object - -

# 6.4 示例结果

请求

{
    "supplyCode": 1,
    "entId": 617,
    "method": "dache.notify.paid.result",
    "ts": 1629858183,
    "mtOrderId": "142835622600087966587129100000",
    "channelPartnerOrderId": "06bd8376-e892-4b5b-873c-8b1ad9535e42",
    "price": 1000
}

响应

{
  "code": 0,
  "message": "成功",
  "data": null
}

# 7.订单事件变更推送

参见:订单状态变更推送

上次更新: 4/15/2022, 2:10:15 PM