PHPackages                             warrior/ticketer - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. warrior/ticketer

ActiveLibrary

warrior/ticketer
================

Imprimir boletas y facturas con ESCPOS

1.0.0(4y ago)1175↓100%MITPHPPHP ^7.2.5|^8.0

Since Jun 4Pushed 4y ago1 watchersCompare

[ Source](https://github.com/AlexanderBV/ticketer)[ Packagist](https://packagist.org/packages/warrior/ticketer)[ Docs](https://github.com/warrior/ticketer)[ RSS](/packages/warrior-ticketer/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (7)Versions (2)Used By (0)

Imprimir comprobantes en impresora termica con Laravel
======================================================

[](#imprimir-comprobantes-en-impresora-termica-con-laravel)

[![Latest Version on Packagist](https://camo.githubusercontent.com/0efcdb5ffb2c5282b747a99c182504d4738fa6211c6594990fbb11426dc4494f/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f77617272696f722f7469636b657465722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/warrior/ticketer)[![Total Downloads](https://camo.githubusercontent.com/5a851550700555949eb2b489dd48fe32f9f597188d76df2cdb35e792b3996bee/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f77617272696f722f7469636b657465722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/warrior/ticketer)[![GitHub Actions](https://github.com/AlexanderBV/ticketer/actions/workflows/php.yml/badge.svg)](https://github.com/AlexanderBV/ticketer/actions/workflows/php.yml/badge.svg)

Paquete Laravel simple para integrar ESC/POS Print Driver para PHP y dar estructura de comprobantes segun [Normativa Sunat](https://www.sunat.gob.pe/legislacion/superin/2019/206-2019.pdf).

- Comprobantes: Boleta y Factura
- Tickets: Cocina, Avance de cuenta *(proximamete)*.

Instalación
-----------

[](#instalación)

Puedes instalar el paquete a través de composer:

```
composer require warrior/ticketer
```

Uso
---

[](#uso)

Ejecute el siguiente comando para publicar la configuración utilizada por este paquete:

```
php artisan vendor:publish --provider="Warrior\Ticketer\TicketerServiceProvider" --tag="config"
```

Opcional: el service provider se registrará automáticamente. O puede agregar manualmente el proveedor de servicios en su archivo config / app.php:

```
'providers' => [
    // ...
    Warrior\Ticketer\TicketerServiceProvider::class,
];
```

#### Configuracíon previa

[](#configuracíon-previa)

Edite el archivo de configuración ubicado en `config / ticketer.php` de la siguiente manera:

- Configure `conexion` en:

    - `connector_type`:
        - `windows` si está utilizando Windows como servidor web.
        - `cups` si está utilizando Linux o Mac como servidor web.
        - `network` si está utilizando una impresora de red.
        - `dummy` si el usuario debe recuperar los datos almacenados en búfer. Usado para apis.
    - `connector_descriptor`:
        - El nombre de la impresora si su `connector_type` es `windows` o `cups`.
        - La dirección IP o URI de Samba, por ejemplo: `smb://192.168.0.5/PrinterName` si su `connector_type` es `network`.
        - No es necesario especificar `connector_descriptor` si su `connector_type` es `dummy`.
    - `connector_port`:
        - Si su` connector_type` es `network` el puerto abierto de la impresora.
    - Más información en [mike42/escpos-php](https://github.com/mike42/escpos-php)
- Configure `store` para la cabecera de sus comprobantes:

    - `ruc`: Número de registro único de contribuyente de la tienda ó empresa.
    - `nombre_comercial`: Nombre comercial de la tienda ó empresa.
    - `razon_social`: Razón social de la tienda ó empresa.
    - `direccion`: Direción de tienda ó empresa.
    - `telefono`: Teléfono de la tienda ó empresa.
    - `email`:Correo electrónico de la tienda ó empresa.
    - `website`: Sitio web de la tienda o empresa *(donde el cliente prodra consultar su comprobante)*.
    - `logo`: Path del logo de la tienda, sino posee logo se debe especificar en `false` y se tomara el nombre comercial como logo principal de la cabecera. Se recomienda usar las dimenciones de 300x120 en pixeles, y de preferencia imagen en blanco y negro.
- Configure `leyendas` para el final de sus comprobantes:

    - `CONTRATOS DE CONSTRUCCIÓN EJECUTADOS EN LA AMAZONÍA REGIÓN SELVA`.
    - `SERVICIOS PRESTADOS EN LA AMAZONÍA  REGIÓN SELVA PARA SER CONSUMIDOS EN LA MISMA`.
    - `BIENES TRANSFERIDOS EN LA AMAZONÍA REGIÓN SELVA PARA SER CONSUMIDOS EN LA MISMA`.
    - Cualquier otra leyenda que se requiera.

Ejemplo de Imprimir comporbante
-------------------------------

[](#ejemplo-de-imprimir-comporbante)

```
use Warrior\Ticketer\Ticketer;
...
```

```
$now = Carbon::now();
$ticketer = new Ticketer();
$ticketer->init('windows', 'EPSON TM-T88V Receipt');
$ticketer->setFechaEmision($now);
$ticketer->setComprobante('BOLETA');
$ticketer->setSerieComprobante('B001');
$ticketer->setNumeroComprobante('000000100');
$ticketer->seCodigoComprobante('01');
$ticketer->setCliente('Edwin Alexander Bautista Villegas');
$ticketer->setTipoDocumento(1);
$ticketer->setNumeroDocumento('72462226');
$ticketer->setCodigoDocumento('01');
$ticketer->setDireccion('Jr. Enarte Torres 421 - Santa Lucia');
$ticketer->setTipoDetalle('DETALLADO');

// $nombre, $cantidad, $precio, $icbper, $gratuita
$ticketer->addItem("POLLO A LA BRASA", 2, 21.5, false, false);
// $ticketer->addItem("ENSALADA RUSA", 3, 12, false, false);
// $ticketer->addItem("POLLO A LA BRASA", 4, 2 , false, false);
// $ticketer->addItem("AGUA MINERAL", 1, 2 , false, true);
// $ticketer->addItem("BOLSA PLASTICA", 1, 0.2 , true, false);

// Retornara true al mandar la impresión
$ticketer->printComprobante();
// Si quiere obtener los datos de impresion en base64
// util para trabajar con APIS web
// return $ticketer->printComprobante(true);
```

Ejemplo de Imprimir avance de cuenta
------------------------------------

[](#ejemplo-de-imprimir-avance-de-cuenta)

```
use Warrior\Ticketer\Ticketer;
...
```

```
$now = Carbon::now();
$ticketer = new Ticketer();
$ticketer->init('windows', 'EPSON TM-T88V Receipt');
$ticketer->setFechaEmision($now);
$ticketer->setCliente('Edwin Alexander Bautista Villegas');
$ticketer->setAmbiente('MESA 01 - SALON PRINCIPAL');

$ticketer->addItem("POLLO A LA BRASA", 2, 21.5, false, false);
$ticketer->addItem("ENSALADA RUSA", 3, 12, false, false);
$ticketer->setMozo('Junito Bardales');

// Retornara true al mandar la impresión
$ticketer->printAvance();
// Si quiere obtener los datos de impresion en base64
// util para trabajar con APIS web
// return $ticketer->printAvance(true);
```

Ejemplo de Imprimir ticket de cocina
------------------------------------

[](#ejemplo-de-imprimir-ticket-de-cocina)

```
use Warrior\Ticketer\Ticketer;
...
```

```
$now = Carbon::now();
$ticketer = new Ticketer();
$ticketer->init('windows', 'EPSON TM-T88V Receipt');
$ticketer->setFechaEmision($now);
$ticketer->setCliente('Edwin Alexander Bautista Villegas');
$ticketer->setAmbiente('MESA 01 - SALON PRINCIPAL');

/**
 * Agregar un false adicional para no imprimir en formato comprobante
 * El precio, el icbper, transferencia gratuita seran obiados ya que no son necesarios en la cocina
 * Ejemplo:
 * [1] - Pollo a la brasa
 * [2] - Coca Cola
*/

$ticketer->addItem("POLLO A LA BRASA", 2, 21.5, false, false, false);
$ticketer->addItem("ENSALADA RUSA", 3, 12, false, false, false);
$ticketer->setMozo('Junito Bardales');

// Retornara true al mandar la impresión
$ticketer->printCocina();
// Si quiere obtener los datos de impresion en base64
// util para trabajar con APIS web
// return $ticketer->printCocina(true);
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

### Security

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Alexander BV](https://github.com/AlexanderBV)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

Laravel Package Boilerplate
---------------------------

[](#laravel-package-boilerplate)

This package was generated using the [Laravel Package Boilerplate](https://laravelpackageboilerplate.com).

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1800d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d73ba35695c4cbc708fd69121a56c4c3d31319794e67264e910101dc1e88b695?d=identicon)[AlexanderBV](/maintainers/AlexanderBV)

---

Top Contributors

[![AlexanderBV](https://avatars.githubusercontent.com/u/20906718?v=4)](https://github.com/AlexanderBV "AlexanderBV (23 commits)")

---

Tags

Warriorticketer

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/warrior-ticketer/health.svg)

```
[![Health](https://phpackages.com/badges/warrior-ticketer/health.svg)](https://phpackages.com/packages/warrior-ticketer)
```

###  Alternatives

[larastan/larastan

Larastan - Discover bugs in your code without running it. A phpstan/phpstan extension for Laravel

6.4k43.5M5.2k](/packages/larastan-larastan)[laravel/passport

Laravel Passport provides OAuth2 server support to Laravel.

3.4k85.0M529](/packages/laravel-passport)[illuminate/database

The Illuminate Database package.

2.8k52.4M9.3k](/packages/illuminate-database)[laravel/pennant

A simple, lightweight library for managing feature flags.

57311.1M53](/packages/laravel-pennant)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[illuminate/queue

The Illuminate Queue package.

20331.4M1.2k](/packages/illuminate-queue)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
