Skip to content

Latest commit

 

History

History
144 lines (99 loc) · 3.97 KB

README.md

File metadata and controls

144 lines (99 loc) · 3.97 KB

Griphook

Griphook is a tool to validate and visualize Iranian bank information.

It can validate IBANs and PANs, find issuer bank and more while caching the results.

Griphook

Griphook was a goblin who worked at Gringotts Wizarding Bank in Diagon Alley.

Methods

PAN

validatePAN(value)

Will check if value is a valid PAN or not (returns a boolean).

import { validatePAN } from 'griphook';

console.log(validatePAN('6219861032799560')); // true

visualizePAN(value, options)

Will format a PAN (Returns a String).

import { visualizePAN } from 'griphook';

console.log(visualizePAN('6219861032799560')); // '6219-8610-3279-9560'

you can pass an optional object to this method:

option type default value description
spacerChar String '-' a character to use as spacer between each 4 digits
censor Boolean false whether should censor a part of PAN or not
censorChar String '*' a character to use as replacement of real digits
censorLength Number 4 number of censored digits (will censor from center)

findBankByPAN(value)

Will Find Bank Info With PAN IIN+ (Returns an Object)

import { findBankByPAN } from 'griphook';

console.log(findBankByPAN('6219861032799560'));
// {
//    "name": "saman",
//    "name_farsi": "سامان",
//    "icon": "Saman.svg",
//    "iban_nbc": "056",
//    "pan_iin": [ "621986" ]
// }

You should download icons from here and host them locally (for now).

IBAN

validateIBAN(value)

Will check if value is a valid IBAN or not (returns a boolean).

import { validateIBAN } from 'griphook';

console.log(validateIBAN('IR410560090180001896622001')); // true

visualizeIBAN(value, options)

Will format a IBAN (Returns a String).

import { visualizeIBAN } from 'griphook';

console.log(visualizeIBAN('IR410560090180001896622001')); // 'IR41-0560-0901-8000-1896-6220-01'

you can pass an optional object to this method:

option type default value description
spacerChar String '-' a character to use as spacer between each 4 digits

findBankByIBAN(value)

Will Find Bank Info With IBAN NBC+ (Returns an Object)

import { findBankByIBAN } from 'griphook';

console.log(findBankByIBAN('IR410560090180001896622001'));
// {
//    "name": "saman",
//    "name_farsi": "سامان",
//    "icon": "Saman.svg",
//    "iban_nbc": "056",
//    "pan_iin": [ "621986" ]
// }

You should download icons from here and host them locally (for now).

Other

findBankByName(value)

Will Find Bank Info With Their English Name (Returns an Object). English Name Must Be Lower Case.

import { findBankByName } from 'griphook';

console.log(findBankByName('saman'));
// {
//    "name": "saman",
//    "name_farsi": "سامان",
//    "icon": "Saman.svg",
//    "iban_nbc": "056",
//    "pan_iin": [ "621986" ]
// }

findBankByFarsiName(value)

Will Find Bank Info With Their Farsi Name (Returns an Object).

import { findBankByFarsiName } from 'griphook';

console.log(findBankByFarsiName('سامان'));
// {
//    "name": "saman",
//    "name_farsi": "سامان",
//    "icon": "Saman.svg",
//    "iban_nbc": "056",
//    "pan_iin": [ "621986" ]
// }

You should download icons from here and host them locally (for now).