Skip to content

FactuDav es un proyecto opensource hecho en Laravel, realizado para los desarrolladores que requieran de un sistema con facturación electrónica en México, con este proyecto se pretende tener lo básico para el timbrado de facturas cfdi3.3

Notifications You must be signed in to change notification settings

DanielVera987/factudav

Repository files navigation

FactuDav - Facturación Electronica CFDI3.3

FactuDav es un proyecto opensource hecho en Laravel, realizado para los desarrolladores que requieran de un sistema con facturación electronica en México, con este proyecto se pretende tener lo basico para el timbrado de facturas cfdi3.3 desde agregar clientes, productos y la creación de facturas y Pre-facturas. Se ha integrado un proveedor PAC llamado Multifacturas, no tenemo relacionado algo con ellos por lo que se requiere entrar a su pagina web y contratar folios para el uso del sistema

Comenzando 🚀

Pre-requisitos 📋

Antes de empezar con la instalación del sistema es necesario tener en cuenta las siguiente extensiones que se requieren en nuestro servidor

• PHP 7+
• Soap
• Pdo-mysql
• Pdo-sqlite
• Xls
• OpenSSL

Instalación 🔧

Iniciamos con la instalación de nuestro sistema, damos por entendido que ya se tiene instalado Composer, Git y algun servidor WAMP o XAMPP. En dado caso que no, recomiendo descargar Laragon para usuarios Windows

Clonamos el proyecto en nuestro directorio de proyectos

git clone https://github.com/DanielVera987/factudav.git

Instalamos los paquetes de laravel

composer install

Creamos nuestra base de datos

mysql> CREATE DATABASE databasename;

Copiamos nuestro archivo .env.example y le cambiamos el nombre a .env y realizamos la configuración de nuestra base de datos

...more

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=databasename
DB_USERNAME=username
DB_PASSWORD=password

...more

Realizamos nuestras migraciones y seeders, Esto puede demorar un poco ya que se agrega todos los catalagos del SAT

dir_project> php artisan migrate --seed

Generamos nuestra key

dir_project> php artisan key:generate

Generamos nuestros links

dir_project> php artisan storage:link

Levantamos nuestro servidor

dir_project> php artisan serve

Iniciamos sesión

user: test@test.com
pass: 123456

Es necesario agregar los archivos .cer y .key para la generación de las facturas y pre-facturas Puedes descargar archivos y rfc de prebas que nos brinda el SAT Archivos Prueba

Ejecutando las pruebas ⚙️

Para la ejecución de nuestras pruebas unitarias es requerido crear una nueva base de datos para eso debemos configurar nuestro archivo phpunit.xml y agregarle el nombre de nuestra base de datos de pruebas

...more
<php>
 ..more
 <server name="DB_DATABASE" value="databasename_test"/>
<php>
...more

Una vez configurado realizamos nuestras migraciones y seeders a esa base de datos para ello nos vamos a nuestro archivo .env y cambiamos por un momento el nombre de nuestra base de datos por databasename_test

...more
DB_DATABASE=databasename_test
...more

Ejecutamos nuestras migraciones y seeders

dir_project> php artisan migrate --seed

Ejecutamos nuestras pruebas

dir_project> vendor\bin\phpunit

Regresamos el nombre de nuestra base de datos principal y listo 👍

Construido con 🛠️

Autores ✒️

Menciona a todos aquellos que ayudaron a levantar el proyecto desde sus inicios

Licencia 📄

Este proyecto está bajo la Licencia (MIT)

Expresiones de Gratitud 🎁

  • Comenta a otros sobre este proyecto 📢
  • Invita una cerveza 🍺 o un café ☕
  • Da las gracias públicamente 🤓.

Guia del Sistema 💻

Al iniciar sesión te pedira la configuración inicial del sistema es requerido todos los datos con *El campo PAC se refiere al usuario y contraseña del proveedor Multifacturas, En dado caso que esos campos se queden en blanco el sistema automaticamente realizara las Pre-facturas que son facturas pero sin timbre fiscalPara configurar correo electronico se puede hacer desde nuestro archivo .env llenando los siguientes datos

MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=null
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=null
MAIL_FROM_NAME="${APP_NAME}"

se pude usar los servicios de mailtrap para las pruebas de envio de correos, para colocar algun gmail es requerido activar el uso de tercerosPara poder registrar un nuevo usuario se debera activar el link de registro en nuestro archivo de rutas web.php, esto se desactiva con la inteción de que nadie mas pueda hacer uso de la plataforma y solamente uno pueda estar registrado


⌨️ con ❤️ por Danielvera987😊

About

FactuDav es un proyecto opensource hecho en Laravel, realizado para los desarrolladores que requieran de un sistema con facturación electrónica en México, con este proyecto se pretende tener lo básico para el timbrado de facturas cfdi3.3

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published