Admin Training Manual — Lofty Golden Oil ERP
Version: 2.0
Last Updated: July 2026
Audience: System Administrators, Business Owners
Table of Contents
- Welcome & System Overview
- Logging In
- Interface Overview
- Dashboard
- User Management
- Inventory Management
- Production Management
- Sales Management
- Customer Management
- Accounting Overview
- Expense Management
- System Administration
- Training Exercises
1. Welcome & System Overview
What is the LGO ERP?
The Lofty Golden Oil ERP (Enterprise Resource Planning) system is a purpose-built management platform for Lofty Golden Oil Ltd, a cooking oil distribution company based in Lagos, Nigeria. It centralizes all business operations — from raw material procurement through production to sales and accounting — into a single, accessible web application.
System Capabilities
| Module | What It Does |
|---|---|
| Dashboard | Real-time KPIs, charts, and business alerts |
| Inventory | Track raw materials (liquid oil, kegs, stickers, lids) and finished goods |
| Production | Log production runs, calculate costs, track yield |
| Purchases | Record procurement from suppliers with full tracking |
| Sales | Create sales, manage invoices, record payments |
| Customers | Manage customer database and credit accounts |
| Suppliers | Manage supplier relationships and purchase history |
| Accounting | General Ledger, Trial Balance, P&L, Balance Sheet |
| Expenses | Track and categorize business expenses |
| Requisitions | Multi-level approval workflow for material requests |
| Audit Log | Complete history of all system actions |
| Automated notifications (invoices, payments, alerts) | |
| Backup | Built-in backup and restore functionality |
Key Users
| Role | Name | Primary Functions | |
|---|---|---|---|
| Admin | Alhaji Ganiyu | admin@loftygoldenoil.com | Full system access, user management, settings |
| Production | Samuel Adebayo | samuel@loftygoldenoil.com | Production runs, inventory monitoring |
| Sales | Fatima Osun | fatima@loftygoldenoil.com | Sales, customers, invoicing |
| Accountant | Ngozi Okoro | ngozi@loftygoldenoil.com | Expenses, accounting, reports |
Accessing the System
- Production URL: https://loftygoldenoil.com
- Staging URL: http://170.9.14.60:8443 (for testing)
- Supported Browsers: Chrome, Firefox, Edge, Safari (modern versions)
2. Logging In
Step-by-Step Login
- Open your browser and navigate to
https://loftygoldenoil.com - You will see the login page with the Lofty Golden Oil logo
- Enter your email in the "Email" field (e.g.,
admin@loftygoldenoil.com) - Enter your password in the "Password" field
- Click the "Login" button or press Enter
- You will be redirected to the Dashboard
Login Credentials
| User | Password | Role | |
|---|---|---|---|
| Admin | admin@loftygoldenoil.com | admin123 | Administrator (Owner) |
| Production | samuel@loftygoldenoil.com | password123 | Production Manager |
| Sales | fatima@loftygoldenoil.com | password123 | Sales Representative |
| Accountant | ngozi@loftygoldenoil.com | password123 | Accountant / Auditor |
Session Information
- Sessions last 24 hours before automatic logout
- You will see a warning before session expiry
- For security, always log out when leaving the computer
Logging Out
- Click the user avatar in the top-right corner of the header
- Select "Logout" from the dropdown menu
- You will be returned to the login page
Troubleshooting Login
| Issue | Solution |
|---|---|
| "Invalid credentials" | Check email and password. Try admin123 for admin. |
| Page won't load | Check internet connection. Try https://loftygoldenoil.com/api/health |
| Session expired | Simply log in again |
| Account locked | Contact admin to reset password |
3. Interface Overview
Layout Structure
┌──────────────────────────────────────────────────┐
│ HEADER: Logo | Search | Theme Toggle | User │
├──────────┬───────────────────────────────────────┤
│ │ │
│ SIDEBAR │ MAIN CONTENT AREA │
│ │ │
│ Dashboard│ (Page-specific content appears here) │
│ Inventory│ │
│ Production│ │
│ Sales │ │
│ Customers│ │
│ Suppliers│ │
│ Expenses │ │
│ Accounting│ │
│ Users │ │
│ Settings │ │
│ Audit Log│ │
│ │ │
├──────────┴───────────────────────────────────────┤
│ FOOTER: Company info, version │
└──────────────────────────────────────────────────┘
Sidebar Navigation
The sidebar on the left provides quick access to all modules:
| Menu Item | Description | Available To |
|---|---|---|
| Dashboard | Home page with KPIs | All roles |
| Inventory | Raw materials and finished goods | Admin, Production |
| Production | Production run management | Admin, Production |
| Purchases | Procurement records | Admin, Accountant |
| Sales | Sales transaction management | Admin, Sales |
| Customers | Customer database | Admin, Sales |
| Suppliers | Supplier management | Admin, Accountant |
| Expenses | Expense tracking | Admin, Accountant |
| Accounting | GL, reports, compliance | Admin, Accountant |
| Users | User management | Admin only |
| Settings | System configuration | Admin only |
| Audit Log | Activity history | Admin only |
| Requisitions | Material request workflow | All roles |
Header
- Logo: Click to return to Dashboard
- Search: Global search across records
- Theme Toggle: Switch between light and dark mode
- User Menu: Profile, settings, logout
Footer
Displays company name and system version information.
4. Dashboard
The Dashboard is your command center — it shows the most important metrics at a glance.
Key Performance Indicators (KPIs)
| KPI | What It Means | Where to Find |
|---|---|---|
| Cash Position | Current available cash balance | Top of Dashboard |
| Revenue | Total sales revenue (all time or period) | KPI card |
| COGS | Cost of goods sold | KPI card |
| Gross Profit | Revenue minus COGS | KPI card |
| Net Income | Gross profit minus operating expenses | KPI card |
| Inventory Value | Total value of all inventory | KPI card |
| Outstanding AR | Unpaid invoices (money owed to you) | KPI card |
Charts
| Chart | What It Shows |
|---|---|
| Sales Trend | Revenue over time (daily/weekly/monthly) |
| Production Output | Kegs produced over time |
| Inventory Levels | Current stock vs. safety stock |
| Expense Breakdown | Categories of spending |
Alerts
The Dashboard displays alerts for items requiring attention:
| Alert | Meaning | Action Required |
|---|---|---|
| Low Stock | Items below safety stock level | Order more materials |
| Overdue AR | Invoices past due date | Follow up with customers |
| Overdue AP | Supplier payments overdue | Arrange payment |
Using the Dashboard
- Review daily: Check the Dashboard every morning to understand the current business state
- Act on alerts: Address low stock and overdue items promptly
- Drill down: Click on any KPI card to see detailed information
- Period selection: Use date filters to view specific time periods
Training Exercise: Dashboard
- Log in as admin
- Identify the current cash position
- Count the number of low stock alerts
- Find the most recent sale amount
- Navigate to the detailed view of the Sales Trend chart
5. User Management
Creating New Users
- Navigate to Users from the sidebar
- Click "Add User" button (top right)
- Fill in the form:
| Field | Description | Example |
|---|---|---|
| Username | 3-30 characters, letters/digits/._- | john.doe |
| Full Name | Display name | John Doe |
| Password | Minimum 6 characters | securepass123 |
| Role | Select from dropdown | sales |
- Click "Save" to create the user
- The user receives a welcome email (if email is configured)
Understanding Roles
| Role | Full Title | Access Level | Can Do |
|---|---|---|---|
| admin | Administrator (Owner) | Full | Everything — users, settings, all data |
| production | Production Manager | Limited | Dashboard, Inventory, Production, Requisitions |
| sales | Sales Representative | Limited | Dashboard, Customers, Sales, Statements, Requisitions |
| accountant | Accountant / Auditor | Limited | Dashboard, Expenses, Accounting, Purchases, Requisitions |
Role Permissions Matrix
| Feature | Admin | Production | Sales | Accountant |
|---|---|---|---|---|
| Dashboard | Full | View | View | View |
| Inventory | Full | Full | View only | View only |
| Production | Full | Full | No access | View only |
| Purchases | Full | No access | No access | Full |
| Sales | Full | No access | Full | View only |
| Customers | Full | No access | Full | View only |
| Suppliers | Full | No access | No access | Full |
| Expenses | Full | No access | No access | Full |
| Accounting | Full | No access | No access | Full |
| Users | Full | No access | No access | No access |
| Settings | Full | No access | No access | No access |
| Audit Log | Full | No access | No access | No access |
Managing User Status
Editing a User
- Go to Users page
- Click the edit icon next to the user
- Modify name or role
- Click Save
Important: You cannot demote the last administrator account.
Password Reset
- Go to Users page
- Click "Reset Password" next to the user
- Enter a new password (minimum 6 characters)
- Click "Reset"
- The user receives a password reset email
Deleting a User
- Go to Users page
- Click the delete icon next to the user
- Confirm the deletion
Important: You cannot delete the last administrator account.
Training Exercise: User Management
- Create a new user with the "sales" role
- Verify the user appears in the list
- Edit the user's display name
- Reset the user's password
- Delete the test user
6. Inventory Management
Adding Products
- Navigate to Inventory from the sidebar
- Click "Add Product" button
- Fill in the form:
| Field | Description | Example |
|---|---|---|
| ID | Unique identifier (auto-generated) | MAT-5 |
| Name | Product name | Liquid Oil |
| Category | raw or finished | raw |
| Unit | Unit of measure | Liters |
| Count | Current stock quantity | 12500 |
| Cost | Average cost per unit (₦) | 950 |
| Safety Stock | Minimum stock before alert | 3000 |
| Expiry Date | Optional | 2027-01-01 |
- Click "Save"
Inventory Categories
| Category | Items | Purpose |
|---|---|---|
| Raw Materials | Liquid Oil, Empty Kegs, Stickers, Leeds/Lids | Used in production |
| Finished Goods | Finished Golden Oil Kegs | Ready for sale |
Stock Adjustments
When physical stock differs from system count:
- Navigate to Inventory → Adjustments
- Click "New Adjustment"
- Select the material to adjust
- Enter the physical count (what you actually have)
- Select adjustment type:
reconciliation— Routine stock reconciliationdamage— Stock damaged in storageloss— Stock lost (spillage, etc.)theft— Stock stolen
- Enter the reason (detailed description required)
- Click "Save"
Note: The system automatically calculates the variance and its monetary value.
Stock Alerts
The system monitors stock levels against safety stock thresholds:
| Alert Level | Condition | Color |
|---|---|---|
| Critical | Stock < 50% of safety stock | Red |
| Warning | Stock < safety stock | Yellow |
| OK | Stock >= safety stock | Green |
Best Practices
- Count stock regularly — Do physical counts at least weekly
- Record adjustments promptly — Don't let discrepancies accumulate
- Investigate variances — Understand why stock doesn't match
- Review safety stock levels — Adjust based on consumption patterns
- Check expiry dates — Rotate stock to prevent waste
Training Exercise: Inventory
- View the current stock levels for all 5 inventory items
- Which items are currently below safety stock?
- Record a stock adjustment for "damage" to stickers
- Check the adjustment was logged in the audit trail
- Verify the new stock count matches expectations
7. Production Management
Creating Production Runs
- Navigate to Production from the sidebar
- Click "New Production Run"
- Enter production details:
| Field | Description | Example |
|---|---|---|
| Kegs to Produce | Number of kegs (positive integer) | 150 |
| Liters per Keg | Default is 25 | 25 |
| Overhead per Keg | Direct overhead cost (₦) | 1850 |
- Click "Start Production"
How Production Works
The system uses a Bill of Materials (BOM) recipe:
| Material | Quantity per Keg | Source |
|---|---|---|
| Liquid Oil | Liters per keg (default: 25L) | Raw inventory |
| Empty Kegs | 1 | Raw inventory |
| Stickers | 1 | Raw inventory |
| Leeds/Lids | 1 | Raw inventory |
For each production run:
- Raw materials are automatically deducted from inventory
- Finished kegs are automatically added to finished goods inventory
- Total cost is calculated (materials + overhead)
Understanding Yield %
- Yield % = (Finished kegs produced / Raw materials consumed) × 100
- A yield of 100% means all materials were converted to finished product
- Yield below 100% indicates waste or loss during production
Cost Tracking
| Cost Component | How It's Calculated |
|---|---|
| Materials Cost | Weighted Average Cost × quantity consumed |
| Overhead Cost | Overhead per keg × number of kegs |
| Unit Cost | Materials cost + Overhead cost per keg |
| Total Cost | Unit cost × number of kegs |
Status Workflow
Production runs are logged immediately — there is no approval workflow for production.
[Create Run] → Materials deducted → Finished goods added → Complete
Cash Check
Before production, the system verifies sufficient cash is available to cover direct overhead costs. If cash is insufficient, the production run will be rejected with an error message.
Training Exercise: Production
- Check current inventory levels for all raw materials
- Create a production run for 50 kegs
- Verify that raw materials were deducted correctly
- Verify that finished kegs were added to inventory
- Calculate: Did the unit cost match expectations?
8. Sales Management
Creating a Sale
- Navigate to Sales from the sidebar
- Click "New Sale"
- Fill in the sale details:
| Field | Description | Example |
|---|---|---|
| Customer | Select from customer list | Alhaji Bashiru & Sons |
| Quantity | Number of kegs (integer) | 120 |
| Unit Price | Price per keg (₦) | 35000 |
| Discount | Optional discount (₦) | 0 |
| Payment Method | Bank Transfer / POS / Cash / Credit | Bank Transfer |
| Transaction Ref | Required for Bank Transfer | TXN-8841 |
| Narration | Optional notes | Transfer confirmed same day |
- Click "Record Sale"
Invoice Generation
When a sale is recorded:
- An invoice is automatically generated
- The invoice is stored in the AR (Accounts Receivable) system
- If payment method is "Credit (On Account)", an AR invoice is created with a 30-day due date
- An email invoice is sent to the customer (if email is configured)
Payment Recording
| Payment Method | When to Use | Reference Required |
|---|---|---|
| Bank Transfer | Customer pays via bank | Yes — transaction reference |
| POS Card Payment | Customer pays via card terminal | No |
| Cash | Customer pays in cash | No |
| Credit (On Account) | Customer will pay later | No (AR invoice created) |
Receipt Printing
After recording a sale:
- Click "Print Receipt" on the sale confirmation
- The receipt opens in a new tab/window
- Use Ctrl+P (Cmd+P on Mac) to print
- Select thermal printer for 80mm receipt paper
Thermal Printer Setup:
- Use a standard 80mm thermal receipt printer
- Set paper size to "80mm x 297mm" or "Roll Paper 80mm"
- Disable headers/footers in browser print settings
- The receipt auto-formats for thermal paper
Managing AR (Accounts Receivable)
For credit sales:
- View outstanding invoices in the AR Aging report
- Record payments when customers pay:
- Select the invoice
- Enter payment amount
- Select payment method
- Enter reference number
- Invoice status updates:
open— No payment receivedpartial— Partial payment receivedsettled— Fully paid
Training Exercise: Sales
- Create a sale for 50 kegs at ₦35,000 each
- Use "Bank Transfer" payment with reference "TXN-TEST-001"
- Verify the sale appears in the Sales list
- Check the inventory was reduced by 50 kegs
- Record a credit sale and verify AR invoice was created
9. Customer Management
Adding Customers
- Navigate to Customers from the sidebar
- Click "Add Customer"
- Fill in the form:
| Field | Description | Example |
|---|---|---|
| Name | Full business name (unique) | Alhaji Bashiru & Sons, Osogbo |
| Phone | Contact number | +234 803 456 7890 |
| Address | Business address | 12 Market Road, Osogbo |
| Type | wholesale or retail | wholesale |
- Click "Save"
Customer Types
| Type | Description | Typical Pricing |
|---|---|---|
| Wholesale | Bulk buyers, distributors | Standard wholesale price |
| Retail | Individual/small buyers | May have different pricing |
Credit Limits
While the current system uses "Credit (On Account)" for deferred payments, credit limits can be managed by:
- Monitoring AR aging reports
- Setting internal limits per customer
- Reviewing outstanding balances before new credit sales
Customer Statements
To send a customer statement:
- Navigate to Statements (or Customers → select customer)
- Select the customer
- Choose date range (defaults to current month)
- Click "Generate Statement"
- Click "Send via Email" (if email configured)
The statement includes:
- Opening balance
- All sales in the period (debits)
- All payments in the period (credits)
- Closing balance
Training Exercise: Customer Management
- Add a new wholesale customer
- Record a sale to this customer
- Generate a statement for the customer
- Verify the statement shows the correct transactions
10. Accounting Overview
Understanding the General Ledger
The GL tracks all financial transactions using double-entry accounting:
| Account Type | Examples | Normal Balance |
|---|---|---|
| Assets | Cash, Inventory, AR | Debit |
| Liabilities | Accounts Payable | Credit |
| Equity | Owner's Capital | Credit |
| Revenue | Sales Revenue | Credit |
| Expenses | COGS, Operating Expenses | Debit |
Chart of Accounts
The system uses these GL accounts:
| Account | Type | Description |
|---|---|---|
| Cash & Cash Equivalents | Asset | All cash movements |
| Inventory Assets | Asset | Value of raw + finished goods |
| Accounts Receivable | Asset | Money owed by customers |
| Work-in-Progress (WIP) | Asset | Production in progress |
| Cost of Goods Sold | Expense | Direct costs of production |
| Operating Expenses | Expense | Overhead costs |
| Inventory Adjustments Expense | Expense | Write-offs and adjustments |
| Sales Revenue | Revenue | Income from sales |
| Owner's Capital & Reserves | Equity | Opening capital + retained earnings |
Creating Vouchers
The system automatically generates vouchers for all transactions:
| Transaction Type | Debit | Credit |
|---|---|---|
| Purchase | Inventory Assets | Cash |
| Production | WIP → Inventory Assets | Raw Materials → Cash (overhead) |
| Cash Sale | Cash | Sales Revenue |
| Credit Sale | Accounts Receivable | Sales Revenue |
| Expense | Operating Expenses | Cash |
| AR Payment | Cash | Accounts Receivable |
| Stock Write-off | Inventory Adjustments Expense | Inventory Assets |
Journal Entries
The GL endpoint (/api/reports/gl) returns all vouchers in chronological order. Each voucher has:
- Date of transaction
- ID of the source record
- Type (purchase, production, sale, expense, adjustment, ar_payment)
- Legs — debit and credit entries with descriptions
Running Reports
Trial Balance
- Navigate to Accounting → Trial Balance
- View all accounts with debit/credit balances
- Verify total debits equal total credits (balanced)
- Export to PDF/CSV if needed
Profit & Loss (P&L)
- Navigate to Accounting → Financial Reports
- Set date range (optional)
- Review:
- Revenue
- COGS
- Gross Profit
- Operating Expenses
- Net Income
Balance Sheet
- Navigate to Accounting → Financial Reports
- Review:
- Assets (Cash + Inventory + AR)
- Equity (Owner's Capital)
- Total Assets should equal Total Equity
Training Exercise: Accounting
- View the Trial Balance — is it balanced?
- Generate a P&L statement for the current period
- Identify the top 3 expense categories
- Check the Cash Flow summary
- View the Balance Sheet — do assets equal equity?
11. Expense Management
Creating Expenses
- Navigate to Expenses from the sidebar
- Click "New Expense"
- Fill in the form:
| Field | Description | Example |
|---|---|---|
| Category | Expense type | Fuel / Diesel |
| Amount | Cost in Naira (₦) | 120000 |
| Description | What the expense was for | Diesel for factory generator |
- Click "Save"
Expense Categories
| Category | Description |
|---|---|
| Fuel / Diesel | Generator fuel, vehicle fuel |
| Salaries | Staff wages |
| Transport | Logistics, delivery costs |
| Electricity / Utilities | Power, water |
| Rent | Facility rent |
| Maintenance | Equipment repairs |
| Office Supplies | Stationery, consumables |
| Miscellaneous | Other expenses |
Approving/Rejecting Expenses
The current system allows any authorized user to create expenses. The system checks cash availability before allowing an expense.
Cash Position Check
Before creating an expense, the system calculates:
Cash = Opening Capital + Cash Sales + AR Payments - Purchases - Expenses - Production Overhead
If the expense amount exceeds available cash, the system will reject it with an error message showing both the required and available amounts.
Training Exercise: Expenses
- Check the current cash position
- Create an expense for ₦50,000 (Transport)
- Verify the expense appears in the list
- Check the cash position was reduced
- Try creating an expense exceeding the cash balance (should fail)
12. System Administration
Settings Configuration
- Navigate to Settings from the sidebar
- Available settings:
| Setting | Description | How to Change |
|---|---|---|
| Opening Capital | Starting cash balance | Enter amount and save |
| Email Configuration | Resend API settings | Admin only |
Email Setup
- Navigate to Settings → Email Configuration
- Enter the following:
| Field | Value |
|---|---|
| API Key | re_827apg1v_F98qrgrRE3MZF4fk9GiCLTPB |
| From Address | noreply@loftygoldenoil.com |
| Enable Email | Toggle ON |
| Recipients | Comma-separated email addresses |
- Click "Test Email" to verify the configuration
- Save changes
Email Types Sent by the System
| Email Type | Trigger | Recipients |
|---|---|---|
| Welcome Email | New user created | New user's email |
| Password Reset | Password changed | Configured recipients |
| Invoice | Sale recorded | Customer / configured recipients |
| Payment Confirmation | AR payment received | Customer / configured recipients |
| Statement | Manually triggered | Configured recipients |
| Low Stock Alert | Stock below safety level | Configured recipients |
| Daily Summary | Scheduled (7 PM WAT) | Configured recipients |
Audit Log Review
- Navigate to Audit Log from the sidebar
- View all system activities:
| Column | Description |
|---|---|
| Timestamp | When the action occurred |
| User | Who performed the action |
| Action | Type of action (LOGIN, CASH_SALE, etc.) |
| Entity | What was affected (users, sales, etc.) |
| Entity ID | Specific record ID |
| Details | Human-readable description |
- Filter by date range, user, or action type
- Export the audit log for compliance purposes
Security Best Practices
- Change default passwords immediately after setup
- Use strong passwords — minimum 8 characters, mix of letters/numbers/symbols
- Review the audit log weekly for suspicious activity
- Limit admin accounts — only the business owner should be admin
- Log out when leaving the computer unattended
- Don't share credentials — each user should have their own account
- Monitor user activity through the audit log
- Keep software updated — apply updates promptly
- Backup regularly — verify backups are being created
- Test disaster recovery quarterly
Training Exercise: Administration
- Change the opening capital to ₦18,530,000
- Verify the change appears in the audit log
- Enable email configuration (if not already enabled)
- Send a test email
- Review the last 10 audit log entries
13. Training Exercises
Complete Training Module
Exercise 1: Full Business Cycle
Perform a complete business cycle from procurement to sale:
- Check inventory — Note current levels
- Create a production run for 25 kegs
- Record a sale for 20 kegs to a customer
- Check the Dashboard — Verify KPIs updated
- View the audit log — Verify all actions are logged
Exercise 2: Month-End Closing
Simulate month-end accounting:
- Review all expenses for the period
- Check AR aging — Identify overdue invoices
- Run Trial Balance — Verify it balances
- Generate P&L — Check profitability
- Review Balance Sheet — Verify accounting equation
Exercise 3: Stock Management
Practice inventory management:
- Check all stock levels vs. safety stock
- Record a stock adjustment for damage
- Review the adjustment in the audit log
- Check the impact on inventory valuation
- Plan procurement based on current levels
Exercise 4: User Administration
Practice user management:
- Create a test user with "sales" role
- Log in as the test user (verify limited access)
- Reset the test user's password
- Change the test user's role to "production"
- Delete the test user
Final Assessment Checklist
- Can log in and navigate the interface
- Can interpret Dashboard KPIs
- Can create and manage users
- Can add inventory items and record adjustments
- Can create production runs
- Can record sales and manage invoices
- can manage customers and send statements
- Can create and track expenses
- Can view accounting reports
- Can review the audit log
- Can configure email settings
- Understands security best practices