Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Eleazarguitar18/kantuta_pos_back/llms.txt

Use this file to discover all available pages before exploring further.

Kantuta POS Backend is the server-side engine for the Kantuta POS system — a complete point-of-sale platform built with NestJS 11, TypeScript, PostgreSQL, and Redis. It exposes a structured REST API with JWT authentication, role-based access control, and interactive Swagger docs at /api.

Quickstart

Clone, configure, and run the API server in minutes with step-by-step instructions.

Configuration

All environment variables for database, Redis, JWT, mail, and more.

Architecture

Understand the modular NestJS structure and how modules interact.

API Reference

Full endpoint reference with request/response schemas for every resource.

What’s included

Authentication

JWT access + refresh tokens, password reset flow, and role-based guards.

Inventory

Products, categories, barcode support, and real-time stock tracking.

Sales

Multi-payment sales (cash, QR, transfer) with automatic stock deduction.

Cash Registers

Open/close shifts, cash movements, and balance reconciliation.

WhatsApp

Send messages, images, and documents via Baileys — no third-party SaaS.

Reports

Dashboard stats, sales ranges, inventory snapshots, and PDF-ready data.

Getting started in 4 steps

1

Install dependencies

Clone the repository and install Node.js packages.
git clone https://github.com/Eleazarguitar18/kantuta_pos_back.git
cd kantuta_pos_back
npm install
2

Configure environment

Copy .env.example to .env and fill in your PostgreSQL, Redis, and JWT credentials. See Configuration for every available variable.
3

Start the server

npm run start:dev
The API starts on http://localhost:3000. Interactive Swagger docs are available at http://localhost:3000/api.
4

Make your first request

curl -X POST http://localhost:3000/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email": "[email protected]", "password": "yourpassword"}'
You’ll receive access_token and refresh_token to authenticate subsequent requests.
The interactive Swagger UI at http://localhost:3000/api lets you explore and test every endpoint directly from your browser without any additional tooling.

Build docs developers (and LLMs) love