增值税发票代码验证,发票扫描OCTiggo识别

By admin in 4858.com on 2019年3月25日

同大陆身份证验证一样,该片段是依照国家增值税发票代码的定制规则,进行发票代码验证,倘诺急需查验发票消息是不是正确,应该通过第壹方接口(大致一毛钱查验三遍),或然直接上国家税务总局全国增值税发票查验平台进展验证。

不久前,国税总局发出《国家税务总局关于启用全国增值税发票查验平台的布告》(国家税务总局公告二零一六年第97号)。87号文告鲜明税务总局决定启用全国增值税发票查验平台,可对新系列开具的增值税专用发票、增值税普通发票、机轻轨销售统一发票和增值税电子普通发票的发票音信举办稽查。

三月二日,国税总局颁发二零一七年第64号文,明确将增值税普通发票(折叠票)的发票代码调整为11位。没悟出刚过半个月,国税总局又针对增值税发票公布布告(前年第五5号文),规定:自二零一八年六月一日起,纳税人通过增值税发票管理新系统开具增值税发票(包含:增值税专用发票、增值税普通发票、增值税电子普通发票)时,商品和劳动税收分类编码对应的简称会自动显示并打字与印刷在发票票面“货物或应税劳务、服务名称”或“项目”栏次中。

眼下能识其余增值税发票代码包含以下几类:增值税专用发票增值税发票代码验证,发票扫描OCTiggo识别。增值税普通发票(纸质非卷票)增值税普通发票(卷票)增值税电子普通发票。在类库中,增值税代码验证相关的代码均在NumberValidators.Invoices4858.com ,下,其富含接口定义以及现实贯彻。

奥普通旅客快车票通发票扫描识别系统演示摄像

公司更是是内部控制严苛的大型商厦,为保证受益发票的确切合规,会须要财务职员在记账前,对接收的发票实行考查。

4858.com 1

IVATCodeValidator(增值税代码识别接口)定义如下:

增值税专用发票、增值税普通发票、增值税电子普通发票。对于平时生活福建中国广播集团泛的这二种票据,财务人士各类月都会收到多量的票证,财务职员无论是报税,还是费控,都急需对商家发生的票据举办人工的录入和查对。平日能够观望财务人士望着一叠一叠的发票唉声叹气。因为全靠一双手和一双眼睛来录入发票上聚讼纷繁的音讯,简直是累上加累。最重庆大学的是那种重新而又机械性的干活并未对财务工作品质有少数的晋升。

但是,通过查验平台拓展发票查验时,财务人士须求手工业输入:发票代码、发票号码、开票日期、校验码、开具金额(不含税)以及非凡复杂的验证码等音信。而且,如需保留查验结果,还亟需人工截图或打字与印刷,操作十三分劳苦。

国税总局第六5号公告首要演说了八个关键内容:

    /// <summary>
    /// 增值税发票代码验证接口
    /// </summary>
    public interface IVATCodeValidator <out TResult>: IValidator<TResult>
        where TResult : VATCodeValidationResult, new()
    {
        /// <summary>
        /// 用于验证的字典数据
        /// </summary>
        IValidationDictionary<int, string> Dictionary { get; set; }
        /// <summary>
        /// 生成增值税发票代码
        /// </summary>
        /// <param name="areaNumber">行政区划</param>
        /// <param name="year">年份</param>
        /// <param name="batch">批次</param>
        /// <param name="kind">要生成的发票类型</param>
        /// <returns></returns>
        string GenerateVATCode(int areaNumber, ushort year, ushort batch, VATKind kind);
        /// <summary>
        /// 发票代码验证
        /// </summary>
        /// <param name="vatCode">待验证的发票代码</param>
        /// <param name="kind">要验证的发票类型,不指定则传null</param>
        /// <param name="minYear">允许的最小年份(注:2012年1月1日营改增开始上海试点)</param>
        /// <returns></returns>
        TResult Validate(string vatCode, VATKind? kind = null, ushort minYear = 2012);
    }

出于财务职员的信息化一般靠公司内部的IT部门来促进,相对而言相比闭塞。很多时候市面三春经有11分干练的解决方案,而财务人士往往一窍不通,继续奋斗。就拿增值税发票的话,在信用合作社的过往业务中,占比很大,创设业或许物流等商户各类月吸收的供应商发票基本都以万级以上。如此多的发票全靠人工录入,核验,能够想象是多么巨大的3个工程。

4858.com 2

1.实践商品和劳务税收分类编码简称;

增值税发票代码验证定义了二种申明结果
VATCodeValidationResult那是暗中认可验证结果,其定义如下:

发票扫描OC奥迪Q7识别技术,早在二十年前就有雏形了,当时都以基于图片的文字检查和测试,并从未正规的发票识别产品。后来趁着税局的四处规范和改造,基本形成了今后大家看来的通用型增值税发票,同时也让OC揽胜识别厂家可以本着的做发票识其余钻研。

视察平台

2.扩充增值税小圈圈纳税义务人自行开具增值税专用发票试点范围;

    /// <summary>
    /// 增值税发票代码验证结果
    /// </summary>
    public class VATCodeValidationResult : ValidationResult
    {
        /// <summary>
        /// 行政区划代码
        /// </summary>
        public int AreaNumber { get; internal set; }
        /// <summary>
        /// 行政区域名称
        /// </summary>
        public string AreaName { get; internal set; }
        /// <summary>
        /// 发票类型
        /// </summary>
        public VATKind? Category { get; internal set; }
        /// <summary>
        /// 印刷年份
        /// </summary>
        public int Year { get; internal set; }
        /// <summary>
        /// 印刷批次
        /// </summary>
        public int Batch { get; internal set; }
        /// <summary>
        /// 发票联次,仅10位长度和12位长度折叠票发票才有
        /// </summary>
        public int DuplicateNumber { get; internal set; }
    }

奥普通游客快车票通发票扫描识别系统,基于北大东军事和政院学的OC奥德赛识别引擎,能够对增值税专用发票、普通发票、电子发票、高铁票等格式化发票,进行尤其的围观,形成印象的同时,利用专业的辨识技术,把全票面音信输出,并且协助识别结果导出到Excel。

4858.com 3

3.将二手车销售统一发票纳入增值税发票管理新系统。

VATCode10ValidationResult是在VATCodeValidationResult的基础上,额外定义了发票金额版本,其定义如下:

更进一步在最新的本子中,加入了高于的国税网站查验接口,先使用标准的发票扫描仪对纸质发票举行扫描识别,然后把相关的发票号码、代码、日期、金额、校验码等重庆大学要素自动输送到国税后台实行权威核验,最首若是能够重返百分百的全票面新闻,同时扶助导出到Excel。

查查结果示例

多四人会有疑难,国税总局为什么三个月总是公布七个公告?还都以指向增值税发票的。有人甚至追溯到二〇一九年“纳税义务人识别号”的明确,也是对准增值税发票的。总局在增值税发票上做这么多的篇章,到底意欲何为?

    /// <summary>
    /// 增值税发票和普通(纸质)专有的验证结果
    /// </summary>
    public class VATCode10ValidationResult : VATCodeValidationResult
    {
        /// <summary>
        /// 发票金额版本号,仅10位长度发票才有
        /// </summary>
        public AmountVersion AmountVersion { get; internal set; }
    }

发票扫描OCGL450识别+发票查验真伪+导出全票面包车型大巴Excel,那几个能够说是发票完美的录入方案。

据测算,平均查验一张发票的耗费时间亟待1-2分钟左右。借使财务职员要求对专营商接受的保有增值税发票进行考查,将发生巨大的工作量,更不用说人工输入大概会并发的错误率高的标题,查验效用相当的低下,严重影响公司总体的财务税务管理水平。

一贯以来,大家国家接纳的是“以票管税”的税收征收和管理制度,而随着国家音信化程度的抓好,发票甚至实际到增值税发票,都将演化为消息流格局,也正是说,发票表面上还名为发票,但情势已经变了,它以电子化的消息形成展现,以往来说,具体方式为电子发票。这跟我们开销的时候绝不现金,而改为信用卡、支付宝、微信同样,都是音信化发展的结果。

可根据IsValid来判断验证是还是不是中标,要是证实战败,Errors
属性则带有了注脚退步的原由,具体的失实原因列表如下

同时,奥普通游客快车票通发票扫描识别系统还提供了能够做二遍开发集成的SDK开发包。帮衬和见仁见智财务E奇骏P、公司OA等事情系统无缝的对接。真正兑现财务工作的一站式消除方案。无论是地点DLL&LIB调用,依然帮衬多浏览器的Websocket调用。已经和不少大小的正业系统实行了连接。

汉特税务通增值税发票查验解决方案,扶助公司落到实处增值税发票的批量检验和视察结果影象保存。
l 批量归集增值税发票票面音讯及印象
l 自动进行发票查验及结果报告
l 定时复查,防止发票记账后被作废

发票变成信息流了,发票的监禁方法也要跟上来,主因正是发票音信化这一个行当刚刚开端,须要有配套的社会制度。二零一九年,国税总局针对增值税发票公布多条通告,便是这一个缘故。而任何趋势是,国家会对发票越管越严,对税收稽查也将越查越严。

        /// <summary>
        /// 发票代码为空
        /// </summary>
        public const string Empty = "发票代码为空";
        /// <summary>
        /// 错误的发票代码
        /// </summary>
        public const string Error = "错误的发票代码";
        /// <summary>
        /// 发票年份超出允许的年份范围
        /// </summary>
        public const string YearOutOfRange = "发票年份超出允许的年份范围{0} ~ {1}";
        /// <summary>
        /// 发票发行区域识别失败
        /// </summary>
        public const string InvalidArea = "发票发行区域识别失败";
        /// <summary>
        /// 无效的发票类别
        /// </summary>
        public const string InvalidKind = "无效的发票类别";
        /// <summary>
        /// 发票类别错误,无法生成发票代码
        /// </summary>
        public const string GenerateWrongKind = "发票类别错误,无法生成发票代码";
        /// <summary>
        /// 无效实现
        /// </summary>
        public const string InvalidImplement = "未能找到或无效的 {0} 位发票代码实现";
        /// <summary>
        /// 长度不符
        /// </summary>
        public const string LengthOutOfRange = "发票代码非 {0} 位";

人为智能的号角已经吹响,而发票OCEscort识别,作为AI的1个分层,从前恐怕没有被世家爱抚,相信在今后几年的上扬中,技术的结缘将会越来越快。而OC奥德赛也肯定会发挥巨大的功用。

发票新闻归集###\

增值税发票查验化解方案支持集团经过纸质发票扫描、二维码扫描、pdf导入等二种方法实现发票音信收集。对发票举办票面消息全要素识别。识别出的席卷发票代码、发票号码、开票日期、金额、校验码等增值税发票消息将随同发票印象一起自动保存在公司票据仓库。

4858.com 4

因为脚下类库中已经全部收集了有着发票代码中协助的行政区划编号(可在航信官网上查看都有怎么着区域存在税务局),所以近日不再须求活动传递Dictionary来拓展支撑区域的校勘。

解放财务职员的单手,让愈多的会计职员投入到公司的管理决策中去。是大家作为OCPAJERO厂商平素着力的势头。同时也指望越多的人能够明白到OC酷路泽。

发票查验###\

通过增值税发票查验消除方案,能够遵照发票新闻要素构成选用条件查询出待查验发票,帮忙单张或批量选项提交进项发票查验;自动将须求检查的发票查验的发送到国税总局提供的举国增值税查验平台开始展览发票查验;查验结果自动重回(符合规律发票、作废发票、查无此票、票面音信不正确等),并可调阅查看国家税务局增值税查验平台查验截图,作为检察凭证。

增值税发票查验消除方案还足以为集团做到接受发票时自动查验、下月月首自动一次检查的操作,防止开票方无意或恶意开票后在作废。增值税发票查验消除方案可保存发票数次视察结果和查看截图,为财务职员的询问和调阅提供帮忙。

国家策略改变了,发票、税收囚系音信化也增加了,集团只要再用在此以前的发票管理方法,效用肯定会跟不上来。电子发票来了,发票归集怎么着搞?查验真伪咋办?发票又该怎么样抵扣?费控宝旗下产品艾特票就能解决以上所反常,个人版能够在各大应用平台免费下载应用,企业版固然收费,但进一步规范。具体可戳:费控宝布局C端产品艾特票,3-4亿职场人物发票管理工科具成普惠应用。

目前IVATCodeValidator包含VATCode10Validator以及VATCode12Validator三种具体贯彻

检验结果提醒###\

本着检察有尤其的发票,增值税发票查验消除方案将会议及展览开高亮提醒,提醒财务人士手工业检查和认同。防止集团收取和平运动用11分发票,幸免税务危害。

往昔的增值税收入发票管理化解方案一般只针对必要开始展览验证的增值税专用发票,而增值税发票查验消除方案是应对持有类型增值税发票的军管需求,包含增值税专用发票、增值税普通发票(含电子普通发票、卷式发票)、机轻轨销售统一发票、货物运输业增值税专用发票,都能够经过消除方案达成发票的真伪以及票面消息查验,保险公司受益发票易查询、易追溯、准确合规。

4858.com 5

关心汉特税务通,获取更加多财政与税收化解方案

实际,不光是中华,欧洲和美洲国家,甚至是像喀麦隆如此的澳洲江山,也在开始展览税收征收和管理信息化格局的转移。中亚地区的阿塞拜疆,从贰零零柒年就起来支付电子缴纳和填写系统。总的来说,那是科学和技术发展的满世界化趋势。

  • VATCode10Validator
    对应长度为10的发票代码,包括增值税专用发票、增值税普通发票
  • VATCode12Validator
    对应长度为12的发票代码,包罗增值税普通发票、增值税普通发票(卷票)、增值税电子普通发票
  • VATCodeValidatorHelper
    为静态类,用于扶持验证,其内部不难的卷入了按发票代码长度调用对应的IVATCodeValidator实现

行使例子如下

            Console.WriteLine("***增值税发票***");
            var vat10Validator = new VATCode10Validator();
            var vat12Validator = new VATCode12Validator();
            Console.WriteLine("随机的增值税发票:" + vat10Validator.GenerateRandomNumber());
            Console.WriteLine("生成指定的增值税专用发票:" + vat10Validator.GenerateVATCode(3700, 2017, 1, Invoices.VATKind.Special));
            Console.WriteLine("生成指定的10位增值税普通发票:" + vat10Validator.GenerateVATCode(1100, 2017, 2, Invoices.VATKind.Plain));
            Console.WriteLine("生成指定的12位增值税普通发票:" + vat12Validator.GenerateVATCode(1100, 2018, 6, Invoices.VATKind.Plain));
            Console.WriteLine("随机的增值税电子/卷票/普票:" + vat12Validator.GenerateRandomNumber());
            string[] vatArr = { "031001600311", "3100153130", "011001800304" };
            foreach (var vat in vatArr)
            {
                var valid = VATCodeValidatorHelper.Validate(vat, minYear: 2012);
                Console.WriteLine("{0}验证结果:{1} 类型{2} 行政区划名称({3}) 验证结果类型:{4}", vat, valid.IsValid, valid.Category, valid.AreaName, valid);
            }

PS:目前1.0版本中VATCode12Validator未协理十二位的增值税普通发票,假使急需帮衬,需从git上下载代码后自行生成dll

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有