gflohr/e-invoice-eu

GitHub: gflohr/e-invoice-eu

免费开源的电子发票生成工具链,支持多标准格式并可集成到自动化工作流中。

Stars: 173 | Forks: 26

[![licence](https://img.shields.io/badge/licence-WTFPL-blue)](http://www.wtfplnet/) [![price](https://img.shields.io/badge/price-FREE-green)](https://github.com/gflohr/e-invoice-eu/blob/main/LICENSE) [![coverage](https://img.shields.io/coverallsCoverage/github/gflohr/e-invoice-eu?branch=main)](https://coveralls.io/github/gflohr/e-invoice-eu?branch=main) [![downloads](https://img.shields.io/npm/dw/%40e-invoice-eu%2Fcore)](https://www.npmjs.com/package/@e-invoice-eu/core) [![documentation](https://img.shields.io/badge/documentation-read-green)](https://gflohr.github.io/e-invoice-eu) [![help](https://img.shields.io/badge/help-ask--a--question-green)](https://notebooklm.google.com/notebook/f5783dde-ebe6-4610-bac1-f181fdf45f94) [![listed on](https://img.shields.io/badge/listed%20on-awesome--europe-ffcc00?logo=europeanunion&logoColor=ffcc00&labelColor=003399)](https://github.com/GeiserX/awesome-europe#readme) [![stand with](https://img.shields.io/badge/stand%20with-Ukraine🇺🇦-ffc107)](https://www.standwithukraineeurope.com/en/) # E-Invoice-EU 免费且开源的电子发票生成工具链 (Factur-X/ZUGFeRD, UBL, CII, XRechnung) 从流行的电子表格格式或 JSON 格式使用免费且开源的软件生成。 - [为什么?](#why) - [如何使用?](#how) - [支持哪些格式?](#what) - [项目描述](#description) - [文档](#documentation) - [验证](#validation) - [已知问题](#bugs) - [PDF/A 支持](#pdfa) - [报告问题](#reporting-bugs) - [版权声明](#copyright) - [免责声明](#disclaimer) ## 为什么? 欧盟电子发票是强制性的,但大多数现有解决方案 是专有的、商业的、封闭的且成本高昂。E-Invoice-EU 采取了不同的方法: - ✅ **100% 免费且开源** – 无许可费,无供应商锁定 - ✅ **符合标准** – EN16931、Factur-X、ZUGFeRD、UBL、CII、XRechnung - ✅ **集成灵活** – 可使用命令行工具、REST API 或 TypeScript/JavaScript 库 - ✅ **现代 ERP 友好** – 基于 JSON 的输入/输出使其能轻松集成到任何当代 ERP 基础设施 - ✅ **已在生产环境验证** – 已被自由职业者到跨国企业广泛使用 无论您是需要每月自动化几张发票, 还是将电子发票集成到大型工作流中:E-Invoice-EU 都能为您提供可靠的基础。 ## 如何使用? 有多种方式可以使用该软件: - 一个命令行工具 `e-invoice-eu` - 一个带有 RESTful API 的 [网络服务](apps/server/README.md) - 一个 [JavaScript/TypeScript 库](packages/core/README.md) JavaScript/TypeScript 库既可以在命令行下使用,也可以在 浏览器中使用。浏览器版本的唯一限制是无法从电子表格数据生成 PDF 格式的发票,因为这需要调用 [LibreOffice](https://www.libreoffice.org/),而这在浏览器中无法实现。 相反,您必须自行提供 PDF 版本(如果需要)。 [E-Invoice-EU 文档](https://gflohr.github.io/e-invoice-eu/) 包含一个 [完整的在线发票生成演示](https://gflohr.github.io/e-invoice-eu/en/docs/other/browser-example/)。 ## 支持哪些格式? 您目前可以创建以下格式的电子发票: - `CII`:定制 ID `urn:cen.eu:en16931:2017` - `Factur-X-Minimum`:定制 ID `urn:factur-x.eu:1p0:minimum` - `Factur-X-BasicWL`:定制 ID `urn:factur-x.eu:1p0:basicwl` - `Factur-X-Basic-WL` 是 `Factur-X-BasicWL` 的别名 - `Factur-X-Basic`:定制 ID `'urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic'` - `Factur-X-EN16931`:定制 ID `urn:cen.eu:en16931:2017` - `Factur-X-Comfort` 是 `Factur-X-EN16931` 的别名 - `Factur-X-Extended`:定制 ID `urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended` - `Factur-X-XRechung`:定制 ID `urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0` - `UBL`:定制 ID `urn:cen.eu:en16931:2017` - `XRECHNUNG-CII`:定制 ID `urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0` - `XRECHNUNG-UBL`:定制 ID `urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0` - `ZUGFeRD-Minimum` 是 `Factur-X-Minimum` 的别名 - `ZUGFeRD-BasicWL` 是 `Factur-X-BasicWL` 的别名 - `ZUGFeRD-Basic-WL` 是 `Factur-X-BasicWL` 的别名 - `ZUGFeRD-Basic` 是 `Factur-X-Basic` 的别名 - `ZUGFeRD-EN16931` 是 `Factur-X-EN16931` 的别名 - `ZUGFeRD-Comfort` 是 `Factur-X-EN16931` 的别名 - `ZUGFeRD-Extended` 是 `Factur-X-Extended` 的别名 - `ZUGFeRD-XRechnung` 是 `Factur-X-XRechnung` 的别名 格式名称不区分大小写。 ## 项目描述 本仓库旨在帮助企业(尤其是法国和德国,以及欧盟其他地区) 仅使用免费且开源的软件创建符合 EN16931 的电子发票。 ## 文档 请参阅 [E-Invoice-EU 在线文档](https://gflohr.github.io/e-invoice-eu/)。 博客文章 [使用免费且开源软件创建电子发票](https://www.guido-flohr.net/creating-electronic-invoices-with-free-and-open-source-software/) 或德文版本 [使用免费和开源软件生成电子发票](https://www.guido-flohr.net/elektronische-rechnungen-mit-freier-und-quelloffener-software-erzeugen/) 也提供了更深入的介绍! 您也可以使用文档进行交互式提问: 请访问 https://gflohr.github.io/e-invoice-eu/en/docs/basics/ai-supported-documentation/ 或直接访问 https://notebooklm.google.com/notebook/f5783dde-ebe6-4610-bac1-f181fdf45f94。 ## 验证 强烈建议验证所有传入和传出的电子发票。 请参阅 [验证](./contrib/validators) 获取详细信息。 另一个姊妹项目提供了更简单的选项: [e-invoice-eu-validator](https://github.com/gflohr/e-invoice-eu-validator)。 ## 已知问题 ### PDF/A Factur-X/ZUGFeRD 标准要求发票封装的 PDF 符合 PDF/A 规范。 如果不了解 PDF/A,请先搜索相关资料。 本库仅使用 [`pdf-lib`](https://github.com/cantoo-scribe/pdf-lib) 创建 PDF 并对 PDF 进行复杂的转换以实现 PDF/A 合规性。 这尚未经过充分验证,可能会失败。 如果遇到不符合 PDF/A 要求的 PDF,请 打开问题并附上匿名化的 PDF。 在此期间,您可以: - 如果已安装 [GhostScript](https://www.ghostscript.com/),请使用以下命令转换为 PDF/A:`gs -dVERBOSE -dPDFA3 -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=OUTPUT_FILE.pdf PDFA_def.ps INPUT_FILE.pdf` - 尝试使用 [LibreOffice](https://www.libreoffice.org/) 重新创建 PDF。 - 如果 LibreOffice 的默认设置不起作用,请启用 PDF/A 支持(在“常规”部分的 PDF 选项中)。 - 如果需要自动化,可以以无头模式在命令行中启动 LibreOffice: `libreoffice --headless "-env:UserInstallation=file:///tmp/LibreOffice_Conversion_${USER}" --convert-to 'pdf:writer_pdf_Export:{"SelectPdfVersion":{"type":"long","value":"3"}}' SOURCE_FILE.ods` 在 Unix 系统上,`libreoffice` 应在 `$PATH` 中。 在 macOS 上,路径为 `/Applications/LibreOffice.app/Contents/MacOS/soffice`。 在 MS Windows 上,路径通常类似于 `C:\\Program Files\\LibreOffice\\libreoffice.exe`(欢迎修正)。 ## 报告问题 请在 https://github.com/gflohr/e-invoice-eu/issues 报告问题。 ## 版权声明 版权所有 (C) 2024-2026 Guido Flohr ,保留所有权利。 本软件根据 [WTFPL](http://www.wtfpl.net/) 许可证提供。 ## 免责声明 本免费软件已尽最大努力编写,但如同所有软件,可能包含错误。 使用风险自担! 不提供任何担保,也不承担任何责任。
标签:Awesome Europe, CII, E-Invoice, EN16931, EU, Excel, Factur-X, JSON, LibreOffice Calc, PDF/A, UBL, XRechnung, ZUGFeRD, 乌克兰支持, 免费, 发票生成, 帮助, 开源, 数据可视化, 文档, 标准合规, 欧洲, 电子发票, 自动化攻击, 覆盖率