场景描述

同步用户侧相关信息,专员服务信息回调见通用任务信息回调

调用方式

HTTP Post

功能

Open NSC 将使用统一的回调参数,将接入方需要的订单信息回传到接入方系统。接入方可根据此信息对订单进行更新,但需要对回调进行幂等控制。

接入流程

  1. 接入方根据自身业务需求,明确需要回调的信息,从目前支持的 section 中选取实际需要的信息区。
  2. Open NSC 增加相关接入方的接入配置。
  3. Open NSC 和接入方进行联调测试,确认回调成功后上线。

接口签名规范

为保证通讯安全,Open NSC 侧会用和验签相同的加签方式(见 签名规范),对发送的请求进行签名。

接口返回值要求

接口返回值请尽量参照 Response 结构 实现。 如果不能完全根据上述标准返回,必须返回 result_code 字段,并以 "success" 作为回调成功的标识。Open NSC 将以此作为回调成功与否的判断。

回调重试次数

Open NSC 支持回调重试,接入方需提供回调重试次数,重试次数默认值为 0。 重试次数最大不超过3次,每次都在失败之后立即重试。

订单状态回调-创建/更新 说明

订单状态回调通过创建、更新两个接口共同完成,在和渠道方的对接过程中,多次出现对两个接口可回调状态产生误解的情况,补充说明如下:

  1. 订单的首次回调一定通过创建接口回调,创建接口只会回调一次,并且状态可能是 1000,1100,1200
    • 1000:创建订单,需求未冻结
    • 1100:创建订单,需求已冻结,未分配资源
    • 1200:创建订单,并立即分配资源成功(这也是最为常见的情况)
  2. 相同状态会在创建、更新接口分别回调,有且只有 1200
    当下单成功,并且是立即分配资源成功时,系统会在很短的间隔内触发两次不同的回调
    • 在创建接口回调 1200
    • 在更新接口也回调 1200
  3. 相同状态可能在更新接口回调多次
    根据订单的执行流程不同,订单可能重复回到某种状态,因而在更新接口会有相同状态重复回调多次

订单信息

订单信息包含在不同的 section 中。

section 释义

Section 说明
channel_account 渠道用户信息,只有通过 OAuth 接入时,才有需要在回调中提供相关信息
order 订单基本信息
staff 订单专员信息
vehicle 订单相关车辆信息
parking_info 订单停车信息
payment_info 订单的用户支付信息
resource_info 订单资源信息
soc_info 下单时,用户填写的车辆 SoC 信息
cancellation_fee 取消订单时产生的费用信息,仅在订单为完成态时返回,即订单状态为1300、1400或1500时才会返回
service_image 订单服务图片信息

Post body 格式

application/json

参数示例

{
   "channel_account":{
      "access_token":"channal_access_token_xxx",
      "user_id":"channal_user_id_xxx"
   } 
   "order":{
      "order_id":"820034787833641750",
      "status":1000,
      "creation_time":1517987834,
      "update_time":1517987834,
      "phone":"17865736543",
      "pay_due_time":1517988434,
      "original_start_time":1517988000,
      "original_end_time":1517988912,
      "estimate_start_time":1517988647,
      "estimate_end_time":1517988659,
      "actual_serve_start_time":1517987840,
      "actual_serve_end_time":1517988902,
      "resource_schedule_mode":0
   },
   "staff":{
      "staff_id":"1234",
      "avatar_url": "https://cdn-app.nio.com/lbSys/2020/1/9/f2446abc-9315-4a80-bae1-f315cab6982b.jpg",
      "name":"张三",
      "phone":"12345674567"
   },
   "vehicle":{
      "model_id":"model-123",
      "brand":"蔚来",
      "model_name":"ES8",
      "plate_number":"京A12222"
   },
   "parking_info":[
     {
         "type":13,
         "latitude":36.443333,
         "longitude":115.969948,
         "poi_id":"qq:2577301541586800564",
         "poi_name":"聊城市",
         "poi_area_code":"371500",
         "poi_address":"光岳楼",
         "poi_latitude":36.443333,
         "poi_longitude":115.969948
     },
     {
         "type":14,
         "latitude":36.443333,
         "longitude":115.969948,
         "poi_id":"qq:2577301541586800564",
         "poi_name":"聊城市",
         "poi_area_code":"371500",
         "poi_address":"光岳楼",
         "poi_latitude":36.443333,
         "poi_longitude":115.969948
     }
   ]
   "payment_info":{
      "status":1,
      "amount":180
   },
   "resource_info":{
      "resource_id":"CS-TLD-00000001-BJ-00003",
      "name":"天津崇泰响螺湾王相大厦充电站",
      "show_name":"特来电充电站(天津崇泰响螺湾王相大厦充电站)",
      "latitude":36.443333,
      "longitude":115.969948,
      "region_code":"110000",
      "operator_id":"TLD",
      "opeartor_name":"特来电"
   },
   "soc_info":{
      "soc":80,
      "remaining_range":400
   },
    "cancellation_fee":{
      "has_cancellation_fee":true
   },
   "service_image": [
       {
           "order_id": "820116867791554949",
           "task_id": "830116867792554359",
           "image_type": "1",
           "image_url": "https://cdn-app-test.nio.com/tibbers/2020/9/14/e1d6f2d4-d624-4c9c-8e21-91b7a9ae045d",
           "creation_time": 1600067844
       }
   ]
}

参数说明

channel_account section

参数名 类型 说明
access_token string Access token
user_id string 渠道用户 id

order section

参数名 类型 说明
order_id string 订单 ID
status integer 订单状态,参见 枚举值定义-一键加电订单状态
creation_time timestamp 创建时间
update_time timestamp 更新时间
phone string 联系方式
payment_need Boolean 是否需要支付
payment_status Integer 支付状态
pay_due_time timestamp 支付超时时间
original_start_time timestamp 下单时刻,系统计算的预计开始时间,通常为承诺给用户的取车时间
original_end_time timestamp 下单时刻,系统计算的预计完成时间,通常为承诺给用户的还车时间
estimate_start_time timestamp 当前时刻,系统计算的预计开始时间,通常为取车时间
estimate_end_time timestamp 当前时刻,系统计算的预计完成时间,通常为还车时间
actual_serve_start_time timestamp 订单实际的服务开始时间,取值为第一个 task 小哥接单时间
actual_serve_end_time timestamp 订单的实际服务完成时间,取值为最后一个 task 的完成时间,通常为还车时间
resource_schedule_mode integer 调度模式,参见 枚举值定义-resourceScheduleMode

staff section

参数名 类型 说明
staff_id string 专员 ID
avatar_url string 专员头像 url
name string 专员姓名
phone string 专员联系方式

vehicle section

参数名 类型 说明
model_id string 车型 ID
brand string 车辆品牌
model_name string 车型系列名称
plate_number string 车牌号

parking_info section

参数名 类型 说明
type byte 参见 枚举值定义-ParkingInfoType
longitude double 停车经度
latitude double 停车纬度
poi_id string 停车点 POI ID
poi_name string 停车点 POI 名称
poi_area_code string 停车点区级邮编
poi_address string 停车点 POI 地址(不含行政区域)
poi_latitude double POI 纬度
poi_longitude double POI 经度

payment_info section

参数名 类型 说明
status int 1:未支付,2:已支付,3:已退款
amount double 支付总额
need_pay Boolean 是否需要支付

resource_info section

参数名 类型 说明
resource_id string 资源 ID
name string 资源名称
type integer 资源类型,参见 枚举值定义-PowerResourceType
show_name string 资源显示名称
latitude double 资源 GPS 纬度
longitude double 资源 GPS 经度
region_code string 资源区域编码
operator_id string 资源供应商 ID
operator_name string 资源供应商名称

soc_info section

参数名 类型 说明
soc double SoC
remaining_range double 电池剩余续航(KM)

cancellation_fee section

参数名 类型 说明
has_cancellation_fee boolean 是否有取消费用

service_image section

参数名 类型 说明
order_id string 订单 ID
task_id string 任务 ID
image_type int 图片类型, 参见 枚举值定义-ServiceImageType
image_url string 图片 url
creation_time int 图片创建的 Unix 时间戳

results matching ""

    No results matching ""