通用云POS结账相关指令

Posted on 2019-02-24 22:39:03.929009

更新日志:

20160820 增加充值、退卡指令

20160826 增加开卡指令

20161111 增加读卡密码

20201229 增加券查询、券核销

 

1.点菜 

触发指令方式:下单时,触发DC指令【ipad  -1表示原价,并不是赠送,赠送是用符号来判断的加价是9】。。

请求格式:

类型码(4位)、空位(1位)、点菜机机号(4位)

台号/账单号 (7位)、空位(1位)、出厂号(7位)、空位(4位)、快餐牌号(14位),人数(4)、流水号(8位)

台号 (7位)、空位(1位)、菜品号(5位)、空位(1位)、数量(5位)、作法(13位)、套餐明细标记(3位)、等叫标记(1位) 、空位(1位)、发送流水号(8位)、空位(1位)、单价(9位)、单位(8位)、加价(6位)、条只数(3位)、做法扩展(50位)、空(1位)、套餐分组(2位)、空(1位)、自定义加价(6位)

示例1:          

示例2:

 

 

单价-1表示没有变价
加价用于点菜时的自定义加价
发送流水号按时间格式, 但并非实际时间,用于后台软件在接口网络通讯异常时的重发判断。

 

套餐标志,2位编号, 表示这个菜品属于哪个套餐。

套餐头在这个位置也会标注:固定标记‘S’,或者自定义变价标记‘X’,自定义固定价‘M’

如下:

----- T1.txt --------
DC   0007
1001    gp6H4f                       10:00:09
1001    10001 1.000             X 0 10:00:09 500      套               
1001    11021 1.000             01 0 10:00:09 -1       例               
1001    11028 1.000             01 0 10:00:09 -1       例               
1001    11040 1.000             01 0 10:00:09 -1       例               
1001    11031 1.000             01 0 10:00:09 -1       位               

 

临时菜品:临时菜的品名也在做法(13位),并以”,”号分隔;  例如: “空心菜,蒜蓉”;

做法扩展(40位):当做法口味选择,加上自定义要求输入的比较多,总共超过13位时;则启用这个40位的做法扩展字段;原13位字段可以忽略

 

 

返回格式: 类型码(4位)、点菜机机号(4位)

返回内容:“点菜成功!”

信息提示

示例:
DC   101 
点菜成功!   

 

失败示例:
DC   101
某菜品已沽清,下单失败。

 

注意:条只数需要在WX设置中启用“下单新协议”

 

2.账单查询 (增加:账单号、应收金额、备注信息)

请求格式:

类型码(4位)、空位(1位)、点菜机机号(4位)

    台号(7位) 、空位(1位)、出厂号(7位)、空位(2位)、快餐牌号(14位)

-------- T1.txt -----------
ZDCX 101
1001    fde1b0e

 

返回格式: 

类型码(4位)、空位(1位)、点菜机机号(4位)

账单号XXXXXXXXXXXX,人数XX,合计XX.XX, 应收XX.XX,备注XXXXXXXXXXX

菜品名称(20位)数量(4位)单位(4位)状态(4位)单价(9位)点菜员(10)时间(8)客户要求(40)流水号(8)折扣(4位)

 

菜品状态位:

全角字符“⊙”表示已下单(必须)

后面可以跟随以下半角(ansi)符号: “!” 等叫状态, “$” 赠菜状态 , “#” 退菜状态, “!!”表示 急, “%”表示这个菜是套餐明细

 

标志

意义

!

等叫

$

赠菜

#

退菜

!!

%

套餐明细

*

已完成

^

未下单

 &                                  已结账

(注意:退单菜品单价不要负值)

 

数量或单位中有“约”字,表示这个菜品可以修改数量,平板上点击数量位置就可以直接修改。参见“ZLQR”

 

 

流水号:

当一个账单有多个同样菜品,流水号可以让程序鉴别出你需要操作的单个菜品。当ZDCX返回给平板程序流水号的时候,退菜协议、赠菜协议、催菜协议都将使用流水号代替菜品编号,这样就能让后台软件知道客户需要操作的是那个菜品。如上列表:2个夫妻肺片的流水号分别是 8720 和 8721。

 

注1、空台的返回格式:(未开台的状态返回)

注意:如果返回“桌台是空台!”电子菜谱执行开台操作

--------R1.txt-----------
ZDCX 101
桌台是空台!


注2、已开台,但未点单的桌台返回如下:

--------R1.txt-----------
ZDCX 101
账单号2015123002066 人数2共0道菜,合计0.00 , 应收0.00  备注

 

 

3.终端打折(ZDZ)

服务员在手持机上设定桌台折扣

请求格式

类型码(4位)、空位(1位)、点菜机机号(4位)
台号 (7位)、空位(1位)、折扣编号(6位)、优免抹零金额(6位)、折扣率(4位)、保留(8位),台卡号(14 位)

-------- T1.txt -----------

返回内容:“折扣成功”,并返回显示内容

--------R1.txt-----------
ZDZ  101
1001桌折扣成功!
A品项合计: 2372.00
B折扣金额:   14.00
------------------
应收余额(A-B): 2358.00

------------------

 

4.下单支付DCJZ

(POS机结账不再使用这个指令,目前只用于自助平板)

格式:

类型码(4位)、空一位、点菜机机号(4位)

台号/账单号 (8位)、出厂号(7位)、实收现金(7位)、空位(1位)、实付金额(7位)、空位(3位)、人数(4)、流水号(8位)、空位(1位)、支付方式(8位)、支付方(30)、支付单号(30位)、线上折扣金额(9位)

台号 (7位)、空位(1位)、菜品号(5位)、空位(1位)、数量(5位)、作法(13位)、套餐明细标记(3位)、等叫标记(1位) 、空位(1位)、发送流水号(8位)、空位(1位)、单价(9位)、单位(8位)、加价(6位)、条只数(3位)、做法扩展(40位)

 

 

示例:          

返回格式:

类型码(4 位)、空位(1位)、点菜机机号(4 位)
提示信息(100位)
账单号(100位)
打印内容(可以多行)

 

示例:

----- R1.txt --------
DCJZ 0011
结账成功!
账单号:102552

    Xxxx酒店  电话:xxxx

 

(POS机结账不再使用这个指令,目前只用于自助平板)

账单号:
要有全角冒号

 

5. 付款方式.txt

格式:编号(5位) 付款方式(20位)  付款代码(10位) 启用标记(2位)
 

示例:
02   现金支付            Cash      1
32   扫码支付            GPSM      1
33   拉卡拉扫码          LKLSM     1
34   拉卡拉刷卡          LKL       1
35   盒子支付            IBOX      1
36   银商支付            YLSW      1
06   会员卡支付          HYK       1
30   消费券              WXQ       1       

 

注意:上表中的付款代码在手持POS上起到功能标识作用,用于启动指定的付款流程。

 

6.结账支付 ZFJZ

格式:

类型码(4位)、空位(1位)、点菜机机号(3位)
台号/账单号 (8位)、出厂号(7位)、空位(1位)、实收金额(7位)、实付金额(9位)、空位(5位)、流水号(8位)、空位(1位)、快餐牌号(14位)、座位号(6位)
支付方式(9位)、支付金额(9)、支付账号(30位)、支付单号(30位)、线上折扣(9位)
结账菜品标志(2位)、空位(1位)、结账菜品流水号(8位)、空位(1位)、数量(5位)、作法(13位)、空位(1位)、单价(9位)、单位(8位)

结账菜品可多行,结账菜品流水号对应ZDCX返回的菜品流水号。
支付方式可多行,对应的字段含义见表:  

支付方式

金额

账号

单号

折扣

Cash

 

 

输入总金额

 

WeiXin

 

微信ID

微信单号

 

AliPay

 

支付宝账号

支付宝单号

线上折扣

UnionCard

 

银行卡号

终端号,凭证号

 

Coupon

 

券号

券类型
0微信券,1大众点评,2美团

 

ActCard(定制)

 

卡号xxx

 

 

(实体IC卡扣款需要定制)

 

----- T1.txt --------
ZFJZ 028
001     a899ca5 66.02                31:00:00
Cash     6.00
WeiXin   0.02     oaLNhs5pleFb1U355MzkMr-awHkM  4006692001201603314420905704  
coupon   20.0     30633599768     0
coupon   20.0     30633599778     0
coupon   20.0     30633599798     0

 

后台返回:结账单信息。

----- R1.txt --------
ZFJZ 0003
结账成功!
结账单
+++++++++++++
总计:xxxxx 支付流水号:xxxxxxx
+++++++++++++

 

7.储值卡实体卡读卡ZTDK(获取卡信息)

格式:类型码(4位)、空一位、点菜机机号(4位)

台号/账单号 (8位)、实体卡卡号(20位)、出厂号(7 位)

读卡密码(12位)

 

2016-04-05: 卡号调整为20位

 

示例:          

----- T1.txt --------
ZTDK 0011
0106    00012345            g5580Po
123456

 

返回格式:

类型码(4 位)、空位(1位)、点菜机机号(3 位)

自助流程(1位)、空位(1位)、错误提示文本(50位)
台号/账单号 (8位)、合计(9位)、折扣(9位)、实收金额(9位)
卡号(20位)、卡余额(9位)、卡类型(10位)、持卡人(20位)、卡状态(10位)、卡积分(9位)

 

流程

标志

解释

0

默认,查询桌台并开始点菜

1

平板上显示错误提示文本,并返回主界面;

4

平板查询桌台并开始点菜

5

平板要求输入人数、客户手机号码后,发开台指令

6

平板要求输入人数,发开台指令

 

 

 

 

 此标志位只在平板自助版本起作用, POS机读卡次标志位不起作用

 

 

 

 

卡状态

解释

1已发卡

显示会员信息 充值 退卡

2已制卡

(卡已初始化)输入会员姓名 手机等执行发卡操作

3未制卡

提示未制卡(空卡)

4卡不存在

提示卡不存在

 

 

 

 

卡状态只在POS机会员功能内起作用

 

读卡返回示例1:

----- R1.txt --------

读卡返回示例:

----- R1.txt --------

读卡错误返回示例:

----- R1.txt --------
ZTDK 0011
1 读卡失败:卡号[0123456]不存在

 

8. 储值卡实体卡充值HYCZ(会员充值)

格式:类型码(4位)、空(1位)、点菜机机号(4位)
台号/账单号 (8位)、实体卡卡号(20位)、充值金额(9位)、出厂号(7 位),
支付方式(9位)、支付金额(9)、支付账号(30位)、支付单号(30位)

 

示例:          

----- T1.txt --------

HYCZ 0011
0106    00012345            500.00   pos5580Po
Cash     500.00

 

返回格式:

类型码(4 位)、空位(1位)、点菜机机号(3 位)
卡号(20位)、实际充值(9位)、卡余额(9位)、卡类型(10位)、持卡人(20位)
备注(200位)

 

充卡示例:

----- R1.txt --------
HYCZ 0011
00012345            500.00   1500.00  钻石卡    张三   
充卡成功,有效期致2018年12月

注:备注在pos机上会打印出来,可以返回个充卡单格式输出到打印机

 

9. 储值卡实体卡退卡HYTK(会员退卡)

格式:类型码(4位)、空(1位)、点菜机机号(4位)
台号/账单号 (8位)、实体卡卡号(20位)、出厂号(7 位)

 

示例:          

----- T1.txt --------
HYTK 0011
0106    00012345            pos5580Po

 

返回格式:

类型码(4 位)、空位(1位)、点菜机机号(3 位)
卡号(20位)、退款金额(9位)、卡类型(10位)、持卡人(20位)
备注(200位)

 

退卡卡示例:

----- R1.txt --------
HYTK 0011
00012345            1500.00  钻石卡    张三   
退卡成功!

 

注:备注在pos机上会打印出来,可以返回个退卡单格式输出到打印机

 

10. 会员卡类型表.txt

格式:会员卡类型编号(10位) 会员卡类型名称(20位)

 

 

11. 储值卡实体卡开卡HYKK(会员开卡)

格式:类型码(4位)、空1位、点菜机机号(3  位)
实体卡卡号(20位)、卡类型编号(10位)、保留 (8位)、出厂号(7 位)
持卡人(20位)、性别(4位)、电话(15位)、身份证号(22位)、出生日期(11位)

 

示例:          

----- T1.txt --------
HYKK 0011
00012345               00010088          pos5580Po
张三                男  139012345678

 

返回格式:类型码(4 位)、空位(1位)、点菜机机号(3 位)
卡号(20位)、余额(9位)、卡类型(10位)、持卡人(20位)
提示信息(200位)

 

开卡返回示例:

----- R1.txt --------
HYKK 0011
00012345               0.00  钻石卡    张三   
开卡成功!

 

----- R1.txt --------

HYKK 0011
开卡失败,卡号已存在!

 

12.储值卡实体卡扣款HYJZ(会员扣款)

格式:

类型码(4  位)、空位(1位)、点菜机机号(3  位)
台号/账单号 (8位)、实体卡卡号(20位)、扣款金额(9位)、出厂号(7 位)、空位(1位)、时间戳(17位)

 

示例:

----- T1.txt --------
HYJZ 013
101     0005524210          0.01     zz676cV 20170414115016160

 

返回格式:

类型码(4 位)、空位(1位)、点菜机机号(3 位)
卡号(20位)、扣款(9位)、卡余额(9位)、卡类型(10位)、持卡人(20位)
备注(200位)

 

充卡示例:

----- R1.txt --------
HYJZ 001
12345               500.00   1000.00  钻石卡    张三   
扣款成功,有效期致2018年12月

 

13.外接被扫支付BSZF(在软件后端实现被扫扣款)

格式:

类型码(4  位)、空位(1位)、点菜机机号(3  位)

支付方式(2位)、台号(8位)、出厂号(7 位) 、支付金额(9位)

付款码(18位)


示例:

----- T1.txt --------
BSZF 0011
0 101     pos5580     0.01
282188178249029834

 

返回格式:

类型码(4 位)、空位(1位)、点菜机机号(3 位)

支付状态(1位)、内容(20位)

 

返回示例:
----- R1.txt --------
BSZF 00111 支付成功!

 

失败示例:
----- R1.txt --------
BSZF 0011
0 支付失败,付款码错误...!

 

14.SMZF 扫码支付(获取二维码)
 

格式:

支付方式(1位,2表示微信支付,3表示支付宝)、空1、(台号8位)、(出厂号7位)、(支付金额9位)、快餐牌号(12位)

返回: 
成功标志(1位)、支付单号(7位)、需支付金额(8位)、二维码链接(250位)


15.SMCX 扫码查询(检查客人是否扫描二维码成功支付)
 

格式:

支付方式(1位,2表示微信支付,3表示支付宝)、空1、(台号8位)、(出厂号7位)、快餐牌号(12位)

返回:
SMCX 001
支付成功

或者返回
SMCX 001
等待客人支付

 

16. QCX - 消费券查询

格式:类型码(4位)、空(1位)、点菜机机号(4位)
台号/账单号 (8位)、券号(32位)

示例:          
----- T1.txt --------
QCX  0011
0106    70173761786514200012345

返回格式(券数据用TAB键分隔 - ASCII码 #9):
类型码(4 位)、空位(1位)、点菜机机号(3 位)
券号(TAB)券名称(TAB)抵用金额(TAB)有效期(TAB)领用日期(TAB)门店
 

示例:
----- R1.txt --------
QCX  001
12345567890    代金券    30    2021-06-01    2020-10-01     1店,2店,3店

 

17. QHX - 消费券核销

格式:类型码(4位)、空(1位)、点菜机机号(4位)
台号/账单号 (8位)、券号(32位)

示例:          
----- T1.txt --------
QHX  0011
0106    70173761786514200012345

返回格式:
类型码(4 位)、空位(1位)、点菜机机号(3 位)
核销信息
抵用金额

示例:
----- R1.txt --------
QHX  001
核销成功
30