/az-iranian-bank-intro

محاسبه شماره شبا، اعتبار سنجی کارت ها و شماره شبا بانک های مختلف مانند شبا بانک ملی، بانک صادرات، بانک سپه، بانک سامان، و ....

Primary LanguagePythonMIT LicenseMIT

GitHub GitHub GitHub

AZ Iranian Bank intro

کدهای آزاد و متن باز به زبان پایتون (python) که برای استفاده از اطلاعات، اعتبار سنجی درگاه های بانکهای ایرانی توسعه داده شده است.

🌟 If you ❤️ library, please star it! 🌟

[[TOC]]

نصب

نصب از طریق پکیج منیجر

pip install az-iranian-bank-intro

نحوه استفاده

اعتبار سنجی کارت ها

برای اعتبار سنجی کارت های بانکی کافی است متد اعتبار سنجی را ایمپورت کنیم و شماره کارت مورد نظر را به آن پاس دهیم. در صورتی که شماره کارت مورد نظر معتبر باشد برنامه به کار خود ادامه خواهد داد و در صورتی که نا معتبر باشد exception ارسال خواهد شد.

import logging
from azbankintro import card_validate, CardValidationException

try:
    card_validate('6280992042433333')
    logging.debug('کارت معتبر است.')     
except CardValidationException:
    logging.debug('کارت نا معتبر است.')

اعتبار سنجی IBAN یا شماره شبا

برای اعتبار سنجی شماره IBAN کافی است متد اعتبار سنجی را ایمپورت کنیم و شماره IBAN مورد نظر را به آن پاس دهیم. در صورتی که شماره مورد نظر معتبر باشد برنامه به کار خود ادامه خواهد داد و در صورتی که نا معتبر باشد exception ارسال خواهد شد.

import logging
from azbankintro import iban_validate, IBANValidationException

try:
    iban_validate('IR062960000000100324200001')
    logging.debug('شماره IBAN معتبر است.')     
except IBANValidationException:
    logging.debug('شماره IBAN نا معتبر است.')

استفاده از کلاس IBAN

تبدیل شماره حساب به شبا یا IBAN

در صورتی که تمایل دارید شماره حساب بانک مورد را تبدیل به شماره شبا کنید می توانید از ساختار زیر استفاده کنید.

from azbankintro import *
IBAN.calculate_iban(BankEnum.MELLI_BANK, '0338404829005')

در صورتی که نوع بانک مد نظر را ندارید و فقط رشته آن را دارید می توانید از کد زیر جهت دریافت بانک استفاده کنید.

from azbankintro import *
s = 'BMI'
bank_type = BankEnum(s)
IBAN.calculate_iban(bank_type, '0338404829005')

در صورتی که یک instance از نوع IBAN دارید نیز می توانید عملیات اعتبار سنجی را به گونه زیر انجام دهید.

from azbankintro import *
s = 'BMI'
bank_type = BankEnum(s)
iban = IBAN.calculate_iban(bank_type, '0338404829005')
iban.validate()

می توانید از فرمتر نیز استفاده کنید.

from azbankintro import *
iban = IBAN.calculate_iban(BankEnum.MELLI_BANK, '0338404829005')
print(iban.__str__())
print(iban.format('-'))
print(iban.format(' '))
"""
IR040170000000338404829005
IR04-0170-0000-0033-8404-8290-05
IR04 0170 0000 0033 8404 8290 05
"""

TODO

  • Documentation

  • Bank list

  • Logo

  • Validate card

  • Validate IBAN

  • Calculate IBAN

توسعه

اگر از این بسته استفاده می کنید و خوشتون اومده با دادن ستاره به ما دلگرمی بدید.البته که اگر زمان بگذارید و گسترش بدید خیلی استقبال می کنیم و خوشحال میشیم. البته که در هیچ کدوم از این موارد اصراری نیست.

شاد باشید و خندون

License

The MIT License (MIT). Please see License File for more information.