En este post te mostraré un pequeño sistema CRM que hice hace algún tiempo, el mismo usa el lenguaje PHP con base de datos MySQL y se encarga de llevar el registro de clientes, así como de ventas.
Entre las principales características tiene:
- Gestión de clientes
- Dashboard por clientes
- Dashboard general
- Registro de ventas de clientes
A lo largo de este post te mostraré cómo funciona este software gratuito y open source que he creado, así como la forma de descargarlo e instalarlo.
Nota: este CRM es más que nada un trabajo que realicé según un pedido; por lo que puede que no cumpla con los requisitos de un CRM en general, pero puedes basarte en él y mejorarlo.
Clientes
Todo sistema de este tipo tiene que tener la gestión de clientes obligatoriamente. En este caso se solicita el nombre completo, departamento (o ciudad) y edad. También se guarda la fecha de registro para saber cuántos clientes se han registrado en los últimos días.
Además de las operaciones básicas como buscar, editar y eliminar, tenemos el dashboard del cliente, que es en donde se muestra cuántas veces ha comprado y varios detalles en cuanto a las ventas.
Dashboard del cliente
Como lo mencioné anteriormente, existe un dashboard o tablero con detalles por cada cliente. En ese tablero se puede ver el total de ventas (de toda la vida), así como las ventas del último mes y año.
En la gráfica circular se muestra además el comparativo de ventas realizadas por período.
Ventas
El programa tiene un mecanismo para registrar ventas de clientes. Se registra el cliente obviamente, así como el monto y la fecha de la venta.
En este caso no se cuenta con descripción de la venta o con algún concepto, pues solo se necesita el monto. Estas ventas van relacionadas con el cliente así que los dashboards se generan a partir de estos datos.
Dashboard general
Veamos el último módulo de este software CRM gratuito programado con PHP y MySQL. Aquí se concentran todos los datos de manera general. Tenemos:
- Total de ventas
- Conteo de clientes
- Clientes registrados en los últimos 30 días
- Clientes registrados en el año actual
Además contamos con gráficas que resumen la información. Son:
- Clientes por departamento
- Gráfica de clientes por edad
- Ventas del año actual (por mes)
- Cantidad de clientes por año, del año actual y anterior
Con esto se muestra lo más importante de las ventas y clientes en este CRM open source. Y para ver cosas por cliente, podemos ir al tablero de ese cliente en específico.
Apartado técnico
El sistema utiliza Bootstrap (framework CSS para el diseño) con MySQL y PHP. El apartado de los iconos se maneja con los iconos de Material Design y para las gráficas utilicé Chart.js.
No tiene ninguna dependencia adicional, todo el software está creado por archivos que invocan a los métodos contenidos dentro de funciones.php
.
Por cierto, en el apartado de la base de datos tenemos un esquema simple en donde hemos usado el tipo de dato decimal para guardar el dinero en MySQL:
CREATE TABLE IF NOT EXISTS clientes(
id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
nombre VARCHAR(255) NOT NULL,
departamento VARCHAR(255) NOT NULL,
edad INT NOT NULL,
fecha_registro VARCHAR(10) NOT NULL
);
CREATE TABLE IF NOT EXISTS ventas_clientes(
id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
id_cliente BIGINT UNSIGNED NOT NULL,
monto DECIMAL(9,2) NOT NULL,
fecha VARCHAR(10) NOT NULL,
FOREIGN KEY (id_cliente) REFERENCES clientes(id) ON UPDATE CASCADE ON DELETE CASCADE
);
Descarga e instalación
Finalmente es momento de enseñarte cómo descargar e instalar este CRM. Procede a su descarga haciendo clic aquí. Una vez que lo tengas instalado sigue los pasos:
Necesitas MySQL y PHP, preferiblemente en sus versiones más recientes. Aquí un tutorial usando XAMPP: https://parzibyte.me/blog/2017/12/11/configurar-instalar-php-7-apache-server-mysql-windows/
Nota: para las operaciones SQL puedes usar la consola o phpmyadmin
- Copia todos los archivos a tu carpeta pública, si estás en Windows con XAMPP, es en
C:\xampp\htdocs\crm
(si no existe, crea la carpeta) - Crea la base de datos en MySQL
- Importa el archivo
esquema.sql
a la base de datos, ya sea copiando y pegando o importando - Configura las credenciales de tu base de datos en el archivo
funciones.php
dentro de la funciónobtenerBD
- Configura en ese mismo archivo la zona horaria, por defecto está para México
- Visita tu proyecto en http://localhost/crm
Nota 2: si cambiaste el nombre de tu proyecto o tu sistema operativo es distinto, los pasos podrían cambiar
Finalmente te dejo con más programas en PHP y MySQL, y también puedes ver más software gratuito que he creado.