PHPackages                             eriquegasparcarlos/esolutions-escpos - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. eriquegasparcarlos/esolutions-escpos

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

eriquegasparcarlos/esolutions-escpos
====================================

PHP client para impresión ESC/POS via ApiPeruDevPrint

v1.0.0(3mo ago)07MITPHP ^8.1

Since Apr 17Compare

[ Source](https://github.com/eriquegasparcarlos/esolutions-escpos)[ Packagist](https://packagist.org/packages/eriquegasparcarlos/esolutions-escpos)[ RSS](/packages/eriquegasparcarlos-esolutions-escpos/feed)WikiDiscussions Synced 3w ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

esolutions-escpos
=================

[](#esolutions-escpos)

PHP client para impresión ESC/POS via [ApiPeruDevPrint](https://github.com/eriquegasparcarlos/apiperudevprint).

Reemplaza `mike42/escpos-php` con una API fluida que envía comandos a ApiPeruDevPrint, el servicio local de impresión.

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

[](#instalación)

```
composer require eriquegasparcarlos/esolutions-escpos
```

Requisitos
----------

[](#requisitos)

- PHP 8.1+
- ext-json, ext-curl
- [ApiPeruDevPrint](https://github.com/eriquegasparcarlos/apiperudevprint) corriendo en `localhost:8443`

Uso básico
----------

[](#uso-básico)

```
use ESolutions\Escpos\Document;
use ESolutions\Escpos\Printer;

$doc = Document::make()
    ->textCenter('MI EMPRESA SAC', bold: true, size: 2)
    ->textCenter('RUC: 20123456789')
    ->separator()
    ->row('Cliente:', 'Juan Pérez')
    ->row('Fecha:', '16/04/2026')
    ->separator()
    ->columns([
        ['text' => 'Producto A x2', 'width' => 28, 'align' => 'left'],
        ['text' => 'S/ 20.00',      'width' => 10, 'align' => 'right'],
    ])
    ->columns([
        ['text' => 'Producto B x1', 'width' => 28, 'align' => 'left'],
        ['text' => 'S/  5.00',      'width' => 10, 'align' => 'right'],
    ])
    ->separator()
    ->textRight('TOTAL: S/ 29.50', bold: true)
    ->feed(1)
    ->qr('https://cpe.sunat.gob.pe/...')
    ->cut();

Printer::create()
    ->to('TP-300')
    ->paper80mm()
    ->send($doc);
```

Métodos del Document
--------------------

[](#métodos-del-document)

MétodoDescripción`text($text, $align, $bold, $underline, $size, $font)`Texto con formato`textCenter($text, $bold, $size)`Texto centrado`textRight($text, $bold)`Texto alineado a la derecha`bold($text, $align, $size)`Texto en negrita`small($text, $align)`Texto pequeño (font B)`columns($columns)`Columnas en una fila`row($label, $value, $paperWidth)`Fila etiqueta / valor`separator()`Línea separadora`feed($lines)`Avance de líneas`qr($data, $size, $align)`Código QR`barcode($data, $type, $align)`Código de barras`imageBase64($base64, $width, $align)`Imagen desde base64`imageFile($path, $width, $align)`Imagen desde archivo`cut()`Corte de papel`openDrawer()`Abrir cajón de dineroMétodos del Printer
-------------------

[](#métodos-del-printer)

```
Printer::create()
    ->to('Nombre Impresora')   // nombre de la impresora
    ->paper58mm()              // 32 chars/línea
    ->paper80mm()              // 48 chars/línea (default)
    ->paperWidth(48)           // ancho personalizado
    ->withCut(true)            // cortar al final (default: true)
    ->withDrawer(false)        // abrir cajón (default: false)
    ->url('https://localhost:8443') // URL de ApiPeruDevPrint
    ->send($document);
```

Listar impresoras disponibles
-----------------------------

[](#listar-impresoras-disponibles)

```
$printers = Printer::availablePrinters();
// ['TP-300', 'Microsoft Print to PDF', ...]
```

Integración con Laravel
-----------------------

[](#integración-con-laravel)

```
// En un Service Provider o directamente en el controlador:
use ESolutions\Escpos\Document;
use ESolutions\Escpos\Printer;
use ESolutions\Escpos\Exceptions\PrinterException;

try {
    $doc = Document::make()
        ->textCenter('Boleta de Venta', bold: true)
        // ...
        ->cut();

    Printer::create()->to(config('printing.printer'))->send($doc);
} catch (PrinterException $e) {
    Log::error('Error de impresión: ' . $e->getMessage());
}
```

Licencia
--------

[](#licencia)

MIT

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance81

Actively maintained with recent releases

Popularity4

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

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

99d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/57302658?v=4)[eriquegasparcarlos](/maintainers/eriquegasparcarlos)[@eriquegasparcarlos](https://github.com/eriquegasparcarlos)

---

Tags

printerposreceiptescposthermal

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/eriquegasparcarlos-esolutions-escpos/health.svg)

```
[![Health](https://phpackages.com/badges/eriquegasparcarlos-esolutions-escpos/health.svg)](https://phpackages.com/packages/eriquegasparcarlos-esolutions-escpos)
```

###  Alternatives

[mike42/escpos-php

PHP receipt printer library for use with ESC/POS-compatible thermal and impact printers

2.8k2.1M26](/packages/mike42-escpos-php)[nfephp-org/posprint

Thermal POS printer library

7234.3k2](/packages/nfephp-org-posprint)[mazinsw/escpos

ESC/POS Printer Library

101.1k](/packages/mazinsw-escpos)[ramytalal/label-printer

An implementation of the Brother label printer API.

6543.4k](/packages/ramytalal-label-printer)[patrickschur/stanford-nlp-tagger

PHP wrapper for the Stanford Natural Language Processing library. Supports POSTagger and CRFClassifier.

7429.3k1](/packages/patrickschur-stanford-nlp-tagger)[classiebit/eventmie

Run your own Events business with Eventmie Pro. Use it as event ticket selling website or event management platform on your own domain.

1892.0k](/packages/classiebit-eventmie)

PHPackages © 2026

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