O2O单据

获取销售订单

openAPI收到门店终端的取货码信息后,即时向第三方平台推送,获取订单明细

接口名称

cmd = "CaptureSaleOrderBill"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 CaptureSaleOrderBill 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items object 是   单据信息结构,详见下表

上面表格中的字段items对应的值是个 第三方取货码 结构数据,字段如下

参数名 类型 是否必须 示例值 描述
scanno string 是   第三方取货码

请求示例

{
  "cmd": "CaptureSaleOrderBill",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": {
    "scanno": "2994848"
  }
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息
items json list 是   单据信息结构,详见下表

上面表格中的字段items对应的值是个 单据信息 结构数据,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号
tshowno string 是 #1 第三方订单显示号
tscustsource string 否 4 第三方商户来源(3,百度,4美团,20饿了么,17扫码点餐)
isbooklist int 是 0 是否预定单 1:是 0:否
isverification int 是 0 是否核销单 1:是 0:否
storeuid int 否 1 门店ID
storecode string 是 001 门店编码
storename string 否 湘阴一店 门店名称
customername string 是 张生 收货人姓名
mobileno string 是 13507311234 收货人联系电话
consignee string 是 芙蓉区石牌街12号 收货人地址
submitdate string 是 2018-05-03 12:25:36 订单配送时间
ordertime string 是 2018-05-03 11:35:23 客户下单时间
reamrks string 否   单据备注
state int 是   订单状态
order_total BigDecimal 否 20 第三方订单总价
actual_fee BigDecimal 否 20 用户实际支付价格(订单金额+其他费用-优惠金额)
logisticsFee BigDecimal 否 20 配送费
serviceFee BigDecimal 否 20 平台收取的佣金(服务费)
activityTotal BigDecimal 否 20 订单活动总额
tp_charge BigDecimal 否 20 活动中平台(美团,饿了么等)承担的费用
merchant_charge BigDecimal 否 20 活动中商家承担的费用
agent_charge BigDecimal 否 20 活动中代理商承担费用
logistics_charge BigDecimal 否 20 活动中物流承担费用
billitems json list 是   单据明细信息,详见下表
payitems json list 否   单据支付信息,详见下表
extraitem json list 否   扩展信息(餐盒费),详见下表

上面表格中的字段 billitems 参数对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
produid integer 否 1 商品ID
prodcode string 是 001 商品编码
prodname string 是 BooK 商品名称
unit string 是 本 单位
amount BigDecimal 是 1.0 数量
dealpri BigDecimal 是 9.9 单价
trademoney BigDecimal 是 9.9 金额
attributes string 否 少油 商品属性:多个属性,号分隔
remark string 否   备注

上面表格中的字段 payitems 参数对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
paycode string 是 101 支付编码
payname string 是 支付宝 支付名称
ordersum BigDecimal 是 15 订单总金额
discsum BigDecimal 否 5.5 订单优惠金额
paymoney BigDecimal 是 9.5 收款金额

上面表格中的字段 extraitem 参数对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
extra_name string 是 餐盒费 扩展名称
extra_singleprice BigDecimal 是 15 扩展单价
extra_quantity BigDecimal 是 5.5 扩展数量
extra_price BigDecimal 是 9.5 扩展价格(总价)

返回示例

{
  "code": 0,
  "items": [
    {
      "storecode": "001",
      "storename": "湘阴一店",
      "storeuid": "1",
      "submitdate": "2018-05-03 12:25:36",
      "tbillno": "XS20161010001",
      "tscustsource": "4",
      "tshowno": "#1 ",
      "consignee": "芙蓉区石牌街12号",
      "customername": "张生",
      "isbooklist": "0",
      "isverification": "0",
      "mobileno": "13507311234",
      "ordertime": "2018-05-03 11:35:23",
      "reamrks": "",
      "state": 0,
      "order_total": 34,
      "actual_fee": 0,
      "logisticsFee": 0,
      "serviceFee": 0,
      "activityTotal": 0,
      "tp_charge": 0,
      "merchant_charge": 0,
      "agent_charge": 0,
      "logistics_charge": 0,
      "billitems": [
        {
          "produid": 1,
          "prodcode": "001",
          "prodname": "BooK",
          "unit": "本",
          "amount": 1.0,
          "dealpri": 9.9,
          "trademoney": 9.9,
          "attributes": "少油",
          "remark": ""
        }
      ],
      "payitems": [
        {
          "discsum": 5.5,
          "ordersum": 15,
          "paycode": "101",
          "paymoney": 9.5,
          "payname": "支付宝"
        }
      ],
      "extraitem": [
        {
          "discsum": 5.5,
          "ordersum": 15,
          "paycode": "101",
          "paymoney": 9.5,
          "payname": "支付宝"
        }
      ]
    }
  ],
  "msg": "",
  "seq": "123123-abc12"
}

推送订单支付

openAPI收到门店终端的取货码信息后,即时向第三方平台推送,获取订单明细

接口名称

cmd = "PushSaleOrderBillPayInfo"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 PushSaleOrderBillPayInfo 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items json list 是   单据信息结构,详见下表

上面表格中的字段items对应的值是个 单据信息 结构数据,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号
payitems json list 否   单据支付信息,详见下表

上面表格中的字段 payitems 参数对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
paycode string 是 101 支付编码
payname string 是 支付宝 支付名称
ordersum BigDecimal 是 15 订单总金额
discsum BigDecimal 否 5.5 订单优惠金额
paymoney BigDecimal 是 9.5 收款金额

请求示例

{
  "cmd": "PushSaleOrderBillPayInfo",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": [
    {
      "tbillno": "XS20161010001",
      "payitems": [
        {
          "paycode": "101",
          "payname": "支付宝",
          "discsum": 5.5,
          "ordersum": 15,
          "paymoney": 9.5
        }
      ]
    }
  ]
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息

请求示例

{
    "code": 0,
    "msg": "",
    "seq": "123123-abc12"
}

新增销售订单

线上点餐系统向甩手掌柜系统新增销售订单

接口名称

cmd = "AddSaleOrderBill"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 AddSaleOrderBill 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items json list 是   单据信息结构,详见下表

上面表格中的字段items对应的值是个 单据信息 结构数据,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号
tshowno string 是 #1 第三方订单显示号
tscustsource string 否 4 第三方商户来源(3,百度,4美团,20饿了么,17扫码点餐)
isbooklist int 是 0 是否预定单 1:是 0:否
isverification int 是 0 是否核销单 1:是 0:否
storeuid int 否 1 门店ID
storecode string 是 001 门店编码
storename string 否 湘阴一店 门店名称
customername string 是 张生 收货人姓名
mobileno string 是 13507311234 收货人联系电话
consignee string 是 芙蓉区石牌街12号 收货人地址
submitdate string 是 2018-05-03 12:25:36 订单配送时间
ordertime string 是 2018-05-03 11:35:23 客户下单时间
reamrks string 否   单据备注
state int 是   订单状态
order_total BigDecimal 否 20 第三方订单总价
actual_fee BigDecimal 否 20 用户实际支付价格(订单金额+其他费用-优惠金额)
logisticsFee BigDecimal 否 20 配送费
serviceFee BigDecimal 否 20 平台收取的佣金(服务费)
activityTotal BigDecimal 否 20 订单活动总额
tp_charge BigDecimal 否 20 活动中平台(美团,饿了么等)承担的费用
merchant_charge BigDecimal 否 20 活动中商家承担的费用
agent_charge BigDecimal 否 20 活动中代理商承担费用
logistics_charge BigDecimal 否 20 活动中物流承担费用
billitems json list 是   单据明细信息,详见下表
payitems json list 否   单据支付信息,详见下表
extraitem json list 否   扩展信息(餐盒费),详见下表

上面表格中的字段 billitems 参数对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
produid integer 否 1 商品ID
prodcode string 是 001 商品编码
prodname string 是 BooK 商品名称
unit string 是 本 单位
amount BigDecimal 是 1.0 数量
dealpri BigDecimal 是 9.9 单价
trademoney BigDecimal 是 9.9 金额
attributes string 否 少油 商品属性:多个属性,号分隔
remark string 否   备注

上面表格中的字段 payitems 参数对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
paycode string 是 101 支付编码
payname string 是 支付宝 支付名称
ordersum BigDecimal 是 15 订单总金额
discsum BigDecimal 否 5.5 订单优惠金额
paymoney BigDecimal 是 9.5 收款金额

上面表格中的字段 extraitem 参数对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
extra_name string 是 餐盒费 扩展名称
extra_singleprice BigDecimal 是 15 扩展单价
extra_quantity BigDecimal 是 5.5 扩展数量
extra_price BigDecimal 是 9.5 扩展价格(总价)

请求示例

{
  "cmd": "AddSaleOrderBill",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": [
    {
      "tbillno": "XS20161010001",
      "tshowno": "#1 ",
      "tscustsource": "4",
      "isbooklist": "0",
      "isverification": "0",
      "storeuid": "1",
      "storecode": "001",
      "storename": "湘阴一店",
      "customername": "张生",
      "mobileno": "13507311234",
      "consignee": "芙蓉区石牌街12号",
      "submitdate": "2018-05-03 12:25:36",
      "ordertime": "2018-05-03 11:35:23",
      "reamrks": "",
      "state": 0,
      "order_total": 34,
      "actual_fee": 0,
      "logisticsFee": 0,
      "serviceFee": 0,
      "activityTotal": 0,
      "tp_charge": 0,
      "merchant_charge": 0,
      "agent_charge": 0,
      "logistics_charge": 0,
      "billitems": [
        {
          "produid": 1,
          "prodcode": "001",
          "prodname": "BooK",
          "unit": "本",
          "amount": 1.0,
          "dealpri": 9.9,
          "trademoney": 9.9,
          "attributes": "少油",
          "remark": ""
        }
      ],
      "payitems": [
        {
          "paycode": "101",
          "payname": "支付宝",
          "ordersum": 15,
          "discsum": 5.5,
          "paymoney": 9.5
        }
      ],
      "extraitem": [
        {
          "discsum": 5.5,
          "ordersum": 15,
          "paycode": "101",
          "paymoney": 9.5,
          "payname": "支付宝"
        }
      ]
    }
  ]
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息

返回示例

{
    "code":0,
    "msg":"",
    "seq":"123123-abc12"
}

取消销售订单

线上点餐系统向甩手掌柜系统新增销售订单后,再取消该订单,需调用此接口。

接口名称

cmd = "CancelSaleOrderBill"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 CancelSaleOrderBill 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items Object 是   单据信息结构,详见下表

上面表格中的字段items对应的值是个 单据信息 结构数据,字段如下

参数名 类型 是否必须 示例值 描述
storeuid int 是 1 门店ID
tbillno string 是 XS20161010001 第三方单据号

请求示例

{
  "cmd": "CancelSaleOrderBill",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": {
    "storeuid": 14343,
    "tbillno": "XS20161010001"
  }
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息
items Object 否   返回的单据数据列表

上面表格中的字段items对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号
billno string 是 XS20161010001 甩手掌柜单据号

返回示例

{
    "code":0,
    "msg":"",
    "seq":"123123-abc12",
    "items":{
        "tbillno":"XS20161010001",
        "billno":"XS20161010001"
    }
}

门店接受订单

openAPI收到门店终端的接单信息后,即时向第三方平台推送

接口名称

cmd = "AccptSaleOrderBill"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 AccptSaleOrderBill 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items json list 是   单据列表,详见下表

上面表格中的字段items对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号

请求示例

{
  "cmd": "AccptSaleOrderBill",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": 
    {
      "tbillno": "XS20161010001"
    }
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息

返回示例

{
    "code":0,
    "msg":"",
    "seq":"123123-abc12"
}

门店拒绝接单

openAPI收到门店终端的拒绝接单信息后,即时向第三方平台推送

接口名称

cmd = "RefuseSaleOrderBill"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 RefuseSaleOrderBill 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items json list 是   单据列表,详见下表

上面表格中的字段items对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号

请求示例

{
  "cmd": "RefuseSaleOrderBill",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": {
    "tbillno": "XS20161010001"
  }
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息

返回示例

{
    "code": 0,
    "msg": "",
    "seq": "123123-abc12"
}

修改订单状态

openAPI收到门店终端的订单处理状态后,即时向第三方平台推送

接口名称

cmd = "PushSaleOrderBillState"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 PushSaleOrderBillState 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items json list 是   单据列表,详见下表

上面表格中的字段items对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号
billno string 否 XS20161010001 甩手掌柜单据号

请求示例

{
    "cmd":"PushSaleOrderBillState",
    "seq":"eb46ce74-dffa-4108-87bc-4809144ca33c",
    "items":{
        "tbillno":"XS20161010001",
        "billno":"FHD20161010001",
    }
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息

返回示例

{
  "code": 0,
  "msg": "",
  "seq": "123123-abc12"
}

核销销售订单

openAPI收到门店终端核销订单的请求后,即时向第三方平台请求。

接口名称

cmd = "VerificationSaleOrder"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 VerificationSaleOrder 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items json list 是   单据列表,详见下表

上面表格中的字段items对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号
verno string 是 9033111000002 核销码

请求示例

{
  "cmd": "VerificationSaleOrder",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": {
    "tbillno": "XS20161010001",
    "verno": "9033111000002"
  }
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息

返回示例

{
    "code": 0,
    "msg": "",
    "seq": "123123-abc12"
}

接收订单状态变更

接收第三方平台订单状态变更。

接口名称

cmd = "TpOrderStatusChange"

请求参数

参数名 类型 是否必须 示例值 描述
cmd string 是 TpOrderStatusChange 请求的命令,即接口名称
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
items json list 是   单据列表,详见下表

上面表格中的字段items对应的值是个json数据,类型是列表,字段如下

参数名 类型 是否必须 示例值 描述
tbillno string 是 XS20161010001 第三方单据号
orderStatus string 是 1 单据状态1:接单 2:拒绝接单 4 订单完成 99:取消

请求示例

{
  "cmd": "VerificationSaleOrder",
  "seq": "eb46ce74-dffa-4108-87bc-4809144ca33c",
  "items": {
    "tbillno": "XS20161010001",
    "orderStatus": "1"
  }
}

返回参数

参数名 类型 是否必须 示例值 描述
code int 是 0 返回状态码,详见 业务错误码说明
seq string 是 eb46ce74-dffa-4108-87bc-4809144ca33c 序列号,采用全局唯一标识符,简称GUID
msg string 否   返回状态解释,错误为错误提示信息

返回示例

{
    "code": 0,
    "msg": "",
    "seq": "123123-abc12"
}