ED01 - Động lực: Vì sao một doanh nhân lưu nhật ký của mình trong Git

Vấn đề

Một doanh nhân thành lập một tổ chức - và đứng trước một bức tranh không rõ ràng về các rủi ro sẽ phát sinh trong tương lai. Nghĩa vụ nào phát sinh khi nào? Chứng từ nào phải lưu trữ trong bao lâu? Hạn nào có nguy cơ bị bỏ lỡ? Cơ quan nào sẽ thông báo kiểm tra khi nào?

Thực hành hiện nay trong khu vực SME được đặc trưng bởi:

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR A["Gründung
Tag 0"] --> B["Pflichten
unklar"] B --> C["Heute cheap
ignoriert"] C --> D["Morgen teuer
Bußgeld/Aberkennung"] D --> E["Risiko
realisiert"] style A fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style B fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style C fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style D fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style E fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7

Luận điểm cốt lõi

Không chỉ tài liệu phải đảm bảo kiểm toán - mà quyết định, hạn và tham chiếu chứng từ cũng phải truy vết được, tái lập được và có thể kiểm toán. Một nhật ký Git-native làm chính điều đó: nó biến các sự kiện được ghi nhận hôm nay cheap (chi phí thấp) (một mục JSON với V7GUID + tham chiếu chứng từ SHA-256) thành chứng từ đảm bảo kiểm toán trong tương lai. Tuân thủ trở thành đòn bẩy, chứ không phải phanh.

Compliance by Design: "Bức tranh không rõ ràng" về rủi ro tương lai được giảm thiểu ngay từ đầu bằng các kỹ thuật GitCover (OSCAL, OPA, V7GUID, Git-Hooks), chứ không phải chỉ khi thanh tra gõ cửa.

Sự hình thành: Cuộc kiểm toán SV là chất xúc tác thực tiễn

Ý tưởng GitCover không ra đời trong tháp ngà, mà từ kinh nghiệm thực tiễn cụ thể: gần đây nhất là một cuộc kiểm toán hoạt động SV tại một UG siêu nhỏ (ở đây ẩn danh dưới tên ORG-V - "Tổ chức tiền thân") cho giai đoạn 2021–2023; diễn ra trong giai đoạn 02/2024–03/2025. Cuộc kiểm toán bộc lộ điểm đau mà các kỹ thuật GitCover giải quyết.

Timeline kiểm toán SV

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% timeline title SV-Prüfung ORG-V - Genese der GitCover-Idee section 2024 - Prüfung angekündigt Feb 2024 : DRV kündigt BP nach § 28p SGB IV an Dez 2024 : Unterlagen-Anforderung (Lohnkonten 2021–2023) Dez 2024 : Versand als PDF/ZIP per E-Mail section 2025 - Prüfung abgeschlossen Feb 2025 : DRV übermittelt Prüfergebnisse (Anhörung § 24 SGB X) Feb 2025 : Akzeptanz ohne Einwände Mär 2025 : SV-Prüfung abgeschlossen : GitCover-Idee geboren section 2025 - Ableitungen Q2 2025 : AuditPrep-Modul konzipiert Q3 2025 : V7GUID/GCEP DPMA-Anmeldungen Q4 2025 : ADA-Gründung, intensive F&E

Chuyện gì đã xảy ra?

Ngày Sự kiện Trạng thái
02/2024 DRV thông báo kiểm toán hoạt động theo § 28p SGB IV
12/2024 DRV yêu cầu tài liệu kiểm toán (sổ lương 2021–2023, bảng hỏi, thư đính kèm)
12/2024 Tài liệu được gom và gửi đi qua email dưới dạng PDF/ZIP
02/2025 DRV chuyển kết quả kiểm toán (phiếu nghe theo § 24 SGB X, bảng tổng, phụ lục HEK/Trung tâm Minijob)
02/2025 Chấp nhận không có khiếu nại; nộp đơn hoàn trả tại KK
03/2025 Kiểm toán SV hoàn tất - Ý tưởng GitCover ra đời

Kết quả tài chính (ròng)

Hạng mục Số tiền
Hoàn trả khoản đóng góp U1 nộp thừa +121 EUR
Yêu cầu bổ sung khoản đóng góp KV cố định −30 EUR
Hoàn trả ròng +91 EUR
Công sức vài ngày gom tài liệu thủ công

Điểm đau - điều kiểm toán bộc lộ

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR P1["Kein Büro/Fax/Mitarbeiter
Prüfung nur per E-Mail"] P2["Beleg-Echtheit unklar
PDFs ohne kryptographische Verankerung"] P3["Keine Nachweiskette
Lohnkonten/SV/Erstattung an verschiedenen Orten"] P4["Fristen ad-hoc
manuell im Kalender gepflegt"] P5["Audit-Export fehlt
euBP/eXTra, Z3 nur mit Spezialsoftware"] P6["Lohn-Account pausiert
nach Mitarbeiter-Ausscheiden
Extra-Kosten > Erstattung"] P7["Alte Sicherungen
alter Software-Stand
GoBD-Auflage verletzt"] P1 --> G["GitCover-Idee
geboren"] P2 --> G P3 --> G P4 --> G P5 --> G P6 --> G P7 --> G G --> S["GitCover-Lösungen
SHA-256+V7GUID, Hooks, Fristen-Check
Evidence-Packages, Git-Bundles self-contained"] style P1 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P2 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P3 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P4 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P5 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P6 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style P7 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style G fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style S fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
  1. Không có văn phòng, không có fax, không có nhân viên - và vẫn phải xử lý một cuộc kiểm toán hoạt động hoàn toàn qua email với các tệp PDF và ZIP. Các công cụ không tồn tại cho trường hợp siêu nhỏ này.
  2. Tính xác thực chứng từ không rõ - PDF qua email không có neo mật mã. Ai đã thay đổi gì, khi nào? Giá trị chứng minh chỉ đạt được qua truy vết thủ công.
  3. Không có chuỗi chứng minh liên tục - sổ lương, thông báo SV, chứng từ đóng góp và biên lai hoàn trả nằm rải rác ở nhiều nơi, không có tham chiếu chéo. Mỗi câu hỏi ngược lại đều đòi hỏi tìm kiếm lại.
  4. Quản lý hạn ad-hoc - hạn nghe theo, hạn hoàn trả, hạn khiếu nại được duy trì thủ công trong lịch. Không có cảnh báo khi hạn sắp trôi qua.
  5. Thiếu xuất dữ liệu kiểm toán - DRV yêu cầu dữ liệu theo định dạng euBP (eXTra V3.4.0); FA lẽ ra sẽ yêu cầu một vật mang dữ liệu Z3. Cả hai chỉ có thể thực hiện với phần mềm chuyên dụng hoặc xử lý thủ công.
  6. Nhân viên nghỉ việc → tài khoản lương bị tạm dừng - sau khi nhân viên thời điểm đó nghỉ việc, tài khoản tính lương tại nhà cung cấp dịch vụ bị tạm dừng. Ai giữ một tài khoản đám mây gây chi phí vô ích khi lý do không còn (người lao động đã nghỉ, không cần tính lương nữa)? Việc gom gói tài liệu cho kiểm toán sau đó lại đòi hỏi chi phí phụ thêm tại nhà cung cấp dịch vụ, cuối cùng cao hơn khoản "hoàn trả" nhỏ ở cuối kiểm toán.
  7. Kích hoạt lại các bản sao lưu cũ với phiên bản phần mềm cũ - để truy cập lại sổ lương 2021–2023, các bản sao lưu cũ phải được kích hoạt lại với phiên bản phần mềm cũ - một vấn đề thực tiễn đáng kể. Về mặt hình thức, đây là vi phạm quy định GoBD, vốn cũng yêu cầu đảm bảo về mặt kỹ thuật rằng trong suốt thời gian lưu trữ dài (10 năm) luôn có thể truy cập. Trên thực tế, nghĩa vụ này xung đột với áp lực kinh tế không duy trì các tài khoản đám mây không sử dụng gây chi phí. Chính căng thẳng này là động lực cốt lõi của GitCover: Git-Bundle là self-contained - không cần tài khoản đám mây, không cần hợp đồng nhà cung cấp dịch vụ, không phụ thuộc phiên bản phần mềm. Một git clone là đủ, và nghĩa vụ lưu trữ được đáp ứng về mặt kỹ thuật.

Cơ sở pháp lý: AO § 146, § 147 và GoBD

"Vi phạm quy định GoBD" được đề cập ở điểm 7 có cơ sở pháp lý rõ ràng - trong Abgabenordnung (AO) và trong GoBD (Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern, Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff, thông tư BMF).

AO § 146 Abs. 5 - Khả dụng trong thời gian lưu trữ

"Bei der Führung der Bücher und der sonst erforderlichen Aufzeichnungen auf Datenträgern muss insbesondere sichergestellt sein, dass während der Dauer der Aufbewahrungsfrist die Daten jederzeit verfügbar sind und unverzüglich lesbar gemacht werden können."

Đây là quy định cốt lõi: ai ghi sổ điện tử phải đảm bảo trong suốt thời gian lưu trữ (10 năm cho sổ sách/ghi chép, 8 năm cho chứng từ ghi sổ, § 147 Abs. 3 AO) rằng dữ liệu luôn sẵn cóđọc được ngay lập tức. Một tài khoản đám mây bị tạm dừng, chỉ kích hoạt lại khi trả thêm phí, vi phạm nghĩa vụ này - dữ liệu không "luôn sẵn có", mà chỉ có khi thanh toán và với độ trễ.

AO § 147 Abs. 2 - Lưu trữ trên vật mang dữ liệu

"Mit Ausnahme der Jahresabschlüsse [...] können die in Absatz 1 aufgeführten Unterlagen auch als Wiedergabe auf einem Bildträger oder auf anderen Datenträgern aufbewahrt werden, wenn dies den Grundsätzen ordnungsmäßiger Buchführung entspricht und sichergestellt ist, dass die Wiedergabe oder die Daten [...] während der Dauer der Aufbewahrungsfrist jederzeit verfügbar sind, unverzüglich lesbar gemacht und maschinell ausgewertet werden können."

Lặp lại: "luôn sẵn có", "đọc được ngay lập tức", "có thể xử lý bằng máy". Một phiên bản phần mềm cũ cần kích hoạt lại không đáp ứng "ngay lập tức".

AO § 147 Abs. 5 - Phương tiện hỗ trợ do người nộp thuế chi trả

"Wer aufzubewahrende Unterlagen in der Form einer Wiedergabe auf einem Bildträger oder auf anderen Datenträgern vorlegt, ist verpflichtet, auf seine Kosten diejenigen Hilfsmittel zur Verfügung zu stellen, die erforderlich sind, um die Unterlagen lesbar zu machen."

Tức là: nếu nhà cung cấp dịch vụ không còn duy trì hệ thống cũ, doanh nhân phải tự cung cấp phương tiện hỗ trợ (phần mềm, giấy phép, phần cứng) để đọc dữ liệu. Đó chính là vấn đề thực tiễn trong trường hợp hình thành: bản sao lưu cũ, phiên bản phần mềm cũ, không còn phương tiện hỗ trợ nào.

AO § 147 Abs. 6 - Truy cập dữ liệu trong kiểm tra tại chỗ

"Sind die Unterlagen nach Absatz 1 mit Hilfe eines Datenverarbeitungssystems erstellt worden, kann die Finanzbehörde im Rahmen einer Außenprüfung [...] verlangen, dass die Daten nach ihren Vorgaben maschinell ausgewertet zur Verfügung gestellt werden."

Trong kiểm tra tại chỗ, doanh nhân phải cung cấp dữ liệu có thể xử lý bằng máy - không phải bản in PDF, mà là dữ liệu có cấu trúc. Một tài khoản đám mây bị tạm dừng chỉ xuất được PDF là không đủ.

GoBD - Tài liệu hóa quy trình và chuyển đổi hệ thống

GoBD cụ thể hóa các quy định AO cho hệ thống điện tử. Các yêu cầu trọng tâm:

Hậu quả lý thuyết khi vi phạm

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR V["Verstoß gegen
AO § 146/147 + GoBD"] V --> K1["Verspätungszuschlag
§ 152 AO
bis 25.000 EUR"] V --> K2["Schätzung
§ 162 AO
bei nicht verwertbaren Daten"] V --> K3["Verzögerungsgeld
§ 146 Abs. 2c AO
2.500–250.000 EUR"] V --> K4["Beweislastumkehr
FA schätzt, Unternehmer
muss widerlegen"] V --> K5["Ordnungswidrigkeit
§ 379 AO
Bußgeld bis 50.000 EUR"] V --> K6["Steuerstrafverfahren
§ 370 AO
bei vorsätzlicher Verkürzung"] style V fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style K1 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K2 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K3 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K4 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K5 fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style K6 fill:#FDBA74,stroke:#C2410C,color:#0F1B33
Hậu quả Cơ sở pháp lý Mức/risiko
Phụ cấp chậm trễ § 152 AO đến 25.000 EUR (mỗi trường hợp)
Ước lượng căn cứ tính thuế § 162 AO FA ước lượng khi dữ liệu không sử dụng được - thường bất lợi cho doanh nhân
Tiền chậm trễ § 146 Abs. 2c AO 2.500–250.000 EUR (khi chuyển ra ngoài không được phê duyệt)
Đảo ngược nghĩa vụ chứng minh § 162 AO, § 90 AO Doanh nhân phải bác bỏ ước lượng - gần như không thể khi thiếu dữ liệu
Vi phạm hành chính § 379 AO Phạt đến 50.000 EUR (cố ý hoặc vô ý)
Tố tụng hình sự thuế § 370 AO Phạt tù đến 5 năm (khi cố ý trốn thuế)

Đánh giá thực tiễn: Trong trường hợp hình thành, kiểm toán SV được chấp nhận không có khiếu nại - không có hậu quả nào xảy ra. Nhưng đó là may mắn: nếu DRV không chấp nhận dữ liệu dạng PDF mà kiên quyết yêu cầu xử lý bằng máy (§ 147 Abs. 6 AO), doanh nhân sẽ lúng túng. Lưu trữ theo GoBD không phải nghĩa vụ lý thuyết - nó được áp dụng thực tế trong mọi kiểm tra tại chỗ.

Vì sao Git giải quyết vấn đề

Git đáp ứng các yêu cầu AO/GoBD by Design:

Yêu cầu AO/GoBD Cách Git đáp ứng
"luôn sẵn có" (§ 146 Abs. 5) git clone bất cứ lúc nào - không cần tài khoản đám mây, không cần giấy phép
"đọc được ngay lập tức" (§ 147 Abs. 2) Tệp văn bản thuần (Markdown, JSON) - không cần phiên bản phần mềm
"xử lý bằng máy được" (§ 147 Abs. 6) JSON-Schema-First - dữ liệu có cấu trúc, không cần xuất PDF
"Phương tiện hỗ trợ do doanh nhân chi trả" (§ 147 Abs. 5) Git là OSS, miễn phí - không chi phí nhà cung cấp dịch vụ
Tính không thay đổi (GoBD Rz. 146) Tags, Protected Branches, đánh dấu lỗi thời
Tài liệu hóa quy trình (GoBD Rz. 64–91) Repo tự nó là tài liệu quy trình - git log cho thấy quy trình
Chuyển đổi/hồi chuyển hệ thống (GoBD Rz. 146–150) Git không phụ thuộc phiên bản - git clone trên mọi hệ thống

Hóa đơn điện tử: Định dạng XML là tài liệu gốc trong AO

Từ 1 tháng 1 năm 2025, hóa đơn điện tử trở thành bắt buộc cho giao dịch giữa các doanh nghiệp trong nước (§ 14 UStG, Luật Cơ hội Tăng trưởng). Một hóa đơn điện tử chỉ được coi là có khi được lập, truyền và nhận ở định dạng điện tử có cấu trúccho phép xử lý điện tử (§ 14 Abs. 1 Satz 3 UStG). Một tệp PDF đơn giản không còn thuộc phạm vi này - từ 2025 nó là "hóa đơn khác".

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR P["Papierrechnung
vor 2025"] --> U["Übergang
2025–2027"] PDF["PDF per E-Mail
vor 2025 'elektronisch'"] --> U U --> E["E-Rechnung
ab 2025 verpflichtend
strukturiert, maschinenlesbar"] E --> X["XRechnung
XML-basiert
EN 16931"] E --> Z["ZUGFeRD
hybrid: PDF + XML
ab v2.0.1"] style P fill:#E5E7EB,stroke:#6B7280,color:#0F1B33 style PDF fill:#E5E7EB,stroke:#6B7280,color:#0F1B33 style U fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style E fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style X fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style Z fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33

XML là tài liệu gốc - không phải PDF

Điểm quyết định cho lưu trữ: trong một hóa đơn điện tử, phần có cấu trúc (XML) là tài liệu gốc theo nghĩa AO, chứ không phải một tệp PDF kèm theo hay một hình ảnh đọc được bởi con người. BMF làm rõ (FAQ về hóa đơn điện tử, câu 13):

"Bei einer E-Rechnung ist zumindest deren strukturierter Teil so aufzubewahren, dass er unversehrt in seiner ursprünglichen Form vorliegt."

Tức là:

AO § 147 - Hóa đơn điện tử là chứng từ ghi sổ

Hóa đơn điện tử là chứng từ ghi sổ theo § 147 Abs. 1 Nr. 4 AO và do đó phải lưu trữ tám năm (§ 147 Abs. 3 AO). Là tài liệu điện tử, áp dụng các yêu cầu AO/GoBD:

Quy định toàn EU: EN 16931 và Chỉ thị 2014/55/EU

Hóa đơn điện tử dựa trên luật EU:

Vì sao Git lý tưởng cho hóa đơn điện tử

Yêu cầu hóa đơn điện tử Cách Git đáp ứng
XML là tài liệu gốc Tệp XML lưu không thay đổi trong repo - git diff cho thấy không có thay đổi
Không tổn thương (§ 14b UStG) Hash SHA-256 mỗi commit - mọi thay đổi đều hiển thị
Lưu 8 năm (§ 147 Abs. 3) Git-Bundle làm kho lưu self-contained - không cần tài khoản đám mây
Xử lý bằng máy (§ 147 Abs. 6) XML theo định nghĩa đọc được bằng máy - git grep là đủ
Xác thực EN 16931 Pre-Commit-Hook có thể gọi validator XRechnung/ZUGFeRD
Hiển thị (BMF FAQ 12a) XML + sidecar Markdown đọc được - cả hai trong repo
Giai đoạn chuyển tiếp 2025–2027 Repo có thể lưu song song "hóa đơn khác" (PDF) và hóa đơn điện tử (XML)

Mẹo thực tiễn: Một repo Git có thể lưu song song hóa đơn điện tử (XML) và hóa đơn khác (PDF) - với phân tách rõ qua loại chứng từ trong sidecar (v7g_taxonomy). Pre-Commit-Hook kiểm tra xem hóa đơn điện tử có cấu trúc XML hợp lệ (schema XRechnung/ZUGFeRD) không. Nhờ đó giai đoạn chuyển tiếp 2025–2027 được vượt qua mà không có đứt gãy phương tiện.

Dẫn xuất trực tiếp trong GitCover

Điểm đau Khái niệm GitCover Bài viết trong serie
Tính xác thực chứng từ không rõ SHA-256 + V7GUID + Sidecar .v7g.md mỗi chứng từ ED03, ED06
Không có chuỗi chứng minh Repo Git với hooks chuyên dụng theo chức năng, sổ cái dạng JSON ED04, ED05
Hạn ad-hoc checks/FRISTEN_CHECK.md + cảnh báo tự động ED07
Thiếu xuất kiểm toán GoBDExport (Z3), EuBPExport (eXTra), Evidence-Packages ED06, ED25
Tài khoản lương tạm dừng, chi phí phụ Git-Bundle self-contained, không tài khoản đám mây ED06, ED07
Bản sao lưu cũ/phiên bản phần mềm cũ, vi phạm GoBD Repo Git làm phương tiện lưu trữ self-contained, git clone là đủ ED06, ED07
Không có OSS cho trường hợp đặc thù GitCover bao phủ FZul/BSFZ, phi lợi nhuận, thời gian làm việc, BEM ED15–ED24

Lưu ý - Nghĩa vụ của doanh nhân siêu nhỏ từ nhân viên đầu tiên: Thường ngay cả doanh nhân siêu nhỏ đã chịu các nghĩa vụ như vậy từ nhân viên đầu tiên - ghi nhận thời gian làm việc (ArbZG), tài liệu hóa lương tối thiểu (MiLoG), phép ốm/BEM (BUrlG/EFZG/SGB IX), đăng ký bảo hiểm xã hội (SGB IV). Các nghĩa vụ từ nhân viên đầu tiên được xử lý trong Phần IV không phải chủ đề đặc thù của doanh nghiệp lớn, mà đúng hơn áp dụng cho các cơ sở siêu nhỏ và nhỏ khi lần đầu tuyển nhân sự. GitCover nhắm đến ngưỡng này một cách có ý thức

  • chuyển đổi từ doanh nhân độc thân sang người sử dụng lao động là thời điểm tới hạn, khi nghĩa vụ tuân thủ tăng vọt. Nghĩa vụ từ khi đăng ký kinh doanh (phân loại lĩnh vực, miễn trừ VBG, khoản cố định) đã được xử lý trong Phần II
  • chúng phát sinh không cần nhân viên.

Vì sao Git làm phương tiện nhật ký?

Git vốn là hệ thống kiểm soát phiên bản - nhưng nó mang ba đặc tính khiến nó by Design phù hợp với tuân thủ:

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR G["Git als
Tagebuch-Medium"] G --> U["Unveränderbarkeit
nach Freigabe
(Tags, Protected Branches)"] G --> N["Nachvollziehbarkeit
Autor + Zeitstempel
+ kryptographische Integrität"] G --> D["Dezentralität
Git-Bundles + GCEP
Multi-Site, Off-Site"] U --> GoBD["GoBD Rz. 146
konform"] N --> Audit["Audit-Ready
reproduzierbar"] D --> Backup["Kein SPOF
verteilt"] style G fill:#0F1B33,stroke:#0F1B33,color:#FBFAF7 style U fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style N fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style D fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style GoBD fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style Audit fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style Backup fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33
  1. Tính không thay đổi sau khi phê duyệt - Tags và Protected Branches đảm bảo rằng các mục nhật ký đã phê duyệt không bị thay đổi sau đó (GoBD Rz. 146). Sửa chữa được thực hiện dưới dạng commit mới với đánh dấu lỗi thời.
  2. Khả năng truy vết - mỗi commit mang theo tác giả, dấu thời gian và tính toàn vẹn mật mã. Toàn bộ lịch sử có thể tái lập.
  3. Tính phân tán - Git-Bundle và GCEP (Advisory Locks) cho phép lưu trữ phân tán (Multi-Site, sao lưu Off-Site) không có Single-Point-of-Failure trung tâm.

Compliance by Design - các kỹ thuật GitCover

Serie cho thấy các kỹ thuật sau giảm thiểu "bức tranh không rõ ràng" về rủi ro tương lai ngay từ đầu:

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart TD CBD["Compliance by Design"] CBD --> OSCAL["OSCAL
maschinenlesbare
Compliance-Statements"] CBD --> OPA["OPA/Rego
Policy as Code
automatisierte Prüfung"] CBD --> V7["V7GUID Uniqueness
zeitstabile
eindeutige IDs"] CBD --> HOOKS["Git-Hooks
funktional dediziert
Pre/Post-Commit"] CBD --> ART["Code-Artefact-Typen
JSON-Schema-First
Sidecar-Pflicht"] OSCAL --> ZERT["Zertifizierungsreife
ISO 27001, AI Act, BSI GS++"] OPA --> POLICY["Sphären, Fristen,
Beitragsgruppen-Plausibilität"] V7 --> UNIQ["Kollisionsfrei,
sortierbar, dateiname-unabhängig"] HOOKS --> CHECK["Schema, Sphären,
Obsoleszenz geprüft"] ART --> SIG["Temporale Signatur
SHA-256-Belegreferenzen"] style CBD fill:#10A987,stroke:#0A7F5C,color:#FBFAF7 style OSCAL fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style OPA fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style V7 fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style HOOKS fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style ART fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style ZERT fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style POLICY fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style UNIQ fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style CHECK fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style SIG fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33

Nguyên lý cốt lõi của truy vết thời gian: Thời điểm ghi nhận không phải là một trường riêng, mà được neo trong chính uuidV7, dưới dạng dấu thời gian 48-bit theo RFC 9562 §5.7. uuidV7 được sinh từ một dấu thời gian cho trước (không phải now()) qua helper GitCover (UuidV7Gen), phần còn lại được điền ngẫu nhiên. Nhờ đó thời điểm ghi nhận được liên kết mật mã với định danh của artefact và không thể thay đổi sau đó. Một biểu diễn datetime/date dạng chuỗi riêng là dư thừa và không được lưu trong các sự kiện - biểu diễn chuỗi cho DTO/HTMX là trách nhiệm của harness.

Tham chiếu RFC: Thành phần dấu thời gian 48-bit của uuidV7 tương ứng RFC 9562 §5.7 (UUIDv7) - mili-giây Unix kể từ Epoch (1970-01-01T00:00:00Z), 48 bit, phạm vi giá trị 0 … 2⁴⁸−1 (đạt đến khoảng năm 10889). Đặc tả V7GUID được lưu chuẩn tắc tại work/OSS/TOP/.gitcover/specs/v7guid/; bằng sáng chế liên quan là DPMA Az. 10 2025 003 091.6.

Helper-Routinen (GitCover OSS Tools): Tại work/OSS/TOP/tools/UuidV7Gen/ có một helper OSS cung cấp hai thao tác trung tâm:

  • gen - tạo một uuidV7 qua Guid.CreateVersion7() (.NET) với dấu thời gian cho trước (không phải now()) và trả về nhãn, UUID và dấu thời gian ISO đã giải mã.
  • decode - trích xuất thành phần dấu thời gian 48-bit từ một uuidV7 cho trước và trả về dưới dạng dấu thời gian ISO-8601.

Các helper này quyết định để tạo một khóa uuidV7 hợp lệ từ khóa ngoại (ví dụ một dấu thời gian trong dữ liệu hoặc trong tên tệp) - và đồng thời tài liệu hóa yêu cầu thời gian của GoBD (ghi nhận sát thời điểm, truy vết thời điểm ghi nhận). Giá trị 48-bit là yếu tố duy nhất của việc suy ra TenantId và có thể là một thời điểm cho trước rõ ràng thay vì thời gian hệ thống (ví dụ ngày thành lập của một tenant) - cách diễn giải theo tài liệu hóa quy trình.

Nguyên lý Sidecar (.v7g.md): Mỗi sidecar mang một khóa tổ hợp V7GUID:uuidV7:

  • V7GUID (Class Identifier) - phân loại sidecar theo registry .gitcover (cái gì/loại nào)
  • uuidV7 (Object ID) - định danh của chính sidecar, sinh với dấu thời gian cho trước (khi nào được phân loại?), dấu thời gian 48-bit được neo trong GUID
  • v7g_taxonomy[].v7guid - Object ID của tài liệu được phân loại

Nhờ đó không chỉ tài liệu được định danh duy nhất, mà cả hành vi phân loại tự thân - bao gồm thời điểm (trong uuidV7), ai phân loại và theo vai trò nào. Không có trường datetime riêng.

Đòn bẩy rủi ro - điều rẻ (cheap) hôm nay, mai trở thành đảm bảo kiểm toán

Đòn bẩy rủi ro: Sự kiện ghi nhận hôm nay với chi phí tối thiểu (phút) trở thành chứng từ đảm bảo kiểm toán trong tương lai (giờ kiểm toán). Doanh nhân "nâng" một vị thế nghĩa vụ chứng minh - tuân thủ như một đòn bẩy.

Hôm nay (cheap, ~phút) Mai (đảm bảo kiểm toán, ~giờ kiểm toán) Rủi ro giảm
Mục nhật ký JSON với V7GUID + SHA-256 Chứng từ theo GoBD (10 năm) Vi phạm hạn lưu trữ
Trường source mỗi sự kiện Nghĩa vụ chứng minh tại kiểm tra FA/SV Hạ thấp giá trị chứng minh
Tag lĩnh vực mỗi mục Bảo vệ trạng thái phi lợi nhuận Tước quyền § 51 AO
Tệp kiểm tra hạn Tránh bỏ lỡ hạn Phụ cấp chậm trễ § 152 AO
Nhật ký giờ FZul Đạt được chứng nhận BSFZ Mất FZul (đến 1 triệu EUR)
Sidecar .v7g.md mỗi chứng từ Chứng minh được tính xác thực chứng từ Tranh cãi giá trị chứng minh
JSON thời gian làm việc mỗi ngày Chứng minh tuân thủ ArbZG Phạt § 22 ArbZG
Git-Bundle thay vì tài khoản đám mây Lưu trữ không chi phí nhà cung cấp Mất truy cập GoBD sau khi tài khoản tạm dừng
git clone thay vì kích hoạt lại phiên bản phần mềm Lưu trữ self-contained, không phụ thuộc phiên bản Vi phạm GoBD do hệ thống cũ không kích hoạt lại được

Serie này cho thấy gì

Serie theo chân một doanh nhân hư cấu (E1), điều hành tổ chức KMU (placeholder, mở về hình thức pháp lý) và lưu nhật ký của mình trong một repo Git. Cấu trúc dựa trên một khái niệm SSoT thực, nhưng hoàn toàn ẩn danh - mọi dữ liệu cá nhân, công ty, HRB, IBAN, số thuế đều được thay bằng placeholder.

Lưu ý DSGVO: Mọi liên hệ cá nhân/công ty trong serie này đều hư cấu hoặc ẩn danh. Mọi giống nhau với tổ chức thực là ngẫu nhiên và không có chủ đích.

Xem trước serie

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR I["Teil I
Grundlagen
ED01–ED03"] II["Teil II
GoBD, AO, Finanzamt
+ Pflichten ab Gewerbeanmeldung
ED04–ED10"] III["Teil III
Behörden & Verbände
ED11–ED14"] IV["Teil IV
Mitarbeiter & Lohn
+ Pflichten ab 1. Mitarbeiter
ED15–ED22"] I --> II --> III --> IV style I fill:#E5E7EB,stroke:#6B7280,color:#0F1B33 style II fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style III fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33 style IV fill:#DBEAFE,stroke:#1D4ED8,color:#0F1B33
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#FBFAF7','primaryTextColor':'#0F1B33','primaryBorderColor':'#6B7280','lineColor':'#6B7280'}}}%% flowchart LR V["Teil V
Besondere Herausforderungen
FZul/BSFZ, Gemeinnützigkeit
ED23–ED26"] VI["Teil VI
Harness-Anforderungen
ED27–ED30"] VII["Teil VII
Anhang
ED31–ED32"] V --> VI --> VII style V fill:#D1FAE5,stroke:#0A7F5C,color:#0F1B33 style VI fill:#FDBA74,stroke:#C2410C,color:#0F1B33 style VII fill:#E5E7EB,stroke:#6B7280,color:#0F1B33
Phần Chủ đề Bài viết
I Cơ sở (bài này) ED01–ED03
II Quản trị doanh nghiệp: GoBD, AO, cơ quan thuế + nghĩa vụ từ khi đăng ký kinh doanh (lĩnh vực, VBG, khoản cố định) ED04–ED10
III Cơ quan & hiệp hội ED11–ED14
IV Nhân viên & lương + nghĩa vụ từ nhân viên đầu tiên (thời gian làm việc, MiLoG, phép/ốm/BEM) ED15–ED22
V Thách thức đặc thù (FZul/BSFZ, phi lợi nhuận) ED23–ED26
VI Yêu cầu harness ED27–ED30
VII Phụ lục (glossary, nguồn) ED31–ED32

Yêu cầu harness (xem trước)

Dẫn xuất từ ED01:

ID Yêu cầu Ưu tiên
FA-1.1 Mục nhật ký dưới dạng JSON-Artifacts (Schema-First) MUST
FA-1.2 Khóa tổ hợp V7GUID (Class) : uuidV7 (Object) - không có trường datetime/date riêng; thời gian trong uuidV7 (RFC 9562 §5.7) MUST
FA-1.3 uuidV7 sinh từ dấu thời gian cho trước (không phải now()) qua helper MUST
FA-2.1 SHA-256 làm ID chứng từ MUST
FA-2.2 Bắt buộc sidecar .v7g.md MUST
FA-4.1 Tệp kiểm tra hạn MUST
TA-2.1 Pre-Commit: xác thực JSON-Schema MUST

Danh sách yêu cầu đầy đủ trong Harness-Anforderungen.md.

Nguồn

Topology nguồn và liên kết CDN

Vai trò Địa điểm Mục đích
Primary / SSoT git.gitcover.org/GCC Lưu trữ chuẩn tắc (ký GPG, có phiên bản)
Public OSS Mirror / CDN codeberg.org/gitcover-commons Bản sao chỉ đọc; FLOSS-Discovery
Community Hub github.com/gitcover-commons Issues & Discussions; tham chiếu mã nguồn tại Codeberg

Lưu ý: Việc phân bổ nguồn, mirror và community-hub này phản ánh trạng thái hiện tại và có thể thay đổi. Vui lòng kiểm tra nguồn chuẩn tắc tương ứng tại gitcover.org cho trạng thái hiện hành.