Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

paperless-asn-qr-codes

paperless-asn-qr-codes is a command line utility for generating ASN labels for paperless with both a human-readable representation and a QR code for machine consumption. The labels are Avery 4731 labels by default.

Installation

pip install paperless-asn-qr-codes

In case you wanna use unrelease features, we also publish the main branch as development version to PyPi.

Usage

Run with uvx:

uvx paperless-asn-qr-codes

Run with uvx with a specific version, e.g. for pre-releases:

uvx --from paperless-asn-qr-codes==<version>

E.g. for dev15:

uvx --from paperless-asn-qr-codes==0.4.1dev15

Command Line Arguments:

usage: paperless-asn-qr-codes [-h] [--format {averyL4731,avery5160,avery5161,avery5163,avery5167,avery5371,herma10003}]
                              [--digits DIGITS] [--border] [--row-wise] [--num-labels NUM_LABELS] [--pages PAGES]
                              [--start-position START_POSITION]
                              start_asn output_file

CLI Tool for generating paperless ASN labels with QR codes

positional arguments:
  start_asn             The value of the first ASN
  output_file           The output file to write to (default: labels.pdf)

options:
  -h, --help            show this help message and exit
  --format, -f {avery5160,avery5161,avery5163,avery5167,avery5371,averyL4731,averyL4732,herma10003,herma4201,herma4346}
  --digits, -d DIGITS   Number of digits in the ASN (default: 7, produces 'ASN0000001')
  --border, -b          Display borders around labels, useful for debugging the printer alignment
  --row-wise, -r        Increment the ASNs row-wise, go from left to right
  --num-labels, -n NUM_LABELS
                        Number of labels to be printed on the sheet
  --pages, -p PAGES     Number of pages to be printed, ignored if NUM_LABELS is set (default: 1)
  --start-position, -s START_POSITION
                        Define the starting position on the sheet, eighter as ROW:COLUMN or COUNT, both starting from 1 (default: 1:1 or 1)

Mandatory arguments

  • <start_asn>: The value of the first ASN to generate

Optional arguments

  • <output_file>: The name of the output file to write to (default: labels.pdf)

  • -h, --help: Shows the help message
  • -f, --format: Selects the format of the output sheet (see Supported Sheets)
  • -d, --digits: Specifies the number of digits in the ASN (e.g. for the default number 7, the ASN will look like 'ASN0000001')
  • -b, --border: Generates the borders around the labels to help debug alignment issues (see Tips & Tricks)
  • -r, --row-wise: Increments the labels from left to right instead of top to bottom
  • -n, --num-labels: Number of labels to be printed on the sheet
  • -p, --pages: Number of pages to be generated, ignored if -n is present.
  • -s, --start-position: Positon of first label to be printed, either defined as ROW:COLUMN or NUMBER. Starting from 1 eg. to use the whole sheet it would be 1:1 or 1. Useful if you have a partly used sheet from using -n.

Supported Sheets

Some different sheet types are supported with the -f/--format argument, however, not all are tested.

The default is Avery L4731.

Currently tested and known working are:

  • Avery L4731 (189 Labels on DIN A4, the default)
  • Avery L4732 (80 Labels on DIN A4)
  • Avery 3657 (40 Labels on DIN A4)
  • Avery L7162 (manual cutting needed, 4 ASNs per Label)
  • Herma 10003 (80 Labels on DIN A4, formerly Herma 4345)
  • Herma 4201 (64 Labels on DIN A4, Disclaimer: Not perfect ;))
  • Herma 4346 (48 Labels on DIN A4)
  • Herma 4333 (189 Labes on DIN A4)

If you don't have label sheets at hand, you can also use:

  • genericA4large (70 Labels on plain DIN A4, manual cutting needed)

Tips & Tricks

In case your printer has alignment issues, you can generate a PDF with borders around the labels by using the -b/--border option.

Attribution

This script is based upon a public domain label generation class from @timrprobocom https://gist.github.com/timrprobocom/3946aca8ab75df8267bbf892a427a1b7

License

paperless-asn-qr-codes is distributed under the terms of the GPL-3.0 license.

Metadata

Release files for paperless-asn-qr-codes 0.6.1.dev13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for paperless-asn-qr-codes 0.6.1.dev13
File Size Uploaded Provenance Actions
paperless_asn_qr_codes-0.6.1.dev13.tar.gz 68.1 kB Without provenance Details for paperless_asn_qr_codes-0.6.1.dev13.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for paperless-asn-qr-codes 0.6.1.dev13
File Interpreter ABI Platform Actions
paperless_asn_qr_codes-0.6.1.dev13-py3-none-any.whl Python 3 none any Details for paperless_asn_qr_codes-0.6.1.dev13-py3-none-any.whl

Total release size: 88.0 kB

Release files / paperless_asn_qr_codes-0.6.1.dev13.tar.gz

Download URL paperless_asn_qr_codes-0.6.1.dev13.tar.gz
Size 68.1 kB
Tags Source
SHA-256 checksum
How to use checksums
9a33a7570f44bb371f6a9a578f5e2c0cb2713d5460d1287a44ccc96292580849
BLAKE2b-256 checksum
How to use checksums
c4657234f20b58c88934a879bb31769c235e747d0be96fc3cffbb37d1da35c54
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Alpine Linux","version":"3.24.4","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / paperless_asn_qr_codes-0.6.1.dev13-py3-none-any.whl

Download URL paperless_asn_qr_codes-0.6.1.dev13-py3-none-any.whl
Size 19.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
42e089987ff6198205e62bcadaeffb9b33c8b17291e5fb0c750da35f923169fc
BLAKE2b-256 checksum
How to use checksums
200f3e7ffbd64823b5928959423be90a03f5477975c827a4d7bbf8aea7c8cfad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Alpine Linux","version":"3.24.4","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for paperless-asn-qr-codes 0.6.1.dev13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page