Skip to main content
Nandi Agro POS System - User Manual

Nandi Agro POS System - User Manual & Technical Documentation

Comprehensive retail management solution for agricultural and general merchandise businesses

System Overview

The Nandi Agro POS (Point of Sale) System is a comprehensive retail management solution designed for agricultural and general merchandise businesses. The system provides inventory management, sales processing, purchase order management, customer credit tracking, and reporting capabilities.

Key Features

Real-time Inventory Tracking

Monitor stock levels in real-time with automatic updates during sales and purchases.

Multi-user Support

Role-based access control for secure multi-user operation.

Credit Customer Management

Track customer credit, set limits, and monitor payment history.

Sales & Purchase Processing

Efficiently process sales and manage purchase orders with suppliers.

Financial Reporting

Generate comprehensive sales, inventory, and profit/loss reports.

QR Code & UPI Integration

Generate QR codes for invoices and integrate with UPI payment systems.

System Architecture

Technology Stack

Component Technology
Frontend HTML5, CSS3, JavaScript (no frameworks)
Backend Python with Flask
Database PostgreSQL
Authentication JWT tokens
Security passlib for password hashing
Charts Chart.js
Excel Processing openpyxl

Deployment Options

  • Development: Flask development server
  • Production (Linux): Gunicorn
  • Production (Windows): Waitress
  • Standalone: Executable via build_pos.py

Web Services/API Endpoints

Authentication Services

Endpoint Method Description Authentication
/api/auth/login POST User login and token generation None
/api/auth/verify GET Verify JWT token validity Bearer Token

Product Management Services

Endpoint Method Description Authentication
/api/products GET Retrieve all active products Bearer Token
/api/products?q={query} GET Search products by name or SKU Bearer Token
/api/products POST Create new product Admin Required
/api/products/{id} GET Retrieve specific product details Bearer Token
/api/products/{id} PUT Update product information Admin Required
/api/products/{id} DELETE Delete product Admin Required
/api/products/{id}/deactivate PUT Deactivate product Admin Required

Sales Services

Endpoint Method Description Authentication
/api/sales POST Create new sales invoice Bearer Token
/api/sales GET Retrieve all sales invoices Bearer Token
/api/sales/{id} GET Retrieve specific invoice details Bearer Token
/api/sales/{id} PUT Update invoice information Admin Required
/api/sales/{id}/cancel PUT Cancel invoice and restore inventory Bearer Token
/api/sales/{id} DELETE Delete invoice Admin Required

Note: The complete API documentation includes additional services for Inventory, Purchase, Suppliers, Credit Customers, Reporting, Admin, and Data Management.

Functional Modules

1. Dashboard Module

Location: dashboard.html

System overview with key metrics, quick access to functions, and real-time data counts.

2. Sales Module

Location: index.html

Point of sale interface with product search, inventory checking, and multiple payment methods.

3. Purchase Module

Location: purchase.html

Purchase order creation, supplier management, and goods receipt processing.

4. Inventory Module

Location: inventory.html

Real-time inventory tracking, low stock alerts, and stock adjustment capabilities.

5. Product Management

Location: Product Management.html

Product catalog management with SKU, pricing, and GST rate configuration.

6. Supplier Management

Location: Supplier Management.html

Supplier database with contact information and performance metrics.

7. Credit Customer Management

Location: creditManagement.html

Credit customer registration, balance tracking, and transaction history.

8. Reports Module

Location: reports.html

Sales analytics, inventory reports, profit/loss statements with export capabilities.

9. Admin Module

Location: admin.html

User account management, role-based access control, and system configuration.

10. Data Upload Module

Location: Data Upload.html

Bulk data upload via Excel with validation and error reporting.

11. Service Module

Location: service.html

System maintenance tasks, database optimization, and health monitoring.

12. Query to Database Module

Location: qry2db.html

Direct database query interface with SQL execution and result viewing.

User Roles and Permissions

Administrator

Administrators have full access to all system modules and functions.

  • User management (create, edit, delete users)
  • System configuration
  • Data backup and restore
  • Access to all reports
  • Product and inventory management
  • Financial controls

Cashier

Cashiers have access to essential functions for daily operations.

  • Sales processing
  • Purchase order creation
  • Customer interaction
  • Basic reporting
  • Limited inventory viewing
  • Credit customer registration

Installation and Setup

Prerequisites

  • Python 3.7 or higher
  • PostgreSQL database
  • Required Python packages (see requirements.txt)

Installation Steps

  1. Clone the repository
  2. Install dependencies: pip install -r requirements.txt
  3. Configure database connection in .env file
  4. Run database initialization: python init_db.py
  5. Start the application: python app.py

Configuration Files

  • .env: Database and system configuration
  • config.js: Frontend API configuration
  • schema.sql: Database schema definition
# Example .env file configuration
DB_HOST=localhost
DB_PORT=5432
DB_NAME=nandi_agro_pos
DB_USER=pos_user
DB_PASSWORD=secure_password
SECRET_KEY=your_secret_key_here
DEBUG=False

Troubleshooting

Common Issues

Issue Solution
Database Connection Failed Check .env configuration and PostgreSQL service
API Endpoints Not Accessible Verify Flask server is running and CORS configuration
Login Issues Check user credentials and JWT token configuration
Inventory Not Updating Verify database triggers and constraints

Performance Optimization

  • Regular database maintenance
  • Archive old transactions
  • Optimize database indexes
  • Monitor system resources