IBAN ജനറേറ്റർ & വാലിഡേറ്റർ ഉപകരണം - ബാങ്കിംഗ് ഡാറ്റ പരിശോധിക്കുക
സാന്നിദ്ധ്യമായ ടെസ്റ്റ് IBANകൾ സൃഷ്ടിക്കുകയോ നിലവിലുള്ളവ തൽക്ഷണം പരിശോധിക്കുകയോ ചെയ്യുക. 10 യൂറോപ്യൻ രാജ്യങ്ങളിൽ MOD 97 വാലിഡേഷൻ പിന്തുണയ്ക്കുന്നു. ധനകാര്യ സോഫ്റ്റ്വെയർ പരിശോധനയ്ക്കും വികസനത്തിനും പ്രഥമ വിഭവം.
IBAN ജനറേറ്റർ & വാലിഡേറ്റർ
വിവരണം
IBAN ജനറേറ്റർ കൂടാതെ വാലിഡേറ്റർ ഉപകരണം
ഈ ഉപകരണം എന്ത് ചെയ്യുന്നു
വാസ്തവ ബാങ്ക് അക്കൗണ്ട് ഡാറ്റ ഇല്ലാതെ ധനകാര്യ സോഫ്റ്റ്വെയർ പരിശോധിക്കുന്നുണ്ടോ? സാധുവായ IBAN ഫോർമാറ്റുകൾ ആവശ്യമാണ്. ഈ ഉപകരണം രാജ്യ-നിർദ്ദിഷ്ട ഫോർമാറ്റുകൾ പിന്തുടർന്ന് യാദൃശ്ചിക IBANകൾ സൃഷ്ടിക്കുകയും നിലവിലുള്ളവ ISO 13616 മാനദണ്ഡം ഉപയോഗിച്ച് പരിശോധിക്കുകയും ചെയ്യുന്നു.
ഇതിന്റെ വ്യവഹാരിക പ്രശ്നം ഇതാണ്: പേയ്മെന്റ് സിസ്റ്റങ്ങളോ ബാങ്കിംഗ് അപ്ലിക്കേഷനുകളോ നിർമ്മിക്കുമ്പോൾ, പരിശോധന പരാജയപ്പെടാത്ത പരീക്ഷണ ഡാറ്റ ആവശ്യമാണ്. വികസകർ സാധാരണ ഗതിയിൽ ചെയ്യുന്ന തെറ്റ് MOD 97 പരിശോധന ആൽഗോരിതം പാസ്സാകാത്ത "കൃത്രിമ" IBANകൾ സൃഷ്ടിക്കുന്നതാണ്, ഇതിനാൽ പരീക്ഷണങ്ങൾ തെറ്റായ കാരണങ്ങളാൽ പരാജയപ്പെടുന്നു.
ഉപകരണം രണ്ട് മുഖ്യ കാര്യങ്ങൾ നിർവഹിക്കുന്നു:
- ജനറേറ്റർ: ഏത് പിന്തുണയ്ക്കുന്ന രാജ്യത്തിനുമായി സംഘടനാപരമായി സാധുവായ IBANകൾ സൃഷ്ടിക്കുന്നു. സൃഷ്ടിക്കപ്പെട്ട ഓരോ നമ്പറും ഉൽപ്പാദന സിസ്റ്റം നടത്തുന്ന പരിശോധനകൾ പാസ്സാകുന്നു.
- വാലിഡേറ്റർ: IBAN സംഘടന, പരിശോധന അക്കങ്ങൾ, രാജ്യ-നിർദ്ദിഷ്ട ഫോർമാറ്റിംഗ് പരിശോധിക്കുന്നു. IBAN നിരസിക്കപ്പെടുന്ന കാരണം ഡീബഗ് ചെയ്യുവാൻ സഹായകരം.
IBANകൾ (അന്തർദ്ദേശീയ ബാങ്ക് അക്കൗണ്ട് നമ്പർ) അതിർത്തികൾക്കപ്പുറം ബാങ്കുകൾ അക്കൗണ്ടുകൾ തിരിച്ചറിയുന്ന രീതി മാനകീകരിക്കുന്നു. ഓരോന്നിലും ഒരു രാജ്യ കോഡ്, MOD 97 വഴി കണക്കാക്കിയ രണ്ട് പരിശോധന അക്കങ്ങൾ, രാജ്യം അനുസരിച്ച് വ്യത്യാസപ്പെടുന്ന ഒരു അടിസ്ഥാന ബാങ്ക് അക്കൗണ്ട് നമ്പർ (BBAN) അടങ്ങിയിരിക്കുന്നു. ഇതിൽ സങ്കീർണ്ണമായ കാര്യം, ജർമ്മനി 22 അക്ഷരങ്ങൾ ഉപയോഗിക്കുമ്പോൾ ഫ്രാൻസിന് 27 അക്ഷരങ്ങൾ ആവശ്യമാണ്, അന്തർഘടന പൂർണ്ണമായി വ്യത്യാസപ്പെടുന്നു.
IBANs എങ്ങനെ പ്രവർത്തിക്കുന്നു
IBAN സ്ട്രക്ചർ and ഫോർമാറ്റ്
IBANകൾക്ക് 34 അൽഫാന്യൂമെറിക് അക്ഷരങ്ങൾ വരെ ഉണ്ടാകാം, പക്ഷേ മിക്ക യൂറോപ്യൻ രാജ്യങ്ങളും 22-27 ഉപയോഗിക്കുന്നു. ഓരോ IBAN-ഉം മൂന്ന് ഭാഗങ്ങളായി വിഭജിക്കപ്പെടുന്നു:
- രാജ്യ കോഡ്: ISO 3166-1 അൽഫാ-2 സ്റ്റാൻഡേർഡിൽ നിന്നുള്ള രണ്ട് അക്ഷരങ്ങൾ (ജർമ്മനിക്ക് DE, യുണൈറ്റഡ് കിംഗ്ഡത്തിന് GB)
- പരിശോധന അക്കങ്ങൾ: MOD 97 ഉപയോഗിച്ച് മുഴുവൻ IBAN-ഉം സാധുവാക്കുന്ന രണ്ട് കണക്കാക്കിയ അക്കങ്ങൾ
- അടിസ്ഥാന ബാങ്ക് അക്കൗണ്ട് നമ്പർ (BBAN): രാജ്യ-നിർദ്ദിഷ്ട ഭാഗം അടങ്ങുന്നത്:
- ബാങ്ക് ഐഡന്റിഫയർ (ചിലപ്പോൾ റൗട്ടിംഗ് നമ്പർ അല്ലെങ്കിൽ ബാങ്ക് കോഡ് എന്ന് വിളിക്കുന്നു)
- ശാഖ ഐഡന്റിഫയർ (യുകെ ഇതിനെ സോർട്ട് കോഡ് എന്ന് വിളിക്കുന്നു)
- അക്കൗണ്ട് നമ്പർ
- ചിലപ്പോൾ അധിക ദേശീയ പരിശോധന അക്കങ്ങൾ
ഒരു ജർമ്മൻ IBAN-ഉദാഹരണമായി. DE2!n8!n10!n പാറ്റേൺ അർഥം:
DE= രാജ്യ കോഡ്2!n= രണ്ട് സംഖ്യാ പരിശോധന അക്കങ്ങൾ8!n= എട്ട് അക്ക ബാങ്ക് കോഡ് (Bankleitzahl)10!n= പത്ത് അക്ക അക്കൗണ്ട് നമ്പർ (Kontonummer)
മനുഷ്യരെ അമ്പരപ്പിക്കുന്നത് രാജ്യങ്ങൾക്കിടയിൽ ഈ ഫോർമാറ്റുകൾ എത്ര വ്യത്യാസപ്പെട്ടവയാണെന്നാണ്:
| രാജ്യം | നീളം | സ്ട്രക്ചർ | ഉദാഹരണം |
|---|---|---|---|
| ജർമ്മനി (DE) | 22 | DE2!n8!n10!n | DE89370400440532013000 |
| യുകെ (GB) | 22 | GB2!n4!a6!n8!n | GB29NWBK60161331926819 |
| ഫ്രാൻസ് (FR) | 27 | FR2!n5!n5!n11!c2!n | FR1420041010050500013M02606 |
| സ്പെയിൻ (ES) | 24 | ES2!n4!n4!n1!n1!n10!n | ES9121000418450200051332 |
| ഇറ്റലി (IT) | 27 | IT2!n1!a5!n5!n12!c | IT60X0542811101000000123456 |
IBAN സാധുതാ ആൽഗോരിതം
IBAN സാധുതാ പരിശോധന ISO 7064-ൽ നിർവ്വചിക്കപ്പെട്ട MOD 97 ആൽഗോരിതത്തെ ആശ്രയിക്കുന്നു. IBAN-ഒരു സാധുതാ പരിശോധന നടത്തുമ്പോൾ യഥാർഥത്തിൽ സംഭവിക്കുന്നത്:
- ആദ്യത്തെ നാല് അക്ഷരങ്ങൾ (രാജ്യ കോഡ് and പരിശോധന അക്കങ്ങൾ) അവസാനത്തേക്ക് മാറ്റുക
- ഓരോ അക്ഷരവും സംഖ്യകളാക്കി മാറ്റുക: A=10, B=11, Z=35 വരെ
- ഫലമുള്ള സംഖ്യാ സ്ട്രിംഗിന്റെ മൊഡുലോ 97 കണക്കാക്കുക
- സാധുവായ IBANകൾ എപ്പോഴും കൃത്യമായി 1 ശേഷശേഷിയിൽ അവസാനിക്കും
ഗണിതപരമായി:
MOD 97 എന്തുകൊണ്ട് പ്രത്യേകം? ഇത് ഏറ്റവും സാധാരണ പിഴവുകൾ പിടിക്കുന്നു: ഒറ്റ അക്ക പിഴവുകൾ, മാറ്റിവയ്ക്കപ്പെട്ട അക്കങ്ങൾ, യഥാർഥത്തിൽ സമാനമായി കാണുന്ന അക്ഷരങ്ങളുടെ പിഴവുകൾ. പ്രാക്ടിസിൽ, ഇത് അനക്കൂട്ട് ഡാറ്റ എൻട്രി പിഴവുകളുടെ 99.9% പിടിക്കുന്നുവെന്ന് കണ്ടെത്തിയിട്ടുണ്ട്, അതുകൊണ്ടാണ് ഇത് അന്തർദ്ദേശീയ സ്റ്റാൻഡേർഡ് ആയത്.
അറിഞ്ഞിരിക്കേണ്ട ഒരു വ്യത്യാസം: IBANകൾ ഉൽപ്പാദിപ്പിക്കുമ്പോൾ, "00" മുതൽ കണക്കാക്കി, ആൽഗോരിതം പ്രവർത്തിപ്പിച്ച്, ശേഷശേഷിയിൽ നിന്ന് 98 കളയുന്നു. ഇത് അവസാന IBAN കൃത്യമായി സാധുവാകുന്നതിനുറപ്പ് വരുത്തുന്നു.
ഉപകരണ സവിശേഷതകൾ
IBAN ജനറേറ്റർ
വാസ്തവ അക്കൗണ്ട് നമ്പറുകൾ ഉപയോഗിക്കാതെ വിലയിരുത്തൽ പാസ്സാകുന്ന പരിശോധന IBAN-കൾ സൃഷ്ടിക്കുക:
- രാജ്യ തിരഞ്ഞെടുക്കൽ: 10 പ്രധാന യൂറോപ്യൻ രാജ്യങ്ങൾ (ജർമ്മനി, യുകെ, ഫ്രാൻസ്, സ്പെയിൻ, ഇറ്റലി, നെതർലൻഡ്സ്, സ്വിറ്റ്സർലൻഡ്, ഓസ്ട്രിയ, ബെൽജിയം, പോളണ്ട്) പിന്തുണയ്ക്കുന്നു
- ഫോർമാറ്റ് അനുപാലനം: സൃഷ്ടിക്കപ്പെടുന്ന ഓരോ IBAN-വും ഔദ്യോഗിക രാജ്യ സ്ട്രക്ചർ പാലിക്കുകയും MOD 97 വിലയിരുത്തൽ പാസ്സാവുകയും ചെയ്യുന്നു
- ഒറ്റ-ക്ലിക്ക് ജനറേഷൻ: യാതൊരു കോൺഫിഗറേഷനും ആവശ്യമില്ല—ഒരു രാജ്യം തിരഞ്ഞെടുത്ത് ജനറേറ്റ് ചെയ്യുക
- ക്ലിപ്ബോർഡിലേക്ക് കോപ്പി ചെയ്യൽ: പൂർണ്ണ IBAN ഒറ്റ ക്ലിക്കിൽ പരിശോധനകൾക്കായി പേസ്റ്റ് ചെയ്യാൻ കോപ്പി ചെയ്യുന്നു
- വിഷ്വൽ വിഭജനം: നിറം കോഡിംഗ് ചെയ്ത പ്രദർശനം രാജ്യ കോഡ്, പരിശോധന അക്കങ്ങൾ, ബാങ്ക് വിശദാംശങ്ങൾ വ്യത്യസ്തമായി കാണിക്കുന്നു
ജനറേഷൻ പ്രക്രിയ:
- രാജ്യ-നിർദ്ദിഷ്ട ഫോർമാറ്റ് ടെംപ്ലേറ്റ് തിരഞ്ഞെടുക്കുന്നു
- BBAN ഭാഗത്ത് യാദൃച്ഛിക അക്കങ്ങൾ/അക്ഷരങ്ങൾ നിറയ്ക്കുന്നു
- MOD 97 ഉപയോഗിച്ച് പരിശോധന അക്കങ്ങൾ കണക്കാക്കുന്നു
- സമ്പൂർണ്ണ IBAN യോജിപ്പിച്ച് വിലയിരുത്തുന്നു
പ്രോ ടിപ്പ്: പരിശോധന ഡാറ്റാബേസുകൾ സീഡ് ചെയ്യുമ്പോൾ, അന്തർദ്ദേശീയ സ്സ്ഥിതിവിശേഷങ്ങൾ പരിശോധിക്കുന്നതിന് വിവിധ രാജ്യങ്ങളിൽ നിന്ന് IBAN-കൾ സൃഷ്ടിക്കുക. യഥാർഥ പേയ്മെന്റ് സിസ്റ്റങ്ങൾക്ക് പലപ്പോഴും പ്രത്യേക രാജ്യങ്ങളുമായി ബന്ധപ്പെട്ട വ്യത്യസ്ത സ്ഥിതിവിശേഷങ്ങൾ ഉണ്ടാവാം.
IBAN വിലയിരുത്തൽ
ഉൽപ്പാദന മുമ്പ് IBAN സ്ട്രക്ചർ പരിശോധിക്കുകയും ഫോർമാറ്റിംഗ് പ്രശ്നങ്ങൾ കണ്ടെത്തുകയും ചെയ്യുക:
- ഫോർമാറ്റ് പരിശോധന: രാജ്യ-നിർദ്ദിഷ്ട നീളവും സ്ട്രക്ചർ ആവശ്യകതകളും പരിശോധിക്കുന്നു
- MOD 97 വിലയിരുത്തൽ: പൂർണ്ണ പരിശോധന അക്കം ആൽഗോരിതം പ്രവർത്തിപ്പിക്കുന്നു
- ഘടക വിഭജനം: IBAN രാജ്യ കോഡ്, പരിശോധന അക്കങ്ങൾ, ബാങ്ക് കോഡ്, അക്കൗണ്ട് നമ്പർ എന്നിവയിലേക്ക് എങ്ങനെ വിഭജിക്കപ്പെടുന്നുവെന്ന് കൃത്യമായി കാണിക്കുന്നു
- പ്രത്യേക പിഴവ് സന്ദേശങ്ങൾ: സാമാന്യ "അസാധുവായ" സന്ദേശങ്ങൾക്കുപകരം, യഥാർഥത്തിൽ എന്താണ് തെറ്റ് എന്ന് കാണിക്കുന്നു
- സ്വയം-ഫോർമാറ്റിംഗ്: സ്പേസുകളോടുകൂടിയോ അല്ലാതെയോ IBAN-കൾ കൈകാര്യം ചെയ്യുന്നു—ഫോർമാറ്റിംഗ് സ്വയമേ നടക്കുന്നു
വിലയിരുത്തൽ പരിശോധനകൾ ക്രമത്തിൽ നടക്കുന്നു:
- രാജ്യ കോഡ് തിരിച്ചറിയൽ (പിന്തുണയ്ക്കപ്പെടുന്നുണ്ടോ?)
- നീളം പരിശോധന (ആ രാജ്യത്തിന് ശരിയായ അക്ഷര എണ്ണം?)
- അക്ഷര തരം വിലയിരുത്തൽ (പ്രതീക്ഷിക്കുന്ന സ്ഥാനത്ത് നമ്പറുകൾ, അനുവദിക്കപ്പെട്ട സ്ഥാനത്ത് അക്ഷരങ്ങൾ)
- MOD 97 പരിശോധന അക്കം കണക്കാക്കൽ (കണക്ക് ശരിയാകുന്നുവോ?)
സാധാരണ സ്ഥിതി: നിങ്ങളുടെ API-ക്ക് ഉപയോക്തൃ ഇൻപുട്ടിൽ നിന്ന് IBAN ലഭിക്കുന്നു, അതിൽ സ്പേസിംഗ് സ്ഥിരമല്ല. പ്രോസസ്സിംഗ് മുമ്പ് അതിനെ സാധാരണ നിലയിലാക്കാൻ വിലയിരുത്തൽ ഉപയോഗിക്കുക—അത് സ്വയമേ സ്പേസുകൾ നീക്കം ചെയ്യുകയും ശരിയായ ഫോർമാറ്റ് കാണിക്കുകയും ചെയ്യുന്നു.
ഘട്ടം-ഘട്ടമായുള്ള മാർഗ്ഗനിർദ്ദേശം
IBAN ഉൽപ്പാദിപ്പിക്കൽ
- ജനറേറ്റർ ടാബ് സമീപിക്കുക: "ജനറേറ്റർ" ടാബിൽ (സ്വതവേ തിരഞ്ഞെടുക്കപ്പെട്ടത്) ക്ലിക്ക് ചെയ്യുക
- രാജ്യം തിരഞ്ഞെടുക്കുക: ഡ്രോപ്പ്ഡൗൺ മെനുവിൽ നിന്ന് നിങ്ങളുടെ ആവശ്യമുള്ള രാജ്യം തിരഞ്ഞെടുക്കുക
- IBAN ഉൽപ്പാദിപ്പിക്കുക: "IBAN ഉൽപ്പാദിപ്പിക്കുക" ബട്ടൺ ക്ലിക്ക് ചെയ്യുക
- ഫലം കാണുക: ഉൽപ്പാദിപ്പിക്കപ്പെട്ട IBAN അതിന്റെ ഘടകങ്ങളുടെ വിഷുവൽ വിശദീകരണത്തോടെ കീഴെ പ്രത്യക്ഷപ്പെടും
- ക്ലിപ്പ്ബോർഡിലേക്ക് കോപ്പി ചെയ്യുക: മറ്റിടത്ത് ഉപയോഗിക്കുന്നതിന് IBAN "ക്ലിപ്പ്ബോർഡിലേക്ക് കോപ്പി ചെയ്യുക" ബട്ടൺ ക്ലിക്ക് ചെയ്യുക
IBAN സാധുതാ പരിശോധന
- വാലിഡേറ്റർ ടാബ് സമീപിക്കുക: "വാലിഡേറ്റർ" ടാബിൽ ക്ലിക്ക് ചെയ്യുക
- IBAN നൽകുക: ഇൻപുട്ട് ഫീൽഡിൽ IBAN ടൈപ്പ് ചെയ്യുക അല്ലെങ്കിൽ പേസ്റ്റ് ചെയ്യുക
- സ്പേസുകളും ഫോർമാറ്റിംഗും സ്വയമേവ കൈകാര്യം ചെയ്യപ്പെടും
- ഉപകരണം സ്പേസുകളോടെയുള്ള (ഫോർമാറ്റ് ചെയ്ത) മാത്രമല്ല, ഫോർമാറ്റ് ചെയ്യാത്ത IBANകളും സ്വീകരിക്കുന്നു
- സാധുതാ ഫലങ്ങൾ കാണുക: നിങ്ങൾ ടൈപ്പ് ചെയ്യുന്നതിനനുസരിച്ച് ഉപകരണം IBAN സ്വയമേവ സാധുവാക്കും
- വിശദാംശങ്ങൾ പരിശോധിക്കുക: സാധുവായ IBANകൾക്ക്, ഘടകങ്ങളുടെ വിശദീകരണം പ്രദർശിപ്പിക്കപ്പെടും
- ഏതെങ്കിലും പിഴവുകൾ പരിശോധിക്കുക: അസാധുവായ IBANകൾക്ക്, പ്രശ്നം തിരിച്ചറിയുന്നതിൽ സഹായിക്കുന്ന പ്രത്യേക പിഴവ് സന്ദേശങ്ങൾ
ഉപയോഗ കേസുകളും യഥാർഥ-ലോക അപ്ലിക്കേഷനുകളും
സോഫ്റ്റ്വെയർ വികസനവും പരിശോധനയും
API പരിശോധന: പേയ്മെന്റ് സംയോജന പരിശോധനകൾ നിർമ്മിക്കുമ്പോൾ, സാധുതാ പരിശോധന പാസ്സാകുന്ന, പക്ഷേ യഥാർഥ ഇടപാടുകൾ ട്രിഗർ ചെയ്യാത്ത IBANകൾ വേണം. നിങ്ങളുടെ സ്വയം-പ്രവർത്തിക്കുന്ന പരിശോധന സൂട്ടിനായി ഒരു കൂട്ടം പരിശോധനാ IBANകൾ സൃഷ്ടിക്കുക, വ്യത്യസ്ത രാജ്യ ഫോർമാറ്റുകൾക്ക് നിങ്ങളുടെ പിഴവ് കൈകാര്യം ശരിയായി പ്രവർത്തിക്കുന്നുവെന്ന് ഉറപ്പാക്കുക.
ഫോം സാധുതാ പരിശോധന: ഒരു ചെക്ക്ഔട്ട് പ്രവാഹം പരിശോധിക്കുകയാണോ? നിങ്ങളുടെ ഫ്രണ്ട്എൻഡ് സാധുതാ പരിശോധന പിൻബലം ആവശ്യകതകൾക്ക് പൊരുത്തപ്പെടുന്നുവെന്ന് പരിശോധിക്കാൻ വാലിഡേറ്ററിനെ ഉപയോഗിക്കുക. ഒരു സാധാരണ പ്രശ്നം, നിങ്ങളുടെ പേയ്മെന്റ് പ്രൊസസ്സർ പിന്നീട് നിരാകരിക്കുന്ന IBAN ഫോർമാറ്റിനെ സ്വീകരിക്കുന്നതാണ്—വികസന ഘട്ടത്തിൽ ഇതിനെ കണ്ടെത്തുന്നത് ഉപഭോക്തൃ നിരാശ ഒഴിവാക്കുന്നു.
എഡ്ജ് കേസ് പരിശോധന: മിക്ക വികസകരും ഒന്നോ രണ്ടോ രാജ്യ ഫോർമാറ്റുകൾ പരിശോധിക്കുന്നു. ഒരു സ്വിസ് ഉപഭോക്താവ് 21 അക്ഷര IBAN ഉപയോഗിക്കുമ്പോൾ, ജർമ്മൻ 22 അക്ഷര IBANകൾക്കായി രൂപകൽപ്പന ചെയ്ത നിങ്ങളുടെ സിസ്റ്റം എന്ത് ചെയ്യും? വ്യത്യസ്ത രാജ്യ ഫോർമാറ്റുകൾ സൃഷ്ടിക്കുക നിങ്ങളുടെ ഫീൽഡ് നീളവും സാധുതാ തത്വങ്ങളും സ്ട്രെസ്സ് ചെയ്യാൻ.
പിൻവാങ്ങൽ പരിശോധന: നിങ്ങളുടെ IBAN സാധുതാ പുസ്തകാലയം അപ്ഡേറ്റ് ചെയ്തതിനുശേഷം, സൃഷ്ടിച്ച പരിശോധനാ IBANകൾ പഴയ മൂല്യവും പുതിയ മൂല്യവും വഴി പാഴാക്കുക. ഏതെങ്കിലും വ്യത്യാസങ്ങൾ ഉല്പാദന ബാധിക്കുന്ന മാറ്റങ്ങളെ സൂചിപ്പിക്കുന്നു.
സാമ്പത്തിക അപ്ലിക്കേഷൻ വികസനം
പേയ്മെന്റ് സിസ്റ്റങ്ങൾ: അന്തർദ്ദേശീയ വയർ ട്രാൻസ്ഫർ പ്രവർത്തനം നിർമ്മിക്കുമ്പോൾ, IBAN സ്ട്രക്ചർ തന്നെ റൂട്ടിംഗ് നടപടിക്രമം നിർണ്ണയിക്കുന്ന സാഹചര്യങ്ങൾ നേരിടുന്നു. നെതർലൻഡ്സിൽ നിന്നുള്ള IBANകൾ (BBAN-ൽ അക്ഷരങ്ങൾ ഉൾപ്പെടുന്ന) ബഗുകൾ വെളിപ്പെടുത്തുന്നു, ഒരു-അക്കങ്ങളുള്ള ജർമ്മൻ IBANകൾ കണ്ടെത്തുന്നില്ല.
ബാങ്കിംഗ് സോഫ്റ്റ്വെയർ: ബാങ്ക് കോഡുകളും ശാഖാ വിശദാംശങ്ങളും പിരിക്കുന്നതിനുള്ള രാജ്യ-പ്രത്യേക തത്വം. നിങ്ങളുടെ പാഴിംഗ് ആൽഗോരിതം ശരിയായി ഈ ഘടകങ്ങൾ തിരിച്ചറിയുന്നുവെന്ന് പരിശോധിക്കാൻ ഓരോ പിന്തുണയ്ക്കുന്ന രാജ്യത്തിനും IBANകൾ സൃഷ്ടിക്കുക.
അനുപാലന പരിശോധന: സാമ്പത്തിക നിയമങ്ങൾ പലപ്പോഴും പ്രക്രിയ ചെയ്യുന്നതിനുമുമ്പ് IBANകൾ സാധുവാക്കാൻ ആവശ്യപ്പെടുന്നു. നിങ്ങളുടെ സിസ്റ്റം അസാധുവായ ചെക്ക് അക്കങ്ങളും തെറ്റായ ഫോർമാറ്റുകളും നിരാകരിക്കുന്നുവെന്ന് തെളിയിക്കുന്ന പരിശോധനാ കേസുകൾ സൃഷ്ടിക്കാൻ ഈ ഉപകരണം ഉപയോഗിക്കുക—ഓഡിറ്റ് ട്രെയിൽസിനായി അത്യാവശ്യം.
വിദ്യാഭ്യാസവും പ്രമാണീകരണവും
ബാങ്കിംഗ് മാനദണ്ഡങ്ങൾ വിദ്യാഭ്യാസം: അന്തർദ്ദേശീയ പേയ്മെന്റ് സിസ്റ്റങ്ങളെക്കുറിച്ച് പഠിക്കുന്ന വിദ്യാർഥികൾക്ക് യഥാർഥ IBAN സ്ട്രക്ചറുകൾ കാണുന്നത് പ്രയോജനപ്പെടുന്നു. വ്യത്യസ്ത രാജ്യങ്ങളിൽ നിന്നുള്ള ഉദാഹരണങ്ങൾ സൃഷ്ടിക്കുക, വ്യത്യസ്ത ബാങ്കിംഗ് സിസ്റ്റങ്ങളിൽ സ്റ്റാൻഡേഡൈസേഷൻ എങ്ങനെ പ്രവർത്തിക്കുന്നുവെന്ന് വിശദീകരിക്കാൻ.
API പ്രമാണീകരണം: യഥാർഥ IBANകൾ ഉപയോഗിക്കുന്നതിനുപകരം, വ്യക്തമായ ഉദാഹരണങ്ങൾ സൃഷ്ടിക്കുക. "DE89370400440532013000 IBAN പരിശോധനയ്ക്ക് ഉപയോഗിക്കുക" എന്ന വാക്യങ്ങളുള്ള പ്രമാണീകരണം വികസകർക്ക് ഉടനെ ഇവ സുരക്ഷിത പരിശോധനാ മൂല്യങ്ങളാണെന്ന് അറിയിക്കുന്നു.
ഡാറ്റാ പ്രവർത്തനങ്ങൾ
ഡാറ്റാബേസ് വിത്തിടൽ: വികസന-സ്റ്റേജിംഗ് പരിസ്ഥിതികൾക്ക് യാഥാർഥ്യവത്കൃത പരിശോധനാ ഡാറ്റ വേണം. സ്വകാര്യതാ പ്രശ്നങ്ങളില്ലാതെ പ്രാതിനിധ്യമുള്ള അന്തർദ്ദേശീയ ഉപഭോക്തൃ പ്രൊഫൈലുകൾ നിറയ്ക്കാൻ വിവിധ IBANകൾ സൃഷ്ടിക്കുക.
ഡാറ്റാ അനാമതാ: ഉല്പാദനത്തിൽ നിന്ന് സ്റ്റേജിംഗിലേക്ക് മാറുമ്പോൾ? യഥാർഥ IBANകൾ സാധുതാ ഫോർമാറ്റ് നിലനിർത്തുന്ന സൃഷ്ടിച്ച IBANകളാൽ മാറ്റുക, വികസന പരിസ്ഥിതികളിൽ GDPR അനുപാലനത്തിനായി സംവേദനശീല വിവരങ്ങൾ നീക്കം ചെയ്യുക.
ബദൽ മാർഗ്ഗങ്ങളും അവ ഉപയോഗിക്കേണ്ട സമയം
വ്യത്യസ്ത ഉപകരണങ്ങൾ വ്യത്യസ്ത ആവശ്യങ്ങൾക്ക് അനുയോജ്യമാണ്. ഇവിടെ ഒരു ആദരവുള്ള താരതമ്യം:
കമ്മേഴ്സ്യൽ ബാങ്കിംഗ് API കൾ (ഉദാ: സ്ട്രൈപ്, അഡ്യൻ)
യഥാർഥ ബാങ്ക് രജിസ്ട്രികളിൽ നിന്ന് ഉൽപ്പാദന വിലയിരുത്തൽ നടത്തുന്നതിന് മികച്ചത്. ഈ സേവനങ്ങൾ ഒരു IBAN ഒരു യഥാർഥ സജീവ അക്കൗണ്ടിനു സംബന്ധിക്കുന്നുണ്ടോ എന്ന് പരിശോധിക്കുന്നു, കേവലം ഫോർമാറ്റ് ശരിയാണോ എന്ന് മാത്രമല്ല.
ഉപയോഗിക്കുക: നിങ്ങൾക്ക് ഒരു IBAN നിലവിലുണ്ടോ, പണം സ്വീകരിക്കാൻ കഴിയുമോ എന്ന് പരിശോധിക്കേണ്ടതുണ്ടെങ്കിൽ.
പരിമിതികൾ: പണം അടയ്ക്കുന്നു (സാധാരണ API കോൾ വിലയുടെ അടിസ്ഥാനത്തിൽ), സംവിധാന സംയോജനം ആവശ്യമാണ്, മാത്രമല്ല വികസന ഘട്ടത്തിൽ പരിശോധനാ IBANകൾ ഇപ്പോഴും ആവശ്യമാണ്.
പ്രോഗ്രാമിംഗ് ഭാഷാ പുസ്തകാലയങ്ങൾ (ibantools, iban.js, python-stdnum)
നിങ്ങളുടെ അപ്ലിക്കേഷൻ കോഡിൽ എംബഡഡ് വിലയിരുത്തൽ നടത്തുന്നതിന് മികച്ചത്. JavaScript-ൽ ibantools അല്ലെങ്കിൽ Python-ൽ python-stdnum പോലുള്ള പുസ്തകാലയങ്ങൾ വിലയിരുത്തൽ, നിർമ്മാണ പ്രവർത്തനങ്ങൾ നൽകുന്നു.
ഉപയോഗിക്കുക: നിർമ്മാണ അല്ലെങ്കിൽ റൺടൈം വിലയിരുത്തൽ ഭാഗമായി പ്രോഗ്രാമാറ്റിക് ആക്സസ് ആവശ്യമാണെങ്കിൽ.
പരിമിതികൾ: സംയോജനത്തിനായി വികസന പ്രയാസം ആവശ്യമാണ്, മാത്രമല്ല ഡീബഗ്ഗിംഗ് സമയത്ത് പ്രത്യേക IBANകൾ പരിശോധിക്കുന്നതിനുള്ള വേഗത്തിലുള്ള മാർഗ്ഗം ഇപ്പോഴും ആവശ്യമാണ്.
SWIFT IBAN രജിസ്ട്രി
SWIFT-ൽ നിലനിർത്തിയ ഔദ്യോഗിക IBAN രജിസ്ട്രി എല്ലാ രാജ്യ ഫോർമാറ്റുകളും വിലയിരുത്തൽ നിയമങ്ങളും പട്ടിക ചെയ്യുന്നു. ഇത് അധികാരപ്പെടുത്തിയ ഉറവിടമാണ്.
ഉപയോഗിക്കുക: IBAN പിന്തുണ നടപ്പിലാക്കുന്നതിന് ഔദ്യോഗിക വ്യവസ്ഥകൾ ആവശ്യമാണെങ്കിൽ.
പരിമിതികൾ: ഇത് പ്രമാണീകരണമാണ്, ഒരു ഉപകരണമല്ല. IBANകൾ ഉൽപ്പാദിപ്പിക്കുന്നതിനും പരിശോധിക്കുന്നതിനുമുള്ള ഒന്ന് നിർമ്മിക്കുകയോ കണ്ടെത്തുകയോ ചെയ്യേണ്ടതുണ്ട്.
ഔദ്യോഗിക ബാങ്ക് വിലയിരുത്തലുകൾ
പല ദേശീയ ബാങ്കുകളും രാജ്യ-പ്രത്യേക വിലയിരുത്തലുകൾ (ഉദാ: ജർമൻ IBANകൾക്ക് ബുൻഡസ്ബാങ്ക്) നൽകുന്നു. ഇവ അവരുടെ പ്രത്യേക രാജ്യത്തിനായി ഏറ്റവും കൃത്യമാണ്.
ഉപയോഗിക്കുക: ഒരു രാജ്യത്ത് മാത്രം പ്രവർത്തിക്കുകയും ബാങ്ക് തലത്തിലുള്ള വിലയിരുത്തൽ വിശദാംശങ്ങൾ ആവശ്യമാണെങ്കിൽ.
പരിമിതികൾ: ഒറ്റ-രാജ്യ കേന്ദ്രീകരണം. അന്തർദ്ദേശീയ പണമിടപാട് സംവിധാനങ്ങൾ നിർമ്മിക്കുന്നതിനാൽ, ഓരോ രാജ്യത്തിനുമുള്ള വിലയിരുത്തലുകൾ ആവശ്യമാണ്.
ഈ ഉപകരണം ഉചിതമാകുന്ന സമയം
API സംയോജനം കൂടാതെ വേഗത്തിലുള്ള, ഉടനടി പരിശോധനയ്ക്ക് ഈ ഉപകരണം ഉപയോഗിക്കുക. വികസന ഘട്ടത്തിലും ഡീബഗ്ഗിംഗ് സമയത്തും ഉടനടി സാധുവായ പരിശോധനാ ഡാറ്റ ഉൽപ്പാദിപ്പിക്കുന്നതിനോ ഒരു പ്രത്യേക IBAN പരാജയപ്പെടുന്ന കാരണം പരിശോധിക്കുന്നതിനോ ഇത് പ്രത്യേകം ഉപകാരപ്രദമാണ്. ഇത് നിങ്ങളുടെ കോഡ്ബേസിലെ ഉൽപ്പാദന-ഗ്രേഡ് വിലയിരുത്തൽ പുസ്തകാലയങ്ങളെ മാറ്റിസ്ഥാപിക്കില്ല, പക്ഷേ ഉപേക്ഷിക്കാവുന്ന പരിശോധനാ സ്ക്രിപ്റ്റുകൾ എഴുതുന്നതിനേക്കാൾ വേഗത്തിലാണ്.
വ്യക്തമാക്കിയിരിക്കുന്ന ചോദ്യങ്ങൾ
IBAN എന്ദ്വാൽ എന്ത് ആണ്? ഇത് എന്തുകൊണ്ട് പ്രധാനമാണ്?
IBAN (International Bank Account Number) രാജ്യാന്തര ബാങ്ക് അക്കൗണ്ട് നമ്പർ - International Organization for Standardization (ISO) രാജ്യാന്തര പണമിടപാടുകളിലെ തെറ്റുകൾ കുറയ്ക്കുന്നതിനായി സൃഷ്ടിച്ച ഒരു സ്റ്റാൻഡേർഡ് ഫോർമാറ്റ്. IBAN-നു മുമ്പ്, ഓരോ രാജ്യവും സ്വന്തം അക്കൗണ്ട് നമ്പർ ഫോർമാറ്റ് ഉപയോഗിച്ചിരുന്നു, അത് വ്യാപകമായ തെറ്റുകളിലേക്കും പണ മാറ്റം പരാജയപ്പെടുന്നതിലേക്കും നയിച്ചു. IBANകൾ പണം നീക്കം ചെയ്യുന്നതിനു മുമ്പ് തെറ്റുകൾ കണ്ടെത്തുന്നതിനായി രാജ്യ കോഡുകളും പരിശോധന അക്കങ്ങളും ചേർക്കുന്നു.
ജനറേറ്റ് ചെയ്ത IBANകൾ എത്രത്തോളം കൃത്യമാണ്?
ജനറേറ്റ് ചെയ്ത IBANകൾ ഗണിതപരമായി കൃത്യമാണ്, ISO 13616-ൽ നിർവചിച്ചിരിക്കുന്ന MOD 97 വാലിഡേഷൻ അൽഗോരിതം പാലിക്കുന്നു. അവ രാജ്യ-നിർദ്ദിഷ്ട സ്ട്രക്ചറുകൾ പിന്തുടരുന്നു. എന്നാൽ, അവ യാദൃശ്ചികമായി സൃഷ്ടിക്കപ്പെട്ടവയാണ്, യഥാർഥ ബാങ്ക് അക്കൗണ്ടുകളുമായി ബന്ധപ്പെട്ടിട്ടില്ല - അതാണ് പ്രധാന കാര്യം. അവ പരിശോധനയ്ക്കായി സുരക്ഷിതമാണ്, കാരണം അവ യാദൃശ്ചികമായി ഒരു യഥാർഥ അക്കൗണ്ടിൽ ഹിറ്റ് ചെയ്യില്ല.
ഈ ഉപകരണം ഏത് രാജ്യങ്ങളെ പിന്തുണയ്ക്കുന്നു?
നിലവിൽ 10 യൂറോപ്യൻ രാജ്യങ്ങൾ: ജർമ്മനി, യുണൈറ്റഡ് കിംഗ്ഡം, ഫ്രാൻസ്, സ്പെയിൻ, ഇറ്റലി, നെതർലൻഡ്സ്, സ്വിറ്റ്സർലൻഡ്, ഓസ്ട്രിയ, ബെൽജിയം, പോളണ്ട്. ഇവ യൂറോപ്യൻ പണമിടപാട് സിസ്റ്റങ്ങളിൽ നിങ്ങൾ കണ്ടെത്തുന്ന ഏറ്റവും സാധാരണ IBAN ഫോർമാറ്റുകൾ പരിവർത്തനം ചെയ്യുന്നു. മറ്റൊരു രാജ്യം വേണമോ? പ്രതികരണ ഫോം കൂടുതൽ വിവരങ്ങൾ അറിയുന്നതിനുള്ള ഏറ്റവും മികച്ച മാർഗ്ഗമാണ്.
ഞാൻ ജനറേറ്റ് ചെയ്ത IBANകൾ യഥാർഥ പണ മാറ്റത്തിനായി ഉപയോഗിക്കാമോ?
അത്യന്തം അല്ല. ഇവ പരിശോധനയ്ക്കുള്ള IBANകൾ മാത്രമാണ്. അവ ഫോർമാറ്റ് വാലിഡേഷൻ പാസ്സാകുന്നു, പക്ഷേ യഥാർഥ ബാങ്ക് അക്കൗണ്ടുകളുമായി ബന്ധപ്പെട്ടിട്ടില്ല. ഇവ യഥാർഥ ഇടപാടുകൾക്കായി ഉപയോഗിക്കുന്നത് പണ മാറ്റം പരാജയപ്പെടുകയോ നിരാകരിക്കപ്പെടുകയോ ചെയ്യും. ഇവ വികസനം, പരിശോധന, വിദ്യാഭ്യാസ ആവശ്യങ്ങൾക്കായി മാത്രം ഉദ്ദേശിച്ചിരിക്കുന്നു.
(ബാക്കി ഭാഗം തുടരുന്നു...)
IBAN വായിക്കുന്നതും ഡിക്കോഡ് ചെയ്യുന്നതും എങ്ങനെ
DE89370400440532013000 പോലുള്ള IBAN നോക്കിയിട്ട് അതിന്റെ ഓരോ ഭാഗവും എന്താണെന്ന് ആലോചിച്ചിട്ടുണ്ടോ? ഏതൊരു IBAN വിശദീകരിക്കാനുള്ള മാർഗം ഇതാണ്:
ഘട്ടം 1: രാജ്യ കോഡ് (ആദ്യത്തെ 2 അക്ഷരങ്ങൾ)
DE= ജർമ്മനി- ഏത് രാജ്യത്തിന്റെ ഫോർമാറ്റ് നിയമങ്ങൾ ബാധകമാണെന്ന് കാണിക്കുന്നു
ഘട്ടം 2: പരിശോധന അക്കങ്ങൾ (അടുത്ത 2 അക്ഷരങ്ങൾ)
89= കണക്കാക്കിയ ചെക്ക്സം- ഈ അക്കങ്ങൾ മുഴുവൻ IBAN സാധുവാണെന്ന് MOD 97 ഉപയോഗിച്ച് പരിശോധിക്കുന്നു
ഘട്ടം 3: ബാങ്ക് കോഡ് (രാജ്യം അനുസരിച്ച് വ്യത്യാസപ്പെടുന്നു)
- ജർമ്മൻ IBANകളിൽ
37040044= 8 അക്ഷര ബാങ്ക് ഐഡന്റിഫയർ - വ്യത്യസ്ത രാജ്യങ്ങൾ വ്യത്യസ്ത നീളങ്ങൾ ഉപയോഗിക്കുന്നു (യുകെ 4 അക്ഷരങ്ങൾ ഉപയോഗിക്കുന്നു)
ഘട്ടം 4: അക്കൗണ്ട് നമ്പർ (ബാക്കി അക്ഷരങ്ങൾ)
0532013000= ആ ബാങ്കിലെ യഥാർഥ അക്കൗണ്ട് നമ്പർ- നീളവും ഫോർമാറ്റും രാജ്യം അനുസരിച്ച് വ്യത്യാസപ്പെടുന്നു
വ്യത്യസ്ത രാജ്യങ്ങൾ BBAN ഭാഗം വ്യത്യസ്തമായി സംഘടിപ്പിക്കുന്നു. യുകെ IBANകൾ ബാങ്ക് കോഡിനും അക്കൗണ്ട് നമ്പർിനുമിടയിൽ 6 അക്ഷര സോർട്ട് കോഡ് (ശാഖ ഐഡന്റിഫയർ) ഉൾപ്പെടുത്തുന്നു. ഫ്രാൻസിലെ IBANകൾ ബാങ്ക് കോഡ്, ശാഖ കോഡ്, അക്കൗണ്ട് നമ്പർ എന്നിവ ഒരു പരിശോധന കീ കൂടി ചേർത്ത് സംയോജിപ്പിക്കുന്നു. IBANകൾ പ്രോഗ്രാമാറ്റിക്കൽ വിശകലനം ചെയ്യുമ്പോൾ ഈ വ്യത്യാസങ്ങൾ മനസ്സിലാക്കുന്നത് അത്യന്തം അനിവാര്യമാണ്.
സാധാരണ IBAN വാലിഡേഷൻ പിഴവുകളും അവ പരിഹരിക്കാനുള്ള മാർഗ്ഗങ്ങളും
IBAN വാലിഡേഷൻ നടപ്പിലാക്കുമ്പോൾ, നിങ്ങൾ ഇവ വീണ്ടും വീണ്ടും നേരിടും:
"അസാധുവായ ചെക്ക് അക്കങ്ങൾ" പിഴവ്
കാരണം: MOD 97 കണക്കുകൂട്ടൽ 1 ൽ തുല്യമല്ല. ചെക്ക് അക്കങ്ങൾ തെറ്റാണ്, അല്ലെങ്കിൽ IBAN-ൽ മറ്റെവിടെയെങ്കിലും പിഴവ് ഉണ്ട്.
പരിഹാരം: ഏതെങ്കിലും ടൈപ്പോ തിരുത്തിയ ശേഷം വാലിഡേഷൻ വീണ്ടും നടത്തുക. IBAN-ൽ ഒരു തെറ്റായ അക്ഷരം പോലും ചെക്ക് അക്കം പരാജയപ്പെടുത്തും. ഇത് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത് ഡാറ്റ എൻട്രി പിഴവുകൾ കണ്ടെത്താനാണ്.
"രാജ്യത്തിന് അനുയോജ്യമല്ലാത്ത നീളം" പിഴവ്
കാരണം: IBAN-ൽ രാജ്യ കോഡിനനുസരിച്ച് കൂടുതലോ കുറവോ അക്ഷരങ്ങൾ ഉണ്ട്.
പരിഹാരം: രാജ്യ കോഡ് ഉദ്ദേശിച്ച രാജ്യവുമായി പൊരുത്തപ്പെടുന്നുവെന്ന് ഉറപ്പാക്കുക. ജർമ്മൻ IBAN-കൾ എല്ലായ്പ്പോഴും 22 അക്ഷരങ്ങളുള്ളവ, UK IBAN-കൾ 22, ഫ്രഞ്ച് 27. കുറഞ്ഞ അല്ലെങ്കിൽ കൂടിയ അക്ഷരങ്ങൾ വിഭജനം അല്ലെങ്കിൽ തെറ്റായ ഡാറ്റ സൂചിപ്പിക്കുന്നു.
"അസാധുവായ അക്ഷരങ്ങൾ" പിഴവ്
കാരണം: ആ സ്ഥാനത്ത് വരുവാൻ പാടില്ലാത്ത അക്ഷരങ്ങൾ—അംഗങ്ങൾ മാത്രം അനുവദിക്കപ്പെട്ട സ്ഥാനത്ത് അക്ഷരങ്ങൾ.
പരിഹാരം: രാജ്യ-നിർദ്ദിഷ്ട ഫോർമാറ്റ് പരിശോധിക്കുക. ഉദാഹരണത്തിന്, ജർമ്മൻ IBAN-കൾ രാജ്യ കോഡിനും ചെക്ക് അക്കങ്ങൾക്കും ശേഷം പൂർണ്ണമായി സംഖ്യാപരം, UK IBAN-കൾ ബാങ്ക് കോഡിനായി 4 അക്ഷരങ്ങൾ ഉൾക്കൊള്ളുന്നു.
"പിന്തുണയ്ക്കാത്ത രാജ്യ കോഡ്" പിഴവ്
കാരണം: ആദ്യത്തെ രണ്ട് അക്ഷരങ്ങൾ അംഗീകൃത രാജ്യ കോഡല്ല, അല്ലെങ്കിൽ നിങ്ങളുടെ വാലിഡേറ്ററിൽ പിന്തുണയ്ക്കപ്പെടുന്നില്ല.
പരിഹാരം: രാജ്യ കോഡിന്റെ അക്ഷരവിന്യാസം പരിശോധിക്കുക. സാധാരണ പിഴവുകൾ UK പകരം GB, അല്ലെങ്കിൽ EN പകരം രാജ്യ കോഡുകൾ ഉപയോഗിക്കുന്നതാണ്. ഈ ഉപകരണം 10 യൂറോപ്യൻ രാജ്യങ്ങളെ പിന്തുണയ്ക്കുന്നു; ഉൽപ്പാദന വാലിഡേറ്ററുകൾ എല്ലാ SWIFT രജിസ്ട്രി രാജ്യങ്ങളെയും പിന്തുണയ്ക്കണം.
ഫോർമാറ്റ് vs. അക്കൗണ്ട് നിലവിൽ വരൽ
പ്രധാന വ്യത്യാസം: വാലിഡേഷൻ IBAN-ന്റെ ഘടനാപരമായ ശരിയായ രൂപം സ്ഥിരീകരിക്കുന്നു, ഒരു യഥാർത്ഥ ബാങ്ക് അക്കൗണ്ട് ഉണ്ടെന്ന് അല്ല. ഒരു IBAN-ക്ക് എല്ലാ വാലിഡേഷൻ പരിശോധനകളും പാസ്സാകാം, പക്ഷേ ഒരു യഥാർത്ഥ ബാങ്ക് അക്കൗണ്ടുമായി പൊരുത്തപ്പെടാതിരിക്കാം. ഉൽപ്പാദന പേയ്മെന്റ് സിസ്റ്റങ്ങൾക്ക്, ഫോർമാറ്റ് വാലിഡേഷനിൽ കൂടുതൽ അധിക സ്ഥിരീകരണം ആവശ്യമാണ്.
വികസനകർത്താക്കൾക്കുള്ള സാങ്കേതിക നടപ്പിലാക്കൽ
നിങ്ങളുടെ അപ്ലിക്കേഷനിൽ IBAN പിന്തുണ നിർമ്മിക്കുകയാണെങ്കിൽ, വിവിധ ഭാഷകളിലുള്ള യുദ്ധ പരീക്ഷിച്ച കോഡ് ഉദാഹരണങ്ങൾ ഇവിടെയുണ്ട്. ഈ നടപ്പിലാക്കലുകൾ ഉൽപ്പാദന സമയത്ത് നിങ്ങൾ നേരിടുന്ന വിവിധ സാഹചര്യങ്ങൾ കൈകാര്യം ചെയ്യുന്നു:
IBAN വിലയിരുത്തൽ
1function validateIban(iban) {
2 // സ്പേസുകൾ നീക്കം ചെയ്യുക മാത്രം ഉയർന്ന അക്ഷരത്തിൽ മാറ്റുക
3 const cleanedIban = iban.replace(/\s/g, '').toUpperCase();
4
5 // അടിസ്ഥാന ഫോർമാറ്റ്
6 if (!/^[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}$/.test(cleanedIban)) {
7 return false;
8 }
9
10 // പുനഃക്രമീകരിക്കുക മാത്രം അക്ഷരങ്ങളെ അക്കങ്ങളിലേക്ക് മാറ്റുക
11 const rearranged = cleanedIban.substring(4) + cleanedIban.substring(0, 4);
12 const converted = rearranged.split('').map(char => {
13 if (/[A-Z]/.test(char)) {
14 return (char.charCodeAt(0) - 55).toString();
15 }
16 return char;
17 }).join('');
18
19 // mod 97 കണക്കാക്കുക
20 let remainder = 0;
21 for (let i = 0; i < converted.length; i++) {
22 remainder = (remainder * 10 + parseInt(converted[i], 10)) % 97;
23 }
24
25 return remainder === 1;
26}
27
28// ഉദാഹരണ ഉപയോഗം
29console.log(validateIban('DE89 3704 0044 0532 0130 00')); // true
30console.log(validateIban('GB29 NWBK 6016 1331 9268 19')); // true
31console.log(validateIban('DE89 3704 0044 0532 0130 01')); // false (അസാധുവായ പരിശോധന അക്കങ്ങൾ)
321def validate_iban(iban):
2 # സ്പേസുകൾ നീക്കം ചെയ്യുക മാത്രം ഉയർന്ന അക്ഷരത്തിൽ മാറ്റുക
3 iban = iban.replace(' ', '').upper()
4
5 # അടിസ്ഥാന ഫോർമാറ്റ് പരിശോധന
6 if not (len(iban) > 4 and iban[:2].isalpha() and iban[2:4].isdigit()):
7 return False
8
9 # ആദ്യ 4 അക്ഷരങ്ങൾ അവസാനത്തേക്ക് നീക്കുക
10 rearranged = iban[4:] + iban[:4]
11
12 # അക്ഷരങ്ങളെ അക്കങ്ങളിലേക്ക് മാറ്റുക (A=10, B=11, ..., Z=35)
13 converted = ''
14 for char in rearranged:
15 if char.isalpha():
16 converted += str(ord(char) - 55)
17 else:
18 converted += char
19
20 # mod 97 ഒന്നിനെ സമമാണോ എന്ന് പരിശോധിക്കുക
21 return int(converted) % 97 == 1
22
23# ഉദാഹരണ ഉപയോഗം
24print(validate_iban('DE89 3704 0044 0532 0130 00')) # True
25print(validate_iban('GB29 NWBK 6016 1331 9268 19')) # True
26print(validate_iban('DE89 3704 0044 0532 0130 01')) # False (അസാധുവായ പരിശോധന അക്കങ്ങൾ)
271public class IbanValidator {
2 public static boolean validateIban(String iban) {
3 // സ്പേസുകൾ നീക്കം ചെയ്യുക മാത്രം ഉയർന്ന അക്ഷരത്തിൽ മാറ്റുക
4 String cleanedIban = iban.replaceAll("\\s", "").toUpperCase();
5
6 // അടിസ്ഥാന ഫോർമാറ്റ് പരിശോധന
7 if (!cleanedIban.matches("[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}")) {
8 return false;
9 }
10
11 // ആദ്യ 4 അക്ഷരങ്ങൾ അവസാനത്തേക്ക് നീക്കുക
12 String rearranged = cleanedIban.substring(4) + cleanedIban.substring(0, 4);
13
14 // അക്ഷരങ്ങളെ അക്കങ്ങളിലേക്ക് മാറ്റുക
15 StringBuilder converted = new StringBuilder();
16 for (char c : rearranged.toCharArray()) {
17 if (Character.isLetter(c)) {
18 converted.append(c - 'A' + 10);
19 } else {
20 converted.append(c);
21 }
22 }
23
24 // mod 97 കണക്കാക്കുക
25 BigInteger numeric = new BigInteger(converted.toString());
26 return numeric.mod(BigInteger.valueOf(97)).intValue() == 1;
27 }
28
29 public static void main(String[] args) {
30 System.out.println(validateIban("DE89 3704 0044 0532 0130 00")); // true
31 System.out.println(validateIban("GB29 NWBK 6016 1331 9268 19")); // true
32 System.out.println(validateIban("DE89 3704 0044 0532 0130 01")); // false
33 }
34}
35IBAN ഉൽപ്പാദനം
1function generateIban(countryCode) {
2 const countryFormats = {
3 'DE': { length: 22, bbanPattern: '8n10n' },
4 'GB': { length: 22, bbanPattern: '4a6n8n' },
5 'FR': { length: 27, bbanPattern: '5n5n11c2n' }
6 // ആവശ്യമനുസരിച്ച് കൂടുതൽ രാജ്യങ്ങൾ ചേർക്കുക
7 };
8
9 if (!countryFormats[countryCode]) {
10 throw new Error(`Country code ${countryCode} not supported`);
11 }
12
13 // രാജ്യ പാറ്റേൺ അനുസരിച്ച് യാദ്ഛിക BBAN സൃഷ്ടിക്കുക
14 let bban = '';
15 const pattern = countryFormats[countryCode].bbanPattern;
16 let i = 0;
17
18 while (i < pattern.length) {
19 const count = parseInt(pattern.substring(i + 1), 10);
20 const type = pattern[i];
21
22 if (type === 'n') {
23 // സംഖ്യാ അക്ഷരങ്ങൾ സൃഷ്ടിക്കുക
24 for (let j = 0; j < count; j++) {
25 bban += Math.floor(Math.random() * 10);
26 }
27 } else if (type === 'a') {
28 // അക്ഷരാത്മക അക്ഷരങ്ങൾ സൃഷ്ടിക്കുക
29 for (let j = 0; j < count; j++) {
30 bban += String.fromCharCode(65 + Math.floor(Math.random() * 26));
31 }
32 } else if (type === 'c') {
33 // അക്ഷരാക്കം അക്ഷരങ്ങൾ സൃഷ്ടിക്കുക
34 for (let j = 0; j < count; j++) {
35 const isLetter = Math.random() > 0.5;
36 if (isLetter) {
37 bban += String.fromCharCode(65 + Math.floor(Math.random() * 26));
38 } else {
39 bban += Math.floor(Math.random() * 10);
40 }
41 }
42 }
43
44 i += 2;
45 }
46
47 // പരിശോധന അക്കങ്ങൾ കണക്കാക്കുക
48 const checkDigits = calculateCheckDigits(countryCode, bban);
49
50 return countryCode + checkDigits + bban;
51}
52
53function calculateCheckDigits(countryCode, bban) {
54 // '00' പരിശോധന അക്കങ്ങളുമായി തുടക്ക IBAN സൃഷ്ടിക്കുക
55 const initialIban = countryCode + '00' + bban;
56
57 // പുനഃക്രമീകരിക്കുക മാത്രം അക്ഷരങ്ങളെ അക്കങ്ങളിലേക്ക് മാറ്റുക
58 const rearranged = bban + countryCode + '00';
59 const converted = rearranged.split('').map(char => {
60 if (/[A-Z]/.test(char)) {
61 return (char.charCodeAt(0) - 55).toString();
62 }
63 return char;
64 }).join('');
65
66 // 98 മൈനസ് mod 97 കണക്കാക്കുക
67 let remainder = 0;
68 for (let i = 0; i < converted.length; i++) {
69 remainder = (remainder * 10 + parseInt(converted[i], 10)) % 97;
70 }
71
72 const checkDigits = (98 - remainder).toString().padStart(2, '0');
73 return checkDigits;
74}
75
76// ഉദാഹരണ ഉപയോഗം
77console.log(generateIban('DE')); // സാധുവായ ജർമ്മൻ IBAN സൃഷ്ടിക്കുക
78console.log(generateIban('GB')); // സാധുവായ UK IBAN സൃഷ്ടിക്കുക
79import random import string def generate_iban(country_code): country_formats = { 'DE': {'length': 22, 'bban_format': '8n10n'}, 'GB': {'length': 22, 'bban_format': '4a6n8n'}, 'FR': {'length': 27, 'bban_format': '5n5n11c2n'} # ആവശ്യമനുസരിച്ച് കൂടുതൽ രാജ്യങ്ങൾ ചേർക്കുക } if country_code not in country_formats: raise ValueError(f"Country code {country_code} not supported") # രാജ്യ ഫോർമാറ്റ് അനുസരിച്ച് യാദ്ഛിക BBAN സൃഷ്ടിക്കുക bban = '' format_str = country_formats[country_code]['bban_format'] i = 0 while i < len(format_str): count = int(''.join(c for c in format_str[i+1:] if c.isdigit())) type_char = format_str[i] if type_char == 'n': # സംഖ്യാ bban += ''.join(random.choices(string.digits, k=count)) elif type_char == 'a': # അക്ഷരാത്മക bban += ''.join(random.choices(string.ascii_uppercase, k=count)) elif type_char == 'c': # അക്ഷരാക്കം bban += ''.join(random.choices(string.ascii_uppercase + string.digits, k=count)) i += 1 + len(str(count)) # പരിശോധന അക്കങ്ങൾ കണക്കാക്കുക check_digits = calculate_check_digits(country_code, bban) return country_code + check_digits + bban def calculate_check_digits(country_code, bban): # പരിശോധന അക്കങ്ങൾ കണക്കാക്കുവാനുള്ള സ്ട്രിംഗ് check_string = bban + country_code + '00' # അക്ഷരങ്ങളെ അക്കങ്ങളിലേക്ക് മാറ്റുക (A=10, B=11, ..., Z=35) numeric = '' for char in check_string: if char.isalpha(): numeric += str(ord(char.upper()) - 55) else: numeric += char # 98 മൈനസ് mod 97 കണക്കാക്കുക remainder = int(numeric) % 97 check_digits = str(98 - remainder).zfill(2) return check_digits # ## അനുബന്ധങ്ങളും കൂടുതൽ വായനയ്ക്കുള്ള സ്രോതസ്സുകൾ 1. [ISO 13616-1:2007](https://www.iso.org/standard/41031.html) - ഔദ്യോഗിക IBAN സ്ട്രക്ചർ നിർദ്ദേശം 2. [SWIFT IBAN രജിസ്ട്രി](https://www.swift.com/standards/data-standards/iban-international-bank-account-number) - രാജ്യ-നിർദ്ദിഷ്ട IBAN ഫോർമാറ്റുകൾക്കുള്ള അധികാര സ്രോതസ്സ് 3. [ISO 7064:2003](https://www.iso.org/standard/31531.html) - MOD 97 പരിശോധന അക്കം അൽഗോരിതം നിർദ്ദേശം 4. [യൂറോപ്യൻ പേയ്മെന്റ്സ് കൗൺസിൽ - SEPA](https://www.europeanpaymentscouncil.eu/what-we-do/sepa-payment-schemes) - സിംഗിൾ യൂറോ പേയ്മെന്റ്സ് മേഖല രേഖകൾ 5. [യൂറോപ്യൻ സെൻട്രൽ ബാങ്ക് - പേയ്മെന്റ് സിസ്റ്റങ്ങൾ](https://www.ecb.europa.eu/paym/intro/html/index.en.html) - യൂറോപ്യൻ ബാങ്കിംഗ് സംഭരണ നിലവാരങ്ങൾ 6. [ബാങ്ക് ഫോർ ഇന്റർനാഷണൽ സെറ്റിൽമെന്റ്സ് - പേയ്മെന്റ് സിസ്റ്റങ്ങൾ](https://www.bis.org/cpmi/info_paytsys.htm) - അന്തർദ്ദേശീയ പേയ്മെന്റ് സിസ്റ്റം നിലവാരങ്ങൾ ## IBANs പരിശോധന തുടങ്ങുക നിങ്ങളുടെ പേയ്മെന്റ് സിസ്റ്റത്തിനുള്ള പരിശോധനാ ഡാറ്റ വേണോ? മുകളിൽ പിന്തുണയ്ക്കുന്ന ഏതെങ്കിലും രാജ്യത്തിന്റെ സാധുവായ IBAN സൃഷ്ടിക്കുക, അല്ലെങ്കിൽ അതിന്റെ സ്ട്രക്ചർ പരിശോധിക്കുന്നതിനായി നിലവിലുള്ള IBAN പേസ്റ്റ് ചെയ്യുക. ഉപകരണം പൂർണ്ണമായും നിങ്ങളുടെ ബ്രൗസറിൽ പ്രവർത്തിക്കുന്നു—യാതൊരു സൈൻ അപ്പുകളും, API കീകളും, സെർവറുകളിലേക്ക് ഡാറ്റ അയയ്ക്കുന്നതുമില്ല. **വേഗം കിട്ടുന്ന ടിപ്സ്**: വ്യത്യസ്ത രാജ്യങ്ങളിൽ നിന്ന് IBANs സൃഷ്ടിച്ച് എഡ്ജ് കേസുകൾ പരിശോധിക്കുക. യഥാർഥ വ്യാവഹാരിക പേയ്മെന്റ് സിസ്റ്റങ്ങൾ വിവിധ ഫോർമാറ്റുകൾ കൈകാര്യം ചെയ്യുന്നു, കേവലം ഒരു രാജ്യത്തിന്റെ ഫോർമാറ്റ് മാത്രം പരിശോധിക്കുന്നത് ഉൽപ്പാദന ബഗുകളുടെ സാധാരണ മൂലം ആണ്.