Skip to main content

IBAN parsing and validation

Project description

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/badge/code%20style-black-000000.svg?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 let’s you easily work with IBANs and BICs as specified by the ISO. IBAN is the Internation 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 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

  • get the BIC associated to an IBAN’s bank-code

  • access all relevant components as attributes

See the docs for more inforamtion.

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

We use the black as code formatter. 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 pre-commit-hook, in order to avoid long feedback-cycles.

$ pre-commit install

You can also use the fmt Makefile-target to format the code or use one of the available editor integrations.

Project Information

# schwifty-md

Fork of [schwifty](https://github.com/mdomke/schwifty) with support for Moldova (MD) IBANs.

Original author: Martin Domke

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

schwifty_md-2026.6.4.tar.gz (759.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

schwifty_md-2026.6.4-py3-none-any.whl (361.3 kB view details)

Uploaded Python 3

File details

Details for the file schwifty_md-2026.6.4.tar.gz.

File metadata

  • Download URL: schwifty_md-2026.6.4.tar.gz
  • Upload date:
  • Size: 759.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for schwifty_md-2026.6.4.tar.gz
Algorithm Hash digest
SHA256 fb75a127920c1decf97c4349f5a761705e19c932a508e83746e082a53999fe21
MD5 f83c68cfe2cdcfa4b743bc8a730766be
BLAKE2b-256 80fff9df156fc46ef523cd88275d213739db7bf3cb26da8a6fd15e300abb6d8f

See more details on using hashes here.

File details

Details for the file schwifty_md-2026.6.4-py3-none-any.whl.

File metadata

  • Download URL: schwifty_md-2026.6.4-py3-none-any.whl
  • Upload date:
  • Size: 361.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for schwifty_md-2026.6.4-py3-none-any.whl
Algorithm Hash digest
SHA256 41932ce35bbca7bc86d6612bb421aa5de2a0fc50b18abc6f062daa88710be32d
MD5 278fa6e05532661616e07bc4625e37bf
BLAKE2b-256 37431e8c5a9a5b3701026f5d7a4e1efc1bb51937535d939ee11823280fed7df7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page