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 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


Release history Release notifications | RSS feed

Download files

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

Source Distribution

schwifty-2026.7.0.tar.gz (846.8 kB view details)

Uploaded Source

Built Distribution

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

schwifty-2026.7.0-py3-none-any.whl (344.7 kB view details)

Uploaded Python 3

File details

Details for the file schwifty-2026.7.0.tar.gz.

File metadata

  • Download URL: schwifty-2026.7.0.tar.gz
  • Upload date:
  • Size: 846.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.17.0 {"ci":true,"cpu":"x86_64","distro":{"id":"noble","libc":{"lib":"glibc","version":"2.39"},"name":"Ubuntu","version":"24.04"},"implementation":{"name":"CPython","version":"3.12.13"},"installer":{"name":"hatch","version":"1.17.0"},"openssl_version":"OpenSSL 3.0.13 30 Jan 2024","python":"3.12.13","system":{"name":"Linux","release":"6.17.0-1018-azure"}} HTTPX2/2.5.0

File hashes

Hashes for schwifty-2026.7.0.tar.gz
Algorithm Hash digest
SHA256 7a3fe64a30025aa3359e6f331a181278ec421476ab965df0097500d9ddbe57c6
MD5 a04dbe70b69a30513700bc93cb59e3ab
BLAKE2b-256 db03a6da2c5433faa91528b980b0b6bf0785a179020caa2fd3822dd4637cef13

See more details on using hashes here.

File details

Details for the file schwifty-2026.7.0-py3-none-any.whl.

File metadata

  • Download URL: schwifty-2026.7.0-py3-none-any.whl
  • Upload date:
  • Size: 344.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.17.0 {"ci":true,"cpu":"x86_64","distro":{"id":"noble","libc":{"lib":"glibc","version":"2.39"},"name":"Ubuntu","version":"24.04"},"implementation":{"name":"CPython","version":"3.12.13"},"installer":{"name":"hatch","version":"1.17.0"},"openssl_version":"OpenSSL 3.0.13 30 Jan 2024","python":"3.12.13","system":{"name":"Linux","release":"6.17.0-1018-azure"}} HTTPX2/2.5.0

File hashes

Hashes for schwifty-2026.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 20e711fbf9d1d055dfc49659f427ec31ea3b79b1af0e82b8036141991c430791
MD5 19e9f266878c3d92ac1d7ac4eb49e4d7
BLAKE2b-256 7067266ea8d0b6272dd31e695d4d251adf9f997f651110763b21ae792035b04c

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