ہمارے سادہ ٹول کے ساتھ بے ترتیب فارمیٹ کے مطابق آئی بی این بنائیں یا موجودہ آئی بی این کی تصدیق کریں۔ مالیاتی ایپلیکیشنز، بینکنگ سافٹ ویئر، اور تعلیمی مقاصد کے لیے بہترین۔
بین الاقوامی بینک اکاؤنٹ نمبر (آئی بی این) جنریٹر اور ویلیڈیٹر ایک جامع ٹول ہے جو مالی ایپلی کیشنز، بینکنگ سافٹ ویئر، اور تعلیمی سیاق و سباق میں جانچ اور تصدیق کے مقاصد کے لیے ڈیزائن کیا گیا ہے۔ یہ صارف دوست ایپلیکیشن دو اہم خصوصیات پیش کرتی ہے: تصادفی طور پر تیار کردہ لیکن شکل کے اعتبار سے درست آئی بی این بنانا اور صارف کی طرف سے داخل کردہ آئی بی اینز کی ساختی سالمیت کی تصدیق کرنا۔ چاہے آپ ایک ڈویلپر ہوں جو مالی سافٹ ویئر کی جانچ کر رہے ہوں، ایک کیو اے اسپیشلسٹ جو بینکنگ ایپلیکیشنز کی تصدیق کر رہا ہو، یا ایک معلم جو بین الاقوامی بینکنگ کے معیارات کی وضاحت کر رہا ہو، یہ ٹول پیچیدہ کنفیگریشنز یا تیسرے فریق کے انضمام کی ضرورت کے بغیر ایک سادہ حل فراہم کرتا ہے۔
آئی بی اینز (بین الاقوامی بینک اکاؤنٹ نمبر) معیاری اکاؤنٹ شناخت کنندہ ہیں جو بین الاقوامی طور پر استعمال کیے جاتے ہیں تاکہ سرحد پار لین دین کو آسان بنایا جا سکے اور بین الاقوامی رقم کی منتقلی میں غلطیوں کو کم کیا جا سکے۔ ہر آئی بی این میں ایک ملک کا کوڈ، چیک نمبر، اور ایک بنیادی بینک اکاؤنٹ نمبر (بی بی اے این) شامل ہوتا ہے جو ملک کے مخصوص فارمیٹس کی پیروی کرتا ہے۔ ہمارا ٹول متعدد ملک کی شکلوں کی حمایت کرتا ہے اور یہ یقینی بناتا ہے کہ تمام تیار کردہ آئی بی اینز آئی ایس او 13616 کے معیاری میں بیان کردہ موڈ 97 کی تصدیق کے الگورڈم کو پاس کرتے ہیں۔
آئی بی این میں 34 الفانومیرک کرداروں تک شامل ہوتے ہیں، حالانکہ درست لمبائی ملک کے لحاظ سے مختلف ہوتی ہے۔ معیاری ساخت میں شامل ہیں:
مثال کے طور پر، ایک جرمن آئی بی این کی ساخت DE2!n8!n10!n
ہے جہاں:
DE
ملک کا کوڈ ہے2!n
دو عددی چیک نمبر کی نمائندگی کرتا ہے8!n
آٹھ عددی بینک کوڈ کی نمائندگی کرتا ہے10!n
دس عددی اکاؤنٹ نمبر کی نمائندگی کرتا ہےمختلف ممالک کے مختلف بی بی اے این فارمیٹس ہیں، جس کے نتیجے میں آئی بی این کی لمبائی مختلف ہوتی ہے:
ملک | لمبائی | ساخت | مثال |
---|---|---|---|
جرمنی (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 |
آئی بی این کی تصدیق کا عمل موڈ 97 الگورڈم کا استعمال کرتا ہے جیسا کہ آئی ایس او 7064 کے معیاری میں بیان کیا گیا ہے۔ یہ کیسے کام کرتا ہے:
ریاضی کے لحاظ سے، یہ اس طرح ظاہر کیا جاتا ہے:
ہمارا ویلیڈیٹر اس الگورڈم کو نافذ کرتا ہے تاکہ کسی بھی آئی بی این کی ساختی سالمیت کی تصدیق کی جا سکے جو صارفین کی طرف سے داخل کیا گیا ہو۔
آئی بی این جنریٹر تصدیق کے مقاصد کے لیے تصادفی طور پر درست آئی بی این تیار کرتا ہے۔ اہم خصوصیات میں شامل ہیں:
جنریٹر آئی بی این بناتا ہے:
آئی بی این ویلیڈیٹر صارف کی طرف سے داخل کردہ آئی بی این کی ساختی سالمیت کی جانچ کرتا ہے۔ اہم خصوصیات میں شامل ہیں:
ویلیڈیٹر متعدد چیک کرتا ہے:
آئی بی این جنریٹر اور ویلیڈیٹر ٹول مختلف شعبوں میں متعدد مقاصد کے لیے کام آتا ہے:
جبکہ ہمارا آئی بی این جنریٹر اور ویلیڈیٹر ٹول جانچ کے مقاصد کے لیے ایک ہموار تجربہ فراہم کرتا ہے، متبادل طریقوں پر غور کرنے کے لیے کچھ چیزیں ہیں:
ہمارا ٹول ان متبادل کے درمیان فرق کو ختم کرتا ہے اور جنریشن اور تصدیق کے لیے ایک سادہ، قابل رسائی انٹرفیس فراہم کرتا ہے بغیر تکنیکی انضمام یا ادائیگی کی سبسکرپشن کی ضرورت کے۔
آئی بی این (بین الاقوامی بینک اکاؤنٹ نمبر) ایک معیاری بین الاقوامی نمبرنگ سسٹم ہے جو بین الاقوامی سرحدوں کے پار بینک اکاؤنٹس کی شناخت کے لیے تیار کیا گیا ہے۔ یہ بین الاقوامی لین دین کو غلطیوں سے پاک کرنے کے لیے بین الاقوامی تنظیم برائے معیاری (آئی ایس او) کے ذریعہ قائم کیا گیا تھا۔
آئی بی این جنریٹر ساختی طور پر درست آئی بی این تیار کرتا ہے جو آئی ایس او 13616 کے معیاری میں بیان کردہ موڈ 97 چیک الگورڈم کو پاس کرتا ہے۔ جبکہ تیار کردہ آئی بی این ریاضی کے لحاظ سے درست ہیں، یہ تصادفی ہیں اور حقیقی بینک اکاؤنٹس سے منسلک نہیں ہیں، جس کی وجہ سے یہ جانچ کے لیے بہترین ہیں لیکن حقیقی لین دین کے لیے نہیں۔
یہ ٹول فی الحال جرمنی، برطانیہ، فرانس، اسپین، اٹلی، نیدرلینڈز، سوئٹزرلینڈ، آسٹریا، بیلجیم، اور پولینڈ کے لیے آئی بی این فارمیٹس کی حمایت کرتا ہے۔ یہ یورپ میں سب سے زیادہ استعمال ہونے والے آئی بی این فارمیٹس کا احاطہ کرتا ہے۔
نہیں۔ اس جنریٹر کے ذریعہ تیار کردہ آئی بی این ساختی طور پر درست ہیں لیکن تصادفی طور پر تیار کردہ ہیں۔ یہ حقیقی بینک اکاؤنٹس سے منسلک نہیں ہیں اور صرف جانچ، تعلیمی، یا مظاہرے کے مقاصد کے لیے استعمال کیے جانے چاہئیں۔
ویلیڈیٹر آئی بی این کے کئی پہلوؤں کی جانچ کرتا ہے:
نہیں۔ جبکہ آئی بی این اکثر پڑھنے کی آسانی کے لیے جگہوں کے ساتھ دکھائے جاتے ہیں (عام طور پر چار کرداروں کے گروپ میں)، تصدیق کے دوران جگہوں کو نظر انداز کیا جاتا ہے۔ ہمارا ٹول دونوں فارمیٹ کردہ اور غیر فارمیٹ کردہ آئی بی این کو سنبھالتا ہے۔
نہیں۔ یہ ٹول مکمل طور پر آپ کے براؤزر میں کام کرتا ہے۔ کوئی بھی آئی بی این کا ڈیٹا کسی سرور کو بھیجا نہیں جاتا، محفوظ نہیں کیا جاتا، یا تیسری جماعتوں کے ساتھ شیئر نہیں کیا جاتا۔ آپ کا ڈیٹا نجی اور محفوظ رہتا ہے۔
فی الحال، یہ ٹول صرف ڈراپ ڈاؤن میں درج سپورٹ کردہ ممالک کے آئی بی این کی تصدیق کرتا ہے۔ اگر آپ کو اضافی ممالک کے لیے تصدیق کی ضرورت ہے تو براہ کرم ہمیں فیڈبیک فارم کے ذریعے آگاہ کریں۔
ایک آئی بی این کئی وجوہات کی بنا پر تصدیق میں ناکام ہو سکتا ہے:
ہم ٹول کی بہتری کے لیے فیڈبیک کا خیرمقدم کرتے ہیں۔ براہ کرم کسی بھی مسائل کی رپورٹ کرنے یا بہتری کی تجاویز دینے کے لیے نیچے دیے گئے صفحے پر موجود فیڈبیک فارم کا استعمال کریں۔
ان ڈویلپرز کے لیے جو اپنی ایپلیکیشنز میں آئی بی این کی تصدیق اور جنریشن کو نافذ کرنے میں دلچسپی رکھتے ہیں، یہاں مختلف پروگرامنگ زبانوں میں کوڈ کے نمونے ہیں:
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 // پہلے 4 کرداروں کو آخر میں منتقل کریں
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 // موڈ 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')); // درست
30console.log(validateIban('GB29 NWBK 6016 1331 9268 19')); // درست
31console.log(validateIban('DE89 3704 0044 0532 0130 01')); // غلط (غلط چیک نمبر)
32
1def 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 # چیک کریں کہ آیا موڈ 97 ایک کے برابر ہے
21 return int(converted) % 97 == 1
22
23# مثال کا استعمال
24print(validate_iban('DE89 3704 0044 0532 0130 00')) # درست
25print(validate_iban('GB29 NWBK 6016 1331 9268 19')) # درست
26print(validate_iban('DE89 3704 0044 0532 0130 01')) # غلط (غلط چیک نمبر)
27
1public 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 // موڈ 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")); // درست
31 System.out.println(validateIban("GB29 NWBK 6016 1331 9268 19")); // درست
32 System.out.println(validateIban("DE89 3704 0044 0532 0130 01")); // غلط
33 }
34}
35
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(`ملک کا کوڈ ${countryCode} سپورٹ نہیں کیا گیا`);
11 }
12
13 // ملک کے فارمیٹ کی بنیاد پر تصادفی بی بی اے این تیار کریں
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' کو چیک نمبر کے طور پر استعمال کرتے ہوئے ابتدائی آئی بی این بنائیں
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 منفی موڈ 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')); // ایک درست جرمن آئی بی این تیار کرتا ہے
78console.log(generateIban('GB')); // ایک درست برطانوی آئی بی این تیار کرتا ہے
79
1import random
2import string
3
4def generate_iban(country_code):
5 country_formats = {
6 'DE': {'length': 22, 'bban_format': '8n10n'},
7 'GB': {'length': 22, 'bban_format': '4a6n8n'},
8 'FR': {'length': 27, 'bban_format': '5n5n11c2n'}
9 # مزید ممالک شامل کریں جیسے ضرورت ہو
10 }
11
12 if country_code not in country_formats:
13 raise ValueError(f"ملک کا کوڈ {country_code} سپورٹ نہیں کیا گیا")
14
15 # ملک کے فارمیٹ کی بنیاد پر تصادفی بی بی اے این تیار کریں
16 bban = ''
17 format_str = country_formats[country_code]['bban_format']
18 i = 0
19
20 while i < len(format_str):
21 count = int(''.join(c for c in format_str[i+1:] if c.isdigit()))
22 type_char = format_str[i]
23
24 if type_char == 'n': # عددی
25 bban += ''.join(random.choices(string.digits, k=count))
26 elif type_char == 'a': # حروف تہجی
27 bban += ''.join(random.choices(string.ascii_uppercase, k=count))
28 elif type_char == 'c': # الفانومیرک
29 bban += ''.join(random.choices(string.ascii_uppercase + string.digits, k=count))
30
31 i += 1 + len(str(count))
32
33 # چیک نمبر کا حساب لگائیں
34 check_digits = calculate_check_digits(country_code, bban)
35
36 return country_code + check_digits + bban
37
38def calculate_check_digits(country_code, bban):
39 # چیک نمبر کے حساب کے لیے سٹرنگ بنائیں
40 check_string = bban + country_code + '00'
41
42 # حروف کو نمبروں میں تبدیل کریں (A=10، B=11، ..., Z=35)
43 numeric = ''
44 for char in check_string:
45 if char.isalpha():
46 numeric += str(ord(char.upper()) - 55)
47 else:
48 numeric += char
49
50 # 98 منفی موڈ 97 کا حساب لگائیں
51 remainder = int(numeric) % 97
52 check_digits = str(98 - remainder).zfill(2)
53
54 return check_digits
55
56# مثال کا استعمال
57print(generate_iban('DE')) # ایک درست جرمن آئی بی این تیار کرتا ہے
58print(generate_iban('GB')) # ایک درست برطانوی آئی بی این تیار کرتا ہے
59
آئی بی این جنریٹر اور ویلیڈیٹر ٹول بین الاقوامی بینکنگ شناخت کنندگان سے متعلق جانچ اور تعلیمی مقاصد کے لیے ایک سادہ لیکن طاقتور حل فراہم کرتا ہے۔ جنریشن اور ویلیڈیشن کی صلاحیتوں کو صارف دوست انٹرفیس میں پیش کرکے، یہ پیچیدہ کنفیگریشنز یا تیسرے فریق کے انضمام کی ضرورت کو ختم کرتا ہے۔
چاہے آپ مالی ایپلیکیشنز تیار کر رہے ہوں، ادائیگی کے نظام کی جانچ کر رہے ہوں، یا بین الاقوامی بینکنگ کے معیارات کے بارے میں سیکھ رہے ہوں، یہ ٹول آئی بی این کے ساتھ کام کرنے کے لیے ایک سادہ طریقہ پیش کرتا ہے۔ جامع تصدیق یہ یقینی بناتی ہے کہ تمام تیار کردہ آئی بی اینز ساختی طور پر درست اور بین الاقوامی معیارات کے مطابق ہیں۔
اب ایک آئی بی این تیار کرنے یا اس کی تصدیق کرنے کی کوشش کریں تاکہ آپ ٹول کی صلاحیتوں کا تجربہ کر سکیں!
آپ کے ورک فلو کے لیے مفید ہونے والے مزید ٹولز کا انعام کریں