PHPackages                             trustinsurance/ibanvalidator - 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. [Validation &amp; Sanitization](/categories/validation)
4. /
5. trustinsurance/ibanvalidator

ActivePackage[Validation &amp; Sanitization](/categories/validation)

trustinsurance/ibanvalidator
============================

Laravel package to validate IBAN and BIC

v1.0.0(1y ago)04MITPHP

Since May 6Pushed 1y ago1 watchersCompare

[ Source](https://github.com/zamakaziz/ibanvalidator)[ Packagist](https://packagist.org/packages/trustinsurance/ibanvalidator)[ RSS](/packages/trustinsurance-ibanvalidator/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

IBAN and BIC Validator for Laravel
==================================

[](#iban-and-bic-validator-for-laravel)

A lightweight Laravel package to validate **IBAN** and **BIC** codes.
This package simplifies validating international bank account numbers (IBAN) and bank identifier codes (BIC) using simple, reliable logic.

---

📦 Installation
--------------

[](#-installation)

### Step 1: Require the package via Composer

[](#step-1-require-the-package-via-composer)

```
composer require trustinsurance/ibanvalidator:^1.0

#Usage

Option 1: Dependency Injection
use Illuminate\Http\Request;
use Trustinsurance\IbanValidator\IbanValidator;

class PaymentController extends Controller
{
    protected $validator;

    public function __construct(IbanValidator $validator)
    {
        $this->validator = $validator;
    }

    public function validateBankDetails(Request $request)
    {
        $iban = 'CY17002001280000001200527600';
        $bic = 'CBCYCY2N';

        return response()->json([
            'iban_valid' => $this->validator->validateIban($iban),
            'bic_valid' => $this->validator->validateBic($bic),
        ]);
    }
}
Option 2: Facade Usage

use IbanValidator;

$iban = 'CY17002001280000001200527600';
$bic = 'CBCYCY2N';

$isIbanValid = IbanValidator::validateIban($iban);
$isBicValid = IbanValidator::validateBic($bic);

Validation Rules
IBAN Validation Logic

The IBAN validator checks the following:

    Removes all spaces

    Moves the first 4 characters to the end

    Converts alphabetic characters to numbers (A = 10, B = 11, ..., Z = 35)

    Computes mod 97 and checks if result equals 1

Example (Cyprus):

    CY17002001280000001200527600 → ✅ Valid

BIC Validation Logic

Validates BIC format using regex:

    8 or 11 characters

    Structure: BBBBCCLL or BBBBCCLLXXX

        BBBB: Bank code (letters)

        CC: Country code (letters)

        LL: Location code (alphanumeric)

        XXX: Optional branch code (alphanumeric)

Example:

    CBCYCY2N → ✅ Valid

```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance49

Moderate activity, may be stable

Popularity3

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

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

Unknown

Total

1

Last Release

378d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f87bfed57ffe3fcc3e56fa9b9f9595d018303c74d7de973104f4253c2f50f9bc?d=identicon)[zamakaziz](/maintainers/zamakaziz)

### Embed Badge

![Health badge](/badges/trustinsurance-ibanvalidator/health.svg)

```
[![Health](https://phpackages.com/badges/trustinsurance-ibanvalidator/health.svg)](https://phpackages.com/packages/trustinsurance-ibanvalidator)
```

###  Alternatives

[webmozart/assert

Assertions to validate method input/output with nice error messages.

7.6k894.0M1.2k](/packages/webmozart-assert)[bensampo/laravel-enum

Simple, extensible and powerful enumeration implementation for Laravel.

2.0k15.9M104](/packages/bensampo-laravel-enum)[swaggest/json-schema

High definition PHP structures with JSON-schema based validation

48612.5M73](/packages/swaggest-json-schema)[stevebauman/purify

An HTML Purifier / Sanitizer for Laravel

5325.6M19](/packages/stevebauman-purify)[ashallendesign/laravel-config-validator

A package for validating your Laravel app's config.

217905.3k5](/packages/ashallendesign-laravel-config-validator)[crazybooot/base64-validation

Laravel validators for base64 encoded files

1341.9M8](/packages/crazybooot-base64-validation)

PHPackages © 2026

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