zellige.js
Version:
A Moroccan utility library for working with CIN, phone numbers, currency, addresses, dates, and more.
450 lines (449 loc) • 12.7 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MOROCCAN_BANKS = void 0;
exports.MOROCCAN_BANKS = [
{
code: '007',
name: 'Attijariwafa Bank',
swift: 'BCMAMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
example: '00778700XXXXXXXXXXXXXX92',
ribLength: 24,
ibanRegex: /^MA\d{2}007\d{5}\d{14}\d{2}$/,
ribRegex: /^007\d{21}$/,
branches: [
{
code: 'ATI',
swift: 'BCMAMAMCATI',
city: 'Casablanca',
name: 'Attijari Intermediation',
},
{ code: 'BAS', swift: 'BCMAMAMCBAS', city: 'Casablanca' },
{
code: 'DEV',
swift: 'BCMAMAMCDEV',
city: 'Casablanca',
name: 'Branch CTN Devise',
},
],
},
{
code: '011',
name: 'Banque Centrale Populaire',
swift: 'BCPOMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}011\d{2}\d{20}$/,
ribRegex: /^011\d{21}$/,
branches: [
{
code: 'BKO',
swift: 'BCPOMAMCBKO',
city: 'Casablanca',
name: 'Dept. Back Office',
},
{
code: 'MON',
swift: 'BCPOMAMCMON',
city: 'Casablanca',
name: 'Dept. Monetiques',
},
{
code: 'REC',
swift: 'BCPOMAMCREC',
city: 'Casablanca',
name: 'Dept. Reconciliation',
},
{
code: 'DOC',
swift: 'BCPOMAMCDOC',
city: 'Casablanca',
name: 'Sce. Documentaire',
},
{
code: 'FIN',
swift: 'BCPOMAMCFIN',
city: 'Casablanca',
name: 'Sce. Financier',
},
{
code: 'MRE',
swift: 'BCPOMAMCMRE',
city: 'Casablanca',
name: 'Transferts MRE',
},
{
code: 'CIB',
swift: 'BCPOMAMCCIB',
city: 'Tanger',
name: 'Offshore Branch',
},
{ code: 'ALH', swift: 'BCPOMAMCALH', city: 'Al Hoceima' },
{ code: 'CES', swift: 'BCPOMAMCCES', city: 'Agadir' },
{ code: 'BNM', swift: 'BCPOMAMCBNM', city: 'Beni Mellal' },
{ code: 'BRK', swift: 'BCPOMAMCBRK', city: 'Berkane' },
{
code: 'CAS',
swift: 'BCPOMAMCCAS',
city: 'Casablanca',
name: 'Casa-Anfa',
},
{ code: 'ELJ', swift: 'BCPOMAMCELJ', city: 'El Jadida' },
{ code: 'FES', swift: 'BCPOMAMCFES', city: 'Fes' },
{ code: 'GHA', swift: 'BCPOMAMCGHA', city: 'Kenitra', name: 'Gharb' },
{ code: 'LAY', swift: 'BCPOMAMCLAY', city: 'Laayoune' },
{ code: 'MKH', swift: 'BCPOMAMCMKH', city: 'Marrakech' },
{ code: 'MEK', swift: 'BCPOMAMCMEK', city: 'Meknes' },
{ code: 'NAD', swift: 'BCPOMAMCNAD', city: 'Nador' },
{ code: 'OUJ', swift: 'BCPOMAMCOUJ', city: 'Oujda' },
{ code: 'RAB', swift: 'BCPOMAMCRAB', city: 'Rabat' },
{ code: 'SAF', swift: 'BCPOMAMCSAF', city: 'Safi' },
{ code: 'TAT', swift: 'BCPOMAMCTAT', city: 'Tanger' },
],
},
{
code: '013',
name: 'Bank of Africa (BMCE)',
swift: 'BMCEMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}013\d{2}\d{20}$/,
ribRegex: /^013\d{21}$/,
branches: [
{ code: 'BTI', swift: 'BMCEMAMCBTI', city: 'Casablanca' },
{
code: 'COR',
swift: 'BMCEMAMCCOR',
city: 'Casablanca',
name: 'Agence Corporate',
},
{
code: 'BCB',
swift: 'BMCEMAMCBCB',
city: 'Casablanca',
name: 'BMCE Capital',
},
{
code: 'MRE',
swift: 'BMCEMAMCMRE',
city: 'Casablanca',
name: 'Compte Special MRE',
},
{
code: 'SDM',
swift: 'BMCEMAMCSDM',
city: 'Casablanca',
name: 'Salle des Marches',
},
{
code: 'TCM',
swift: 'BMCEMAMCTCM',
city: 'Tanger',
name: 'Offshore Trading Room',
},
{
code: 'TZF',
swift: 'BMCEMAMCTZF',
city: 'Tanger',
name: 'Offshore Branch',
},
],
},
{
code: '021',
name: 'Crédit Agricole du Maroc',
swift: 'CNCAMAMR',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}021\d{2}\d{20}$/,
ribRegex: /^021\d{21}$/,
branches: [
{
code: 'AAB',
swift: 'CNCAMAMRAAB',
city: 'Rabat',
name: 'Al Akhdar Branch',
},
],
},
{
code: '022',
name: 'BMCI (BNP Paribas Group)',
swift: 'BMCIMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}022\d{2}\d{20}$/,
ribRegex: /^022\d{21}$/,
branches: [
{
code: 'NFP',
swift: 'BMCIMAMCNFP',
city: 'Casablanca',
name: 'BMCI Finance Participative',
},
{
code: 'TOF',
swift: 'BMCIMAMCTOF',
city: 'Tanger',
name: 'Offshore Branch',
},
],
},
{
code: '045',
name: 'Al Barid Bank',
swift: 'ABBMMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 3,
accountNumber: 8,
ribKey: 2,
},
ribLength: 16,
ibanRegex: /^MA\d{2}045\d{2}\d{16}$/,
ribRegex: /^045\d{13}$/,
},
{
code: '098',
name: 'CIH Bank',
swift: 'CIHMMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}098\d{2}\d{20}$/,
ribRegex: /^098\d{21}$/,
branches: [
{
code: 'DEP',
swift: 'CIHMMAMCDEP',
city: 'Casablanca',
name: 'Departement Etranger',
},
{
code: 'SDM',
swift: 'CIHMMAMCSDM',
city: 'Casablanca',
name: 'Salle des Marches',
},
{
code: 'UBP',
swift: 'CIHMMAMCUBP',
city: 'Casablanca',
name: 'Umnia Bank',
},
],
},
{
code: '019',
name: 'Société Générale Maroc',
swift: 'SGMBMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}019\d{2}\d{20}$/,
ribRegex: /^019\d{21}$/,
branches: [
{
code: 'CMI',
swift: 'SGMBMAMCCMI',
city: 'Casablanca',
name: 'Cash Management International',
},
{
code: 'FCM',
swift: 'SGMBMAMCFCM',
city: 'Casablanca',
name: 'Flux Cash Management',
},
{
code: 'SFS',
swift: 'SGMBMAMCSFS',
city: 'Casablanca',
name: 'Securities and Funds Services',
},
{
code: 'TIT',
swift: 'SGMBMAMCTIT',
city: 'Casablanca',
name: 'Securities Services Department',
},
{
code: 'OFF',
swift: 'SGTGMAMC',
city: 'Tanger',
name: 'Offshore Branch',
},
],
},
{
code: '023',
name: 'CFG Bank',
swift: 'CAFGMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}023\d{2}\d{20}$/,
ribRegex: /^023\d{21}$/,
branches: [
{
code: 'CFM',
swift: 'CAFGMAMCCFM',
city: 'Casablanca',
name: 'CFG Marche',
},
],
},
{
code: '016',
name: 'CDG Capital',
swift: 'CDGMMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}016\d{2}\d{20}$/,
ribRegex: /^016\d{21}$/,
},
{
code: '025',
name: 'Bank Al-Yousr',
swift: 'BAYOMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}025\d{2}\d{20}$/,
ribRegex: /^025\d{21}$/,
},
{
code: '014',
name: 'Credit du Maroc',
swift: 'CDMAMAMC',
active: true,
accountFormat: {
bankCode: 3,
branchCode: 5,
accountNumber: 14,
ribKey: 2,
},
ribLength: 24,
ibanRegex: /^MA\d{2}014\d{2}\d{20}$/,
ribRegex: /^014\d{21}$/,
branches: [
{
code: '706',
swift: 'CDMAMAMC706',
city: 'Agadir',
name: 'Trade Center Talborjt',
},
{
code: '703',
swift: 'CDMAMAMC703',
city: 'Casablanca',
name: 'Trade Center Centre-Ville',
},
{
code: '700',
swift: 'CDMAMAMC700',
city: 'Casablanca',
name: 'Trade Center Expansion',
},
{
code: '707',
swift: 'CDMAMAMC707',
city: 'Fes',
name: 'Trade Center Quaraouyine',
},
{
code: '704',
swift: 'CDMAMAMC704',
city: 'Marrakech',
name: 'Trade Center Menara',
},
{
code: '708',
swift: 'CDMAMAMC708',
city: 'Oujda',
name: 'Trade Center Al Moustagbal',
},
{
code: '709',
swift: 'CDMAMAMC709',
city: 'Rabat',
name: 'Trade Center Chellah',
},
{
code: '705',
swift: 'CDMAMAMC705',
city: 'Tanger',
name: 'Trade Center Boughaz',
},
{
code: 'PAR',
swift: 'CDMAMAMCPAR',
city: 'Casablanca',
name: 'Activites Participatives',
},
{
code: 'COS',
swift: 'CDMAMAMCCOS',
city: 'Casablanca',
name: 'Offshore Services',
},
],
},
];