NakPOS Documentation

Introduction & Getting Started

What is NakPOS?

NakPOS is a comprehensive Point of Sale and Retail Management System designed for businesses that need to manage sales, inventory, purchasing, and financial operations across multiple stores and warehouses.

Point of Sale Process sales with barcode scanning, split payments, discounts, and thermal receipt printing
Inventory Management Track stock across multiple warehouses with serial number support, batch tracking, and automated low-stock alerts
Invoicing & Estimates Create professional invoices and quotes, track payments, and share documents via secure public links
Purchasing Manage vendors, create purchase orders, and receive goods with partial delivery support
Pricing Engine Configure price books, dynamic pricing rules, BOGO deals, tiered pricing, and product bundles
Reports & AI Analytics Generate sales, profit, tax, and inventory reports with optional AI-powered insights
Multi-Store Operate across locations with per-store configuration and inter-store transfers
Offline POS Continue selling when the internet is unavailable and sync transactions later

System Requirements

RequirementDetails
BrowserChrome 90+, Firefox 90+, Safari 15+, Edge 90+
Screen ResolutionMinimum 1024×768 (1920×1080 recommended)
InternetRequired for full functionality; offline POS mode available
Printer (optional)Standard printer for invoices; thermal printer (80mm) for POS receipts

Logging In

1
Navigate to the NakPOS URL provided by your administrator.
2
Enter your email address and password.
3
Click Log In.
If two-factor authentication (2FA) is enabled on your account, you will be prompted to enter a 6-digit code from your authenticator app (e.g., Google Authenticator, Authy).

Dashboard Overview

After logging in, you land on the Dashboard — a summary of your business performance.

SectionDescription
Today's SalesTotal revenue generated today
Total OrdersNumber of transactions today
Active CustomersCustomers who made purchases recently
Low Stock ItemsCount of items below reorder levels
Sales OverviewDaily/weekly/monthly revenue chart
Top Selling ProductsBest-performing items by quantity or revenue
Recent TransactionsLatest sales and invoices
Revenue by CategorySales breakdown by product category
Store PerformanceComparison across store locations
The dashboard is permission-based. Cashiers see a simplified view while managers and admins see the full analytics dashboard.

Point of Sale (POS)

Accessing the POS

1
Click the POS Quick Access dropdown in the top header.
2
Select the store you want to operate in.
3
You will be taken to the POS interface for that store.
Permission Required: pos.access

Opening a Cashier Session

Before processing sales, you must open a cashier session (shift):

1
When you enter the POS, if no active session exists, you will be prompted to Open Session.
2
Enter the Opening Balance — the amount of cash in the register at the start of your shift.
3
Click Open Session.
Only one active session per user is allowed at a time.

POS Interface Layout

The POS screen is divided into two main areas:

Left Panel — Product Area
Search BarSearch products by name, SKU, or barcode
Category TabsFilter products by category
Product GridClickable product cards showing name, price, and stock
Right Panel — Cart Area
Customer SelectionSelect or add a customer
Cart ItemsLine items with quantity, price, subtotal
Tax SummaryAutomatically calculated taxes
Cart TotalsSubtotal, tax, discount, grand total
CheckoutComplete the sale

Adding Products

Search by Name or SKU: Type in the search bar. Matching products appear in the grid. Click a product to add it to the cart.

Scan Barcode: Use a barcode scanner. The product is automatically found and added.

Browse by Category: Click a category tab to filter. Click "All" to show everything.

Adjust Quantity: Use the + / buttons in the cart, or click the quantity number and type a specific amount.

Serialized Items & Unit Selection

Serialized Items: If a product has serial number tracking enabled, a modal will appear when you add it to the cart. Enter or scan each serial number — the count must match the quantity.

Unit Selection: If a product has multiple units of measure (e.g., "Piece", "Pack of 12", "Carton of 48"), a modal appears for you to choose the unit. The price and stock adjust automatically based on the conversion factor.

Applying Discounts

Item-Level Discount: Click the discount icon next to a cart item. Choose percentage or fixed amount, then enter the value.

Order-Level Discount: Click the Discount button in the cart footer.

Manager Approval: If the discount exceeds your authorized limit, a Manager Approval prompt appears. A manager must enter their Approval PIN. The PIN locks after 3 failed attempts and is rate-limited to 5 attempts per minute.

Checkout & Payment

1
Review the cart items, discounts, and totals.
2
Click Checkout. The Payment Modal opens.
3
Select a payment method:
CashEnter amount tendered; change is calculated
CardProcess via integrated payment gateway
Bank TransferRecord a bank transfer reference
CreditApply to customer's credit account
4
For split payments, click Add Payment Method to pay with multiple methods. The total of all payments must equal or exceed the sale total.
5
Click Complete Sale. The sale is recorded and the receipt is generated.

Receipts

After completing a sale:

Print ReceiptPrint a standard receipt
Print ThermalPrint to a thermal receipt printer (80mm)
Email ReceiptSend the receipt to the customer's email
Share LinkGenerate a public link to the receipt
New SaleSkip receipt and start a new transaction

Held Orders

To pause a sale and serve another customer:

1
Click Hold Order in the cart. The current cart is saved.
2
Start a new sale.
3
To resume, click Held Orders and select the held sale. The cart is restored.

Closing a Session & Cash Movements

Closing a Session:

1
Click the Session button in the POS header, then Close Session.
2
Enter the Closing Balance — the actual cash counted in the register.
3
The system calculates the Expected Balance and shows any Discrepancy.
4
Add optional notes and click Close Session.

Cash Movements: During an active session, click the Session button and choose Cash In or Cash Out to record float additions, petty cash, bank deposits, or other movements.

Offline POS Mode

If the internet connection is lost, the POS automatically switches to Offline Mode. Sales are recorded locally and automatically sync when connectivity is restored.

Initial SyncDownloads a snapshot of all products, prices, customers, and tax rates
Delta SyncSubsequent syncs only download changes since the last sync
Offline mode requires an initial sync to have been completed while online. Stock levels may not be 100% accurate in offline mode.

Sales Management

Sales History

Navigate to Sales > Transactions > Sales History.

Filter sales by: date range, store, warehouse, cashier, payment method, and status (completed, returned, partially returned).

Click any sale to view its details: sale information, customer, line items, payment summary, tax breakdown, and return history.

Public Receipt Sharing

If share links are enabled in settings, open a sale and click Share Link to generate a secure, time-limited URL. The link expires after the configured period (default: 30 days) and does not require authentication to view.

Returns & Refunds

Creating a Return

1
Navigate to Sales > Returns > Return Requests and click New Return.
2
Search and select the original sale by sale number, date, or customer.
3
Choose the items to return and enter the return quantity.
4
Select a return reason and add optional notes.
5
Click Submit Return. The return is created with a Pending status.

Return Approval Workflow

StatusDescriptionAction
PendingReturn submitted, awaiting reviewManager reviews
ApprovedReturn approved for processingProceed to process
RejectedReturn deniedReason provided
ProcessedRefund issued and stock restoredComplete
CancelledReturn cancelledNo further action
Permissions: returns.approve for approval, returns.process for processing.

Return Insights (AI)

If AI is enabled, navigate to the Insights tab on the Returns page to see AI-generated analysis of return patterns, top returned products, return rate trends, and recommendations for reducing returns.

Invoicing

Creating & Managing Invoices

1
Navigate to Sales > Transactions > Invoices and click New Invoice.
2
Select a customer, add line items with quantities and prices.
3
Set the due date and add optional notes.
4
Click Save as Draft or Save & Finalize.
StatusDescription
DraftEditable; not yet sent
SentDelivered to customer
Partially PaidSome payment received
PaidFully paid
OverduePast due date with balance
CancelledVoided

Payments, Printing & Sharing

Recording Payments: Open an invoice, click Record Payment, enter amount, method, date, and reference. Partial payments are supported.

Print / PDF: Click Print for browser print dialog or Download PDF for a PDF file.

Email: Click Email to send a formatted email with PDF attachment.

Share Link: Generate a secure public URL for the customer to view without login (expires after configured period).

Credit Notes

Credit notes record credits against invoices (e.g., partial returns, billing corrections).

Create: Navigate to Sales > Transactions > Credit Notes, click New Credit Note, select the original invoice, add items and amounts.

Apply to Invoice: Open the credit note, click Apply to Invoice, select the target invoice, and enter the amount.

Issue Refund: Open the credit note, click Issue Refund, select the method and amount.

Estimates / Quotes

Creating & Managing Estimates

Navigate to Sales > Transactions > Estimates and click New Estimate.

Select a customer, add line items, set the validity period, and save.

StatusDescription
DraftNot yet sent
SentDelivered to customer
AcceptedCustomer accepted
RejectedCustomer declined
ConvertedConverted to invoice or sale
ExpiredValidity period passed

Converting & Duplicating

Convert to Invoice: Open an accepted estimate and click Convert to Invoice. A new invoice is created with the line items pre-filled.

Convert to Sale: Click Convert to Sale to go to the POS with items pre-loaded in the cart.

Duplicate: Click Duplicate on any estimate to create a copy with the same line items.

Customer Management

Managing Customers

Navigate to Sales > Customers to view, search, and filter all customers.

Click New Customer to add a customer with: name, email, phone, address, customer group, and notes.

Customer Groups: Segment customers (e.g., "Wholesale", "VIP", "Corporate") for pricing via price books and for reporting.

POS Customer Search: In the POS, click the Customer button to search and assign a customer, or use Quick Add to create one on the spot.

Product & Catalog

Managing Items

Navigate to Catalog > Products.

When creating or editing an item, configure:

SectionFields
BasicName, SKU, Barcode, Category, Description, Type (Product/Service)
PricingCost Price, Selling Price, Minimum Price
InventoryTrack Inventory, Reorder Level, Reorder Quantity, Has Serial Numbers, Is Perishable
AdditionalUnits of Measure, Tax, Image, Active status

Categories, Units & Barcodes

Categories: Support parent-child hierarchy. Import/export via CSV.

Units of Measure: Create unit categories (Weight, Volume, Count) and units with conversion factors (e.g., 1 Pack = 12 Pieces).

Barcodes: Enter manually, scan at POS, or auto-generate.

Price History: View all price changes on the item detail page with dates, old/new prices, and who changed them.

Bulk Operations

Bulk Edit: Select multiple items, click Bulk Edit, and apply changes to category, price, tax, or status.

Import (CSV): Click Import, download the template, fill in data, upload, preview, and confirm.

Export (CSV): Click Export to download all items.

Pricing

Price Books

Navigate to Catalog > Pricing > Price Books.

Price books define custom prices for specific products. They can be assigned to customers or customer groups with priority levels and date ranges.

Priority Order: Customer-specific → Customer group → Category discounts → General price books → Default price.

Bulk operations: Bulk Update, Adjust Prices (percentage/fixed increase or decrease), Import/Export via CSV.

Pricing Rules Engine

Navigate to Catalog > Pricing > Pricing Rules.

Rule TypeDescriptionExample
DiscountPercentage or fixed amount off"10% off all Electronics"
MarkupIncrease price"15% markup for express"
Fixed PriceSet a specific price"All t-shirts at 2,000"
Buy X Get YFree/discounted items with purchase"Buy 2 Get 1 Free"
Tiered PricingPrice changes based on quantity"1-10: 500, 11-50: 450"
Bundle PricingSpecial price for combinations"Laptop + Case for 350,000"

Define conditions (item, cart, customer, time-based) and actions with priority levels and optional date ranges.

Bundles

Navigate to Catalog > Bundles. Combine multiple products into a package with a special price.

When all items of a bundle are added to the cart at POS, the system automatically detects and applies the bundle price.

Inventory Management

Stock Levels & Adjustments

Navigate to Inventory > Stock Levels to view current inventory across stores and warehouses.

Filter by store, warehouse, category, stock status, or search by name/SKU.

Adjustments: Click Adjust Stock to increase or decrease quantity with a reason and notes. All adjustments are recorded in the audit trail.

Low Stock Alerts

Navigate to Inventory > Stock Alerts.

Alert TypeTrigger
Low StockQuantity falls below reorder level
Out of StockQuantity reaches zero
Expiring SoonPerishable items nearing expiry

Alerts include email notifications, reorder suggestions, and links to create purchase orders.

Stock Counts

Navigate to Inventory > Stock Counts. Create a count for a store/warehouse, enter the physical count for each item, and the system calculates the variance. Click Apply to adjust inventory to match.

Variances exceeding the threshold (default: 5%) are flagged for review.

Inventory Valuation & Movements

Valuation Methods: FIFO (First In, First Out), LIFO (Last In, First Out), Weighted Average, FEFO (First Expired, First Out). Configured in Settings > Inventory.

Stock Movements: Navigate to Inventory > Stock Movements to see every stock change with date, item, quantity, type (sale, return, adjustment, transfer, receipt), source/destination, user, and reference.

Transfers

Push Transfers

Navigate to Inventory > Transfers and click New Transfer.

Select source and destination store/warehouse, add items with quantities, and submit.

StatusDescription
PendingAwaiting approval
ApprovedReady to ship
In TransitItems shipped
CompletedItems received at destination
RejectedTransfer denied

Pull Transfer Requests

Navigate to Inventory > Transfer Requests and click New Request. The source location reviews and can fully approve, partially approve, or reject the request. Approved requests automatically create a transfer.

Purchasing & Vendors

Vendors & Purchase Orders

Vendors: Navigate to Purchasing > Vendors to manage suppliers with company details, payment terms, and notes.

Purchase Orders: Create POs with vendor, destination warehouse, items, quantities, and cost prices. POs follow a workflow: Draft → Pending Approval → Approved → Partially Received → Received.

Goods Receipt & Vendor Defects

Goods Receipt: When goods arrive, open the PO and click Receive Goods. Enter quantities received, serial numbers for serialized items, and note any discrepancies. Partial receiving across multiple batches is supported.

Vendor Defect Tracking: Navigate to Sales > Returns > Vendor Defects to record defect incidents with affected items, reasons, photos, and track vendor defect rates.

Auto-Reorder: When enabled in settings, the system automatically generates suggested POs when items drop below their reorder level.

Dispositions

Managing Defective Items

Navigate to Sales > Returns > Dispositions. Dispositions track the lifecycle of defective, damaged, or non-sellable items.

TypeDescription
RMAReturn to vendor for replacement or credit
RepairItem to be repaired and returned to stock
InsuranceInsurance claim for damaged goods
Write-OffRemove from inventory as a loss
DisposalPhysically dispose of the item
DonationDonate the item to charity

Each type has its own processing workflow. You can attach photos and documents for documentation.

Warehouses & Stores

Store & Warehouse Setup

Stores: Navigate to Settings > Stores. Each store has its own name, address, contact details, default warehouse, and tax configuration.

Warehouses: Navigate to Inventory > Warehouses. Types include: Sales Floor, Back Room, Cold Storage, Receiving, Transit, Quarantine, Defective, and Other. Mark warehouses as "sellable" to allow POS sales from them.

Warehouse-Store Access: Control which stores can access inventory from a shared warehouse by toggling access in the warehouse settings.

Default Warehouse: Each store has a default warehouse for POS transactions. Stock is deducted from this warehouse during sales.

Reports & Analytics

Available Reports

ReportKey MetricsAccess
Sales ReportRevenue, transactions, averages, top products, category/store/payment breakdownAll managers
Profit ReportGross profit, margins, profit by product/category, cost analysisAdmin / Manager
Tax ReportTotal tax collected, breakdown by rate/store/periodAdmin / Manager
Cashier ReportSession summaries, sales per cashier, cash discrepancies, payment breakdownAll managers
Product AnalyticsTop sellers, slow movers, dead stock, performance trendsAdmin / Manager
Customer AnalyticsTop customers, retention, segments, new vs. returningAdmin / Manager
Inventory ValuationStock levels, movement history, total value by valuation methodAdmin / Manager
AI AnalyticsNatural language business questions with AI-generated insightsAI permission

All reports support date range filtering, store/warehouse selection, and export options.

Scheduled & Daily Reports

Daily Reports: Generate on demand from Reports > Overview, or configure automated daily/weekly/monthly delivery.

Scheduled Reports: Set up in Settings > Automation > Schedules with recipients, delivery time, and report type. Reports are automatically generated and emailed on schedule.

API Reference

API Overview

NakPOS provides a RESTful API (v1) for integrations and the offline POS client.

Base URLhttps://your-domain.com/api/v1
AuthenticationBearer token (Laravel Sanctum)
FormatJSON request and response bodies

Key endpoint categories: POS, Items, Categories, Customers, Sales, Returns, Sessions, Price Books, Pricing Rules, Bundles, Stores, Payment Methods, Integrations, Offline Sync, AI.

Integration Endpoints

AreaEndpoints
Sales Pull (App User)GET /integration/sales, GET /integration/sales/{sale}
Application Users (Admin)GET/POST /integrations/application-users, PUT/DELETE /integrations/application-users/{user}
Token Management (Admin)GET/POST /integrations/application-users/{user}/tokens, DELETE /integrations/application-users/{user}/tokens/{tokenId}
Webhook Subscriptions (Admin)GET /integrations/webhooks/subscriptions, PUT /integrations/webhooks/subscriptions/{store}, POST /integrations/webhooks/subscriptions/{store}/rotate-secret, POST /integrations/webhooks/subscriptions/{store}/toggle
Replay/Backfill (Admin)POST /integrations/webhooks/replays, GET /integrations/webhooks/replays/{webhookReplay}

Sales Pull Security: requires auth:sanctum, api.application, permission:sales.view, and token ability sales:read.

Application User Rule: application users cannot authenticate via /auth/login; they must use admin-issued tokens.

CategoryRate Limit
Authentication5 requests/minute
Standard API60 requests/minute
POS Price Lookup120 requests/minute
Bulk Operations10 requests/minute
Offline Sync Upload10 requests/minute
Full interactive API documentation is available at Settings > API Documentation (Super Admin only).

Troubleshooting & FAQ

Common Issues

IssueSolution
Cannot log inVerify email/password, check account is active, sync authenticator app time, wait for rate limit to reset
POS not loading productsEnsure active session, products are active with stock, you have pos.access permission, clear browser cache
Cannot apply discountCheck your discount limit, request manager approval for larger discounts
Receipt not printingCheck printer connection, verify paper size (80mm for thermal), check browser popup blocker
Stock levels incorrectRun a stock count, check movement audit trail, verify pending transfers and goods receipts
Invoice email not sendingCheck SMTP settings, use Test button, check Email Logs, verify customer has valid email
Offline mode not workingComplete initial sync while online, check browser local storage support
AI not respondingVerify AI is enabled, API key is valid with sufficient credits, check rate limits

Frequently Asked Questions

Can I use NakPOS on a tablet?
Yes. NakPOS is responsive and works on tablets. The POS interface is optimized for touch interaction.
How many stores can I manage?
There is no built-in limit. Each store can have its own warehouses, tax configuration, and payment methods.
Can different stores have different prices?
Yes. Use price books with store conditions, or use pricing rules targeting specific stores.
Can I void a completed sale?
Completed sales cannot be voided directly. Process a return for the full amount instead, which maintains the audit trail.
Can I import products from another system?
Yes. Use the CSV import feature under Products. Download the template, fill in your data, and upload.
What happens during a power outage?
Unsaved cart data may be lost in online mode. In offline mode, completed sales are stored locally and sync when power returns. Cashier sessions remain open until explicitly closed.
How do bundle prices work at checkout?
When all items of a configured bundle are in the cart, the system automatically detects the bundle and applies the bundle price.
NakPOS User Manual v1.0 — Features and interfaces may vary based on your configuration, role, and enabled feature toggles.