# indian-financial-utils

A lightweight, zero-dependency TypeScript library to validate Indian financial identifiers like PAN, Aadhaar, GSTIN, IFSC, PIN code, and mobile numbers.

![npm](https://img.shields.io/npm/v/indian-financial-utils) ![license](https://img.shields.io/npm/l/indian-financial-utils) ![downloads](https://img.shields.io/npm/dt/indian-financial-utils)

## ✨ Features

- 🔐 PAN Card Number Validation
- 🆔 Aadhaar Number Format Validation
- 🧾 GSTIN Format Validation
- 🏦 IFSC Code Format Check
- 📱 Indian Mobile Number Validation
- 📮 PIN Code Validation

## 📦 Installation

```bash
npm install indian-financial-utils
```

## Usage

## ✅ ES6 (import)

```js
import {
  isValidPAN,
  isValidAadhaar,
  isValidGSTIN,
  isValidIFSC,
  isValidIndianMobileNumber,
  isValidIndianPINCode,
} from "indian-financial-utils";

console.log(isValidPAN("ABCDE1234F")); // true
console.log(isValidAadhaar("123456789012")); // true
console.log(isValidGSTIN("22AAAAA0000A1Z5")); // true
console.log(isValidIFSC("SBIN0000123")); // true
console.log(isValidIndianMobileNumber("9876543210")); // true
console.log(isValidIndianPINCode("560001")); // true
```

## ✅ CommonJS (require)

```js
const {
  isValidPAN,
  isValidAadhaar,
  isValidGSTIN,
  isValidIFSC,
  isValidIndianMobileNumber,
  isValidIndianPINCode,
} = require("indian-financial-utils");

console.log(isValidPAN("ABCDE1234F")); // true
console.log(isValidAadhaar("123456789012")); // true
console.log(isValidGSTIN("22AAAAA0000A1Z5")); // true
console.log(isValidIFSC("SBIN0000123")); // true
console.log(isValidIndianMobileNumber("9876543210")); // true
console.log(isValidIndianPINCode("560001")); // true
```

## Validators Included

| Validator  | Function                            |
| ---------- | ----------------------------------- |
| PAN Card   | `isValidPAN(pan: string)`           |
| Aadhaar    | `isValidAadhaar(aadhaar: string)`   |
| GSTIN      | `isValidGSTIN(gstin: string)`       |
| IFSC Code  | `isValidIFSC(ifsc: string)`         |
| Mobile No. | `isValidIndianMobileNumber(number)` |
| PIN Code   | `isValidIndianPINCode(pin: string)` |

🛠️ Built With

1. 🟦 TypeScript

2. ⚙️ Node.js

3. 💡 Zero Dependencies

4. 🧪 Unit-Test Ready

### 🧑‍💻 Author

Built with ❤️ by Manindra Bollam(manindra810@gmail.com)
