PHPackages                             meita/saudi-banks - 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. meita/saudi-banks

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

meita/saudi-banks
=================

Saudi banks IBAN identifier lookup with Arabic and English names.

1.0.2(4mo ago)01MITHTMLPHP &gt;=8.0

Since Dec 15Pushed 4mo agoCompare

[ Source](https://github.com/EngMEita/saudi-banks)[ Packagist](https://packagist.org/packages/meita/saudi-banks)[ RSS](/packages/meita-saudi-banks/feed)WikiDiscussions main Synced 1mo ago

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

meita/saudi-banks
=================

[](#meitasaudi-banks)

Saudi banks IBAN identifier lookup with English and Arabic names.

The library ships a small, typed dataset of every IBAN bank identifier used in Saudi Arabia, including legacy codes for merged banks. It exposes helpers to list all banks, resolve a bank from a two-digit IBAN identifier, or resolve directly from a full Saudi IBAN string.

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

[](#installation)

```
composer require meita/saudi-banks
```

Usage
-----

[](#usage)

```
use Meita\SaudiBanks\Banks;

// Get every bank as value objects
$banks = Banks::all();

// Resolve by the two-digit IBAN identifier (positions 5-6 in SA IBANs)
$rajhi = Banks::findByIbanIdentifier('80');

// Resolve from a full IBAN (spaces are fine)
$fromIban = Banks::findByIban('SA03 8000 0000 6080 1016 7519');

// Export to array for JSON responses
header('Content-Type: application/json');
echo json_encode($fromIban->toArray(), JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
```

Data dictionary
---------------

[](#data-dictionary)

Each record contains:

- `iban_identifier` — Two-digit IBAN bank identifier (string to preserve leading zeros).
- `english_name` — Formal English name.
- `arabic_name` — Formal Arabic name.
- `short_name` — Common ticker/short name.
- `active` — `false` for legacy identifiers that still exist on old IBANs.
- `notes` — Optional context.

Current coverage
----------------

[](#current-coverage)

IBAN codeShortEnglish nameArabic nameActive05ALINMAAlinma Bankمصرف الإنماءyes10SNBSaudi National Bank (SNB)البنك الأهلي السعوديyes15ALBILADBank Albiladبنك البلادyes20RIYADRiyad Bankبنك الرياضyes30ANBArab National Bankالبنك العربي الوطنيyes40SAMBASamba Financial Group (legacy)مجموعة سامبا الماليةno45SABBSaudi British Bank (SABB)البنك السعودي البريطانيyes50ALAAWWALAlawwal Bank (legacy)البنك الأولno55BSFBanque Saudi Fransiالبنك السعودي الفرنسيyes60BJAZBank AlJaziraبنك الجزيرةyes65SAIBThe Saudi Investment Bankالبنك السعودي للاستثمارyes71NBBNational Bank of Bahrain (Saudi Branch)بنك البحرين الوطنيyes75NBKNational Bank of Kuwait (Saudi Branch)بنك الكويت الوطنيyes76BMUSCATBank Muscat (Saudi Branch)بنك مسقطyes80RAJHIAl Rajhi Bankمصرف الراجحيyes81DEUTSCHEDeutsche Bank (Saudi Branch)دويتشه بنكyes82NBPNational Bank of Pakistan (Saudi Branch)البنك الوطني الباكستانيyes84ZIRAATZiraat Bankası (Saudi Branch)بنك زراعات التركيyes85BNPBNP Paribas (Saudi Branch)بي إن بي باريباyes86JPMJPMorgan Chase Bank (Saudi Branch)جي بي مورغان تشيس بنكyes90GIBGulf International Bankبنك الخليج الدوليyes95ENBDEmirates NBD (Emirates Bank International)بنك الإمارات دبي الوطنيyesIf you spot an omission or change (e.g., new branches or retired identifiers), open a PR or file an issue.

Testing
-------

[](#testing)

```
composer install
./vendor/bin/phpunit
```

Tests validate uniqueness of identifiers, basic lookup helpers, and a sample IBAN parse.

License
-------

[](#license)

MIT

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance74

Regular maintenance activity

Popularity1

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity42

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

3

Last Release

148d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5915383ac10e7c148c23e142195199c8e7909acc2cda2003c26e688090956014?d=identicon)[EngMEita](/maintainers/EngMEita)

---

Top Contributors

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

---

Tags

lookupIBANksabankssaudi

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/meita-saudi-banks/health.svg)

```
[![Health](https://phpackages.com/badges/meita-saudi-banks/health.svg)](https://phpackages.com/packages/meita-saudi-banks)
```

###  Alternatives

[vaersaagod/geomate

GeoMate is a friend in need for all things geolocation. IP to geo lookup, automatic redirects (based on country, continent, language, etc), site switcher... You name it.

2367.3k](/packages/vaersaagod-geomate)

PHPackages © 2026

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