盧光宏 周國浩 許駿洲 潘海楠 丁旋 段春暉
摘要:電子發票和財政電子票據(電子票)在人們日常生活中無處不在,然而當前電子票對用戶而言仍然存在著管理困難、歸集過程復雜、易重復查驗、難以控制等問題。提出基于郵件解析的區塊鏈電子票夾系統,主要服務于報銷者與財務人員。目前電子票普遍支持郵箱接收,而一般郵箱不具備電子票信息解析功能,難以進行查閱管理。因此,自主研發一套郵箱服務系統,專門接收含電子票文件或鏈接的郵件,并能將電子票關鍵信息準確解析出來,發送至電子票夾應用平臺。電子票夾應用平臺支持Web網頁與小程序的可視化顯示,方便用戶查看與管理電子票,同時支持一站式報銷和入賬。電子票每一次狀態變更都會同步記錄到區塊鏈上,以保證電子票信息的完整性、唯一性與可追溯性。
關鍵詞:區塊鏈;電子票;電子票解析;郵箱服務
DOI: 10. 11907/rjdk.192536
開放科學(資源服務)標識碼(OSID):
中圖分類號:TP399
文獻標識碼:A
文章編號:1672-7800(2020)001-0211-05
0 引言
發票和財政票據在人們日常生活中無處不在。發票是指一切單位和個人在購銷商品、提供或接受服務以及從事其它經營活動過程中,所開具與收取的業務憑證,是會計核算的原始依據,也是審計機關、稅務機關執法檢查的重要依據,人們去商城購物、乘坐出租車、或去酒店住宿等經常會收到發票;財政票據是指由財政部門監(印)制、發放與管理,國家機關、事業單位、具有公共管理或服務職能的社會團體以及其它組織依法收取政府非稅收入,或者在從事非營利性活動收取財物時,向公民、法人和其它組織開具的憑證,人們繳納學費、醫療支出、公益捐贈等都會收到財政票據。電子票則將傳統紙質發票和財政票據電子化,可實現相同功能。電子票的出現解決了紙質票保管不便、容易丟失、成本較高等缺點,將成為未來發展趨勢。
從政策方面看,對于電子發票,2015年11月,國家稅務總局發布《關于推行通過增值稅電子發票系統開具的增值稅電子普通發票有關問題的公告》,要求推行增值稅電子發票系統開具的增值稅電子普通發票[1];2017年3月,國家稅務總局發布《關于進一步做好增值稅電子普通發票推行工作的指導意見》,高度重視電子發票推行工作,并規范電子發票服務平臺建設[2]。對于財政電子票據,2018年11月,國家財政部發布《關于全面推開財政電子票據管理改革的通知》,需要貫徹“互聯網+政務服務”要求,提升財政票據監管效能,全面推開財政電子票據管理改革[3];2019年7月,國家財政部發布《關于全面推行醫療收費電子票據管理改革的通知》,要求全面推行醫療收費電子票據管理改革,規范全國統一醫療收費票據填列,進一步強化保障措施[4]。
從市場方面看,對于電子發票,如今包括淘寶、京東、亞馬遜等知名購物平臺已經全面支持電子發票。高燈科技副總裁兼CTO楊光說:“中國2018年狹義的發票體量大概接近1千億張,實際上開具的電子發票僅占5%,電子發票市場潛力十分巨大。”2018年我國電子發票開具數量達到32.7億張,預計2022年將達到545.5億張[5]。對于財政電子票據,2017年9月1日,華僑大學財政電子票據管理系統正式上線,并成功開具了該單位第一份財政電子票據,截至2018年4月底,各中央高校共開具財政電子票據43萬份,涉及資金45億元[6]。2019年5月24日,北京大學第一醫院成功開出第一張醫療門診收費電子票據,這是首張中央在京三甲醫院開出的醫療收費電子票據,中央單位醫療收費電子票據改革推進工作由此開始[7]。
雖然電子票的發展非常迅速,但仍存在著一些亟需解決的問題,這些問題主要面向報銷者和財務人員。對于報銷者而言,主要存在以下問題:①歸集困難。電子票通常存儲在個人郵箱、微信卡包、支付寶發票管家、百望,航信網等應用中,查看與管理比較困難;②報銷過程復雜。用戶報銷時需要將電子票打印出來,程序繁瑣,目前尚難以實現無紙化報銷;③難以控制。用戶難以知曉報銷狀態,有時還會出現重復報銷的情況,從而帶來許多不必要的麻煩。對于財務而言,主要存在以下問題:①操作繁瑣。需要處理各種不同的紙質原票和打印票;②查驗冗余。為防止重復報銷,確認合法性,對于每一張票都要仔細查驗;③管理困難。一般需通過財務軟件或Excel手動錄入數據,管理過程比較復雜。
1 研究現狀
自國家大力推行電子票應用以來,國內學者即開始對電子票展開研究。近年來面向發票管理平臺的研究層出不窮[8-9],這些研究雖然保證了電子票系統的魯棒性與高效性,但仍然需要用戶手動錄入信息、手工查驗,用戶體驗不佳。同時研究者們在票據方面也進行了相關探索,一些研究為了省去手動錄入的繁瑣操作,使用Tesseract-OCR文字識別技術實現紙質票據文檔的信息提取,但仍需要手動拍照上傳,并且準確率不是很高,難以達到財務工作要求[10]。
上述系統只是解決了電子票數字化的問題,電子票本身是否可信則需要進行查驗。對于發票而言,國內有全國增值稅發票查驗平臺,但是查驗需要安裝根證書,并且每一張票都有查驗數量限制;對于財政票據而言,各地方都有各自的查驗平臺,因而難以解決多地報銷問題。所以目前一些研究創新地使用區塊鏈技術[11]實現全流程上鏈,各地方信息共享,同時區塊鏈技術優化了數字票據交易與結算流程。
區塊鏈技術來源于2008年中本聰[12]發表的關于比特幣的論文,該論文創造性地提出了區塊鏈技術。區塊鏈技術能夠實現多方數據共享且不可篡改,并實現比特幣交易記賬,但難以支持更加復雜的交易類型。因此,以太坊應運而生[13],以太坊對腳本、競爭幣和鏈上元協議概念進行整合,使得開發者可以創建任意基于共識、具有高擴展性、標準、特性完備、便于開發與協同的應用(智能合約)。使用以太坊智能合約即可實現電子票流轉業務,但以太坊屬于公鏈,每個人都參與共識,其處理速度無法滿足電子票業務場景。若需要少數節點共識可以選擇聯盟鏈,目前流行的聯盟鏈有Hyperledger Fabric[14-15]、FISCO BCOS[16]、Cor-da[17]等,其處理速度普遍較快,且可以實現用戶數據互通。
上述方案可以解決電子票的大部分問題,但依然難以歸集所有電子票。目前用戶電子票可能存在于各個平臺中,如支付寶發票管家[18]、微信卡包[19]等,但各平臺中的數據無法統一,導致用戶使用非常不便。因此,本文通過郵箱服務歸集全量的電子票。
2 研究內容
針對上述問題,一種理想解決方案是打通所有業務系統、財務軟件、國稅/財政電子票管理系統,從而使電子票能夠全量歸集、自動報銷、統一管理,以便在最大程度上提升用戶體驗,但需要對現有系統進行整體調整與改造,需要耗費大量時間、精力和財力。本文將通過一個電子票夾平臺,用更簡單、成本更低、更便捷的方式解決以上問題。本文目標為電子票全量歸集、自動錄入、一站式報銷、全過程可追溯與信息綜合管理。
(1)全量歸集。目前大多數電子票據平臺都支持通過郵件形式開具票據,為了能夠以成本最低的方式歸集所有電子票,本系統使用郵件服務的方式接收用戶電子票據,以實現對電子票據的全量歸集。
(2)自動錄入。手動錄入電子票據信息往往會出現錄入錯誤等問題,系統希望在接收到電子票據后能夠自動解析出其中的關鍵信息,并將電子票據信息與報銷信息自動錄入到區塊鏈上。
(3)一站式報銷。傳統報銷周期過長,本系統希望能夠實現一站式報銷功能,不需要打印票據,也不需要與財務人員當面交流,從而節約報銷者和財務人員時間。
(4)全過程可追溯。采用電子票據代替紙質票據后,容易出現重復報銷等問題,希望通過將電子票信息與報銷狀態存入區塊鏈中,從而解決重復報賬、真偽查驗等問題,保證電子票的可追溯性。
(5)信息綜合管理。將所有電子票據信息歸集到平臺后,希望給用戶提供相應的可視化界面,令其能夠更方便地對電子票進行管理。
3 總體設計
3.1 設計思路
目前電子票普遍支持郵箱接收,而一般郵箱不具備電子票信息解析功能,難以進行查閱與管理。因此,本文研發一套郵箱服務系統,專門用于接收電子票郵件,并將關鍵信息解析出來,發送至電子票夾應用平臺。電子票夾應用平臺支持Web網頁與小程序展示,方便用戶查看與管理電子票,同時支持一站式報銷和人賬。電子票每一次狀態變更都會同步記錄到區塊鏈上,以保證電子票信息的完整性、唯一性與可追溯性。整體設計思路如圖1所示。
3.2 業務流程
為實現上述目標,根據實際業務流程對系統進行解讀,如圖2所示。
詳細業務流程如下:
(1)申請郵箱。用戶首先需要注冊一個賬號,注冊成功后,系統會根據輸入用戶名自動生成一個郵箱地址,通過該郵箱地址或手機號登錄平臺。
(2)取票。商家將電子票通過郵件方式發送給報銷人注冊的郵箱,郵箱收到郵件后會對電子票進行自動解析。解析的電子票詳細信息會被記錄在應用平臺上,同時在電子票夾區塊鏈中進行存證。
(3)報銷。報銷者登錄賬號后即可看到待處理的電子票,然后將其發送給財務進行報銷,電子票轉交信息會記錄到區塊鏈上。
(4)入賬。財務登錄賬號后會看到待處理的電子票詳細信息,如果核對無誤,財務將給報銷人轉賬并將電子票狀態置為已報銷,該過程同樣也會存證上鏈。
整個業務過程可追溯,詳細流程如圖3所示。
4 系統架構
4.1 整體架構
系統核心模塊主要有電子票夾前端UI、郵件處理模塊、電子票解析引擎、電子票夾后端服務、狀態數據庫、區塊鏈對接模塊與區塊鏈。其中,電子票夾前端UI向用戶展示信息,方便用戶操作;郵件處理模塊接收外部郵箱服務傳來的電子票郵件,并將其中的電子票提取出來發送給電子票解析引擎進行解析;電子票夾后端服務處理來自電子票夾前端UI與電子票解析引擎的請求,與系統其它部分進行數據交互;狀態數據庫負責存儲用戶與票夾數據,并支持復雜查詢;區塊鏈對接模塊將底層與區塊鏈交互邏輯進行業務封裝,對電子票進行信息存證,并與狀態數據庫保持數據同步。系統具體架構如圖4所示。
4.2 模塊設計
(1)電子票夾前端UI。目前已支持采用網頁和小程序形式呈現,用戶收到帶有電子票的郵件后,即可在頁面上看到電子票信息詳情,可以很方便地進行電子票的篩選、查詢、轉發、報銷、入賬等操作。該模塊使用React框架[20]與Ant Design實現,通過HTTPS協議與電子票夾后端服務進行JSON格式的數據交互。
(2)郵件處理模塊。該模塊支持郵件接收,同時在收到含有電子票的郵件之后,模塊會立即搜索電子票所在位置,可能是在附件中,也可能在某個鏈接中,之后模塊會提取這些信息發送給電子票解析引擎。該模塊使用Postfix與Dovecot[2l實現。
(3)電子票解析引擎。該模塊會對電子票進行解析,提取電子票中的關鍵信息,便于數據存儲與統計。該模塊使用Python實現,通過HTTPS協議與電子票夾后端服務進行JSON格式的數據交互。本文使用基于字符位置的電子發票解析方案,目前較為流行的電子發票信息解析提取技術為OCR識別技術,該技術利用光學字符識別技術提取圖片上的文字內容。阿里、百度、騰訊、華為等公司都基于OCR技術提供了一系列服務,但該技術需要先將PDF格式的電子發票轉化為圖片格式,可能會導致分辨率降低,從而降低識別準確率。本文通過直接提取PDF的方式則可以避免轉化過程,提高識別準確率。本方案通過提取發票信息中的字符位置,然后根據位置信息進行劃分,并將字符進行重組。
本文采用上述方法直接對所有電子票進行解析,即可非常清晰、完整地獲得所有信息。
(3)電子票夾后端服務。電子票夾后端服務接收電子票夾前端UI與電子票解析引擎發送的請求,并根據請求內容進行電子票信息存證或信息查詢。電子票夾后端服務使用Java語言與Spring Boot框架實現。
(4)狀態數據庫。狀態數據庫負責存儲用戶與電子票數據。狀態數據庫采用MvSQL,并利用Hibernate框架實現數據的增刪改查。
(5)區塊鏈對接模塊。區塊鏈對接模塊封裝了底層與區塊鏈交互的部分,向上提供電子票存證、轉發、報銷、人賬、查詢等多種業務接口。該模塊通過}昆合加密方式保證電子票的授權訪問,即只有參與方才能對電子票進行解密讀取。同時與狀態數據庫保持信息同步,并緩存鏈上狀態。數據庫擁有同步數據后,即可更方便地提供全面的檢索功能。該模塊使用Java語言編寫。
(6)區塊鏈。區塊鏈模塊采用4個節點的聯盟鏈實現,主要提供電子票存證與查詢接口。部署的智能合約使用Solidity編寫,合約中主要包含單位注冊、電子票開具、電子票沖紅、電子票打印、電子票入賬、交易鏈上信息查詢、電子票詳情查詢等接口,同時也會對各個交易請求進行校驗,確保電子票的規范化。
5 系統界面
由于系統主要分為郵箱服務系統、電子票夾平臺、電子票夾區塊鏈3個模塊,所以界面展示部分也按照這3個模塊進行介紹。
5.1 郵箱服務系統
郵箱服務系統在收到郵件后會進行自動解析,得到電子票上的全部信息,并以JSON格式輸出。
5.2 電子票夾平臺
平臺可分為3大模塊:首頁、用戶模塊、電子票模塊。首頁有平臺基本介紹,以及用戶當前狀態可進行的一些基本操作;用戶模塊包括注冊頁面、登錄頁面以及用戶個人信息頁面。在個人信息頁面中,用戶可查看自己的郵箱、手機號碼、注冊時間以及所有電子票。電子票模塊暫時以電子發票為例進行展示,包括“我的發票”和“曾有發票”頁面。對于用戶當前所有發票,用戶可在“我的發票”頁面查看;對于轉發給別人的發票,用戶可在“曾有發票”頁面查看,如圖5所示。
在“我的發票”頁面,用戶可選擇一張或多張發票,點擊轉發按鈕將這些發票轉發給別人,或者點擊人賬按鈕將這些發票入賬。
5.3 電子票夾區塊鏈
可以在區塊鏈瀏覽器上查找到交易hash對應詳情,如圖6所示。
6 結語
本文研發的系統將郵箱服務與電子票相結合,便于用戶管理與歸集電子票。同時,本系統將區塊鏈技術與電子票據相結合,通過將報銷過程的每個步驟記錄在區塊鏈中,避免了重復報銷與虛假報銷的風險,保證了電子票可信、可查、可控、可溯源。系統學習成本低、解析準確率高,且自動化上鏈、歸集管理方便,用戶報銷簡便、全過程可追溯,因此具有巨大的市場潛力。
參考文獻:
[1] 國家稅務總局.關于推行通過增值稅電子發票系統開具的增值稅電子普通發票有關問題的公告[EB/OL].http://www.chinatax.gov.cn/n8 10341/n8 10765/n 146597 7/n 146600Vc2061033/content.html.
[2] 國家稅務總局.關于進一步做好增值稅電子普通發票推行工作的指導意見[EB/OL]。http://www.chinatax.gov.cn/n810341/n8 10755/c2540586/content.html.
[3] 國家財政部.關于全面推開財政電子票據管理改革的通知[EB/OL]. http: //www.gov.cn/ximven/2018-1 l/15/content_5340693.htm.
[4] 國家財政部.關于全面推行醫療收費電子票據管理改革的通知[ EB/OL]. http: //news.emoney.cn/zhengce/3047368.shtml.
[5] 中國產業信息網.2018-2024年中國電子發票市場運營態勢及前景預測報告[ EB/OL].http://www.chyxx.com/research/201 802/611165.html.
[6] 中國財經報.應用電子票高校領新潮——部分高校開展財政電子票據管理改革紀實[ EB/OL].http://pjzx.mof.gov.cn/zhengwuxinxi/gongzuodongtai/201806/t2018060 L291498l.html.
[7] 票據監管中心.中央在京三甲醫院開出首張醫療收費電子票據[ EB/OL] .http: //pjzx.mof.gov.cn/zhengwuxinxi/gongzuotongzhi/201 905/t20190529_3267807.html.
[8] 雷曉.基于B/S架構的網絡發票管理系統的設計[D].成都:電子科技大學,2018.
[9] 董小芳.網絡發票管理平臺的設計與實現[D].天津:天津大學,2014.
[10]王希晨.基于Tesseract的電子票據云平臺的設計與實現[D].南京:南京大學,2016.
[11]黃佳,明紅娟.區塊鏈技術在數字票據交易平臺中的應用[J]湖北理工學院學報(人文社會科學版),2018.35(6):41-44.
[12]NAKAMOTO S. Bitcoin:a peer-to-peer electronic cash system[ EB/OL]. https: //bitcoin.org/bitcoin.pdf.
[13] BUTERIN V.A next-generation smart contract and decentralized ap-plication platform[J]. white paper, 2014,3:37.
[14]ANDROULAKI E,BARGER A, BORTNIKOV V.et al. HyperledgerFabric:A Distributed Operating System for Permissioned Blockchains[C]. The Thineenth EuroSys Conference, 2018.
[15] CACHIN C.Architecture of the hyperledger blockchain fabric[C].Workshop on Distributed Cryptocurrencies and Consensus Ledgers,2016.
[16]FISCO BCOS. The building block of open consortium chain[ EB/OL].https: //www.fisco-bcos.org/.
[17]BROWN R G,CARLYLE J,CRIGG I, et al. Corda: an introduction[J]. R3 CEV, 2016,l:15.
[18]葉純青.支付寶推掃碼開發票[J].金融科技時代,2017 (7):26.
[19] 梁麗雯.微信發票來了無紙化報銷是趨勢[J].金融科技時代,2016, 24(5):87.
[20]BANKS A, PORCELLO E.Learning react: functional web develop-ment with react and redux[M]. O'Reilly Media, Inc., 2017.
[21]徐建.基于Linux平臺的郵件系統的設計與實現[J].湖北民族學院學報(自然科學版),2011(1):103-105.
(責任編輯:黃健)
作者簡介:盧光宏(1996-),男,清華大學軟件學院碩士研究生,研究方向為安全計算;周國浩(1996-),男,清華大學軟件學院碩士研究生,研究方向為區塊鏈網絡安全;許駿洲(1998-),男,清華大學軟件學院碩士研究生,研究方向為智能合約的形式化驗證;潘海楠(1989-),男,清華大學軟件學院碩士研究生,研究方向為增量學習;丁旋(1986-),男,博士,清華大學軟件學院助理研究員,研究方向為隱私保護、安全計算;段春暉(1992-),女,博士,清華大學軟件學院博士后,研究方向為RFID。