User Acceptance Testing Guide
A comprehensive, step-by-step walkthrough that simulates setting up and running a real company on Commas ERP. Follow along using the fictional Adebayo Trading Company Ltd, a Nigerian SME that deals in wholesale electronics and office supplies.
New to ERP? Start here first
If you are unfamiliar with ERP systems, accounting concepts like "double-entry bookkeeping", "general ledger", or "chart of accounts", please read the ERP Deep Dive Training Guide before starting this UAT. It explains every concept from scratch in ~60 minutes, using plain language and real-world analogies. This guide assumes you understand those fundamentals.
Read the ERP Training Guide14
Chapters
120+
Test Steps
E2E
Full Cycle Coverage
1Company Setup
Set up your organization from scratch
Why does a company need an ERP?
Every business tracks money coming in (sales), money going out (purchases, expenses), what it owns (assets), and what it owes (liabilities). An ERP system like Commas manages all of this in one place. When you create an organization in Commas, you are setting up a brand-new set of books for a company. Everything we do in subsequent chapters builds on this foundation.
Goal
Register a new account, create the organization, and configure fundamental company settings including country, currency, and financial year.
What you will verify
- โAccount is created and email is verified
- โOrganization is created with correct details
- โFinancial year is set to January - December
- โDefault Chart of Accounts is auto-generated for Nigeria
- โDashboard loads with the new organization context
Step-by-step instructions
Sign up for an account
Navigate to the Commas sign-up page and create a new account.
Create your organization
After verifying your email, complete the setup wizard with these details:
Set financial year
In the setup wizard (or Settings โ Organization), set the financial year:
Review the auto-generated Chart of Accounts
In the left sidebar, click General LedgerChart of Accounts. Confirm the system has created a default Nigerian Chart of Accounts with standard categories: Assets (what the company owns), Liabilities (what it owes), Equity (owner's stake), Revenue (income earned), and Expenses (money spent).
Checkpoint
- โOrganization "Adebayo Trading Company Ltd" is visible in the dashboard header
- โCountry shows Nigeria, currency shows NGN
- โFinancial year is set to January - December
- โChart of Accounts has been auto-populated with standard accounts
2Chart of Accounts & Opening Balances
Customize your COA and enter opening balances
What is a Chart of Accounts and why do we need Opening Balances?
The Chart of Accounts (CoA) is the master list of all "buckets" where money gets categorized. Think of it like folders in a filing cabinet: one folder for "Cash in Bank", another for "Sales Revenue", another for "Rent Expense". Every transaction in the system is assigned to one or more of these accounts.
Opening Balances are the starting values when a company migrates to a new system. If Adebayo Trading already had โฆ5M in the bank before using Commas, we need to tell the system that โ otherwise reports would show โฆ0.
Key rule: Total debits must always equal total credits. This is the foundation of double-entry bookkeeping. If debits are โฆ11.5M, credits must also be โฆ11.5M.
Goal
Tailor the Chart of Accounts to Adebayo Trading's specific needs, then enter opening balances so the books start correctly as at January 1, 2026.
What you will verify
- โCustom accounts can be added to the COA
- โOpening balances are entered and saved
- โTrial Balance shows debits equal credits
- โBalance Sheet reflects the opening position accurately
Part A: Customize the Chart of Accounts
Navigate to the Chart of Accounts
In the left sidebar, click General LedgerChart of Accounts. Review the existing accounts. You should see standard categories like Cash & Bank, Accounts Receivable (money customers owe you), Accounts Payable (money you owe suppliers), Sales Revenue, etc.
Add custom accounts
Click "Add Account" and create these additional accounts:
| Account Name | Type | Category | Code |
|---|---|---|---|
| Electronics Inventory | Asset | Current Asset - Inventory | 1310 |
| Office Supplies Inventory | Asset | Current Asset - Inventory | 1320 |
| GTBank Current Account | Asset | Cash & Bank | 1110 |
| Access Bank Savings | Asset | Cash & Bank | 1120 |
| Installation Revenue | Revenue | Service Revenue | 4200 |
| Delivery Fee Revenue | Revenue | Service Revenue | 4210 |
Part B: Enter Opening Balances
Navigate to Opening Balances
In the left sidebar, click SettingsOpening Balances. Set the opening balance date to January 1, 2026. This tells the system: "As of this date, here's what the company already had in its accounts before using Commas."
Enter the following opening balances
| Account | Debit (NGN) | Credit (NGN) |
|---|---|---|
| GTBank Current Account (1110) | 5,000,000 | |
| Access Bank Savings (1120) | 2,000,000 | |
| Accounts Receivable | 1,500,000 | |
| Electronics Inventory (1310) | 2,000,000 | |
| Office Supplies Inventory (1320) | 1,000,000 | |
| Accounts Payable | 800,000 | |
| Owner's Equity / Capital | 10,700,000 | |
| TOTAL | 11,500,000 | 11,500,000 |
Verify the Trial Balance
In the left sidebar, click ReportsTrial Balance and confirm the total at the bottom shows debits equal credits (both should be โฆ11,500,000). The Trial Balance is a list of every account and its balance โ it's the single most important report for verifying that the books are correct.
Checkpoint
- โCustom accounts (Electronics Inventory, Office Supplies Inventory, etc.) appear in the COA
- โOpening balances are saved without errors
- โTrial Balance shows total debits = total credits = NGN 11,500,000
- โBalance Sheet reflects the correct opening position
3Customers & Suppliers Setup
Create your customer and supplier master data
Goal
Populate the system with Adebayo Trading's key customers and suppliers, including credit limits, payment terms, and contact details.
What you will verify
- โCustomer records are created with correct details
- โSupplier records are created with correct details
- โCredit limits and payment terms are saved
- โCustomer and supplier lists can be searched and filtered
Part A: Create Customers
Navigate to Sales โ Customers
Click "New Customer" and create each of the following:
| Customer Name | Code | Category | Credit Limit (NGN) | Payment Terms |
|---|---|---|---|---|
| Lagos State Government | GOV-001 | Government | 10,000,000 | 60 days |
| TechHub Solutions Ltd | TECH-001 | Corporate | 5,000,000 | 30 days |
| University of Lagos | UNI-001 | Education | 3,000,000 | 45 days |
| Chief Okafor Enterprises | CHO-001 | Retail | 2,000,000 | 14 days |
| Zenith Interiors | ZEN-001 | Corporate | 1,500,000 | 30 days |
Enter contact details for each customer
For Lagos State Government (as an example):
Part B: Create Suppliers
Navigate to Purchases โ Suppliers
Click "New Supplier" and create each of the following:
| Supplier Name | Code | Category | Payment Terms |
|---|---|---|---|
| Samsung Nigeria Distribution | SAM-001 | Electronics | 30 days |
| HP Nigeria Ltd | HP-001 | IT Equipment | 45 days |
| Office World Supplies | OWS-001 | Office Supplies | 14 days |
| Power Solutions Nigeria | PWR-001 | Electrical | 30 days |
Enter contact details for Samsung Nigeria (example):
Checkpoint
- โ5 customers are listed in Sales > Customers
- โ4 suppliers are listed in Purchases > Suppliers
- โCredit limits are correctly set for each customer
- โPayment terms are saved (60, 30, 45, 14 days as specified)
- โYou can search for a customer by name or code
4Items & Inventory Setup
Set up your products and services catalog
Products vs Services in an ERP
ERP systems distinguish between Products (physical goods you keep in stock) and Services (work you perform). Products are "inventory-tracked" โ the system counts how many you have and reduces the count when you sell them. Services are not tracked in inventory because there is nothing physical to count.
When you sell a tracked product, the system automatically: (1) reduces stock quantity, (2) records the revenue, and (3) calculates the cost of goods sold (COGS). This is why accurate item setup is critical.
Goal
Create all products (inventory-tracked items) and services offered by Adebayo Trading, then set initial stock levels using a stock adjustment.
What you will verify
- โProducts are created as tracked inventory items
- โServices are created as non-tracked items
- โUnit prices are correctly set
- โInitial stock levels are entered via stock adjustment
- โStock quantities are reflected in inventory reports
Part A: Create Products (Tracked Inventory)
Navigate to Inventory โ Items
Click "New Item" and create each product. Set the item type to "Product" (tracked):
| Item Name | Code | Selling Price (NGN) | Category | Unit |
|---|---|---|---|---|
| Samsung 55" Smart TV | ITEM-001 | 185,000 | Electronics | Each |
| HP LaserJet Printer | ITEM-002 | 95,000 | IT Equipment | Each |
| HP Laptop ProBook 450 | ITEM-003 | 450,000 | IT Equipment | Each |
| Office Desk Executive | ITEM-004 | 75,000 | Office Furniture | Each |
| Printer Toner Cartridge | ITEM-005 | 12,000 | Consumables | Each |
Part B: Create Services (Non-tracked)
Create service items
Set item type to "Service" (non-tracked):
| Service Name | Code | Rate (NGN) | Unit |
|---|---|---|---|
| IT Setup & Installation | SVC-001 | 25,000 | Per unit |
| Equipment Delivery Fee | SVC-002 | 5,000 | Per delivery |
Part C: Set Initial Stock Levels
Navigate to Inventory โ Stock Adjustments
Create a new stock adjustment with reason "Opening Stock" and date January 1, 2026.
Enter the following quantities:
| Item | Quantity | Unit Cost (NGN) | Total Value (NGN) |
|---|---|---|---|
| Samsung 55" Smart TV (ITEM-001) | 20 | 150,000 | 3,000,000 |
| HP LaserJet Printer (ITEM-002) | 15 | 70,000 | 1,050,000 |
| HP Laptop ProBook 450 (ITEM-003) | 10 | 350,000 | 3,500,000 |
| Office Desk Executive (ITEM-004) | 8 | 55,000 | 440,000 |
| Printer Toner Cartridge (ITEM-005) | 100 | 8,000 | 800,000 |
Post the stock adjustment
Submit and post the stock adjustment. Verify that stock levels are updated.
Checkpoint
- โ5 products and 2 services are listed in Inventory > Items
- โSamsung TV shows 20 units in stock
- โHP Printer shows 15 units, Laptop shows 10 units
- โOffice Desk shows 8 units, Toner shows 100 units
- โServices show no stock quantity (non-tracked)
- โInventory valuation report matches expected totals
5Sales Cycle โ Quote to Cash
Complete a full sales cycle from quotation to payment receipt
Understanding the Sales Flow: Quote โ Order โ Invoice โ Payment
In an ERP, a sale doesn't just mean "customer pays, you give them goods." There is a structured document flow:
- Quote โ A proposal to the customer ("We can sell you 10 TVs for โฆ1.85M each"). No financial impact yet.
- Sales Order โ Customer confirmed the quote. Still no financial impact, but it reserves the intention.
- Invoice โ The bill sent to the customer. When posted, this creates journal entries in the General Ledger (the accounting record).
- Receipt โ The customer's payment. This reduces what they owe you.
Critical concept โ "Posting": A document in "Draft" status has zero financial impact. It only affects the books when you click "Post". After posting, an invoice cannot be edited โ you must create a Credit Note to reverse it.
GL entries you'll see: When an invoice is posted, the system automatically debits "Accounts Receivable" (the customer owes you money) and credits "Sales Revenue" (you earned income) + "VAT Output" (tax you collected for the government).
Goal
Walk through the full quote-to-cash process: create a quotation, convert it to a sales order, generate an invoice, and record payment. Then complete a quick direct invoice sale.
What you will verify
- โQuotations can be created, emailed, and converted to orders
- โSales Orders can be released and converted to invoices
- โInvoices are posted with correct GL entries (DR: Receivables, CR: Revenue + VAT)
- โInvoice PDFs can be downloaded and emailed
- โPayments are recorded and reduce the customer balance
- โCustomer ledger reflects accurate outstanding balance
- โDirect invoicing (without quote/order) works correctly
Scenario 1: Lagos State Government Order (Full Cycle)
Create Quotation QUO-001
In the left sidebar, click SalesQuotes, then click the "New Quote" button in the top-right corner of the page.
Line items:
| Item | Qty | Unit Price (NGN) | Line Total (NGN) |
|---|---|---|---|
| Samsung 55" Smart TV (ITEM-001) | 10 | 185,000 | 1,850,000 |
| HP LaserJet Printer (ITEM-002) | 5 | 95,000 | 475,000 |
| IT Setup & Installation (SVC-001) | 10 | 25,000 | 250,000 |
| Amount (NGN) | |
|---|---|
| Subtotal | 2,575,000 |
| VAT (7.5%) | 193,125 |
| Grand Total | 2,768,125 |
Send the quotation
Click "Send" or "Email to Customer". Verify the customer receives the quote at procurement@lagosstate.gov.ng.
Mark the quotation as Accepted
After the customer confirms, click "Mark as Accepted". Status should change to "Accepted".
Convert Quote to Sales Order SO-001
Click "Convert to Sales Order". A new Sales Order should be created with all line items carried over. Verify the SO number and details.
Release the Sales Order
Click "Release" on the Sales Order. Status changes from "Draft" to "Released".
Create Invoice INV-001 from the Sales Order
Click "Create Invoice". All line items, quantities, and prices should carry over from the SO.
Approve & Post the Invoice
Click the "Post" button. This is the critical step that converts the invoice from a draft document into a real financial transaction. After posting, navigate to General LedgerJournal Entries and find the entry for INV-001. Verify the following GL entries were automatically created:
| Account | Debit (NGN) | Credit (NGN) |
|---|---|---|
| Accounts Receivable | 2,768,125 | |
| Sales Revenue | 2,575,000 | |
| VAT Output (Payable) | 193,125 |
Download Invoice PDF
Click the "Download PDF" button. Verify the PDF contains company details, customer details, line items, totals, and VAT breakdown.
Send Invoice via email
Click "Email Invoice". Confirm the invoice is delivered to the customer's email.
Record partial payment of NGN 1,500,000
Navigate to the invoice and click "Record Payment":
Verify Customer Ledger
Navigate to SalesCustomers, click on "Lagos State Government" to open their detail page, then look for the "Ledger" tab or section. The Customer Ledger shows every transaction for this specific customer โ it's the detailed breakdown of their account.
Confirm the ledger shows:
| Date | Document | Debit (NGN) | Credit (NGN) | Balance (NGN) |
|---|---|---|---|---|
| May 1, 2026 | INV-001 | 2,768,125 | 2,768,125 | |
| May 5, 2026 | REC-001 | 1,500,000 | 1,268,125 |
Scenario 2: Quick Sale to TechHub Solutions (Direct Invoice)
Create a direct invoice (no quote or order)
In the left sidebar, click SalesInvoices, then click the "New Invoice" button. This time we are skipping the quote and order steps and going straight to an invoice.
Line items:
| Item | Qty | Unit Price (NGN) | Line Total (NGN) |
|---|---|---|---|
| HP Laptop ProBook 450 (ITEM-003) | 3 | 450,000 | 1,350,000 |
| Amount (NGN) | |
|---|---|
| Subtotal | 1,350,000 |
| VAT (7.5%) | 101,250 |
| Grand Total | 1,451,250 |
Post and record full payment
Approve and post the invoice, then record full payment of NGN 1,451,250. The invoice status should change to "Paid".
Checkpoint
- โQUO-001 was created, emailed, accepted, and converted to SO-001
- โSO-001 was released and converted to INV-001
- โINV-001 GL entries correctly debit Receivables and credit Revenue + VAT
- โInvoice PDF was generated and emailed successfully
- โPartial payment of NGN 1,500,000 recorded; invoice shows "Partially Paid"
- โLagos State Government ledger shows outstanding balance of NGN 1,268,125
- โDirect invoice to TechHub was created, posted, and fully paid
- โHP Laptop stock decreased by 3 (from 10 to 7 units)
- โSamsung TV stock decreased by 10 (from 20 to 10 units)
- โHP Printer stock decreased by 5 (from 15 to 10 units)
6Purchase Cycle โ Procure to Pay
Complete a full purchase cycle from order to payment
Understanding the Purchase Flow: PO โ Goods Receipt โ Bill โ Payment
The purchase flow mirrors the sales flow but from the buyer's side:
- Purchase Order (PO) โ Formal request to buy goods from a supplier. No financial impact yet.
- Goods Receipt โ You received the physical goods. Inventory quantity goes up.
- Bill โ The supplier's invoice to you. When posted, this creates GL entries.
- Payment โ You pay the supplier. Bank balance goes down, supplier balance goes to zero.
GL entries you'll see: When a bill is posted, the system debits "Inventory" (you gained goods) and "VAT Input" (tax you paid that the government may refund), and credits "Accounts Payable" (you owe the supplier).
Three-way matching: In proper ERP practice, the PO amount, goods receipt quantity, and bill amount must all agree before payment is authorized. This prevents paying for goods you never ordered or never received.
Goal
Walk through the procurement process: create a purchase order, receive goods, enter the supplier bill, and make payment. Then process a direct bill for office supplies.
What you will verify
- โPurchase Orders can be created, approved, and sent to suppliers
- โGoods receipt updates stock quantities
- โBills are created from POs with correct amounts
- โBill posting creates correct GL entries (DR: Inventory/Expense, CR: AP)
- โPayment reduces bank balance and clears supplier balance
- โDirect billing (without PO) works correctly
Scenario 1: Restock Samsung TVs from Samsung Nigeria
Create Purchase Order PO-001
In the left sidebar, click PurchasingPurchase Orders, then click the "New Purchase Order" button in the top-right.
Line items:
| Item | Qty | Unit Cost (NGN) | Line Total (NGN) |
|---|---|---|---|
| Samsung 55" Smart TV (ITEM-001) | 20 | 150,000 | 3,000,000 |
| Amount (NGN) | |
|---|---|
| Subtotal | 3,000,000 |
| VAT (7.5%) | 225,000 |
| Grand Total | 3,225,000 |
Approve the Purchase Order
Click "Approve". Status changes from "Draft" to "Approved".
Mark as Sent to supplier
Click "Send to Supplier" or mark as sent. Status updates to "Sent".
Receive Goods
Navigate to the PO and click "Receive Goods":
Verify that Samsung TV stock increases from 10 to 30 units (10 after sales + 20 received).
Create Bill from Purchase Order
Click "Create Bill". The bill should be auto-populated with PO details. Verify amounts match.
Post the Bill
Approve and post. Verify GL entries:
| Account | Debit (NGN) | Credit (NGN) |
|---|---|---|
| Electronics Inventory (1310) | 3,000,000 | |
| VAT Input (Receivable) | 225,000 | |
| Accounts Payable | 3,225,000 |
Make Payment
Record payment to Samsung Nigeria:
Verify GTBank balance decreases by NGN 3,225,000.
Scenario 2: Office Supplies Purchase (Direct Bill)
Create a direct Bill (no Purchase Order)
Navigate to Purchases โ Bills โ New
Line items:
| Item | Qty | Unit Cost (NGN) | Line Total (NGN) |
|---|---|---|---|
| Printer Toner Cartridge (ITEM-005) | 50 | 8,000 | 400,000 |
| Amount (NGN) | |
|---|---|
| Subtotal | 400,000 |
| VAT (7.5%) | 30,000 |
| Grand Total | 430,000 |
Post and pay via batch payment
Post the bill, then navigate to Banking โ Batch Payments and include this bill in a payment batch. Process the batch payment from GTBank.
Checkpoint
- โPO-001 was created, approved, and sent to Samsung Nigeria
- โGoods receipt added 20 Samsung TVs to stock (now 30 total)
- โBILL-001 was created from the PO and posted with correct GL entries
- โPayment of NGN 3,225,000 was recorded; supplier balance is cleared
- โGTBank balance decreased accordingly
- โDirect bill to Office World for 50 toner cartridges was posted and paid
- โToner cartridge stock increased by 50 (from 100 to 150, minus any sold)
7Banking & Reconciliation
Manage bank accounts and reconcile statements
What is Bank Reconciliation and why is it important?
Bank Reconciliation is the process of comparing the transactions in the ERP system with your actual bank statement to make sure they match. This catches errors, missing transactions, or fraud.
How it works: You import your bank statement (a CSV/Excel file from your bank), and the system shows your internal records side-by-side with the bank's records. You "match" each transaction โ confirming that the payment you recorded in the system actually appeared on the bank statement. At the end, the difference should be โฆ0.
Mapping rules help automate categorization. For example, you can tell the system: "Any bank transaction containing the word SALARY should be categorized as a Salary Expense." This saves time when processing hundreds of transactions.
Goal
Record inter-bank transfers, bank charges, import a bank statement, apply mapping rules, and complete a full bank reconciliation for the GTBank account.
What you will verify
- โBank transfers between accounts are recorded correctly
- โBank charges reduce the correct bank balance
- โBank statements can be imported from CSV
- โMapping rules auto-categorize transactions
- โBank reconciliation matches system records to bank statement
- โReconciliation completes with zero difference
Review bank account balances
Navigate to Banking โ Accounts. Verify the current balances of both GTBank and Access Bank accounts reflect all previous transactions.
Record a bank transfer
Navigate to Banking โ Transfers โ New
Verify: GTBank decreases by NGN 500,000 and Access Bank increases by NGN 500,000.
Record a bank charge
Navigate to Banking โ Transactions โ New
Create a bank mapping rule
Navigate to Banking โ Rules โ New
Import a bank statement (CSV)
Navigate to Banking โ Statements โ Import
Upload a CSV file for GTBank with the following format:
| Date | Description | Debit | Credit | Balance |
|---|---|---|---|---|
| 01/05/2026 | Transfer from TECHUB SOL | 1,451,250 | 6,451,250 | |
| 05/05/2026 | Transfer from LAGOS STATE | 1,500,000 | 7,951,250 | |
| 10/05/2026 | Samsung Nigeria Payment | 3,225,000 | 4,726,250 | |
| 12/05/2026 | Transfer to Access Bank | 500,000 | 4,226,250 | |
| 15/05/2026 | Office World Payment | 430,000 | 3,796,250 | |
| 31/05/2026 | MONTHLY MAINTENANCE FEE | 2,500 | 3,793,750 |
Apply mapping rules
Review the imported transactions. The system should auto-categorize any transaction matching your mapping rules (e.g., "SALARY" transactions). Manually categorize any remaining unmatched transactions.
Start bank reconciliation for GTBank (May 2026)
Navigate to Banking โ Reconciliation โ New
Match transactions
The reconciliation screen should show system transactions alongside the imported bank statement transactions. Match each transaction:
- Match TechHub payment (NGN 1,451,250) to receipt
- Match Lagos State payment (NGN 1,500,000) to receipt
- Match Samsung payment (NGN 3,225,000) to supplier payment
- Match internal transfer (NGN 500,000)
- Match Office World payment (NGN 430,000)
- Match bank charge (NGN 2,500)
Complete the reconciliation
Once all transactions are matched, the "Difference" field should show NGN 0.00. Click "Complete Reconciliation".
Checkpoint
- โBank transfer of NGN 500,000 from GTBank to Access Bank is recorded
- โBank charge of NGN 2,500 is recorded against Bank Charges expense
- โMapping rule "Salary Payments" is created and active
- โBank statement CSV was imported successfully
- โAll 6 transactions were matched during reconciliation
- โReconciliation completed with zero difference
- โGTBank closing balance matches the statement ending balance
8Expenses & Petty Cash
Record everyday business expenses
Goal
Record common business expenses through different payment methods: direct bank payment, petty cash, and bank transfer.
What you will verify
- โExpenses can be recorded with different categories
- โDifferent payment methods are supported (bank, petty cash, transfer)
- โExpense GL entries are posted correctly
- โExpense summary report shows all recorded expenses
Record electricity bill
Navigate to Expenses โ New Expense
Record staff lunch expense
Record internet subscription
Verify expense summary report
Navigate to Reports โ Expense Summary and confirm:
| Category | Total (NGN) |
|---|---|
| Utilities | 45,000 |
| Entertainment | 15,000 |
| IT Expenses | 25,000 |
| Total Expenses | 85,000 |
Checkpoint
- โThree expenses are recorded with correct categories
- โElectricity bill (NGN 45,000) debited Utilities, credited GTBank
- โStaff lunch (NGN 15,000) debited Entertainment, credited Petty Cash
- โInternet (NGN 25,000) debited IT Expenses, credited GTBank
- โExpense summary report shows total of NGN 85,000
9Credit Notes & Returns
Handle corrections, returns, and credit notes
What is a Credit Note and why can't we just edit the invoice?
Once an invoice is posted (finalized), it cannot be edited or deleted. This is an important accounting principle: posted transactions are permanent records. If there's an error or a customer returns goods, you create a Credit Note instead.
A Credit Note is essentially a "reverse invoice". It creates the opposite journal entries: if the original invoice debited Accounts Receivable and credited Revenue, the credit note credits Accounts Receivable and debits Revenue. This reduces what the customer owes you.
For QA: After posting a credit note, always check: (1) the customer's balance went down, (2) the GL shows reversal entries, (3) if items were returned, stock quantity went back up.
Goal
Process a customer return with a sales credit note, and a supplier return with a purchase credit note. Verify that GL entries are correctly reversed and stock is adjusted.
What you will verify
- โSales credit notes reverse revenue and receivable entries
- โCustomer balance is reduced by the credit note amount
- โPurchase returns generate purchase credit notes
- โStock levels are adjusted for returned items
- โGL entries correctly reverse the original transactions
Scenario 1: Sales Return from Chief Okafor
Create Sales Credit Note
Navigate to Sales โ Credit Notes โ New
Line items:
| Item | Qty | Unit Price (NGN) | Line Total (NGN) |
|---|---|---|---|
| Samsung 55" Smart TV (ITEM-001) | 1 | 185,000 | 185,000 |
| Amount (NGN) | |
|---|---|
| Subtotal | 185,000 |
| VAT (7.5%) | 13,875 |
| Credit Note Total | 198,875 |
Post the Sales Credit Note
Approve and post. Verify the GL reversal entries:
| Account | Debit (NGN) | Credit (NGN) |
|---|---|---|
| Sales Revenue | 185,000 | |
| VAT Output (Payable) | 13,875 | |
| Accounts Receivable | 198,875 |
Samsung TV stock should increase by 1 (returned to inventory).
Scenario 2: Purchase Return to Samsung Nigeria
Create Purchase Return / Debit Note
Navigate to Purchases โ Credit Notes โ New
Line items:
| Item | Qty | Unit Cost (NGN) | Line Total (NGN) |
|---|---|---|---|
| Samsung 55" Smart TV (ITEM-001) | 2 | 150,000 | 300,000 |
| Amount (NGN) | |
|---|---|
| Subtotal | 300,000 |
| VAT (7.5%) | 22,500 |
| Credit Note Total | 322,500 |
Post the Purchase Credit Note
Verify GL reversal entries:
| Account | Debit (NGN) | Credit (NGN) |
|---|---|---|
| Accounts Payable | 322,500 | |
| Electronics Inventory (1310) | 300,000 | |
| VAT Input (Receivable) | 22,500 |
Samsung TV stock should decrease by 2 (returned to supplier).
Checkpoint
- โSales credit note for NGN 198,875 posted for Chief Okafor
- โChief Okafor's receivable balance reduced by NGN 198,875
- โSamsung TV stock increased by 1 (customer return)
- โPurchase credit note for NGN 322,500 posted for Samsung Nigeria
- โSamsung Nigeria's payable balance reduced by NGN 322,500
- โSamsung TV stock decreased by 2 (supplier return)
- โAll GL reversal entries are correct and balanced
10Payroll
Run a monthly payroll cycle
Goal
Set up employees, run a monthly payroll for May 2026 including statutory deductions (PAYE, Pension, NHF), finalize the payroll, and generate payslips.
What you will verify
- โEmployee records are created with correct salary details
- โPayroll run calculates gross pay, deductions, and net pay correctly
- โPAYE (tax), Pension (8% employee + 10% employer), and NHF (2.5%) are calculated
- โPayroll can be finalized and posted to the GL
- โPayslips can be generated as PDFs and emailed
Part A: Set Up Employees
Navigate to Payroll โ Employees
Create the following employees (or verify they exist from initial setup):
| Name | Role | Monthly Gross (NGN) | Bank | Account |
|---|---|---|---|---|
| Adebayo Oluwaseun | Managing Director | 800,000 | GTBank | 0123456789 |
| Fatima Ibrahim | Accountant | 350,000 | Access Bank | 9876543210 |
| Chukwu Emeka | Sales Representative | 250,000 | GTBank | 1122334455 |
Verify statutory deduction settings
In Payroll โ Settings, confirm:
Part B: Run Monthly Payroll
Create a new payroll run
Navigate to Payroll โ Payroll Runs โ New
Review the payroll calculation
The system should auto-calculate deductions. Review the summary:
| Employee | Gross (NGN) | PAYE (NGN) | Pension (NGN) | NHF (NGN) | Net Pay (NGN) |
|---|---|---|---|---|---|
| Adebayo Oluwaseun | 800,000 | (calculated) | 64,000 | 20,000 | (calculated) |
| Fatima Ibrahim | 350,000 | (calculated) | 28,000 | 8,750 | (calculated) |
| Chukwu Emeka | 250,000 | (calculated) | 20,000 | 6,250 | (calculated) |
Finalize and post the payroll
Click "Finalize" then "Post to GL". Verify GL entries are created:
| Account | Debit (NGN) | Credit (NGN) |
|---|---|---|
| Salaries & Wages (Expense) | Total Gross | |
| Employer Pension Expense | Total Employer Pension | |
| PAYE Payable | Total PAYE | |
| Pension Payable | Total Employee + Employer Pension | |
| NHF Payable | Total NHF | |
| Net Salary Payable / Bank | Total Net Pay |
Generate payslips
Click "Generate Payslips" to create PDF payslips for each employee. Download and review at least one to verify it contains: employee name, gross pay, all deductions, and net pay.
Send payslips via email
Click "Email Payslips" to send each employee their payslip. Verify delivery.
Checkpoint
- โThree employees are set up with correct salary details
- โPayroll run for May 2026 is calculated with correct deductions
- โPAYE, Pension (8% employee + 10% employer), and NHF (2.5%) are computed
- โPayroll is finalized and posted to GL
- โGL entries correctly debit Salary Expense and credit statutory payables
- โPayslip PDFs are generated for all 3 employees
- โPayslips are emailed successfully
11Reports & Financial Statements
Generate and verify key financial reports
Understanding the Key Financial Reports
These are the three most important reports in any accounting system:
- Trial Balance โ Lists every account and its balance. Total debits MUST equal total credits. If they don't, something is broken. This is your #1 smoke test.
- Income Statement (Profit & Loss / P&L) โ Shows Revenue minus Expenses = Profit (or Loss) for a period. Answers: "Did we make money this month?"
- Balance Sheet โ Shows what the company owns (Assets), owes (Liabilities), and the owner's share (Equity) at a point in time. Must satisfy: Assets = Liabilities + Equity.
Aging Reports show overdue amounts in time buckets (0-30 days, 31-60 days, etc.). "Customer Aging" shows which customers owe you money and how overdue they are. "Supplier Aging" shows the same for what you owe suppliers.
Goal
Generate all major financial reports and verify they reflect the transactions entered throughout this guide. Confirm data integrity across reports.
What you will verify
- โTrial Balance shows debits equal credits
- โIncome Statement shows revenue, COGS, and profit correctly
- โBalance Sheet balances (Assets = Liabilities + Equity)
- โAging reports show correct outstanding amounts
- โCustomer statements are accurate
- โAll reports can be exported to PDF/Excel
Trial Balance
Navigate to Reports โ Trial Balance. Set date to May 31, 2026.
Verify: Total debits = Total credits. All accounts with activity should appear.
Income Statement (Profit & Loss)
Navigate to Reports โ Income Statement. Set period to May 2026.
Verify the following appear:
- Revenue: Sales from INV-001 (Lagos State) + direct sale (TechHub) minus credit note (Okafor)
- Cost of Goods Sold: Cost of items sold
- Expenses: Utilities, Entertainment, IT Expenses, Bank Charges, Salaries
- Net Profit: Revenue minus COGS minus Expenses
Balance Sheet
Navigate to Reports โ Balance Sheet. Set date to May 31, 2026.
Verify: Total Assets = Total Liabilities + Total Equity
- Assets: Bank balances, Accounts Receivable, Inventory
- Liabilities: Accounts Payable, VAT Payable, PAYE Payable, Pension Payable
- Equity: Opening capital + retained earnings (profit/loss for the period)
Customer Aging Report
Navigate to Reports โ Customer Aging.
Verify outstanding balances:
| Customer | Current (NGN) | 1-30 days | 31-60 days | Total (NGN) |
|---|---|---|---|---|
| Lagos State Government | 1,268,125 | 1,268,125 | ||
| Chief Okafor Enterprises | (adjusted for credit note) | (check) |
Supplier Aging Report
Navigate to Reports โ Supplier Aging. Verify all supplier balances, noting that Samsung and Office World have been paid.
Customer Statement
Navigate to Sales โ Customers โ Lagos State Government โ Statement
Generate a statement for May 2026. It should show INV-001, REC-001, and the outstanding balance of NGN 1,268,125. Download as PDF.
Sales by Customer Report
Navigate to Reports โ Sales by Customer. Verify totals per customer match the invoices created.
Cash Flow Report
Navigate to Reports โ Cash Flow. Verify operating, investing, and financing cash flows are categorized correctly.
Expense Summary
Navigate to Reports โ Expense Summary. Verify totals match what was recorded in Chapter 8 plus payroll expenses.
Checkpoint
- โTrial Balance debits equal credits
- โIncome Statement shows correct revenue, COGS, and expenses
- โBalance Sheet balances: Assets = Liabilities + Equity
- โCustomer Aging shows Lagos State Government owing NGN 1,268,125
- โSupplier Aging shows correct balances (Samsung and Office World paid)
- โCustomer Statement for Lagos State is accurate and downloadable
- โSales by Customer report reflects all invoices
- โCash Flow report categorizes flows correctly
- โAll reports can be exported to PDF and/or Excel
12VAT Return & Tax Compliance
Prepare and file VAT returns
Understanding VAT (Value Added Tax)
VAT is a tax collected at each stage of the supply chain. In Nigeria, the rate is 7.5%. When Adebayo Trading sells goods, it charges VAT on top of the price ("Output VAT" โ money collected from customers for the government). When it buys goods, it pays VAT ("Input VAT" โ money paid to suppliers that the government may refund).
Net VAT = Output VAT - Input VAT. If you collected more VAT than you paid, you owe the difference to the tax authority (FIRS). If you paid more than you collected, you can claim a refund.
A VAT Return is a report filed with the tax authority summarizing all VAT transactions for a period. Commas auto-generates this from posted invoices and bills.
Goal
Generate the VAT return for May 2026, review output and input VAT, determine the net VAT payable, and file the return.
What you will verify
- โVAT return can be generated for a specific period
- โOutput VAT (from sales) is correctly calculated
- โInput VAT (from purchases) is correctly calculated
- โNet VAT payable/receivable is computed
- โVAT return can be submitted and filed
- โVAT payment can be recorded
Navigate to VAT โ Returns
Click "New Return" and select the period: May 2026.
Generate the VAT Return
The system should automatically calculate from posted transactions:
Output VAT (Sales):
| Invoice | Customer | Net Amount (NGN) | VAT (NGN) |
|---|---|---|---|
| INV-001 | Lagos State Government | 2,575,000 | 193,125 |
| INV-002 (TechHub) | TechHub Solutions | 1,350,000 | 101,250 |
| CN-001 (Credit Note) | Chief Okafor | (185,000) | (13,875) |
| Total Output VAT | 280,500 |
Input VAT (Purchases):
| Bill | Supplier | Net Amount (NGN) | VAT (NGN) |
|---|---|---|---|
| BILL-001 | Samsung Nigeria | 3,000,000 | 225,000 |
| BILL-002 | Office World | 400,000 | 30,000 |
| PCN-001 (Credit Note) | Samsung Nigeria | (300,000) | (22,500) |
| Total Input VAT | 232,500 |
Net VAT Position:
| Amount (NGN) | |
|---|---|
| Output VAT | 280,500 |
| Less: Input VAT | (232,500) |
| Net VAT Payable | 48,000 |
Review the return
Verify all transactions are included, amounts are correct, and the net VAT payable of NGN 48,000 is accurate.
Submit for review
Click "Submit for Review". The return status changes to "Under Review".
File the return
After review, click "File". Status changes to "Filed". The return is now locked from editing.
Record VAT payment
Record payment of the net VAT to FIRS (Federal Inland Revenue Service):
Checkpoint
- โVAT return for May 2026 is generated
- โOutput VAT totals NGN 280,500 (including credit note adjustment)
- โInput VAT totals NGN 232,500 (including purchase return adjustment)
- โNet VAT payable is NGN 48,000
- โReturn is submitted, reviewed, and filed
- โVAT payment of NGN 48,000 is recorded to FIRS
- โVAT payable account in the GL reflects the payment
13Period End & Administration
Close the month and manage users and settings
Goal
Perform month-end closing procedures, manage user access, review the audit trail, and verify system administration features.
What you will verify
- โNew users can be invited with specific roles
- โAudit trail captures all critical transactions
- โPermissions can be reviewed and adjusted
- โSystem settings are configurable
- โTrial Balance can be exported
Part A: User Management
Invite a second user
Navigate to Settings โ Users โ Invite User
Verify the invitation email is sent and the user appears in the user list with "Pending" status.
Review and adjust permissions
Navigate to Settings โ Roles & Permissions
For the Accountant role, verify:
| Module | View | Create | Edit | Delete | Approve |
|---|---|---|---|---|---|
| Sales | Yes | Yes | Yes | No | No |
| Purchases | Yes | Yes | Yes | No | No |
| Banking | Yes | Yes | Yes | No | No |
| Reports | Yes | N/A | N/A | N/A | N/A |
| Settings | Yes | No | No | No | N/A |
| Payroll | Yes | Yes | Yes | No | No |
Part B: Audit Trail
Review audit trail
Navigate to Settings โ Audit Trail
Verify the audit trail shows entries for all major actions performed during this UAT, including:
- Invoice creation and posting
- Payment recordings
- Bill postings
- Credit note postings
- Payroll finalization
- Bank reconciliation completion
Each entry should show: timestamp, user, action, document reference, and before/after values where applicable.
Part C: System Settings
Review system settings
Navigate to Settings โ Organization and verify:
- Company details are correct
- Currency is NGN
- Tax settings show VAT at 7.5%
- Number series for invoices, bills, receipts are incrementing correctly
- Email settings are configured for notifications
Part D: Period Export
Export Trial Balance
Navigate to Reports โ Trial Balance, set the period to May 2026, and click "Export". Download as Excel (XLSX) and PDF. Verify both formats contain accurate data.
Checkpoint
- โInvitation email sent to fatima@adebayotrading.com with Accountant role
- โUser appears in the list with "Pending" status
- โAccountant role permissions are correctly configured
- โAudit trail shows all critical transactions with timestamps
- โSystem settings (currency, tax, number series) are correct
- โTrial Balance exported successfully in Excel and PDF formats
14Advanced Features
Explore advanced capabilities and automation
Goal
Test advanced features including recurring invoices, item bundles, stock counts, quick-entry rules, and data export/backup.
What you will verify
- โRecurring invoices can be set up and auto-generate on schedule
- โItem bundles group multiple items into a single sellable unit
- โStock counts can be performed and adjustments posted
- โQuick entry rules speed up bank transaction categorization
- โData can be exported for backup
Feature 1: Recurring Invoice
Set up a recurring invoice for TechHub
Navigate to Sales โ Recurring Invoices โ New
Line items:
| Item | Qty | Rate (NGN) | Line Total (NGN) |
|---|---|---|---|
| IT Setup & Installation (SVC-001) | 1 | 25,000 | 25,000 |
| Amount (NGN) | |
|---|---|
| Subtotal | 25,000 |
| VAT (7.5%) | 1,875 |
| Total per Invoice | 26,875 |
This will generate 7 invoices (June through December) totaling NGN 188,125.
Feature 2: Item Bundles
Create an item bundle
Navigate to Inventory โ Items โ New Bundle
Bundle components:
| Item | Qty | Unit Price (NGN) | Subtotal (NGN) |
|---|---|---|---|
| Office Desk Executive (ITEM-004) | 1 | 75,000 | 75,000 |
| HP LaserJet Printer (ITEM-002) | 1 | 95,000 | 95,000 |
| Printer Toner Cartridge (ITEM-005) | 3 | 12,000 | 36,000 |
Feature 3: Stock Count
Run a stock count
Navigate to Inventory โ Stock Count โ New
Count all items and enter the physical quantities. For testing, assume one discrepancy:
| Item | System Qty | Counted Qty | Variance |
|---|---|---|---|
| Samsung 55" Smart TV | 29 | 28 | -1 (shortage) |
| HP LaserJet Printer | 10 | 10 | 0 |
| HP Laptop ProBook 450 | 7 | 7 | 0 |
| Office Desk Executive | 8 | 8 | 0 |
| Printer Toner Cartridge | 150 | 148 | -2 (shortage) |
Post the stock count adjustment
Review the variances and click "Post Adjustment". The system should create a stock adjustment entry to correct the quantities.
Feature 4: Quick Entry Rules
Set up quick entry rules for bank transactions
Navigate to Banking โ Rules
Create additional mapping rules:
| Rule Name | Match Condition | Map To Account |
|---|---|---|
| Electricity Payments | Description contains "ELECTRIC" or "IKEDC" | Utilities Expense |
| Internet Payments | Description contains "SPECTRA" or "ISP" | IT Expenses |
| Bank Charges | Description contains "CHARGE" or "FEE" or "MAINTENANCE" | Bank Charges Expense |
Feature 5: Data Export & Backup
Export data backup
Navigate to Settings โ Data โ Export
Select all data categories:
- Chart of Accounts
- Customer list
- Supplier list
- Item list
- All transactions (invoices, bills, payments, journal entries)
- Bank transactions
Click "Export All" and download the backup file (ZIP containing CSV/Excel files).
Checkpoint
- โRecurring invoice for TechHub is set up (monthly, Jun-Dec 2026)
- โ"Complete Office Setup" bundle is created with correct components
- โStock count was performed and variance of -1 TV and -2 toner posted
- โQuick entry rules for Electricity, Internet, and Bank Charges are active
- โFull data export was downloaded as a ZIP file
- โAll exported files contain accurate data
UAT Completion Summary
Congratulations! If you have successfully completed all 14 chapters, you have verified end-to-end functionality of the Commas ERP system covering:
Organization Setup
Company, COA, opening balances
Master Data
Customers, suppliers, items
Sales Cycle
Quote to cash, partial payments
Purchase Cycle
PO to payment, goods receipt
Banking
Transfers, reconciliation, rules
Expenses
Multi-method expense recording
Credit Notes
Sales & purchase returns
Payroll
Nigerian statutory deductions
Financial Reports
TB, P&L, BS, aging, cash flow
Tax Compliance
VAT return filing & payment
Administration
Users, permissions, audit trail
Advanced
Recurring, bundles, stock count