银行账户验证的Python实现。
项目描述
Bank Account Validator
银行账户验证的Python实现。
目前,最大的巴西银行已实现 - 并正在进行验证。尚未实现其他国家的银行,但代码是模块化的,可以轻松实现。
用法
from bank_account_validator.core import Bank
bank_class = Bank.get('bank_code', 'country_code')
bank_class(branch='branch', branch_digit='branch_digit',
account='account', account_digit='account_digit').execute()
示例
from bank_account_validator.core import Bank, BrazilianBank
# Account below is correct, so nothing is raised by calling execute()
bank_class = Bank.get('237', 'BR')
bank_class(branch='1769', branch_digit='8', account='200040', account_digit='7').execute()
# Account below has invalid branch so InvalidBranch will be raised
bank_class = BrazilianBank.get('237')
bank_class(branch='1769', branch_digit='0', account='200040', account_digit='7').execute()
# InvalidBranch: Branch "1769-0" is wrong.
# Account below has invalid account so InvalidAccount will be raised
bank_class = BrazilianBank.get('237')
bank_class(branch='1769', branch_digit='8', account='200040', account_digit='0').execute()
# InvalidAccount: Account "0200040-0" is wrong.
# Sometimes there is not an unitary validation for both branch and account
# I mean, the full combination is evaluated at once.
bank_class = BrazilianBank.get('033')
bank_class(branch='2006', branch_digit='', account='01008407', account_digit='1').execute()
# InvalidBranchAndAccountCombination: Combination (branch="2006", account="01008407-1") does not match.
# It also validates wether digits must be supplied or not, as well as branch/account lengths
bank_class = BrazilianBank.get('237')
bank_class(branch='111769', branch_digit='8', account='200040', account_digit='7').execute()
# InvalidBranchlength: For bank code "237", branches length must be 4.
bank_class(branch='1769', branch_digit='8', account='11200040', account_digit='7').execute()
# InvalidAccountlength: For bank code "237", accounts length must be 7.
bank_class(branch='1769', branch_digit='', account='200040', account_digit='7').execute()
# MissingBranchDigit: For bank code "237", branches must have a digit, of length 1.
bank_class(branch='1769', branch_digit='11', account='200040', account_digit='7').execute()
# UnexpectedBranchDigit: For bank code "237", branches must have 1 digits.
bank_class(branch='1769', branch_digit='8', account='200040', account_digit='').execute()
# MissingAccountDigit: For bank code "237", accounts must have a digit, of length 1.
bank_class(branch='1769', branch_digit='8', account='200040', account_digit='11').execute()
# UnexpectedAccountDigit: For bank code "237", accounts must have 1 digits.
贡献
您是否想过一些有趣的功能,或者您是否发现了错误?请告诉我!
当然,您也可以下载项目并发送我一些拉取请求。
您可以通过打开问题发送您的建议。
您也可以直接与我联系。查看我的联系信息http://filwaitman.github.io/(首选电子邮件而不是手机)。
项目详细信息
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。
源代码分发
bank-account-validator-0.2.tar.gz (18.1 kB 查看哈希值)
构建发行版
关闭
bank-account-validator-0.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fc1a33f05b4e88a70014bf71d193225d57c66a4ba13dfe08de9342b51d9d337c |
|
MD5 | 85ad9a180dd8ca52c124a02424e468fa |
|
BLAKE2b-256 | d17fb8005802f2dc3161bae388cfbcdd7461648244fcf84736aedbb6ee587206 |
关闭
bank_account_validator-0.2-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 23fd68eda9a365a69509b15e9e914a88ed86f475a6f32af19565ecfaa00f23f5 |
|
MD5 | e2f7fbede52ff2f2a89f898830f9aff9 |
|
BLAKE2b-256 | 83d2560a3367179d3dc59669999833f50d1d60b8a0b9742dd3600fb09d4afac5 |