一、流程图

二、基础设置
(一)发票平台
路径:【发票】-【基础设置】-【发票平台】



功能按钮:
- 【新增】:跳转到新增平台页面
- 【删除】:可选择平台批量删除,已审核的不允许删除
- 【审核】:审核/反审核审核
- 通过时:将平台状态变为“启用”
- 反审核或未审核时:平台状态为“停用”
- 【设置字段】:可设置表格字段。
- 【更多查询】
- 业务组织:多选带下拉查询组织的组件,可选择组织查询平台。
- 发票类型:单选(大陆发票/台湾发票)
- 平台编码:左匹配查询
- 平台名称:左匹配查询功能按钮
- 【返回】:返回列表
- 【删除】:删除当前平台,已审核的不允许删除
- 【保存并新增】
- 主档信息
- 所属组织:必选、默认为当前用户归属组织
- 平台编码:必填、数字、英文、50位
- 平台名称:必填、数字、英文、汉字、50位
- 发票类型(大陆发票/台湾发票):单选、必选
- 对象平台(百旺、航天、绿箭):单选、必选
- 状态:不可选,由审核决定。审核通过就是“启用”状态反审核、未审核、不通过就是“停用”状态
(二)发票入库
需求概述:公司在税务局领取发票后,录入系统;
路径:【结算中心】-【发票管理】-【发票入库】

字段说明:
- 【单号】:保存后自动生成
- 【财务组织】:当前登录用户财务组织,当前财务组织对应业务组织的职员
- 【保管人】:单选、必选
- 【发票轨迹】:英文数字组合,前两位必须为英文
- 【发票起始号码】:正整数
- 【发票结束号码】:正整数,大于发票起始号码
- 【发票张数】:发票结束号码 – 发票起始号码
- 【申报周期】:会计期间月份
- 【有效日期】:跨月使用若为当前用毕或延用上期,则有效日期为申报周期最后一天,若为当前未用毕,则有效日期为申报周期下一月最后一天
(三)开票
功能概述
为公司或个人进行开票服务,可分纸质发票和电子发票,可分普通发票和专用发票

字段说明
- 【发票类型】:纸专、纸普、电专、电普
- 【发票日期】:当天 ,格式:2020-10-10
- 【购买方名称】:若为公司开票,可选客户,单选;
- 【税率】:大于0;
- 【税额】:金额 * 税率
- 【价税合计】:税额+金额
- 【金额】:数量 * 单价
(四)已开发票列表
功能概述:
系统所有开具的发票都在此体现,包含电子发票、纸质发票,零售、批发开具的发票以及线上线下;
业务流程:


字段说明:
- 【发票日期】:结束日期小于或等于当天
- 【发票类型】:全部
- 【发票代码】:英文、数字
- 【发票号码】:英文、数字
- 【发票状态】:全部
- 【红冲】:全部
- 【业务组织】:多选可选范围为当前用户管理组织
- 【客户名称】:多选,可选范围为已选【业务组织】的可用客户,选择前必须先选择【业务组织】,否则点击时提示“请先选择业务组织”
- 【发票号码】:点击可跳转至发票详情
- 【业务单据编号】:主要有以下几种单据的单号:销售出库单、POS单、交易单
- 【红/蓝票】:正常开具的发票为蓝票。红冲产生的单据为红票
功能说明:
| 【作废】 | 操作:先勾选发票,再点击作废发票状态为正常的发票才可以作废,否则点击时提示“正常发票才可作废”(勾选多张发票若有一张不是正常的就不允许作废)只有当月的发票才可作废,勾选发票点击作废,若含不是当月的发票,则提示“当月的发票才可作废”作废需二次确认,先确认,再判断二三点逻辑作废后发票状态改为‘已作废’ |
| 【红冲】 | 1、操作:先勾选发票,再点击红冲2、发票状态为正常的发票才可以红冲,否则点击时提示“正常发票才可红冲”(勾选多张发票若有一张不是正常的就不允许红冲)3、红冲需二次确认,先确认,再判断二三点逻辑作废后发票状态改为‘已红冲’4、红冲后产生一张红票。数量、金额、税额为负数,绝对值与原始单据一样 |
| 【删除】 | 1、操作:先勾选发票,再点击作废2、发票状态为失败的发票才可以作废,否则点击时提示“失败发票才可删除”(勾选多张发票若有一张不是失败的就不允许伤处)3、删除需二次确认,先确认,再判断第二点逻辑 |
| 【打印】 | 打印发票 |
| 【导出】 | 导出当前、导出全部模板![]() |
(五)销售开票列表
功能概述:
以销售出库单为列表查看是否已经开票
功能说明:
- 【新增】:无约束
- 【保存】:断主从表必填项是否有输入,根据DTO提示
- 【删除】:需二次确认
- 【审核】:审核即生效
三、发票管理
功能概述:对系统的进项发票和销项发票进行管理,录入发票信息,核对内容等。
(一)销项发票

(二)进项发票

字段说明:
- 【单号】:保存后自动生成
- 【业务组织】:单选,当前登录用户管理组织
- 【供应商】或【客户】:单选,已选【业务组织】的可用供应商或客户
- 【纳税人识别号】、【电话】、【地址】、【联系人】:由【客户】或【供应商】带出
- 【发票类型】:纸专、纸普、电专、电普
- 【发票日期】:不能大于当天
- 【发票金额】:从表记票金额汇总,自动汇总
- 【发票税额】:从表发票税额汇总,自动汇总
- 【记票金额】:大于0,保留两位小数
功能说明:
- 【新增】:无约束
- 【保存】:1、校验必填项;2、校验主表发票金额与从表的记票金额汇总是否相等,如不等,点击保存时提示“发票金额与记票金额汇总应相等”
- 【删除】:1、只有未送审或已退审的单据才可删除;2、删除需二次确认
- 【审核】:1、保存后即可审核;2、审核后生效
- 【反审核】:无约束
- 【作废】:已生效的单据才可作废
四、电子发票
(一)业务背景
门店在收银台树立一个开票二维码。消费者在门店购物后,扫描二维码申请开发票。
(二)电子发票流程


1、功能说明:用于设置电子发票对接平台的配置信息与店铺范围设置。
2、路径:【发票】-【基础设置】-【平台管理】

字段说明:
- 【新增】:跳转到新增平台页面
- 【删除】:可选择平台批量删除,已审核的不允许删除
- 【审核】:审核/反审核审核通过时:将平台状态变为“启用”;反审核或未审核时:平台状态为“停用”
- 【设置字段】:可设置表格字段。
- 【更多查询】:业务组织:多选带下拉查询组织的组件,可选择组织查询平台。
- 【发票类型】:单选(大陆发票/台湾发票)
- 【平台编码】:左匹配查询
- 【平台名称】:左匹配查询
- 【查看】:进入详情界面
- 【删除】:删除当前平台,已审核的不允许删除。
3、发票设置:

字段说明:
- 【删除】:删除当前平台,已审核的不允许删除
- 【所属组织】:必选、默认为当前用户归属组织
- 【平台编码】:必填、数字、英文、50位
- 【平台名称】:必填、数字、英文、汉字、50位
- 【发票类型(大陆发票/台湾发票)】:单选、必选
- 【对象平台(百旺、航天、绿箭)】:单选、必选
- 【状态】:不可选;审核通过就是“启用”状态;反审核、未审核、不通过就是“停用”状态
4、平台配置百旺(中国大陆)配置信息

- 请求地址:必填、长度50、字符串
- 登录账号:必填、长度50、字符串
- 登录密码:必填、长度50、字符串
- Appid:非必填、长度50、字符串
- Appsecret:非必填、长度50、字符串
- 盐值:必填、长度50、字符串
- API协议版本:非必填、长度50、字符串
- 开票终端标识:必填、长度50、字符串
5、使用店铺

字段说明:
- 【新增】:点击打开“添加店铺”弹窗。
- 【删除】:必须要选中二维码才可以删除。
- 【导入】:组织编码(必填)、店铺编码(必填)、企业名称(必填)、企业税号(必填)
- 【导出】:组织、店铺名称、店铺编码、企业名称、企业税号、企业地址、企业电话、企业开户行、企业账户、二维码链接
- 【查询】:店铺名称查询
- 【企业信息】:分两行显示,企业地址、企业电话、开户行支行、银行卡号
- 第一行:企业地址,企业电话
- 第二行:开户行支行,银行卡号
操作:
- 【修改】:业务组织和店铺不可修改,其他信息都可以修改。仅平台为“停用状态”时才显示。
- 【下载】:根据获取抬头的小程序ID+平台ID+集团ID+组织ID+店铺ID生成二维码,然后下载。
- 【删除】:将店铺删除,消费者扫描对应二维码时需要检查一下有没有店铺信息。仅平台为“停用状态”时可修改。
- 【添加店铺弹窗】
- 组织名称:单选、必选、带查询
- 组织组件:只能选择当前发票组织和其下级组织
- 店铺名称:单选、必选、带查询店铺组件,一个店铺在同一个平台中只能选择一次
- 复核人:单选、必选、可选择
- 增值纳税人类型:单选、必选、可选项(一般纳税人、小规模纳税人)
- 企业名称:必填、汉字、英文、数字,不允许特殊字符
- 企业税号:必填、英文、数字,不允许特殊字符
- 企业地址:必填、汉字、英文、数字,不允许特殊字符
- 企业电话:必填、数字、长度20位
- 开户行支行:必填、汉字、英文、长度50位
- 银行卡号:必填、数字、8~30位
- 手机号或邮箱:必填、长度50位
(三)开票管理
1、概述:
工作人员可在这个页面进行开票、发送、下载电子发票等操作
2、路径:【发票】-【大陆发票】-【开票管理】

3、字段说明:
- 【新增】:置灰
- 【删除】:可选中“未开票”、“开票失败”的发票申请删除,选中“已开票”、“开票中”的申请删除时提示“已开票/开票中的发票申请不能被删除”
- 【设置列】:可设置显示的字段。
- 业务组织:单选、带查询
- 店铺:多选、带查询
- 发票代码:左匹配
- 发票号码:左匹配
- 开票状态:单选(开票中/已开票/开票失败)
- 购买方类型:企业、个人
- 销售企业:左匹配,根据输入内容查找销售企业
- 购买方名称:左匹配,根据输入内容查找购买方名称
- 购买方手机号码:左匹配,根据输入内容查找接收人的手机号码
- 购买方邮箱地址:左匹配,根据输入内容查找接收人的邮箱地址
- POS单号:左匹配,根据输入内查找POS单号
- 开票申请:对应按钮【开票】、【删除】
- 已开发票:对应按钮【补发】、【下载】
- 发票代码:开票接口成功时返回,开票申请时是空的
- 发票号码:开票接口成功时返回,开票申请时是空的
- 购买方类型:个人/企业
- 发票种类:电子专用发票、电子普通发票
- 购买方名称:可点击进入发票申请详情页面(未开票、开票失败可编辑保存,开票中、已开票不可编辑保存)。
- 开票状态:未开票、开票失败、开票中、已开票
- 【开票】:进入开票页面。
- 【删除】:未开票、开票失败可以删除,其余不可删除。
- 【下载】:将发票下载到本地
- 【补发】:弹窗选择“短信发送/邮箱发送”
4、 “发送发票”弹窗

5、开票页面

开票中/已开票状态的发票不可以编辑,只能查看。
未开票/开票失败状态的发票可以编辑。
操作按钮:
- 【保存】:保存当前发票申请中的信息,仅保存不调接口。
- “发票申请”状态变更为‘开票中’,并回到发票申请列表。
- 将对应POS单开票状态变更为“已开票”接口返回结果后将“发票中”状态变更为‘已开票/开票失败’,如果返回开票失败,则将对应POS单的开票状态变更为“未开票”。
- 发票基础信息:由消费者申请生成的,由消费者选择的发票类型决定,没有选择的项按默认的来。
- 发票种类:026-普通电子发票(默认)开票类型:0-蓝字发票(默认)、1-红字发票征税方式:0-普通征税(默认)、2-差额征税是否含税:含税(默认)特殊票种:00-普通发票(默认)
- 购方类型:企业、个人(默认)
- 【选择订单】:点击时弹窗“选择开票POS单”,可以按店铺筛选订单将订单明细添加到发票明细中。
- 生成“发票申请”时根据组织ID、店铺ID去“发票平台”中将信息带过来
- 名称:企业名称、可修改、必填、长度80字符
- 纳税人识别号:企业税号、可修改、必填、长度15~20、数字、字母
- 生成“发票申请”时将消费者录入的抬头信息带进来
- 商品明细规则:分为两种类型行(明细行与折扣行),当商品有使用活动或修改销售折扣,导致结算金额不等于零售金额时就需要添加折扣行展示。
- 商品行:展示商品名称、规格、数量、零售单价(使用优惠前的)、零售金额(使用优惠前的)
- 折扣行:展示商品名称、优惠金额、税率、税额,跟随在商品行下生成。
- 项目名称:可修改、商品名称(明细行),商品名称(折扣行)
- 单价:金额/数量(明细行)
- 金额
- 明细行:零售金额 / (1 + 税率)
- 折扣行:(零售金额-实际结算金额)* -1 / (1 + 税率)。(折扣行是个负数)
- 税类:必选。
- 根据商品档案中的税类自动带出对应的税类,可手动选择商品税类。
- 商品没有维护税类时,税类为空,需要手动选择。
- 可选择范围:当前集团所有税类。
- 税率:根据税类中带出对应的销项税率(明细行、折扣行),不可修改,选择完税类后重新计算税额、金额、单价。
- 税额:
- 明细行:零售金额 – 明细行金额2)
- 折扣行:(零售金额-实际结算金额)* -1 – 折扣行金额
- 删除:点击可以删除整行明细行/折扣行数据。删除后重算合计金额、合计税额、价税合计(大写)、价税合计(小写)
6、开票-选择POS单开票弹窗

- 默认查询:POS单按时间倒序
- 查询范围:开票状态为“未开票”的POS单。
- 查询方式:POS单按时间倒序
- 店铺端:默认当前店铺归属组织、不可更改
- 客户端:默认当前客户归属组织,不可更改
- 通用端:可更改,可选择归属当前组织的店铺进行查询
- 单号:左匹配
- 会员:全匹配、可输入会员卡号、手机号查询
- 开单时间:可选择时间区间查询,默认查最近7天。
- 选择:将当前行的POS单商品带入到发票明细中,并清空原本的商品。

7、应用场景
- 场景一:收银员帮顾客开票
- ①顾客扫描开票二维码,录入抬头信息申请开票。
- ②顾客到收银台将小票和发票申请信息(抬头名)告诉收银员
- ③收银员在POS页面进入【发票申请】,找到对应顾客的发票申请记录。
- ④点击对应发票申请进入详情后进行商品明细补充,补充完资料后点击【开票】按钮开票。
- ⑤消费者短信或邮箱收到发票。
- 场景二:查看已开的电子发票
- ①顾客因各种原因找不到第三方发送的发票后,找门店补发发票
- ②输入抬头/收票手机/收票邮箱/小票号进行查找发票信息
- ③找到对应发票点击【电子发票】,弹窗显示发票,可点击下载
- 场景三:补发发票
- ①顾客因各种原因找不到第三方发送的发票后,找门店补发发票
- ②输入抬头/收票手机/收票邮箱/小票号进行查找发票信息
- ③找到对应发票点击【发送发票】,选择【短信发送】/【邮箱发送】
- ④【短信发送】页面选择“发票发送模板”,系统自动带出发票申请中的收票手机号,询问顾客是否需要更改收票手机。
- ⑤点击【发送】触发系统发送短信。
(四)POS调整
1、概述
消费者会在门店申请开电子发票,由店员或收银员在发票中添加订单商品明细来申请开票。
在POS进入“发票申请”页面需要默认当前店铺组织、当前店铺不可切换,只能看到当前属于店铺的开票申请。
在选择开票POS单弹窗中查询条件默认当前店铺组织、当前店铺不可切换,只能选择当前店铺的订单。
2、 路径:【POS】-【其他功能】-【发票管理】
1.POS其他功能中增加“发票管理”入口

2.POS-发票管理列表

- 店铺:默认当前店铺,不可选择
- 发票代码:左匹配
- 发票号码:左匹配
- 开票状态:单选(开票中/已开票/开票失败)
- 购买方类型:企业、个人
- 销售企业:左匹配,根据输入内容查找销售企业
- 购买方名称:左匹配,根据输入内容查找
- 购买方名称手机号码:左匹配,根据输入内容查找接收人的手机号码
- 邮箱地址:左匹配,根据输入内容查找接收人的邮箱地址
- POS单号:左匹配,根据输入内容查找POS单号
- 开票申请:对应按钮【开票】、【删除】
- 已开发票:对应按钮【补发】、【下载】
- 发票代码:开票接口成功时返回,开票申请时是空的
- 发票号码:开票接口成功时返回,开票申请时是空的
- 购买方类型:个人/企业
- 发票种类:电子专用发票、电子普通发票
- 购买方名称:可点击进入发票申请详情页面(未开票、开票失败可编辑保存,开票中、已开票不可编辑保存)。
- 开票状态:未开票、开票失败、开票中、已开票
- 【开票】:进入发票申请页面。
- 【删除】:未开票、开票失败可以删除,其余不可删除。
- 【下载】:将发票下载到本地
- 【补发】:弹窗选择“短信发送/邮箱发送”“发送发票”弹窗

3.开票页面

开票中/已开票状态的发票不可以编辑,只能查看。未开票/开票失败状态的发票可以编辑。
- 【开票】:需验证所有必填项; “发票申请”状态变更为‘开票中’,并回到发票申请列表。将对应POS单开票状态变更为“已开票”接口返回结果后将“发票中”状态变更为‘已开票/开票失败’,如果返回开票失败,则将对应POS单的开票状态变更为“未开票”。
- 发票种类:026-普通电子发票(默认)、028-电子专用发票开票类型:0-蓝字发票(默认)、1-红字发票
- 征税方式:0-普通征税(默认)、2-差额征税
- 是否含税:含税(默认)
- 特殊票种:00-普通发票(默认)
- 【选择订单】:点击时弹窗“选择开票POS单”,可以按店铺筛选订单将订单明细添加到发票明细中。生成“发票申请”时根据组织ID、店铺ID去“发票平台”中将信息带过来。
- 商品明细规则:分为两种类型行(明细行与折扣行),当商品有使用活动或修改销售折扣,导致结算金额不等于零售金额时就需要添加折扣行展示。
- 明细行:零售金额 / (1 + 税率)
- 折扣行:(零售金额-实际结算金额)* -1 / (1 + 税率)。(折扣行是个负数)
- 税率:根据商品档案中的税类自动带出对应的税类,可选择选择商品税类,根据税类中带出对应的销项税率(明细行、折扣行),选择完税类后计算税额、金额、单价。
- 明细行:零售金额 – 明细行金额
- 折扣行:(零售金额-实际结算金额)* -1 – 折扣行金额
4.POS单界面说明:
POS单主表增加字段:开票状态(未开票、开票中、已开票)
5.使用场景
- 场景一:收银员帮顾客开票
- ①顾客扫描开票二维码,录入抬头信息申请开票。
- ②顾客到收银台将小票和发票申请信息(抬头名)告诉收银员
- ③收银员在POS页面进入【发票申请】,找到对应顾客的发票申请记录。
- ④点击对应发票申请进入详情后进行商品明细补充,补充完资料后点击【开票】按钮开票。
- ⑤消费者短信或邮箱收到发票。
- 场景二:查看已开的电子发票
- ①顾客因各种原因找不到第三方发送的发票后,找门店补发发票
- ②输入抬头/收票手机/收票邮箱/小票号进行查找发票信息
- ③找到对应发票点击【电子发票】,弹窗显示发票,可点击下载
- 场景三:补发发票
- ①顾客因各种原因找不到第三方发送的发票后,找门店补发发票
- ②输入抬头/收票手机/收票邮箱/小票号进行查找发票信息
- ③找到对应发票点击【发送发票】,选择【短信发送】/【邮箱发送】
- ④【短信发送】页面选择“发票发送模板”,系统自动带出发票申请中的收票手机号,询问顾客是否需要更改收票手机。
- ⑤点击【发送】触发系统发送短信。开票-选择POS单开票弹窗

- 默认查询:POS单按时间倒序
- 查询范围:开票状态为“未开票”的POS单。
- 查询方式:POS单按时间倒序
- 店铺端:默认当前店归属组织、不可更改
- 单号:左匹配
- 会员:可输入会员卡号、手机号查询
- 开单时间:可选择时间区间查询,默认查最近7天。
- 【选择】:将当前行的POS单商品带入到发票明细中,并清空原本的商品。
6.消息模板增加“发票发送模板”
概述:
当第三方发送发票异常或消费者弄丢原来的发票时,门店用来补发发票的通知模板
功能描述:
邮件与短信的类型模板中增加“发票发送模板”
- 【店铺名】尊敬的顾客,您的电子发票已开具。请查收。发票下载地址【发票链接】。可配置字段:【店铺名】、【发票链接】、【电子发票】
- 【店铺名】尊敬的顾客,您的电子发票已开具,您可点击:【发票链接】下载。如有疑问可咨询店铺客服。可配置字段:【店铺名】、【发票链接】
五、小程序
(一)扫码录入抬头信息
1.概述
恒康小程序。消费者扫描店铺二维码后,录入抬头信息、收票手机/邮箱等申请开票。


2.字段说明
- 发票类型:普通发票
- 抬头类型:个人/单位
- 个人
- 抬头名称:用于填写个人姓名,必填、最多80位。
- 获取抬头:调用微信接口获取微信抬头
- 单位
- 抬头名称:用于填写购买方企业名称,必填、最多80位
- 获取抬头:调用微信接口获取微信抬头单位
- 税号:营业执照编码正则验证
- 注册地址:长度80,非必填、输入类型不限
- 注册电话:数字、1开头、11位、非必填
- 开户银行:长度80、非必填、输入类型不限
- 银行账号:长度10-20、数字、非必填
- 个人
- 收票信息
- 收票手机:验证手机格式(1开头、11位),与邮箱二选一,两个必须填一个
- 收票邮箱:验证邮箱格式,与邮箱二选一,两个必须填一个
- 【申请开票】
- 按钮点击按钮时校验所有输入框是否合法,按排列顺序弹窗提示对应的错误“抬头名称必填”、“单位税号不合法”、“单位税号必填”。关闭弹窗时定位到对应输入框。
- 检查二维码对应的发票平台中该店铺是否存在:如果不存则提示“该二维码已过期,请联系商家”。
- 申请成功后弹窗提示“申请开票成功”,关闭弹窗后刷新页面清掉数据。
3.使用场景
场景1:申请开个人类型的电子发票
场景2:申请开企业类型的电子发票
场景3:获取微信中的发票抬头信息



