Custom Routing (cl_routes)

Latest Version: 1.0.6 The ability to create routes using the regular Express routers and test them directly using Express is powerful, but it comes with problems. Express is about an MB of code for your 2 KBs worth of routering. Our custom router helps you achieve the same results while using the same syntax and […]

Read More

Customers Plugin (cl_customer)

This plugin allows us to manage customers (CUST_TYPE=CUST_CUSTOMER). It provides functionality to CRUD customers. It is required for several functionalities including checks, payrolls, employees, etc. For Developers Created customers are stored in the customer’s table. Any additional details about the customer are stored in the customer details table. faheem

Read More

Employees Plugin (cl_employee)

The employee plugin allows you to manage employees and their salaries. It is required for payroll checks. It is a full-stack plugin with regular CRUD routes and a front end.This is the main area powered by this plugin: For Developers Employees are stored in the customers’ table. Their CUST_TYPE set to CUST_EMPLOYEE. Their details are […]

Read More

Database Commons (cl_db_commons)

This plugin contains common functionality related to databases. It exports several functions and classes to perform different database operations. Smart Update Imagine you want to update several entries of a record (imagine updating orders_products of an order). Normally, you will delete all records and reinsert the new records. However, this can lead to performance problems […]

Read More

Creating a Plugin

Here is how you can add a new plugin in CRM 2.0 Go to the plugin directory:The current plugin directory is E:\Faheem\crm-node-plugins, but it could be changed in the future. Use the following commands to switch to that directory: Create the plugin: Use the command and pass your plugin name to create the plugin, make […]

Read More

Cheque Module (cl_cheque_module)

The Cheque module provides the functionality to create cheques by using a specified module. It requires the banks’ plugin to be enabled. End Points Cheque (/accounts2/cheque) Title / Method POST URL POST /accounts2/cheque Description Create a new cheque Body Parameters (POST) { data: { amount: number (The cheque balance or amount) bankId: number (The ID […]

Read More

Banks Plugin (cl_bank)

As the name suggests, the banks’ plugin allows you to add, remove, edit, and view banks. It is mostly meant for use by other plugins. End Points Bank (/bank) Title /bank Method GET URL GET /bank Description Attempts to read first 100 banks and returns them. Query Parameters   Response Status Code: 200{ name: String […]

Read More

Reporting Plugin (cl_report)

This plugin provides the reporting functionality for CRM 2.0. End Points Report (/report) Title /report Method GET URL GET /report Description It generates a report by requesting the reporting server. It returns the generated report as a PDF document. Query Parameters { rptName: string (The full name to report action), … (and any other parameters […]

Read More

CRM Plugins

Plugins are a way to add new features and modify existing functionality without changing the main codebase. Create a new Plugin Plugin List BEFORE CREATING A PLUGIN, YOU MUST ASK PERMISSION FROM YOUR TEAM LEAD! Core Plugins These plugins provide core functionality to other plugins. Standalone Plugins These plugins provide full-stack functionality on their own. […]

Read More

Database Plugin (cl_db)

Database plugin is used to get access to the CRM’s database. It exports a function called getDb. You can call the function to get a connection o database. ID: cl_db Exports getDb(): () -> PrismaClient Example Usage Install the plugin Or if you are using npm Import it wherever you need it: faheem

Read More