56 Generación de Tickets de Pago en Laravel 12 con DomPDF: Comprobantes Térmicos y Diseño CSS 📄🖨️
Duración: 36 min¡Contenido Exclusivo!
Adquiere este curso para tener acceso inmediato a esta y a **todas las lecciones Premium**.
Inscribirse Ahora por $10.00 Acceso instantáneo de por vida y código fuente incluido.Descripción
📄 Lección 56: Generación de Tickets con DomPDF en Laravel 12
En esta sesión de Benji V2, implementamos la funcionalidad de Comprobantes de Pago. Aprendemos a instalar, configurar y diseñar tickets térmicos profesionales que pueden ser entregados a los clientes tras cada transacción, asegurando que el sistema sea apto para uso en puntos de venta reales.
🛠️ Instalación y Configuración de DomPDF
Utilizamos la librería líder para manejo de PDFs en Laravel:
- 📥 Instalación: Añadimos el paquete barryvdh/laravel-dompdf vía Composer [01:03].
- ⚙️ Configuración del Ticket: Configuramos el tamaño del papel para impresoras térmicas (80mm de ancho) y establecimos una altura "infinita" (setPaper) para que el ticket se adapte automáticamente al largo del contenido (cabecera, datos, detalles y pie de página) [18:35].
- 🔠 Tipografía y DPI: Optimizamos la fuente a Arial Narrow y ajustamos el DPI a 120 para asegurar que el texto sea legible en impresoras de baja resolución [17:04].
🧮 Lógica del Comprobante (Controlador)
El sistema realiza consultas inteligentes para que el ticket sea informativo:
- 🔢 Secuencia de Pago: Implementamos una lógica para determinar el número de cuota actual (ej: "Pago 3 de 12"), contabilizando los registros en la base de datos [23:37].
- 👥 Datos Vinculados: El ticket jala automáticamente la información de la empresa (desde ajustes), los datos del cliente, los detalles de la cuota programada y los datos del pago realizado [15:22].
🎨 Diseño del Ticket y UX
El diseño se realizó mediante HTML y CSS puro, adaptado para PDF:
- 🔍 Visibilidad Dinámica: En la tabla de cuotas, el botón de "Pagar" desaparece una vez realizada la transacción, siendo reemplazado por el botón de "Comprobante" (icono de impresora) [11:55].
- 📉 Desglose de Mora: El ticket es capaz de detectar si se pagó mora. Si el monto total es superior al de la cuota base, el sistema añade automáticamente una línea de "Mora Pagada" en el recibo [33:41].
- 🕒 Información de Auditoría: Se incluye la fecha y hora exacta de impresión, así como el nombre del usuario (cajero/cobrador) que procesó el pago [34:04].
✅ Resultado de la Lección
Al finalizar, el sistema genera un PDF profesional en formato ticket. Este documento incluye el logo/nombre de la empresa, datos del cliente, desglose de cuota y mora, y el método de pago (efectivo, transferencia, etc.), listos para ser impresos en cualquier impresora térmica estándar.
Lecciones
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️