MIT selection Tax codes and IBAN

IBAN in Python

mdomke/schwifty

schwifty is a Python library for working with IBANs and BICs: validating their check digits and formats, generating them, and accessing their components as attributes.

A string of blue glass beads passing through a small brass gate.
Author
mdomke
Language
Python
Licence
MIT
GitHub stars
261
Last activity
Category
Tax codes and IBAN

Licence checked on 25/10/2026. Stars and last activity recorded on GitHub on the same date.

Overview

schwifty validates the check digits and the country-specific format of an IBAN, as well as the format and country code of a BIC. It can also generate a BIC from a country and a bank code, generate an IBAN from a country, bank code and account number, and produce random valid IBANs.

It looks up the BIC associated with an IBAN’s bank code and exposes all components as attributes. Because the IBAN specification and the mapping from BIC to bank code are updated from time to time, the project uses CalVer versioning with the scheme YY.0M.Micro. It installs with pip and is released under the MIT license.

Highlights

  • Validation of the check digits and country-specific format of an IBAN.
  • Validation of the format and country codes of a BIC.
  • Generation of BICs (country and bank code), IBANs (country, bank code, account number) and random valid IBANs.
  • Lookup of the BIC associated with an IBAN’s bank code and access to components as attributes.
  • CalVer versioning (YY.0M.Micro) and documentation hosted on Read the Docs.

Who it is for

For Python developers who need to check or produce IBANs and BICs, for example in a tool that prepares international money transfers.

Installation

Install with pip from PyPI. Validation and generation examples are linked in the Read the Docs documentation.

Commands

Read the project README before running these commands.

pip install schwifty

Read the README on GitHub

Points of attention

  • The version number follows the date (CalVer YY.0M.Micro), because the IBAN specification and the BIC / bank code mapping are updated from time to time.
  • The repository’s pyproject.toml declares Python 3.11 or later; the README does not mention this requirement.

Can an agent use it?

AGENTS.md is an orientation guide for agents working on the schwifty code (commands, vocabulary, design decisions). No SKILL.md or MCP server found: this is a Python library.

Likes and comments

No account needed: one like per browser, which you can remove. Comments are published after review.

This project is hosted by its author: your comments are about this page, not the code. To report an issue with the project, use its repository.

MIT selection

Codice fiscale in Python

fabiocaccamo/python-codicefiscale

Encodes, decodes and validates the Italian codice fiscale, in Python.

MIT selection

European tax identifiers

koblas/stdnum-js

Validates codice fiscale, partita IVA and VAT numbers from many EU countries, in TypeScript.

Made by SOGNI DIGITALI

Complete design system

design-system-builder

One interactive multilingual page plus the design.md file your coding agents read.

A custom skill for your trade?

We also write private skills, in your name. Let's talk about it on a 30-minute call.

Book the free call (30 min)