AENG User guideAENG ERP
User guide

User Guide - AENG ERP (AENG Central Accounting)

The same source the system shows under Help 63 sections

Open it inside the system from Help → User Guide. Every screen also has its own short explanation: the (?) button in the screen header, and the help icon next to each field.


1) Signing in

Method Steps
Mobile Enter your mobile number and password → a verification code is sent → enter it.
Email Enter your email and password → verification code → enter it.
Nafath Enter your national ID (10 digits) → open the Nafath app and pick the number shown on screen.
  • Keep me signed in on this device: keeps you signed in for 90 days on this device only. Do not use it on a shared device. You can revoke it later from My Account → Trusted Devices.
  • Nafath sign-in requires your national ID to be recorded on your account and the account to be active.
  • Brute-force protection: after 5 wrong attempts the account is locked for 15 minutes. Wait, or contact the administrator.
  • Signing out: your photo and name at the top → Sign out. Always sign out on a shared device.

1-1) New account (self-registration)

  1. On the sign-in screen click New account and enter: full name, email, mobile (dial code, then the number without the leading zero), national ID (optional, but needed for Nafath sign-in) and a strong password (at least 8 characters: an upper-case letter, a lower-case letter, a digit and a symbol). An email, mobile or ID that is already registered is refused.
  2. Verify your mobile: you receive a 6-digit code valid for 5 minutes and 5 attempts; when the countdown ends you can Resend.
  3. Verify your email: you receive a link valid for 24 hours, usable once. You can request it again from the Dashboard.
  4. Approval: the account stays pending activation until someone who manages users approves it; you get a message then.

Your account's type and permissions: a new account gets the user type the Super Admin chose for self-registration (in System Settings - section 8-5); your menus and permissions come from it. If you need other permissions, ask whoever manages users to change your type.

1-2) Forgot your password

  1. On the sign-in screen click Forgot your password? and enter your email or mobile.
  2. You receive a link (by email) or a code (by mobile) valid for 30 minutes. For security the same success message is shown whether or not the account exists.
  3. Enter and confirm the new password. Your sessions and trusted devices are then cancelled, so you sign in afresh.

In the trial environment (simulation mode) no real messages are sent: codes appear in the simulation panel at the bottom of the screen.


2) The workspace

2-1) Side menu

Ordered by daily use: Accounting (starting with the Accounting overview - your home screen) → Dashboard → System map → Financial reports → Parties and balances → Inventory → Fixed assets → Accounting setup → Basic Data → Notifications → Administration → My Account → Help. You only see what you have permission for: a group in which you hold no screen is not shown at all.

  • Click a group title to open or fold it, and a screen to open it in a tab.
  • The logo at the top of the menu takes you back to your home screen.

2-2) Tabs

  • Every screen opened from the menu opens in a new tab; earlier screens stay open with whatever you typed.
  • Clicking a screen that is already open takes you to its tab instead of opening it twice.
  • Right-click a tab: close, close all but this, close all, close to the right/left.
  • Middle-click closes a tab. The first tab is pinned.
  • Open tabs are remembered and come back the next time you sign in.

2-3) Top bar

Tool What it does
Search box (middle of the bar) System-wide search by typing or by voice (2-6).
ع / En Switch the interface language (saved to your account).
Sun / moon Switch light/dark theme in one click.
Bell Unread notifications (section 6).
Your photo and name My Account and sign out.

2-4) Intro video

Shown once per sign-in. Choose Don't play again to stop it; bring it back any time from the Intro video link at the bottom of the page.

2-5) Screen help and read-aloud

  • The (?) button in any screen header opens its explanation: purpose, services, instructions and data - with a speaker button that reads it aloud.
  • The (?) icon next to a field label explains that field and reads it when clicked.
  • Any long text with a speaker next to it can be read aloud (play/stop).

2-6) Searching the system (text and voice)

The gold-bordered search box in the middle of the top bar searches everything you are allowed to see, from any screen:

Group What is searched What a result opens
Screens The screen name in Arabic or English, its code and its description The screen, in a tab
Records Accounts, cost centers, years and periods, entries, customers, suppliers, employees, items, warehouses, stock movements, assets, depreciation runs - by code, number or name The screen's list filtered to that record; edit it from there if you have the permission
Users Name, email, mobile (for those who manage users) The users list filtered to that user
Basic data Countries, regions, cities, districts, nationalities, identity types and payment methods The table's list filtered to the record
Screen help The title, purpose, services and instructions of a screen's explanation The Screens Guide on that explanation
Guides Section titles and text of this guide (and the technical documents for the Super Admin) The guide at that very section
  • Type two or more characters and grouped results appear under the box as you type. Move with ↑ ↓ and press Enter to open a result, Esc to close. Enter with nothing selected, or Show all results, opens the full results screen (more results, and it includes the reference lists such as journal types, currencies and item categories).
  • Ctrl+K takes you to the search box from any screen, even from inside a form.
  • Voice search: press the microphone and say what you are looking for; the button turns green while listening. The browser must be allowed to use the microphone, and the button is hidden in a browser that does not support it.
  • How you type does not matter: the search ignores Arabic diacritics, hamza forms, ta marbuta and the definite article; and if you typed on the other language's keyboard layout and nothing was found, it searches again with what you meant and tells you so.
  • Your latest searches appear when the empty box is focused (kept in your browser for you alone; Clear history removes them).
  • No result is shown for a screen or record you are not allowed to view - search reveals no more than your menus do.

2-7) The system map

One page showing every group and screen you may open: a card per group with its screen count, and a short description of each screen. Reach it from the side menu (after the Dashboard), from the System map link at the bottom of every page, and from the bottom of the search panel.

  • Click a screen name to open it in a new tab; the map stays open so you can open others.
  • The filter box at the top keeps what matches what you type (a screen or group name) and hides the rest at once; the microphone button filters by voice.
  • The counter shows "x of y screens". What you cannot find on the map is not within your permissions; ask whoever manages permissions.
  • Whoever manages permissions sees each screen's code next to it (it is what a permission is tied to in the type matrix).

3) Entry screens (forms)

What you see Meaning
Red star next to a label Required field; the form will not save without it and the cursor moves to it.
ع / En badge in a field The field's language. Typing with the other keyboard layout is converted automatically.
Translate button Copies the field's text, translated, into its counterpart (Arabic ⇄ English). Translation runs inside the system; your text never leaves the server.
Microphone button Dictate: speak and the words are typed at the cursor in the field's language.
Speaker icon Reads the text aloud (play/stop).
(?) next to a field Explains the field; click to hear it read aloud.
Group title with an arrow Click to collapse or expand the group. On save, any group holding an empty required field opens automatically.
Link next to a dropdown Opens the screen that manages that list's items; when you come back the list refreshes without losing what you typed.
  • Dropdowns are searchable: type part of a name (diacritics ignored, the other keyboard layout accepted) and move with the arrow keys.
  • Linked lists (country → region → city → district): choosing the upper one fills the ones below.
  • "Important instructions" card at the side of the screen: collapse it with the arrow and it stays collapsed on every screen until you expand it.

4) List screens (the unified data grid)

Every list screen has the same tools:

  1. Paging: move between pages, change the page size, or Show all.
  2. Quick search by text, and voice search with the microphone button.
  3. Column-header filters: the funnel next to a column title:
    • text: "contains";
    • list: pick one value or more;
    • date: from/to;
    • number: from : to (leave one side empty for an open range, e.g. "from 10" and above). A filtered column shows a filled gold funnel. Clear removes its filter.
  4. Advanced search: record date from/to, and reference number (Id) from/to.
  5. Columns: choose which columns show and drag to reorder - saved for you only, per screen.
  6. Grouping: group by one column or more to see counts per group; export and print keep the same structure.
  7. Export: Excel, HTML or PDF (print).
  8. Import from Excel: download the import template → fill it (Id = 0 adds, Id > 0 updates) → upload → check the preview (duplicates are caught before saving) → confirm → read the results report.
  9. Control board: (for users who can edit) a board of switches for every yes/no field (active, visible...) across all records, with "set all" and one save.

Colours carry meaning: green = complete/active, gold = partial, red = incomplete/disabled.


5) Dashboard and basic data

5-1) Dashboard and the accounting overview

Your home screen (what opens after sign-in and where the logo leads) is the Accounting overview for those who have its permission (see 5-f); everyone else opens the Dashboard: your account status (mobile and email verification, trusted devices), your latest sign-ins, and the statistics you are allowed to see. Figures are computed when the screen opens, so you see the effect of any change immediately.

5-2) Basic data

The standard lists the other screens rely on:

Screen Content
Countries → Regions → Cities → Districts The geographic hierarchy; each level is linked to the one above and feeds the linked dropdowns
Nationalities The nationality list
Identity types National ID, residence permit, passport...
Payment methods Approved payment methods

Tip: pick values from lists rather than typing free text - reports and filters depend on it. If a value is missing, add it from the list-management link next to the field (if you have permission).

Working in the basic data screens (all of them use the unified data grid - section 4):

  • New record or Edit on a row opens one form: the Arabic and English names are required, then the parent through the linked dropdowns from the top down (country, then region, then city), then the fields specific to the list.
  • Countries: international dial code, ISO code and whether it is an Arab country. Nationalities: the (Arab) flag. Payment methods: active, may be combined with another method in the same transaction, and the linked accounting account number (0 = none).
  • A name is unique within its scope: a country across the table, a region within its country, a city within its region, a district within its city.
  • Deleting is restricted: a country with regions, a region with cities or a city with districts cannot be deleted - delete the dependants first.
  • Importing from Excel: write the parent by its name (or the ISO code for a country); when names collide use Country > Region or Region > City.

5-a) Quick start - preparing the system for the first time

Follow this order once before daily work begins; each step depends on the ones before it:

# Step Screen Section
1 Decide who gets in and with which permissions: the types, the self-registration type, and approve the accounts Administration → User Types / System Settings / Users Management 8
2 Review the accounting settings: code segments, base currency, default accounts Accounting setup → Accounting settings 5-f
3 Build the chart of accounts and the cost centers (or review the seeded ones) Accounting setup → Chart of accounts / Cost centers 5-b
4 Create the fiscal year; its periods are generated Accounting setup → Fiscal years and periods 5-b
5 Review the reference lists (journal types, currencies, customer and supplier types, departments and job titles) Accounting / HR reference lists 5-b
6 Define customers, suppliers and employees Parties and balances 5-e
7 Enter the opening balances, then post them Journal entries → Import opening balances 5-c
8 Inventory: categories, units, warehouses and items, then an opening balance movement Inventory 5-g
9 Assets: categories, then the asset register and the acquisition entries Fixed assets 5-h
10 Define the notification rules you care about (posting, credit limit exceeded, user registered) Notifications → Notification rules 6

After that, daily work is: entries → posting → reports; at each month end close the period and run depreciation, and at year end close the year.


5-b) Accounting - Accounting setup

The Accounting Setup group in the sidebar holds what is prepared once before daily work. For users with its permission (accountant, finance manager, system administrator).

Chart of accounts

The hierarchical chart: every account has a composite code made of its parent code plus its level segment (e.g. 1 Assets → 11 Current assets → 1101 Cash → 110101 Main cash box) and a type (assets, liabilities, equity, revenue, expenses) inherited from the parent automatically.

  • Tree view: a button in the page header shows the tree as collapsible nodes; the arrow or a double-click collapses a node, and the search box shows matching nodes by code or name with their parents.
  • Add child: the (Add child) button next to any node opens the form with the parent selected and the next code suggested - you may change it as long as it stays unique.
  • Control account: set the party type (customer/supplier/employee) on accounts tracked per party (customers, suppliers, employee advances); every entry line on them will require a party, which drives statements and aging.
  • Requires a cost center: enable it on expense and revenue accounts you want distributed to departments.
  • Level and leaf are computed by the system; posting is allowed on leaves only (accounts without children).
  • An account with children or movement cannot be deleted - deactivate it by clearing (Active).

Cost centers

The tree of departments and sections (two-digit segments per level: 01 General management → 0101 Finance). Same tools as the chart of accounts (tree view, add child, suggested code). Posting on leaves only.

Fiscal years and periods

  • Create the year with its start and end dates (12 months) and status (open); the code defaults to the start year when left empty.
  • On save, 12 monthly periods + period 13 (adjustments) are generated automatically. The (Periods) button on the year row opens them.
  • Period statuses: Open (posting allowed) → Locked (lock a month after review; can be reopened) → Closed (by the year-end closing wizard only). Change the status via (Edit) on the period row.
  • Two years cannot overlap, and two years may be open at once (new January before December is closed).

Accounting reference lists

A card per lookup table: account types, reporting classes, party types, journal types, document and period statuses, source modules, currencies (one base currency: setting it on a currency clears it from the others). System rows are relied upon by their fixed codes: they can be renamed but not deleted.

Switches board

In the toolbar of any accounting list, the (Switches board) button opens a board with every record of the screen and its yes/no fields (active, requires cost center, base currency ...) to toggle what you need and save once.

5-c) Accounting - Journal entries and posting

The Accounting group in the sidebar is the daily work.

Journal entries

  • New entry: the (New entry) toolbar button opens the entry screen: a header (type, date, description, reference) and an in-place editable lines grid. The entry number (JV-2026-00001) is reserved on the first save and never changes.
  • A line: an active leaf account (search by code or name inside the cell), a cost center (required for flagged accounts), a description, and one amount - debit or credit (typing one clears the other). Enter moves to the next cell and adds a line at the last cell.
  • Totals update instantly under the grid with a Balanced (green) or Difference (red) indicator. An unbalanced draft can be saved but not posted.
  • The date must fall in a defined fiscal year, and posting requires its period to be open.

Posting, unposting and reversal

  • Post: from the (Post) button on the entry screen, from the entry row in the list, or from the Posting screen (all drafts) with (Post all drafts) up to a date. A posted entry enters every report immediately and cannot be edited or deleted.
  • Unpost: returns the entry to draft (separate permission, the Acc.AllowUnpost setting, and an open period).
  • Reverse: creates a posted reversal entry dated today with swapped lines and marks the original as "Reversed".
  • The status card in the side column shows the status, period, posting date and the original entry of a reversal.
  • Credit limit: when an entry raises a customer's balance (with a credit limit above zero) over its limit, the entry is posted and a gold warning "Credit limit exceeded - customer: balance / limit" appears, and administrators are notified. To block posting instead of warning, turn on the Acc.BlockOverCreditLimit setting in the accounting settings.

Importing opening balances (go-live)

From the journal list, the Import opening balances button (the Add permission on journals):

  1. Download the Excel template - its columns: account code, cost center code (optional), party (C:customer code / S:supplier code / E:employee code - required on control accounts), debit, credit, description.
  2. Choose the fiscal year and upload the file (.xlsx up to 5 MB). The whole file is checked first: any error (unknown or non-leaf code, unknown party, two amounts on one row) stops the import and is shown with its row number - no partial save.
  3. A draft opening entry (OPEN-year-00001) dated the first day of the year is created and opened for review; close any difference with the opening account, then post.

5-d) Financial reports

For every report: choose its parameters then (Run); Print / Excel / HTML buttons in the page header (with the print and export permissions). All figures come from posted entries only and are computed on demand.

Report Parameters What it shows
Account statement account, from/to date, cost center opening balance before the range, the lines by date and entry number with a running balance, the closing balance (positive = debit / negative = credit)
Trial balance year, from/to period (13 = adjustments), level (0 leaves / 1 roots ...), cost center, hide zeros opening, movement and closing debit/credit per account aggregated to the level, with a totals row and balance indicator
Balance sheet as-of date, level assets, then liabilities, then equity (including the unclosed period result); total assets = total liabilities and equity, with a balance indicator
Income statement from/to (defaults to the current year), level, cost center revenue then expenses by the tree, and at the bottom the net profit (green) or net loss (red)

Statement rows: section headers in gold, subtotals with a rule above, grand totals with double rules - the same in print and export.

5-e) Parties and balances

The Parties & Balances group: customers, suppliers, employees and three reports.

  • No chart account per party: every customer/supplier/employee has one control account (e.g. 110301 local customers - an account flagged with a party type in the chart), and the party is chosen on the entry line from one list that combines (customer · supplier · employee). A control account requires a party; an ordinary account rejects one.
  • Customers / Suppliers: identity (code, name, type, tax number, commercial register), contact, cascading address (country → region → city → district), and accounting link (default control account from the accounting settings, currency, payment term, credit limit).
  • Employees: identity (ID, nationality, birth date), job (department, title, employment type, hire date, cost center, manager), contact, and finance (basic salary, bank, advances control account). The employees reference lists live under Accounting Setup.
  • The due date on an entry line is the basis of aging - set it on invoice lines.
Report Parameters What it shows
Party statement party (unified list), from/to opening balance, posted lines with running balance and due date, closing; for a customer the credit limit and available amount
Aging party type, as of per party the balance spread: not due / 1-30 / 31-60 / 61-90 / 91-180 / over (limits from the Acc.AgingBuckets setting)
Party balances party type, as of, hide zeros total debit and credit, net balance by natural sign, credit limit

Sign by nature: a positive customer/employee balance = owed to us; a positive supplier balance = we owe.

5-f) Accounting overview, year-end closing, accounting settings

Accounting overview (the home screen)

Opens after sign-in for anyone with the ACC_DASHBOARD permission (accountant, finance manager, administrators). Its sections in order - each shown only to those permitted to its screen:

  1. What needs action: draft entries awaiting posting, periods that ended (more than a week ago) but are still open, customer dues overdue 90+ days, customers over their credit limit. Red needs action now, gold is in progress, green is fine.
  2. How much we have: cash and banks, customer receivables, supplier payables, employee balances, inventory, net fixed assets, and the year result to date.
  3. How it is distributed: customer aging, expenses by cost center, revenue by month - bars scaled to the largest value.
  4. Data completeness: share of leaf accounts with a reporting class, customers with a tax number, employees with a department and job.
  5. Latest posted entries.

Click any card to open its screen with its filters. Figures are live (no caching).

Fiscal year closing

From Financial reports → Year-End Closing (permission ACC_YEAR_CLOSE; closing itself needs its edit permission):

  1. Choose the year. Six checks appear with semantic colors: no drafts in the year · all periods locked (from the periods screen, including period 13) · the current-year profit and retained earnings accounts are set in the settings · total debit = total credit · the next year (created automatically with its periods if missing) · the year has not been closed before.
  2. Below the checks: the expected net profit/loss, the next year, and the closing entry number.
  3. When all checks pass, the Close the year button appears (with confirmation). The system creates and posts three entries in one step:
    • Closing entry CLOSE-year-00001 in period 13: zeroes every revenue and expense account (by cost center) against the current-year profit account.
    • Transfer entry CLOSE-...-00002: moves the result from current-year profit to retained earnings.
    • Opening entry OPEN-next year-00001 in period 1 of the next year: balances of the leaf balance-sheet accounts by cost center and party. The year is then permanently closed (no further posting in it) and the three entry numbers are recorded on the screen.
  4. Reopen (separate permission ACC_YEAR_REOPEN - the system administrator by default): cancels the three entries (kept as cancelled for the audit trail; excluded from every report) and returns the year to locked; fix what you need, then close again.

Trial balance after closing: choose periods 1 to 13 to see revenue and expenses at zero, or to 12 to see the year result before closing.

Accounting settings

From Accounting setup → Accounting Settings (permission ACC_SETTINGS): account and cost-center code segments, base currency, default period status, default accounts (customer/supplier/employee control, current-year profit, retained earnings - chosen from active leaf accounts only), aging buckets (ascending numbers such as 30,60,90,180), and whether unposting or backdated posting is allowed. Invalid values are rejected with the setting's name.

5-g) Inventory

The Inventory group (module permission INV): stock movements, items, warehouses, stock balances, item card, reference lists.

Setup

  1. Inventory reference lists: item categories (each with its default accounts: inventory, cost of goods sold, sales, count differences - leaf accounts), units of measure, and movement types (system rows: purchase receipt, opening balance, issue, sale, transfer, count adjustment increase/decrease - each with a numbering prefix, a direction and whether it needs a counter account).
  2. Warehouses: code, name, storekeeper and cost center. Every item has its own balance and average cost per warehouse.
  3. Items: code (suggested ITM...), category, unit, barcode, standard cost (suggested on receipts), sale price, reorder level, and optional overrides of the category accounts.
  4. Settings (System settings → Inventory): Inv.AllowNegativeStock (negative stock - off by default) and Inv.DefaultWarehouseId.

Stock movement (document)

From Stock Movements → New movement: the header (type, date, warehouse, the receiving warehouse for transfers, and the counter account when the type needs it - with the supplier/customer when it is a control account), then the lines (item, quantity, unit cost; total = quantity × cost computed instantly). Saving assigns the number PRC-2026-00001 (the type's prefix).

Type Direction Counter account Automatic entry on posting
Purchase receipt + from the header (supplier) Dr inventory / Cr supplier (with party)
Opening balance + from the header (opening account) Dr inventory / Cr opening
Issue − from the header (expense) Dr expense / Cr inventory
Sale − COGS (category) Dr COGS / Cr inventory
Transfer 0 - no entry
Count adjustment +/− +/− count differences (category) Dr/Cr differences against inventory
  • Posting (permission INV_POST): receipts at their cost (or the standard cost when left empty); issues and transfers at the current weighted average Avg = (Qty×Avg + QtyIn×Cost) / (Qty+QtyIn); balances are updated and the entry (type INV) is created and linked to the movement (its number appears in the status card).
  • Negative stock is rejected by default (Inv_Err_InsufficientStock).
  • Unposting (permission INV_UNPOST): the automatic entry is unposted and deleted, and balances are rebuilt from the remaining posted movements. Movements are not reversed - enter an opposite movement.
  • Post all drafts up to a date from the list toolbar.
  • Capitalizing assets from a purchase: link the item category to a fixed asset category (the "Fixed asset category" field on item categories). Items of that category never enter stock: posting a purchase receipt or an opening balance creates one asset per unit in the asset register (sequential FA code, cost = unit cost, life and method from the asset category, cost center and supplier from the movement header, depreciation starting the first of the next month), debits the asset account instead of inventory, and the movement's entry is the acquisition entry of those assets (their codes show in the status card). The quantity must be a whole number up to 200, and such items are not accepted on issues, sales, transfers or adjustments. Unposting the movement deletes the assets unless one of them has started depreciating or was disposed.

Reports

Report Parameters What it shows
Stock balances warehouse, category, as-of date, below reorder only, hide zeros per item/warehouse the quantity, average cost and value (today from the balances table, an earlier date by replaying movements); items below their reorder level in red
Item card item, warehouse (or all), from/to opening balance before the range, then per movement the in/out quantity, unit cost and running balance (qty/average/value), and the closing balance

Reconciliation: the total value of stock balances = the inventory account balance in the trial balance for the same date (when all movements come from the module). The overview shows "Inventory" from the INVENTORY reporting class.

5-h) Fixed assets

The Fixed Assets group (module permission FA): asset register, depreciation runs, asset register report, depreciation schedule, reference lists.

Setup

  1. Assets reference lists: asset categories (each with the asset account, accumulated depreciation account, depreciation expense account and default life in months), depreciation methods (straight line - system row), asset statuses (in use, fully depreciated, suspended, disposed - system rows).
  2. Settings (System settings → Fixed assets): Fa.GainAccountId disposal gain, Fa.LossAccountId disposal loss, Fa.DisposalAccountId default counter account on disposal (cash).

Asset register

New record: code (FA...), name, category (fills life and method), status (in use by default), purchase date, depreciation start (first of the month after purchase by default), cost, salvage value, life in months, cost center (charged with the depreciation expense), custodian, supplier. Accumulated depreciation and depreciated months are read-only: the depreciation runs maintain them. Once depreciation starts, cost, salvage and life cannot change (Fa_Err_Depreciated).

Acquisition entry: from the asset row, the Acquisition entry button (shown while the asset has none; needs the edit permission on assets): the date (defaults to the purchase date) and the counter account - the suppliers control account with a supplier, or bank/cash. A posted entry of type FA is created (Dr the asset account by its cost center / Cr the counter account at the asset cost) and linked to the asset - once per asset. If the purchase invoice was already recorded manually, do not create it.

Depreciation run (document)

From Depreciation Runs → New run: choose the date (it sets the fiscal period) and save - installments are computed automatically for every in-use asset whose depreciation started by the period end, is not complete, and was not depreciated in the period:

  • Monthly installment = (cost − salvage) / months; the last installment settles rounding so the accumulated never exceeds the base.
  • Installments are not entered manually; every save recomputes them. One posted run per period (Fa_Err_PeriodAlreadyRun).
  • Posting (permission FA_POST): a DEP entry (Dr depreciation expense grouped by the asset's cost center / Cr accumulated depreciation by category), each asset's accumulated and months updated, and status fully depreciated on completion.
  • Unposting (permission FA_UNPOST): the entry is unposted and deleted and the update reversed - refused when an asset in the run was depreciated in a later period or disposed.

Disposal

From the asset row (in use or fully depreciated) the Dispose button (permission FA_DISPOSE): the date (in an open period), the amount received, and the counter account (cash/bank/non-control receivable). The entry: Cr asset account at cost, Dr accumulated, Dr counter for the amount, and the difference as disposal gain (credit) or loss (debit). The asset is closed with status disposed and the disposal data recorded on it.

Reports

Report Parameters What it shows
Asset register report category, status, cost center per asset the purchase date, cost, accumulated, net book value, months (depreciated/life) and status, with totals; disposed assets in red
Depreciation schedule an asset (its whole life) or a fiscal year (its months), forecast months month by month: installment, accumulated and net book value after it - actual for posted installments then forecast (italic) by straight line

Reconciliation: the sum of "accumulated depreciation" in the asset register = the balance of the accumulated depreciation accounts in the trial balance; the overview shows "Net fixed assets" from the FIXED_ASSET and ACC_DEPR classes.


6) Notifications

6-1) My notifications

  • The bell at the top shows the unread count; click it for the latest, or open Notifications → My Notifications for the full list.
  • A bold title = unread; click it to open the linked record or screen, which marks it read.
  • The coloured badge is the notification type: green success, gold warning, red danger/urgent, grey information.
  • From the toolbar: Mark all as read (resets the bell counter), mark one read/unread, and delete what you no longer need.
  • From Advanced search: (unread only), type, priority. The list groups and exports like any list (section 4).

6-2) Notification preferences

  • Switch each channel on or off: in-app, email, SMS. In-app is the base channel; switching it off hides non-urgent notifications from the bell and the inbox.
  • Mute the types you do not want: a muted type reaches you through no channel.
  • Email and SMS arrive only if the sending rule also uses that channel.

6-3) Send a notification (for those with the permission)

Pick the type, priority and channels, then the recipients: specific users, user types (and those inheriting from them), the administrators, or everyone - for the first two a searchable picker appears and is required. Write the title in Arabic and English (each recipient gets their own language); the body is optional and the link is a local one starting with /. After sending, the number of notifications created is shown.

6-4) Notification rules (Super Admin)

A rule answers two questions: where does the notification come from? and who receives it?

  1. Source: a screen (when a screen performs an event), a data table (picked up automatically on any change to the table), or a named event (such as user registered, entry posted, credit limit exceeded). Then the event: created, updated, deleted, activated, deactivated, login, failed login...
  2. Message: notification type, title and body templates in Arabic and English, the link and the channels. Variables are inserted by clicking: {Id} record number, {Name} its name, {Actor} who did it, {Date} and {Time}, {Screen}, {Event}, {Owner} the record owner. A link template such as /Users/Edit/{Id} opens the record from the notification. Preview shows the text with sample values.
  3. Recipients: specific users, user types (with inheritance), the record owner, the administrators, everyone, or the actor - with an option to exclude the actor.

An inactive rule produces nothing. No programming is needed to add a rule on an existing screen.

6-5) Notification types (Super Admin)

A code, Arabic/English name, icon and a semantic colour (green/gold/red/grey) shown in the bell and the inbox. A type used by a rule or a notification cannot be deleted - deactivate it. System types cannot be deleted and their code is fixed.

The whole notifications module can be detached and re-attached from System Settings (Features.Notifications): when detached the bell and menus disappear and no data is deleted.


7) My account

Screen What it does
My Profile Your details and photo.
Edit My Data Update name, mobile, email and photo (changing mobile or email needs confirmation with a code).
Change Password At least 8 characters: an upper-case letter, a lower-case letter, a digit and a symbol. Your sessions on other devices are ended; you stay signed in here.
Trusted Devices Devices where you kept sign-in; remove any device you do not recognise immediately and change your password.
Sign-in History The last 100 sign-in attempts on your account, successful and failed: time, method, device and result.
  • Changing your mobile cancels its verification and asks for a new code; changing your email cancels its verification and sends a new link - your account keeps working, but finish verifying so every sign-in and recovery route stays available.
  • The national ID in your details is what enables Nafath sign-in.
  • Your user type and permissions are not changed here: whoever manages users changes them (section 8).
  • If the sign-in history shows an attempt you do not recognise: change your password, then remove all trusted devices.

8) For supervisors and the system administrator

The screens of the Administration group. Which of them you see depends on your permissions:

Screen What it does For
Users Management Approve new accounts, activate/deactivate, edit details and type, password, devices, applications Whoever was granted it
User Types & Permissions The type tree and each type's permission matrix Whoever was granted it
System Menus Activate and show the side-menu items Super Admin
System Settings Switch modules on/off, the self-registration type, notification, accounting, inventory and asset settings Super Admin
Applications & API Keys External applications connected to the system and their keys Super Admin
Settings and Simulation Inbox The current runtime settings, and the trial environment's messages Super Admin

8-1) Who manages users?

  • The Super Admin manages everything without a ceiling and is the source of permissions.
  • Nobody else manages users except through a permission the Super Admin grants: the "Users Management" screen (and the "User Types" screen) is a permission in the type matrix like any other screen, so anyone whose type was not given it - directly or by inheritance from its parent type - does not see it.
  • And whoever was given it manages within their own permissions: only the users and types that do not exceed what they hold through inheritance (details in 8-4).

8-2) The ready-made types

Type Inherits from What it holds (by default - the Super Admin changes it in the matrix)
User (USER) - Dashboard, own account, own notifications and preferences, help, and viewing basic data
Admin (ADMIN) User + users management (no delete), editing basic data, sending notifications, and viewing accounting and its reports
Super Admin (SUPERADMIN) Admin + everything: types and permissions, menus, settings, applications, notification rules, delete, reopening a year
Accountant (ACCOUNTANT) User + accounting work: entries and posting (no unposting), chart, cost centers and periods, parties, reports - no delete
Finance Manager (FINANCE_MANAGER) Accountant + delete, reference lists, accounting settings, unposting, year-end closing

Create your own types (storekeeper, data entry, reviewer...) under User Types instead of changing the ready-made ones.

8-3) Users management

  • The cards at the top: total, active, inactive, pending activation (verified their mobile and await approval).
  • Approving a new account: filter by status (pending activation) → review the details → switch Active on in the row. The user receives a welcome message. The account carries the self-registration type (8-5); change it from (Edit) first if needed.
  • Deactivating: switch it off; the user's sessions end at once on every device and their trusted devices are revoked. You cannot deactivate your own account.
  • Edit opens the user card:
    • Details (name, username, email, mobile, ID, language) and the user type - everything they see and hold changes with it at once.
    • Switches: active, mobile verified, email verified (for manual verification when the code route fails).
    • New password (optional): ends the user's sessions; hand it over through a safe channel and ask them to change it.
    • The user's trusted devices with a button to revoke them all, and their latest sign-in attempts.
    • User applications: link the user to an external application with one of that application's types, or remove the membership.
  • Delete (delete permission): permanent, and may be refused if the user has linked records - deactivating is safer.
  • Importing from Excel: Id = 0 creates a user with a random password (they set it with "Forgot your password?" or a supervisor sets it); Id > 0 updates. The type column obeys your permission limits exactly as the screen does.
  • A lock instead of the Edit button means that user holds permissions you lack (8-4).

8-4) Permissions form a tree, and everyone manages within their own limits

Creating a type and setting its permissions (User Types → Add type):

  1. The code (upper-case English letters), both names, and the parent type it inherits from (or none).
  2. The matrix: a row per screen and a column per action (view, add, edit, delete, print, export). A grey row with the I badge is inherited from the parent as is; the O badge is a permission of this type itself. Any action implies view.
  3. Ticking any box in an inherited row replaces what was inherited for that whole row with what you ticked, and Deny removes the screen from this type and everything derived from it.
  4. A group needs the view permission too: if you grant a screen but not the view of its menu group, it does not appear in the side menu.
  5. Save. The change takes effect at once for the holders of the type and every type derived from it.

A system type, or a type that has users or child types, cannot be deleted.

The limits of whoever manages:

  • Tree inheritance: every type inherits all of its parent's permissions, then adds to them or denies an inherited menu. Changing a type takes effect at once on every type derived from it.
  • Nobody grants what they do not hold: in the permission matrix the box of an action you do not hold is disabled, and saving is refused if the type (what it inherits from the parent you picked + what you ticked) would hold a permission you lack - the message names the screen and the action. Denying and removing a permission are always allowed.
  • Assigning a type: the "User type" list only offers types within your own permissions; you cannot promote a user (or yourself) to a type above you.
  • Managing users: a user whose type holds a permission you lack shows a lock instead of the Edit button; you cannot edit their details, reset their password, deactivate or delete them. Example: the "Admin" manages ordinary users, while the Accountant and the Finance Manager (who hold accounting permissions the Admin lacks) are managed by the Super Admin or by a supervisor who was given those permissions.
  • Types: you cannot edit your own type, a type you inherit from, or a type above you (they show a lock). Only the Super Admin has no ceiling, and is the one who grants permissions in the first place.
  • The same rule applies to importing users from Excel, the flags board, linking users to applications, and the API platform.

8-5) The user type on self-registration

Whoever registers from the New account screen gets the type the Super Admin decides:

  1. Administration → System Settings → the Users and registration card → the setting User type assigned to an account on self-registration (Users.SelfRegisterType).
  2. Pick the type from the list, then Save. It applies to every new registration from the web or the API platform; existing accounts do not change.
  • The list shows the system's active types only and never the Super Admin type - nobody becomes a Super Admin by registering.
  • Pick a type with limited permissions (the default is "User"): everyone who registers inherits the permissions of that type and of those above it in the tree. If you want a dedicated type for registrants (say "Customer" or "Applicant"), create it under User Types first, then pick it here.
  • The account stays inactive until someone who manages users approves it, whatever its type. The approver's permissions must cover that type (8-4).
  • If the chosen type is later deactivated or deleted, registration falls back automatically to the base "User" type until you pick another.
  • A user created by a supervisor (by import or through the API) is not affected by this setting: they start with the base type and are then given their type.

8-6) System menus

A list of every side-menu item and its code (the code is what a permission is tied to in the matrix). Each item has two switches: Active (off disables the screen for everyone and removes it from the matrix) and Visible (off removes it from the side menu while its permission keeps working). Order and names ship with the system; non-visible items such as "Posting" and "Unposting" are permission codes, not screens.

8-7) System settings

A card per group, each setting with a fitting control (switch, number, list, text). One Save writes only what changed and takes effect at once, with no restart.

Group The main settings
Detachable features Notifications, translation between the Arabic and English fields, the intro video - switching off hides the menus and buttons and stops processing, and deletes no data
Users and registration The user type on self-registration (8-5)
Notifications Default channels for new rules, how long notifications are kept, the bell refresh interval
Accounting Managed from their own Accounting settings screen (5-f) with stricter validation; also listed here
Inventory Allow negative stock, the default warehouse
Fixed assets The disposal gain and loss accounts and the default counter account
  • Translation: switching it on shows the translate button next to every field that has a counterpart in the other language. The bundled translator is local (the system glossary; what it does not know it transliterates, so review it); if an external translation provider is installed the text is sent to it - a decision the Super Admin takes knowingly.
  • Reload system files re-reads the definition, help and localization files from disk and does not touch the database.

8-8) Applications and API keys

To connect an external application (a site, a mobile app, another system) through the API platform:

  1. Add application: a unique code, both names, description, the application URL, the allowed origins (the site addresses allowed to call), and an icon.
  2. After saving, the API key is shown once only - copy it at once into the application's secure settings. If it is lost use Rotate key: a new key is issued and the old one stops working immediately. Never put the key in browser code or a public repository.
  3. Each application has its own user types and menus. Set the default type (one of the application's own types) and auto-join (any user becomes a member with the default type on first sign-in to the application), or link users manually from the user card (8-3).
  4. Deactivating an application revokes every sign-in token issued to it at once. The base application (the platform) cannot be deactivated or deleted, and an application that has types or menus cannot be deleted.

8-9) Settings and the simulation inbox

  • Settings: a view of the current runtime settings (the security policy: code length and lifetime, number of attempts, lockout time, whether supervisor approval is required...). They are changed in the server's configuration files, not on the screen - see the Technical Guide.
  • Simulation inbox (trial environment only): every message that would have been sent - SMS, email and Nafath requests - with copy-code, open-link and clear. In production, simulation mode is switched off and messages are really sent.

9) Help

Link Content
User Guide This guide: a side index to jump between sections, read-aloud and print. Shown in English with the English interface.
Screens Guide A categorised reference of every screen: purpose, services, instructions and screenshot, with search by name or code, and diagrams of the screen map, the sign-in flow and permission inheritance.
Security & Encryption How passwords, codes, sessions and trusted devices are protected.
About Version, owner, developer and contacts.
Forms Demo A practice screen that saves nothing: try the linked dropdowns, the field-language conversion and the required-field messages before working on real data.
Technical Guide and Project Files Guide For the Super Admin and developers: build, deployment, configuration, API and security, and the job of every file in the program.

Where do I find help on what is in front of me? The (?) button in the screen header for the screen, the (?) next to a field for that field, and this guide for the whole picture.


10) FAQ

I can't see a screen my colleague uses. Screens follow your user type's permissions; ask the administrator.

I do not know where to find a screen or a record. Type its name or code in the search box at the top (Ctrl+K), or open the System map.

Search does not find a record I know exists. You may not have permission to view its screen, or you typed one character (the minimum is two); reference lists appear on the full results screen, not in the dropdown.

The microphone button in search is missing or does nothing. The browser does not support speech recognition, or it was not allowed to use the microphone; allow it in the browser's site settings.

The verification code did not arrive. Wait for the countdown to finish, then Resend. Check the mobile number. After 5 wrong attempts request a new code.

My account is locked. Wait 15 minutes, or use Forgot your password?.

Filtering returns nothing. Look at the column headers: a filled gold funnel means an active filter - clear it.

Columns disappeared from a list. Columns button → show them again, or Reset to default.

Text comes out in odd characters. The field's language differs from your keyboard layout; check the ع/En badge - conversion is automatic, or switch the layout.

I registered but cannot sign in. The account awaits approval: verify your mobile with the code, then wait for the activation message from whoever manages users.

I registered and see only a few screens. Your account carries the self-registration type chosen by the Super Admin; ask whoever manages users to change your type.

I see a lock instead of the Edit button on a user or a type. That user or type holds permissions you lack, or it is your own type or one you inherit from; it is managed by the Super Admin or by someone whose permissions cover it (section 8-4).

A type is missing from the "User type" list. The list only offers what does not exceed your own permissions. Ask the Super Admin to assign it.

Some boxes in the permission matrix are disabled. They are actions you do not hold, so you cannot grant them; denying and removing stay available.

I granted a type a screen but it does not show in its menu. Grant the view of its menu group as well, and check the screen is "Visible" under System Menus.

I cannot post the entry. Check that it balances, that its date falls in an open period, that its accounts are active leaves, that control accounts carry a party, and that accounts requiring a cost center have one.

I cannot edit or delete an entry. A posted entry is not editable: unpost it (if you have the permission and the period is open) or reverse it.

Issuing an item from stock was refused. The balance in that warehouse is not enough; check the Item card, or post the draft receipts first.

An asset does not appear in the depreciation run. Check its status is "In use", that its depreciation start is before the end of the run's period, that it was not already depreciated in that period, and that it is not fully depreciated.

The bell and the notification menus disappeared. The notifications module is detached in System Settings; the Super Admin re-attaches it and no data is lost.

The translate button does not show next to fields. The translation module is detached; the Super Admin switches it on in System Settings.


11) Glossary

Term What it means in the system
User type A set of permissions assigned to a user; every user has one type, and types form a tree in which a child inherits its parent
Permission An action (view, add, edit, delete, print, export) on a screen identified by its code
Deny A matrix row that removes an inherited screen from a type and everything derived from it
Super Admin The top type (SUPERADMIN): the source of permissions, with no ceiling
Self-registration A user creating their own account from "New account", with the type set in System Settings, pending approval
Trusted device A device on which sign-in was kept for 90 days
Simulation mode A trial environment in which no real messages are sent; they appear in the simulation inbox
Draft / posted Before posting a document can be edited and deleted; after it, it enters the reports and cannot be edited
Unposting / reversal The first returns the document to draft; the second creates an opposite entry and keeps the original
Leaf account An account with no children; posting happens on leaves only
Control account One account that gathers the balances of parties of one kind (customers, suppliers, employee advances) and requires a party on the line
Party A customer, supplier or employee whose balance is tracked on a control account
Cost center A department or section that expenses and revenues are charged to
Period 13 The adjustments period at year end; the closing entry goes there
Closing / opening entry The first zeroes revenues and expenses into profit; the second carries the balance-sheet balances to the next year
Aging Party balances split by how long they are past their due date
Weighted average The unit cost in stock = balance value ÷ quantity; issues and transfers are valued at it
Capitalization Turning a purchased item into a fixed asset in the asset register instead of stock
Book value The asset's cost − its accumulated depreciation
Semantic colour Green = complete/healthy, gold = partial/warning, red = missing/danger