CNPERP Complete User Guide
Comprehensive documentation for all system features
Last Updated: October 15, 2025
System Setup & Configuration
Initial System Setup
1Database Setup
# Create PostgreSQL database
createdb cnperp_erp
# Set environment variables (Windows PowerShell)
$env:DATABASE_URL="postgresql://username:password@localhost:5432/cnperp_erp"
# Run migrations
python -m alembic upgrade head
# Seed initial data
python scripts/seed_initial_data.py
2Create Super Administrator
# Run the create superadmin script
python create_superadmin.py
# Follow prompts:
Username: admin
Full Name: System Administrator
Email: admin@company.com
Password: [secure password]
3Start the Application
# Activate virtual environment
.\.venv\Scripts\Activate.ps1
# Start FastAPI server
uvicorn app.main:app --reload --host 0.0.0.0 --port 8010
# Access: http://localhost:8010
Branch Management
Create and configure branches for multi-location operations:
- Navigate to: Setup ? Branches
- Click: "Add Branch"
- Enter Details:
- Branch Code: HO
- Branch Name: Head Office
- Address: Plot 123, Main Road, Gaborone
- Phone: +267 123 4567
- Manager: Select user
- Configure Settings:
- Default Currency: BWP
- Allow Sales: ? Yes
- Has Warehouse: ? Yes
- Has POS: ? Yes
User Management
Create users and assign roles:
| Role | Permissions | Use Case |
|---|---|---|
| Super Administrator | Full system access | IT/System owner |
| Administrator | All except system settings | General management |
| Accountant | Financial transactions & reports | Finance team |
| Sales Person | Sales, customers, quotations | Sales team |
| Cashier | POS & cash sales only | Front desk staff |
Accounting Codes & Chart of Accounts
Chart of Accounts Structure
Account code format: XXX-XXX-XX
| Range | Type | Examples |
|---|---|---|
| 100-199 | Assets | 100-001 Cash, 110-001 Receivables, 120-001 Inventory |
| 200-299 | Liabilities | 200-001 Payables, 210-001 VAT Payable, 220-001 Loans |
| 300-399 | Equity | 300-001 Share Capital, 310-001 Retained Earnings |
| 400-499 | Revenue | 400-001 Sales Revenue, 400-050 Interest Income |
| 500-599 | Expenses | 500-001 COGS, 500-100 Salaries, 500-200 Rent |
Sub-Accounts
Customer Sub-Accounts (110-CXXX):
- 110-C001 = ABC Company Ltd
- 110-C002 = XYZ Enterprises
- Tracks individual customer balances
Supplier Sub-Accounts (200-SXXX):
- 200-S001 = ABC Furniture Ltd
- 200-S002 = XYZ Suppliers
- Tracks individual supplier balances
VAT Configuration
| Account | Code | Rate | Usage |
|---|---|---|---|
| VAT Output | 210-001 | 14% | Sales transactions |
| VAT Input | 210-002 | 14% | Purchase transactions |
| VAT Payable | 210-003 | - | Net VAT owed to authorities |
Banking & Reconciliation
Bank Account Setup
Steps to create a bank account:
- Navigate to: Banking ? Bank Accounts
- Click: "Add Bank Account"
- Enter bank details:
- Bank Name: Standard Bank Botswana
- Account Number: 1234567890
- Account Type: Checking
- Currency: BWP
- GL Account: 100-010 (Bank - Standard Bank)
Monthly Bank Reconciliation
Reconciliation Process:
Step 1: Prepare
- Gather bank statement
- List outstanding checks
- Note deposits in transit
- Have previous reconciliation
Step 2: Match Transactions
- Open reconciliation screen
- Enter statement details
- Match system to bank items
- Mark matched transactions
Step 3: Handle Discrepancies
- Identify unmatched items
- Record bank charges
- Record interest income
- Note outstanding items
Step 4: Finalize
- Verify balances match
- Post adjustments
- Mark as reconciled
- Generate report
Inventory Management
Product Setup
Creating a Product:
| Field | Example | Description |
|---|---|---|
| Product Code | PROD-001 | Unique identifier (auto or manual) |
| Product Name | Office Chair - Executive | Descriptive name |
| Category | Office Furniture | Product classification |
| UOM | Each (EA) | Unit of measure |
| Cost Price | P 450.00 | Purchase/production cost |
| Selling Price | P 750.00 | Sales price |
| VAT Category | Standard (14%) | Tax classification |
Stock Management
Stock Transactions:
- Stock In (Receiving): From purchase orders, adjustments, or transfers
- Stock Out (Issuing): From sales orders, production, or adjustments
- Stock Transfer: Between branches or locations
- Stock Adjustment: Physical count variances, damage, or loss
Units of Measure (UOM)
Common UOM Examples:
Count Units
- Each (EA)
- Pair (PR)
- Dozen (DZ)
- Gross (GR)
Weight Units
- Kilogram (KG)
- Gram (G)
- Pound (LB)
- Ton (TON)
Volume Units
- Liter (L)
- Milliliter (ML)
- Gallon (GAL)
- Cubic Meter (M3)
Length Units
- Meter (M)
- Centimeter (CM)
- Foot (FT)
- Roll (ROLL)
Sales & Invoicing
Creating Invoices
Invoice Workflow:
Quotation ? Sales Order ? Dispatch ? Invoice ? Receipt ? Close
(Optional) (Optional) (Required) (Required) (Required)
Invoice Components:
- Header: Customer, date, terms, reference
- Line Items: Products, quantities, prices, VAT
- Totals: Subtotal, VAT, discounts, total
- Footer: Payment terms, bank details, notes
Cash Sales
Processing a Cash Sale:
| 1. Select Products | Scan barcode or select from list |
| 2. Enter Quantity | Use keypad or quick buttons |
| 3. Review Total | System calculates subtotal + VAT |
| 4. Amount Tendered | Enter cash received from customer |
| 5. Change Calculation | System auto-calculates change due |
| 6. Process Payment | Creates invoice, updates stock, prints receipt |
Credit Notes & Returns
When to Use Credit Notes:
- Customer returns damaged/faulty goods
- Product price adjustment
- Wrong items delivered
- Quantity discrepancy
Refund Methods:
| Method | When to Use | Process |
|---|---|---|
| Cash Refund | Cash purchases | Immediate cash payment to customer |
| Bank Transfer | Card/bank payments | Transfer to customer's account |
| Credit to Account | Account customers | Reduces customer balance |
| Store Credit | Non-refundable | Credit for future purchases |
Purchasing & Procurement
Supplier Management
Supplier Information Required:
Basic Details
- Supplier name & code
- Contact person
- Phone & email
- Physical & postal address
Financial
- Tax number & VAT number
- Payment terms (e.g., Net 30)
- Credit limit
- Currency
Banking
- Bank name & branch
- Account number
- SWIFT code (for international)
Accounting
- GL account (Payables)
- Sub-account code
- Expense account
- VAT account
Purchase Orders
Purchase Order Lifecycle:
Draft ? Pending Approval ? Approved ? Sent ? Acknowledged
? ? ? ? ?
Cancelled Rejected Partially Fully Invoiced ? Paid ? Closed
Received Received
Goods Receiving Note (GRN)
Quality Inspection Checklist:
- Check quantities match PO
- Inspect physical condition
- Verify specifications/model
- Check expiry dates (if applicable)
- Note any damage or defects
- Take photos of damaged items
- Get manager approval for rejections
- Document all findings in GRN
Reports & Analytics
Financial Reports
IFRS-Compliant Financial Statements:
| Report | Standard | Purpose |
|---|---|---|
| Balance Sheet | IAS 1 | Statement of financial position (assets, liabilities, equity) |
| Income Statement | IAS 1 | Profit & loss (revenue, expenses, net income) |
| Cash Flow Statement | IAS 7 | Operating, investing, financing cash flows |
| Trial Balance | - | Verify debits equal credits |
| Aged Receivables | IFRS 9 | Customer aging analysis |
Sales Reports
Available Sales Reports:
- Sales Summary: Daily/weekly/monthly revenue analysis
- Sales by Customer: Top customers, revenue contribution
- Sales by Product: Best sellers, slow-moving items
- Salesperson Performance: Individual sales targets vs. achievement
- Sales Trend Analysis: Growth patterns, seasonality
Business Intelligence Dashboard
Key Performance Indicators (KPIs):
Revenue
P 843,000
? 12.5%Gross Profit
P 313,515
Margin: 37.2%Cash Balance
P 413,500
? 8.5%Current Ratio
4.50:1
HealthySystem Settings & Configuration
Company Information
Essential Company Details:
| Company Name | Your Company Name (Pty) Ltd |
|---|---|
| Registration Number | BW-12345678 |
| Tax Number | T12345678 |
| VAT Number | VAT-12345678 |
| Physical Address | Plot 123, Main Road, Gaborone, Botswana |
| Contact | +267 123 4567 | info@company.com |
Currency & VAT Settings
Base Currency Configuration:
- Currency Code: BWP
- Currency Symbol: P
- Symbol Position: Before amount (P 1,234.56)
- Decimal Places: 2
- Thousand Separator: Comma (,)
- Decimal Separator: Period (.)
VAT Configuration:
- VAT Registered: Yes
- VAT Number: VAT-12345678
- Standard Rate: 14%
- Filing Period: Monthly
- Calculation Method: Tax Exclusive
Invoice Customization
10 Customization Sections:
- General Settings: Logo, paper size, template style
- Header Customization: Colors, borders, fonts
- Company Information: What to display, styling
- Invoice Title: Text, size, color, alignment
- Customer Section: Layout, fields, styling
- Items Table: Columns, colors, borders
- Totals Section: Position, format, background
- Footer: Payment terms, bank details, T&Cs
- Layout & Spacing: Margins, padding, line height
- Color Schemes: Pre-defined or custom themes
CNPERP ERP System - Complete User Guide
Version 2.0 | Last Updated: October 15, 2025
For support, contact: support@cnperp.com