A check digit library for data validation


Keywords
Check, Digits, Validation, ISBN, GS1, Luhn, check-digit, credit-card, ean, gtin, luhn-algorithm, upc, verhoeff
License
CNRI-Python-GPL-Compatible
Install
pip install checkdigit==0.3.1

Documentation

checkdigit logo

GitHub Workflow Status Codecov PyPI - Downloads CodeFactor Grade

checkdigit example


Packaging status

checkdigit is a pure Python library built for identification numbers. You want to validate a credit card number, or maybe even calculate a missing digit on an ISBN code? We've got you covered 😎.

Want to know more? Check out the API Reference and documentation!

Installation

MacPorts 🍎

sudo port install py-checkdigit

PyPi 🐍

pip install checkdigit

Features

  • 📦 Works out of the box with all supported Python versions (3.7-3.11).
  • ⌨️ PEP 561 compatible, with built in support for type checking.
  • 🏃 Zero runtime dependencies. What you see is what you get.
  • 🧮 Capable of calculating missing digits or validating a block of data.
  • 📝 Extensive in-code comments and docstrings to explain how it works behind the scenes.

Supported Formats

For each of these formats, we provide functions to validate them and calculate missing digits.

Do you have any formats that you'd like to see supported? 🤔 Feel free to raise an issue, or even to send a pull request!

Contributors

This project follows the all-contributors specification. Contributions of any kind are welcome!

Want to help out? Check out the contributing page.

Thanks goes to these wonderful people (emoji key):


Timothy Langer

⚠️ 📖

Charlie Wilson

💻 ⚠️

Max Bowman

💻 ⚠️

Mohsen BANAN

🐛

📙 License

This project is licensed under GPL-3.0-or-later.