增值税发票识别图片版

1.简介

1.1 场景简介

很多情况下需要对上传的增值税发票图片进行识别,并将发票的相关数据返回到字段中存储以便后续统计计算。

本文将通过支持发票图片识别的接口及简道云 前端事件 ,为您详细讲解图片版的发票如何在前端被识别出来。

1.2 预期效果

上传增值税发票图片,即可快速识别出发票详细信息,并填写在表单中;点击体验效果:发票识别demo

2. 接口准备

2.1 购买接口

首先我们需要找到一个支持发票图片识别的接口,我们以阿里云官方提供的接口为例,讲解如何在简道云的前端事件中配置:点击进入阿里云市场购买接口

我们先购买一个 0.01 元/500 次的体验版本,可以在 云市场 已购买的服务中看到我们刚刚购买的接口。

2.2 接口分析

接下来,点击接口,往下翻到 API 接口的详情介绍,对「增值税发票识别」的接口进行分析。

【调用地址】:http://dgfp.market.alicloudapi.com/ocrservice/invoice 或 https://dgfp.market.alicloudapi.com/ocrservice/invoice

【请求方式】:POST

【返回类型】:JSON

【请求的Headers】:Authorization: APPCODE +英文空格+ 你自己的 APPCODE(服从阿里云云市场的标准鉴权方式)

Authorization:APPCODE AppCode值

【请求body】

可以是图片的 URL 或者 base64 编码:

名称

类型

是否必须

描述

图片 Base64

STRING

可选

图片 Base64 和图片 URL 只能选择一个

图片 URL

STRING

可选

图片 Base64 和图片 URL 只能选择一个

正常返回示例:

{
    "sid": "11XXXXXXXXXXXXXX0d",
    "data": {
       "发票代码": "032001500XXX",
       "发票号码": "25272XXX",
       "开票日期": "2017年XX月XX日",
       "校验码": "15922733756000XXXXXX",
       "发票金额": "XXX.00",
       "发票税额": "XXX.43",
       "不含税金额": "XXX.57",
       "受票方名称": "XXX",
       "受票方税号": "XXXX",
       "受票方地址、电话": "XXX",
       "受票方开户行、账号": "XXX",
       "销售方名称": "XXX",
       "销售方税号": "913201043023368XXX",
       "销售方地址、电话": "XXX",
       "销售方开户行、账号": "XXX",
       "发票详单": [
    {
      "货物或应税劳务、服务名称": "【XXXX】XXXXXXXXXX",
      "规格型号": "",
      "单位": "",
      "数量": "",
      "单价": "75.21",
      "金额": "75.21",
      "税率": "17%",
      "税额": "12.79"
    }
  ],
  "发票代码解析": {
    "批次号": "11",
    "年份": "2016",
    "税务局代码": "None",
    "发票行业代码": "None",
    "金额版": "十万元版",
    "行政区划代码": "XX市",
    "发票类别代码": "None"
  }
 }     
}

3. 表单设计

新建「增值税发票识别」表单,字段设置如下:

字段名称

字段类型

上传发票图片

图片

发票代码

单行文本

发票号码

开票日期

校验码

发票金额

发票税额

不含税金额

受票方名称

受票方税号

受票方地址、电话

受票方开户行、账号

销售方名称

销售方税号

销售方地址、电话

销售方开户行、账号

发票详单

子表单

货物或应税劳务、服务名称

子字段-单行文本

规格型号

单位

数量

单价

金额

税率

税额

注:企业实际使用时,按需配置需要的字段即可。

4. 前端事件设置

4.1 配置入口

添加好了以后,即可在表单属性中配置前端事件:

4.2 设置事件名称&说明

添加好前端事件后,首先设置前端事件的基础信息,即事件名称和事件说明,用于区分前端事件:

4.3 设置触发动作

设置触发动作:触发字段选择「上传发票图片」字段。

4.4 设置执行动作

根据【2.2 接口分析】章节,设置执行动作如下:

  • 执行动作类型:自定义请求
  • 请求类型:POST
  • URL设置为:
https://dgfp.market.alicloudapi.com/ocrservice/invoice

Hearder/Body设置:

  • Hearder:Authorization=APPCODE+英文空格+自己的 APPCODE

注:可以在 云市场 已购买的服务中看到我们购买的接口,并获取对应的 APPCODE。

  • Body:JSON

name

value

url

上传发票图片字段

注:value 的值从右侧「插入字段」中选择。

全部设置完成记得点击「确定」进行保存。

4.5 设置返回值

1)返回值格式选择 JSON,点击返回值设置下方的「点击设置」:

2)进入返回值设置页面,添加「发票代码」、「发票号码」、「开票日期」等字段为其设置返回值:

3)根据 Json Path 规则及返回示例中的参数,按照格式,完成字段的配置如下:

返回值字段

解析值

发票代码

$.data['发票代码']

发票号码

$.data['发票号码']

开票日期

$.data['开票日期']

校验码

$.data['校验码']

发票金额

$.data['发票金额']

发票税额

$.data['发票税额']

不含税金额

$.data['不含税金额']

受票方名称

$.data['受票方名称']

受票方税号

$.data['受票方税号']

受票方地址、电话

$.data['受票方地址、电话']

受票方开户行、账号

$.data['受票方开户行、账号']

销售方名称

$.data['销售方名称']

销售方税号

$.data['销售方税号']

销售方地址、电话

$.data['销售方地址、电话']

销售方开户行、账号

$.data['销售方开户行、账号']

货物或应税劳务、服务名称

$.data['发票详单'][*]['货物或应税劳务、服务名称']

规格型号

$.data['发票详单'][*]['规格型号']

单位

$.data['发票详单'][*]['单位']

数量

$.data['发票详单'][*]['数量']

单价

$.data['发票详单'][*]['单价']

金额

$.data['发票详单'][*]['金额']

税率

$.data['发票详单'][*]['税率']

税额

$.data['发票详单'][*]['税额']

注:当子字段作为返回字段时,需要使用 [*] 来获取子表单所有行的数据。

5. 保存与调试

1)按照上述步骤,已完成前端事件的全部设置,接下来点击「保存并调试」,可进入调试,检查配置有无问题。

2)上传发票图片,然后点击底部「发送请求」,即可看到返回的发票信息,即配置成功。

文档内容是否对您有帮助?
有帮助
没帮助没帮助
如需获取即时帮助,请联系技术支持
咨询
扫码领取100+零代码资料简道云官方微信号400-111-0890
图标在线咨询
立即体验