Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/ali-zahedi/az-iranian-bank-intro

محاسبه شماره شبا، اعتبار سنجی کارت ها و شماره شبا بانک های مختلف مانند شبا بانک ملی، بانک صادرات، بانک سپه، بانک سامان، و ....
https://github.com/ali-zahedi/az-iranian-bank-intro

bank bmi card iban mellat melli parsian pasargad-bank python saderat-bank

Last synced: 4 months ago
JSON representation

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

Lists

README

        

![GitHub](https://img.shields.io/github/license/ali-zahedi/az-iranian-bank-intro)
![GitHub](https://img.shields.io/pypi/pyversions/az-iranian-bank-intro.svg?maxAge=2592000)
![GitHub](https://img.shields.io/pypi/v/az-iranian-bank-intro.svg?maxAge=2592000)

# AZ Iranian Bank intro


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

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

[[_TOC_]]

نصب

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

```pip install az-iranian-bank-intro```

نحوه استفاده

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


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

```python
import logging
from azbankintro import card_validate, CardValidationException

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

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


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

```python
import logging
from azbankintro import iban_validate, IBANValidationException

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

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

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


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

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


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

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


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

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


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

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

- [X] Bank list

- [ ] Logo

- [X] Validate card

- [X] Validate IBAN

- [X] Calculate IBAN

## توسعه


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



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

## License

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