---
title: "PosPrinterDriver text command reference"
description: "Formatting, cutting, drawer, logo, QR, code page and raw byte commands accepted by PosPrinterDriver."
canonical: "https://www.posprinterdriver.com/en-command-reference"
date_modified: "2026-09-14"
language: "en"
---

# Commands inside your ticket text.

PosPrinterDriver recognises text markers and converts them to ESC/POS instructions. Test each command on the actual printer model before production use.

## Formatting and actions

| Marker | Effect | Note |
| --- | --- | --- |
| $intro$ | Line break or paper feed | Use it to structure the ticket |
| $bold$ / $unbold$ | Enable or disable bold | Appearance depends on the printer font |
| $small$ / variants | Smaller text | Available variants depend on the app parser |
| $big$ / variants | Larger text | Check that it fits the width |
| $cut$ | Cut command | Depends on the cutter and settings |
| $cutt$ | Alternative cut command | Test which variant works on your model |
| $drawer$ | Open cash drawer | Requires a compatible drawer and connector |
| $drawer2$ | Alternative drawer pulse | May correspond to the second pin or another variant |
| $logo$ | Print the configured logo | Configure and test the logo in the app first |
| $codepageN$ | Select code page N | N must be supported by the printer and app |

## Sample ticket

```text
$bold$ORDER #123$unbold$$intro$
Table 4$intro$
2 × Coffee                 3,20 €$intro$
$big$TOTAL              12,50 €$intro$
$qr-6-https://example.com/p/123$
$cut$
```

- Validate the exact QR format with the installed version.
- Control line length according to paper width and font size.

## QR code

The reviewed parser recognises a QR marker containing size and content, and uses a specific error message for an invalid size. Encode or avoid separators that could be confused with the syntax.

- Start with a medium size and a short URL.
- Test text containing hyphens and non-ASCII characters.
- Do not include secrets in a printed QR code.

## Raw bytes

The ·number· syntax inserts individual byte values. This is an advanced feature: an incorrect value can change printer state or feed unnecessary paper.

- Accept values from 0 to 255 only.
- Do not build raw byte sequences from unvalidated user input.
- Isolate and document model-specific sequences.

## ESC/POS is not identical on every printer

> Two printers advertising ESC/POS may use different code pages or cutting variants. A physical test on the target model is the final reference.
