Skip to main content
https://img.shields.io/pypi/v/schwifty.svg?style=flat-square https://img.shields.io/github/actions/workflow/status/mdomke/schwifty/lint-and-test.yml?branch=main&style=flat-square https://img.shields.io/pypi/l/schwifty.svg?style=flat-square https://readthedocs.org/projects/schwifty/badge/?version=latest&style=flat-square https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json&style=flat-square https://img.shields.io/codecov/c/gh/mdomke/schwifty?token=aJj1Yg0NUq&style=flat-square

Gotta get schwifty with your IBANs

schwifty is a Python library that lets you easily work with IBANs and BICs as specified by the ISO. IBAN is the International Bank Account Number and BIC the Business Identifier Code. Both are used for international money transfer.

Features

schwifty lets you

  • validate check-digits and the country specific format of IBANs

  • validate the national check digits of the BBAN for more than 20 countries

  • validate format and country codes from BICs

  • generate BICs from country and bank-code

  • generate IBANs from country-code, bank-code and account-number.

  • generate random valid IBANs

  • look up the bank and BIC of an IBAN’s bank-code in registries for 47 countries, generated from the official sources where they are available

  • identify retired bank codes that IBANs in circulation still carry, and tell whether their bank merged into another one or closed

  • check which SEPA schemes the institution of a BIC takes part in

  • access all relevant components as attributes

See the docs for more information.

Versioning

Since the IBAN specification and the mapping from BIC to bank_code is updated from time to time, schwifty uses CalVer for versioning with the scheme YY.0M.Micro.

Installation

To install schwifty, simply:

$ pip install schwifty

Development

The only prerequisite to work on schwifty is uv. Running uv sync creates a virtual environment with all development dependencies (including the tools mentioned below).

We use ruff as code formatter and linter. This avoids discussions about style preferences in the same way as gofmt does the job for Golang. The conformance to the formatting rules is checked in the CI pipeline, so that it is recommendable to install the configured prek-hook, in order to avoid long feedback-cycles.

$ uv sync --all-groups --all-extras
$ uv run prek install

You can also run uv run poe fmt to format the code or use one of the available editor integrations. See the contributing guide for the full list of development commands and the contribution workflow.

Project Information

schwifty is released under MIT license and its documentation lives at Read the Docs. The code is maintained on GitHub and packages are distributed on PyPI

Name

Since swift and swiftly were already taken by the OpenStack-project, but we somehow wanted to point out the connection to SWIFT, Rick and Morty came up with the idea to name the project schwifty.

https://i.cdn.turner.com/adultswim/big/video/get-schwifty-pt-2/rickandmorty_ep205_002_vbnuta15a755dvash8.jpg

Metadata

Release files for schwifty 2026.11.1

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

Source distribution (sdist)

Source distribution for schwifty 2026.11.1
File Size Uploaded Provenance Actions
schwifty-2026.11.1.tar.gz 1.0 MB Without provenance Details for schwifty-2026.11.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for schwifty 2026.11.1
File Interpreter ABI Platform Actions
schwifty-2026.11.1-py3-none-any.whl Python 3 none any Details for schwifty-2026.11.1-py3-none-any.whl

Total release size: 1.5 MB

Release files / schwifty-2026.11.1.tar.gz

Download URL schwifty-2026.11.1.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
45d00a54653e801d39aee09bcdb36c4106d878fe9dc2307e1a8310fea0e57c86
BLAKE2b-256 checksum
How to use checksums
f83ed27592d35539c3a37bb2130536667d4dc8cad3043b240559f797789aa30c
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":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / schwifty-2026.11.1-py3-none-any.whl

Download URL schwifty-2026.11.1-py3-none-any.whl
Size 492.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7a0ac701fd71478368daab5facf3dfe738c6e96ebaa7bf91978a4b65ab3a0592
BLAKE2b-256 checksum
How to use checksums
ca6e0e7f611dbdf9f4030f6a5e9f71747ea6652bbaa3f3ae1af567c718ec7f1f
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":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for schwifty 2026.11.1

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

2026.11.1 This release

2 release files No provenance

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