Skip to content

KB-212 — Accounting Engine Architecture

BLACK ERP Engineering Knowledge Base
Reference Manual
Version: 1.0
Status: Released
Applies To: ADempiere 3.9.4


Overview

KB-212 documents the internal architecture of the ADempiere Accounting Engine as studied during the BLACK ERP implementation project.

Unlike traditional functional documentation, this Knowledge Base was produced through:

  • Source Code Inspection
  • Runtime Analysis
  • Database Analysis
  • Deployment Validation
  • Engineering Experience

Its purpose is to provide developers with a comprehensive understanding of how accounting transactions are processed inside the ADempiere Core.


Objectives

After reading this Knowledge Base, a developer should understand:

  • How accounting documents are processed.
  • How accounting entries are generated.
  • How accounts are resolved.
  • How persistence works.
  • How transactions are managed.
  • How the database layer operates.
  • How object caching works.
  • How cache administration is implemented.
  • How to safely extend the Accounting Engine.

Target Audience

This document is intended for:

  • ERP Developers
  • Technical Architects
  • Solution Architects
  • Technical Consultants
  • BLACK ERP Engineering Team
  • Advanced ADempiere Developers

Knowledge Base Structure

Chapter Topic
Chapter 01 Introduction
Chapter 02 Accounting Engine Fundamentals
Chapter 03 Document Processing
Chapter 04 Accounting Documents (Doc)
Chapter 05 Fact Generation
Chapter 06 FactLine Processing
Chapter 07 Account Resolution
Chapter 08 Accounting Metadata
Chapter 09 Persistence Framework
Chapter 10 Transaction Management
Chapter 11 Database Layer
Chapter 12 Persistent Objects (PO)
Chapter 13 Transaction Framework (Trx)
Chapter 14 Database Services (DB)
Chapter 15 CCache Architecture
Chapter 16 CacheMgt Architecture
Chapter 17 Architectural Review & Engineering Reference

Core Architecture

Business Document

↓

Document Engine

↓

Accounting Engine

↓

Doc

↓

Fact

↓

FactLine

↓

MAccount

↓

Persistence Framework

↓

PO

↓

Transaction Manager

↓

Trx

↓

Database Layer

↓

DB

↓

PostgreSQL

↓

Cache Layer

↓

CCache

↓

CacheMgt

This execution flow represents the architectural foundation documented throughout KB-212.


Engineering Methodology

The documentation follows the methodology adopted by the BLACK ERP Engineering Team.

Requirement

↓

Architecture Analysis

↓

Source Code Inspection

↓

Development

↓

Compilation

↓

Deployment

↓

Validation

↓

Documentation

↓

Knowledge Base

↓

Git Repository

This methodology ensures that documentation reflects the actual implementation rather than assumptions.


Engineering Principles

The following principles guided the preparation of this Knowledge Base.

  • Validate architectural assumptions using source code.
  • Preserve ADempiere Core whenever possible.
  • Prefer extension over modification.
  • Keep localization isolated.
  • Maintain deployment discipline.
  • Document every significant engineering decision.
  • Treat documentation as part of the software lifecycle.

Related Knowledge Bases

KB Description
KB-206 Development Environment
KB-207 Build & Compilation
KB-208 Core Development Lifecycle
KB-209 Deployment Process
KB-210 Packaging & Distribution
KB-211 Troubleshooting & Recovery

Future documentation:

  • KB-300 — BLACK ERP Architecture
  • KB-301 — REST API Architecture
  • KB-302 — CFDI Engine
  • KB-303 — SAT Localization
  • KB-304 — BlackNet Integration
  • KB-305 — AI Integration Framework

Release Information

Property Value
Knowledge Base KB-212
Title Accounting Engine Architecture
Version 1.0
Status Released
Platform ADempiere 3.9.4
Project BLACK ERP

License

This document is part of the BLACK ERP Engineering Knowledge Base.

It is intended exclusively for engineering, maintenance, support and development activities related to the BLACK ERP platform.


BLACK ERP Engineering Knowledge Base
Building knowledge to build better software.