# 通过收发件地址查询标准运费

> 本文档描述服务器端接收的消息或事件，详细说明参见[消息推送](/miniprogram/dev/framework/server-ability/message-push.md)。

事件英文名：query_single_waybill_fee

用户在下单页面选择收发货地址时进行查询

## 1. 消息参数

### 请求体 `Request Payload`

```json
[
  {
    "参数名": "ToUserName",
    "类型": "string",
    "说明": "快递公司小程序 UserName"
  },
  {
    "参数名": "FromUserName",
    "类型": "string",
    "说明": "微信团队的 OpenID （固定值）"
  },
  {
    "参数名": "CreateTime",
    "类型": "number",
    "说明": "事件时间，Unix时间戳"
  },
  {
    "参数名": "MsgType",
    "类型": "string",
    "说明": "消息类型，固定为 event"
  },
  {
    "参数名": "Event",
    "类型": "string",
    "说明": "事件类型，固定为 query_single_waybill_fee，不区分大小写"
  },
  {
    "参数名": "Sender",
    "类型": "object",
    "说明": "发件人信息"
  },
  {
    "参数名": "Receiver",
    "类型": "object",
    "说明": "收件人信息"
  },
  {
    "参数名": "GoodDetail",
    "类型": "object",
    "说明": "物品详情"
  },
  {
    "参数名": "Scene",
    "类型": "number",
    "说明": "1 C端散单, 2 B端退货, 3 B端发货"
  }
]
```

### Body.Sender `Object Payload`

发件人信息

```json
[
  {
    "参数名": "Name",
    "类型": "string",
    "说明": "收件人姓名"
  },
  {
    "参数名": "Tel",
    "类型": "string",
    "说明": "收件人座机号码"
  },
  {
    "参数名": "Mobile",
    "类型": "string",
    "说明": "收件人手机号码"
  },
  {
    "参数名": "Province",
    "类型": "string",
    "说明": "省份，比如\"广东省\""
  },
  {
    "参数名": "City",
    "类型": "string",
    "说明": "地区/市，比如\"广州市\""
  },
  {
    "参数名": "Area",
    "类型": "string",
    "说明": "区/县，比如\"海珠区\""
  },
  {
    "参数名": "Street",
    "类型": "string",
    "说明": "街道，比如新港中路"
  },
  {
    "参数名": "Address",
    "类型": "string",
    "说明": "详细地址，比如\"XX路XX号XX大厦XX\""
  }
]
```

### Body.Receiver `Object Payload`

收件人信息

```json
[
  {
    "参数名": "Name",
    "类型": "string",
    "说明": "收件人姓名"
  },
  {
    "参数名": "Tel",
    "类型": "string",
    "说明": "收件人座机号码"
  },
  {
    "参数名": "Mobile",
    "类型": "string",
    "说明": "收件人手机号码"
  },
  {
    "参数名": "Province",
    "类型": "string",
    "说明": "省份，比如\"广东省\""
  },
  {
    "参数名": "City",
    "类型": "string",
    "说明": "地区/市，比如\"广州市\""
  },
  {
    "参数名": "Area",
    "类型": "string",
    "说明": "区/县，比如\"海珠区\""
  },
  {
    "参数名": "Street",
    "类型": "string",
    "说明": "街道，比如新港中路"
  },
  {
    "参数名": "Address",
    "类型": "string",
    "说明": "详细地址，比如\"XX路XX号XX大厦XX\""
  }
]
```

### Body.GoodDetail `Object Payload`

物品详情

```json
[
  {
    "参数名": "Weight",
    "类型": "number",
    "说明": "货物总重量，比如1.2，单位是千克(kg)",
    "枚举": "-"
  },
  {
    "参数名": "Special",
    "类型": "number",
    "说明": "物品类型，见物品类型说明",
    "枚举": "枚举值"
  }
]
```

## 2. 消息返回

### 返回体 `Response Payload`

```json
[
  {
    "参数名": "ToUserName",
    "类型": "string",
    "必填": "是",
    "说明": "原样返回请求中的FromUserName"
  },
  {
    "参数名": "FromUserName",
    "类型": "string",
    "必填": "是",
    "说明": "快递公司小程序UserName"
  },
  {
    "参数名": "CreateTime",
    "类型": "number",
    "必填": "是",
    "说明": "事件时间，Unix时间戳"
  },
  {
    "参数名": "MsgType",
    "类型": "string",
    "必填": "是",
    "说明": "消息类型，固定为event"
  },
  {
    "参数名": "Event",
    "类型": "string",
    "必填": "是",
    "说明": "事件类型，固定为query_single_waybill，不区分大小写"
  },
  {
    "参数名": "ResultCode",
    "类型": "number",
    "必填": "是",
    "说明": "处理结果错误码"
  },
  {
    "参数名": "ResultMsg",
    "类型": "string",
    "必填": "否",
    "说明": "处理结果的详细信息"
  },
  {
    "参数名": "WayBillID",
    "类型": "string",
    "必填": "否",
    "说明": "运单ID，已生成时必填"
  },
  {
    "参数名": "Sender",
    "类型": "object<addr>",
    "必填": "否",
    "说明": "发件人信息"
  },
  {
    "参数名": "Receiver",
    "类型": "object<addr>",
    "必填": "否",
    "说明": "收件人信息"
  },
  {
    "参数名": "GoodDetail",
    "类型": "object<gooddetail>",
    "必填": "否",
    "说明": "物品详情"
  },
  {
    "参数名": "Insured",
    "类型": "object<insured>",
    "必填": "否",
    "说明": "保价信息"
  },
  {
    "参数名": "PathInfo",
    "类型": "object<path>",
    "必填": "否",
    "说明": "轨迹信息"
  },
  {
    "参数名": "Fee",
    "类型": "number",
    "必填": "否",
    "说明": "运单所需要支付的费用，单位分，费用确定时必填"
  },
  {
    "参数名": "OriginalFee",
    "类型": "number",
    "必填": "否",
    "说明": "原价，单位分"
  },
  {
    "参数名": "OnlinePay",
    "类型": "number",
    "必填": "是",
    "说明": "是否支持在线支付，0-不支持，1-支持在线支付"
  },
  {
    "参数名": "PayResult",
    "类型": "number",
    "必填": "是",
    "说明": "支付结果 0-未支付 1-线上支付完成 2-线下支付完成"
  }
]
```

## 3. 枚举信息

### Body.GoodDetail.Special `Enum`

物品类型，见物品类型说明

```json
[
  {
    "枚举值": "0",
    "描述": "文件类"
  },
  {
    "枚举值": "1",
    "描述": "电子产品类(包括家用电器)"
  },
  {
    "枚举值": "2",
    "描述": "办公用品类,服装鞋帽，箱包类"
  },
  {
    "枚举值": "3",
    "描述": "化妆品，美容产品类"
  },
  {
    "枚举值": "4",
    "描述": "珠宝，手表，眼镜，贵重饰品类"
  },
  {
    "枚举值": "5",
    "描述": "食品，保健药品类"
  },
  {
    "枚举值": "6",
    "描述": "工艺品类(包括瓷器，茶具，烹饪用品)"
  },
  {
    "枚举值": "7",
    "描述": "玩具乐器类"
  },
  {
    "枚举值": "8",
    "描述": "其他类"
  }
]
```

## 4. 注意事项

本事件无特殊注意事项

## 5. 代码示例

本事件无代码示例
