8.1门店账单数据上传

优质
小牛编辑
125浏览
2023-12-01

此接口用于上传老板通营业订单数据

支持单条上传和批量上传

对于非点菜消费数据(如会员卡充值)的上传:

此类无消费的数据也可以通过此接口上传,此类数据中只需要有pay项目的内容,而item项目为空。

并且为了区分此单据类型,增加type属性来区分,目前有两种:do:点菜单据,mc:会员充值单据

针对非正常点菜信息的识别(如退单、赠送):

系统规则是当数量qty为负数则识别为退单,

当金额amt为零则识别为赠送。(注意赠送记录数量不能为零,价格最好传菜品的原价,以用于统计赠送菜品的金额)

识别后的退单、赠送菜品信息会统计到相应报表中

原则:
1.菜品单价*数量=金额

2.菜品金额合计=付款金额合计

请求参数说明

参数描述必填示例值类型最大长度
action接口参数组object
└action需要调用的接口名称du_put_billstring
postPOST参数组object
└bill账单数据object
└└date账单业务日期20151228number
└└time账单实际日期_时间20151229_010108string
└└table桌台号88number
└└type账单类型dostring
└└pscount人数3number
└└bzid账单业务单号(必须保证唯一,相同bzid上传以最后数据为准)201512280008number
└└item菜品列表list
└└└gdsid菜品编号0001050number
└└└name菜品名称红烧大排翅string
└└└qty数量1number
└└└price单价188number
└└└amt金额小计=qty*price188number
└└└ctid分类编号01001number
└└└ctname分类名称燕鲍翅string
└└└unit单位string
└└└isfree是否赠送1=赠送,-1=非赠送。默认为根据amt=0判断为赠送1number
└└pay账单付款项目列表list
└└└code付款科目代码xjstring
└└└name付款科目名称现金string
└└└amt付款金额180number
└└└discount用于标示非实收科目,0=实收科目,1=非实收科目0number

请求示例

{
	"action": {
		"action": "du_put_bill"
	},
	"post": {
		"bill": {
			"date": "20151228",
			"time": "20151229_010108",
			"table": "88",
			"type": "do",
			"pscount": "3",
			"bzid": "201512280008",
			"item": [{
				"gdsid": "0001050",
				"name": "红烧大排翅",
				"qty": "1",
				"price": "188",
				"amt": "188",
				"ctid": "01001",
				"ctname": "燕鲍翅",
				"unit": "例",
				"isfree": "1"
			}],
			"pay": [{
					"code": "xj",
					"name": "现金",
					"amt": "180",
					"discount": 0
				},
				{
					"code": "zk",
					"name": "折扣",
					"amt": "8",
					"discount": "1"
				}
			]
		}
	}
}

响应参数说明

参数描述必填示例值类型最大长度
status返回状态。接口成功时为1,出错为01number
info错误时会返回相应的错误信息保存成功;string
success上传成功账单号列表0001201601130006=45982,0001201601130008=49983string
error上传失败账单号列表0001201601130007=出错string

响应示例

{
	"status": "1",
	"info": "保存成功;",
	"success": "0001201601130006=45982,0001201601130008=49983",
	"error": "0001201601130007=出错"
}

批量上传:可以使用list参数将一批账单一起上传。每条订单内容与上面bill参数中一样。一次最多不超过100条。

list=[{

"date": "20151228",
"time": "20151229_010108",
"table": "88",
"bzid": "201512280008",
.....

},

{

"date": "20151228",
"time": "20151229_010136",
"table": "99",
"bzid": "201512280009",
.....

},

]