输出示例:
{
"发票代码": "031001900111",
"发票号码": "96803177",
"开票日期": "2020-06-04",
"校验码": "15821 43303 58801 56335",
"机器编号": "499099827029",
"发票名称": "上海增值税电子普通发票",
"购买方": {
"名称": "上海少侠网络科技有限公司",
"纳税人识别号": "91310230MA1K2X93X0",
"地址、电话": "",
"开户行及账号": ""
},
"密码": [
"032821682*+*-9*36*6338+915<<",
">46</76>0/40351+19066>6434-5",
"045292/12+/64-+352822/3>48<*",
"796349569<01+2761949>/>0*+74"
],
"项目": [
[
"货物或应税劳务、服务名称",
"*信息技术服务*信息系统增值服务",
"*广告代理服务*广告代理费",
"合计"
],
[
"规格型号"
],
[
"单位",
"次",
"次"
],
[
"数量",
"1",
"1"
],
[
"单价",
"863.21",
"80.19"
],
[
"金额",
"863.21",
"80.19",
"¥943.40"
],
[
"税率",
"6%",
"6%"
],
[
"税额",
"51.79",
"4.81",
"¥56.60"
]
],
"合计": [
"壹仟元整",
"¥1000.00"
],
"销售方": {
"名称": "百度在线网络技术(北京)有限公司上海软件技术分公司",
"纳税人识别号": "91310000772120643P",
"地址、电话": "上海市嘉定区汇荣路468号2幢2层B区021-39005678",
"开户行及账号": "招商银行上海分行曹家渡支行215081392810001"
},
"备注": [],
"收款人": "百度",
"复核": "",
"开票人": "百度",
"fileId": "dc20c6e07d858fdca9468055e05b54f8"
}
数据结构根节点为对象,对象的key
基本上都是发票票面上的字段和字段值。
开票日期统一格式化为YYYY-MM-DD
格式,可能跟票面实际文本略有差异。
购买方和销售方下各有4个字段。
密码字段是数组结构,解析正确时都有4个元素,按顺序对应发票票面密码区从上到下4行密码文本。
项目字段是二维数组结构。表示“货物或应税劳务、服务名称”表格的内容,包括表头。项目一级数组有8个元素,对应表格的8列。二级数组中包含当前列的所有文本字段,包括表头。
合计是价税合计一行的文本,是数组结构,一定包含大写文本和小写金额。
备注是数组结构,包含发票票面备注区域的文本。