Master data: the heart of the system
ERP data comes in two kinds:
| Type | Definition | Examples |
|---|---|---|
| Master data | Fairly stable; entered once and used thousands of times. | Customers, vendors, products, employees, chart of accounts |
| Transactional data | Created daily by operations; every transaction points to master data. | Sales orders, invoices, stock moves, journal entries |
Master data quality decides whether the system succeeds. If the same customer exists twice (“Al Waha Store” and “Al Waha Trading”), sales reports split, credit limits are exceeded and collections get confused. That's why most ERP projects spend a lot of time cleaning data before migrating it.
The chart of accounts is finance's most important master data: a numbered list of every account (assets, liabilities, equity, revenue, expenses). Every entry the system posts goes to accounts from this list.
Under the hood, an ERP is a relational database like the ones in the SQL track. Odoo, for example, runs on PostgreSQL: customers live in res_partner, sales orders in sale_order and their lines in sale_order_line. So this query returns each customer's total sales:
SELECT p.name, SUM(o.amount_total) AS total_sales FROM sale_order o JOIN res_partner p ON p.id = o.partner_id WHERE o.state = 'sale' GROUP BY p.name ORDER BY total_sales DESC;