PHPackages                             emadshirzad/iranian-bank-list-laravel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. emadshirzad/iranian-bank-list-laravel

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

emadshirzad/iranian-bank-list-laravel
=====================================

list all banks into laravel

v1.0.1(11mo ago)251MITPHPPHP &gt;=8.3

Since Jun 2Pushed 11mo agoCompare

[ Source](https://github.com/Emadshirzad/iranian-bank-list-laravel)[ Packagist](https://packagist.org/packages/emadshirzad/iranian-bank-list-laravel)[ Docs](https://github.com/EmadShirzad/iranian-bank-list-laravel)[ RSS](/packages/emadshirzad-iranian-bank-list-laravel/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (3)Used By (0)

Iranian Bank List for Laravel
=============================

[](#iranian-bank-list-for-laravel)

A comprehensive Laravel package for Iranian banking operations including bank identification, IBAN validation, and card number verification.

Features
--------

[](#features)

- Complete list of Iranian banks with details
- IBAN validation using mod-97 algorithm
- Iranian card number validation using Luhn algorithm
- Bank identification by IBAN, card number, or name
- FilamentPHP integration support
- Easy-to-use facade and model interfaces

Installation
------------

[](#installation)

1. **Install the package via Composer:**

    ```
    composer require emadshirzad/iranian-bank-list-laravel
    ```
2. **Publish the configuration file:**

    ```
    php artisan vendor:publish --tag=iranian-bank-config
    ```
3. **Run the migration to create the banks table:**

    ```
    php artisan migrate
    ```
4. **Seed the database with bank data:**

    ```
    php artisan db:seed --class=IranianBankSeeder
    ```

Usage
-----

[](#usage)

### Getting All Banks

[](#getting-all-banks)

```
use EmadShirzad\IranianBank\Facades\IranianBank;

// Using facade
$banks = IranianBank::getBanks();

// Or using model directly
use App\Models\IranianBank;
$banks = IranianBank::all();
```

### Bank Identification

[](#bank-identification)

**Get bank details by IBAN:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$bank = IranianBank::getBankByIban('IR123456789012345678901234567890');
// Returns bank details or null if not found
```

**Get bank details by card number:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$bank = IranianBank::getBankByCardNumber('6037991234567890');
// Returns bank details or null if not found
```

**Find bank by name:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$bank = IranianBank::findByName('melli');
// Returns bank details or null if not found
```

### Advanced Search Methods

[](#advanced-search-methods)

**Find bank by full card number using regex:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$bank = IranianBank::findByCardNumber('6037991234567890');
// Returns bank details or null if not found
```

**Find bank by full IBAN using regex:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$bank = IranianBank::findByIban('IR123456789012345678901234567890');
// Returns bank details or null if not found
```

### Validation Methods

[](#validation-methods)

**Validate IBAN:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$isValid = IranianBank::validateIban('IR123456789012345678901234567890');
// Returns true or false
```

**Validate Iranian card number using Luhn algorithm:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$isValid = IranianBank::validateIranianCard('6037991234567890');
// Returns true or false
```

**Validate IBAN checksum using mod-97 algorithm:**

```
use EmadShirzad\IranianBank\Facades\IranianBank;

$isValid = IranianBank::validateChecksum('IR123456789012345678901234567890');
// Returns true or false
```

FilamentPHP Integration
-----------------------

[](#filamentphp-integration)

If you're using FilamentPHP, you can easily create an admin interface for the bank data:

1. **Create a Filament resource:**

    ```
    php artisan make:filament-resource IranianBank
    ```
2. **Update the resource file** at `app/Filament/Resources/IranianBankResource.php` using the package methods.
3. **Example implementation** can be found in the [FilamentResource example file](https://github.com/Emadshirzad/iranian-bank-list-laravel/tree/master/assets/IranianBankResource.php).

The FilamentPHP integration provides a clean admin interface for managing Iranian bank data:

[![Filament Interface](https://github.com/Emadshirzad/iranian-bank-list-laravel/raw/master/assets/image.png)](https://github.com/Emadshirzad/iranian-bank-list-laravel/blob/master/assets/image.png)

Documentation
-------------

[](#documentation)

For detailed FilamentPHP usage, refer to the [official FilamentPHP documentation](https://filamentphp.com/docs/3.x/panels/installation).

Requirements
------------

[](#requirements)

- PHP &gt;= 8.0
- Laravel &gt;= 9.0

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT License](https://opensource.org/license/mit/).

Contributing
------------

[](#contributing)

We welcome contributions! Please follow these steps:

1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

Support
-------

[](#support)

If you encounter any issues or have questions, please [open an issue](https://github.com/EmadShirzad/iranian-bank-list-laravel/issues) on GitHub.

Author
------

[](#author)

**[Emad Shirzad](https://github.com/EmadShirzad)**

---

Made with ❤️ for the Laravel community

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance51

Moderate activity, may be stable

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

345d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/86e6aaaf3c4d486c14298923753aa8a36d21827741527d58f0b48f093153fc6c?d=identicon)[Emadshirzad](/maintainers/Emadshirzad)

---

Top Contributors

[![Emadshirzad](https://avatars.githubusercontent.com/u/141444183?v=4)](https://github.com/Emadshirzad "Emadshirzad (4 commits)")

---

Tags

laravellistBankfilamentiranian

### Embed Badge

![Health badge](/badges/emadshirzad-iranian-bank-list-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/emadshirzad-iranian-bank-list-laravel/health.svg)](https://phpackages.com/packages/emadshirzad-iranian-bank-list-laravel)
```

###  Alternatives

[tlr/menu

Take some of the stress and boilerplate out of building menus (or indeed any list, because that's basically what a menu is) With support for laravel

189.6k](/packages/tlr-menu)[promethys/revive

A 'RecycleBin' page where users can restore or delete permanently soft-deleted models.

161.2k](/packages/promethys-revive)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
