🛠️

Whiz Tools

Build • Create • Innovate

כלי ליצירת ואימות IBAN לבדיקה ואימות

צור מספרי IBAN אקראיים התואמים לפורמט או אמת מספרים קיימים עם הכלי הפשוט שלנו. מושלם לבדוק יישומים פיננסיים, תוכנות בנקאות ומטרות חינוכיות.

יוצר ומאמת IBAN

📚

תיעוד

כלי ליצירת ואימות IBAN

מבוא

כלי ליצירת ואימות מספרי חשבון בנק בינלאומיים (IBAN) הוא כלי מקיף שנועד למטרות בדיקה ואימות ביישומים פיננסיים, תוכנות בנקאיות והקשרים חינוכיים. יישום ידידותי למשתמש זה מציע שתי תכונות חיוניות: יצירת IBANים אקראיים אך תואמים לפורמט ואימות של שלמות המבנה של IBANים שהוזנו על ידי המשתמש. בין אם אתה מפתח בודק תוכנה פיננסית, מומחה QA מאמת יישומים בנקאיים, או מחנך המסביר על תקנים בנקאיים בינלאומיים, כלי זה מספק פתרון פשוט מבלי לדרוש תצורות מורכבות או אינטגרציות עם צדדים שלישיים.

IBANים (מספרי חשבון בנק בינלאומיים) הם מזהים סטנדרטיים של חשבונות המשמשים ברחבי העולם כדי להקל על עסקאות חוצות גבולות ולהפחית טעויות בהעברות כספים בינלאומיות. כל IBAN מורכב מקוד מדינה, ספרות בדיקה ומספר חשבון בנק בסיסי (BBAN) שעוקב אחרי פורמטים ספציפיים למדינה. הכלי שלנו תומך בפורמטים של מדינות רבות ומוודא שכל IBAN שנוצר עובר את אלגוריתם האימות MOD 97 המפורט בסטנדרט ISO 13616.

איך IBANים פועלים

מבנה ופורמט IBAN

IBAN מורכב עד 34 תווים אלפאנומריים, אם כי האורך המדויק משתנה לפי מדינה. המבנה הסטנדרטי כולל:

  1. קוד מדינה: קוד אלפא-2 של ISO 3166-1 בן שתי אותיות (למשל, DE עבור גרמניה, GB עבור הממלכה המאוחדת)
  2. ספרות בדיקה: שתי ספרות מחושבות באמצעות אלגוריתם MOD 97 כדי לאמת את ה-IBAN
  3. מספר חשבון בנק בסיסי (BBAN): פורמט ספציפי למדינה שיכול לכלול:
    • קוד בנק
    • קוד סניף (קוד מיון)
    • מספר חשבון
    • ספרות בדיקה לאומיות

לדוגמה, IBAN גרמני עוקב אחרי המבנה DE2!n8!n10!n שבו:

  • DE הוא קוד המדינה
  • 2!n מייצג שתי ספרות מספריות
  • 8!n מייצג קוד בנק בן שמונה ספרות
  • 10!n מייצג מספר חשבון בן עשר ספרות

מדינות שונות יש להן פורמטים שונים ל-BBAN, מה שמוביל לאורכי IBAN משתנים:

מדינהאורךמבנהדוגמה
גרמניה (DE)22DE2!n8!n10!nDE89370400440532013000
הממלכה המאוחדת (GB)22GB2!n4!a6!n8!nGB29NWBK60161331926819
צרפת (FR)27FR2!n5!n5!n11!c2!nFR1420041010050500013M02606
ספרד (ES)24ES2!n4!n4!n1!n1!n10!nES9121000418450200051332
איטליה (IT)27IT2!n1!a5!n5!n12!cIT60X0542811101000000123456

אלגוריתם אימות IBAN

תהליך האימות של IBAN משתמש באלגוריתם MOD 97 כפי שמפורט בסטנדרט ISO 7064. כך זה עובד:

  1. העבר את ארבעת התווים הראשונים (קוד המדינה וספרות הבדיקה) לסוף ה-IBAN
  2. המיר את כל האותיות למספרים (A=10, B=11, ..., Z=35)
  3. חשב את המודולו 97 של המספר الناتج
  4. אם השארית שווה ל-1, ה-IBAN תקף

מתמטית, זה מיוצג כ:

מספר IBANmod97=1\text{מספר IBAN} \bmod 97 = 1

המאמת שלנו מיישמת אלגוריתם זה כדי לאמת את שלמות המבנה של כל IBAN שהוזן על ידי המשתמשים.

תכונות הכלי

יוצר IBAN

יוצר ה-IBAN יוצר IBANים אקראיים אך תקפים למטרות בדיקה. תכונות עיקריות כוללות:

  • בחירת מדינה: בחר מתוך מדינות רבות הנתמכות כולל גרמניה, הממלכה המאוחדת, צרפת, ספרד, איטליה, הולנד, שווייץ, אוסטריה, בלגיה ופולין
  • עמידה בפורמט: כל ה-IBANים שנוצרים עוקבים אחרי פורמטים ספציפיים למדינה ועוברים את אימות MOD 97
  • יצירה בלחיצת כפתור: צור IBANים תקפים מיד בלחיצת כפתור אחת
  • העתקה ללוח: העתק בקלות IBANים שנוצרו לשימוש בתרחישי בדיקה
  • ייצוג חזותי: ראה חלוקה בצבעים של רכיבי ה-IBAN (קוד מדינה, ספרות בדיקה, פרטי בנק)

היוצר יוצר IBANים על ידי:

  1. בחירת פורמט המדינה המתאים
  2. יצירת ספרות אקראיות עבור חלק ה-BBAN
  3. חישוב ספרות הבדיקה הנכונות באמצעות אלגוריתם MOD 97
  4. הרכבת ה-IBAN המלא

מאמת IBAN

מאמת ה-IBAN בודק את שלמות המבנה של IBANים שהוזנו על ידי המשתמש. תכונות עיקריות כוללות:

  • אימות פורמט: בודק אם ה-IBAN עוקב אחרי הפורמט הספציפי למדינה
  • אימות MOD 97: מאמת את ספרות הבדיקה באמצעות האלגוריתם הסטנדרטי
  • חלוקה מפורטת: מציג את רכיבי ה-IBANים התקפים (קוד מדינה, ספרות בדיקה, קוד בנק, מספר חשבון)
  • זיהוי שגיאות: מספק הודעות שגיאה ספציפיות עבור IBANים לא תקפים
  • סיוע בפורמט: עורך אוטומטית את ה-IBANים שהוזנו כדי לשפר את הקריאות

המאמת מבצע מספר בדיקות:

  1. מאמת שהקוד מדינה נתמך
  2. בודק את האורך של ה-IBAN בהתאם לדרישות הספציפיות למדינה
  3. מאמת את סוגי התווים (אותיות ומספרים במיקומים נכונים)
  4. מבצע את בדיקת MOD 97 כדי לאמת את ספרות הבדיקה

מדריך שלב אחר שלב

יצירת IBAN

  1. גש ללשונית היוצר: לחץ על הלשונית "יוצר" (נבחרת כברירת מחדל)
  2. בחר מדינה: בחר את המדינה הרצויה מתוך התפריט הנפתח
  3. צור את ה-IBAN: לחץ על כפתור "צור IBAN"
  4. ראה את התוצאה: ה-IBAN שנוצר יופיע למטה עם חלוקה חזותית של רכיביו
  5. העתקה ללוח: לחץ על כפתור "העתק ללוח" כדי להעתיק את ה-IBAN לשימוש במקומות אחרים

אימות IBAN

  1. גש ללשונית המאמת: לחץ על הלשונית "מאמת"
  2. הזן IBAN: הקלד או הדבק IBAN בשדה הקלט
    • רווחים ועיצוב יטופלו אוטומטית
    • הכלי מקבל גם IBANים מעוצבים (עם רווחים) וגם IBANים לא מעוצבים
  3. ראה את תוצאות האימות: הכלי יאמת אוטומטית את ה-IBAN תוך כדי הקלדה
  4. בדוק את הפרטים: עבור IBANים תקפים, תוצג חלוקה של הרכיבים
  5. סקור כל שגיאות: עבור IBANים לא תקפים, הודעות שגיאה ספציפיות יעזרו לזהות את הבעיה

מקרי שימוש

כלי ייצור ואימות ה-IBAN משרת מטרות רבות בתחומים שונים:

פיתוח תוכנה ובדיקות

  • בדיקות API: צור IBANים תקפים כדי לבדוק APIs פיננסיים מבלי להשתמש במספרי חשבון אמיתיים
  • אימות טפסים: בדוק את הלוגיקה של אימות IBAN בטפסים וביישומים
  • בדיקות קצה: אמת כיצד יישומים מטפלים ב-IBANים ממדינות שונות
  • בדיקות רגרסיה: ודא שטיפול ב-IBANים נשאר נכון לאחר עדכוני תוכנה

פיתוח יישומים פיננסיים

  • מערכות תשלום: בדוק פונקציות עיבוד תשלומים בינלאומיים
  • תוכנות בנקאיות: אמת רכיבי פענוח ואימות IBAN
  • יישומי פינטק: ודא עמידה בתקנים בינלאומיים לבנקאות
  • מערכות בסיסי נתונים: בדוק אחסון ושחזור של נתוני IBAN

מטרות חינוכיות

  • חינוך על תקני בנקאות: הדגם כיצד IBANים בנויים ומאומתים
  • אוריינות פיננסית: למד תלמידים על מזהים בנקאיים בינלאומיים
  • מדריכי קוד: השתמש כדוגמה לאלגוריתמים של אימות וטיפול בנתונים פיננסיים
  • תיעוד טכני: צור דוגמות IBAN עבור תיעוד API

העברת נתונים והמרה

  • העברת מערכות ישנות: בדוק תהליכי המרה של IBANים בעת שדרוג מערכות
  • אנונימיזציה של נתונים: צור IBANים לבדיקה כדי להחליף מספרי חשבון אמיתיים בסביבות פיתוח
  • זריעת בסיסי נתונים: צור נתוני בדיקה מציאותיים עבור בסיסי נתונים של יישומים פיננסיים

חלופות

בעוד שכלי ייצור ואימות ה-IBAN שלנו מציע חוויה חלקה למטרות בדיקה, ישנן גישות חלופיות לשקול:

APIs בנקאיים מסחריים

  • יתרונות: מציעים אימות נוסף מול רישומים בנקאיים אמיתיים, מספקים שירותים פיננסיים מקיפים יותר
  • חסרונות: בדרך כלל דורשים מנויים, מפתחות API ועבודת אינטגרציה; עשויים להיות מוגבלים בשימוש

ספריות IBAN לשפות תכנות

  • יתרונות: ניתן לשלב ישירות בקוד שלך, מציעות גישה תוכנתית
  • חסרונות: דורשות עבודה פיתוחית ליישום, עשויות להזדקק לעדכונים קבועים כדי להישאר מעודכנות עם הסטנדרטים

מאמתים רשמיים של בנקים

  • יתרונות: מסופקים על ידי מוסדות פיננסיים, דיוק גבוה עבור המדינה הספציפית שלהם
  • חסרונות: בדרך כלל מוגבלים למדינות ספציפיות, עשויים לא לתמוך בתכונות יצירה

חישוב ידני

  • יתרונות: עוזר להבין את האלגוריתם הבסיסי, אין תלות בכלים חיצוניים
  • חסרונות: לוקח הרבה זמן, נתון לטעויות אנוש, לא מעשי לבדיקה בהיקף גדול

הכלי שלנו גשר בין חלופות אלו על ידי מתן ממשק פשוט ונגיש עבור יצירה ואימות מבלי לדרוש אינטגרציה טכנית או מנויים בתשלום.

שאלות נפוצות

מה זה IBAN?

IBAN (מספר חשבון בנק בינלאומי) הוא מערכת מספרית בינלאומית סטנדרטית שנועדה לזהות חשבונות בנק ברחבי גבולות לאומיים. היא הוקמה על ידי הארגון הבינלאומי לתקינה (ISO) כדי להקל על עסקאות בינלאומיות ללא טעויות.

כמה מדויק יוצר ה-IBAN הזה?

יוצר ה-IBAN יוצר IBANים תקפים מבנית שעוברים את אלגוריתם בדיקת MOD 97 כפי שמפורט בסטנדרט ISO 13616. בעוד שה-IBANים שנוצרים הם תקפים מתמטית, הם אקראיים ואינם מקושרים לחשבונות בנק אמיתיים, מה שהופך אותם למושלמים לבדיקה אך לא לעסקאות אמיתיות.

אילו מדינות נתמכות על ידי כלי זה?

הכלי תומך כיום בפורמטים של IBAN עבור גרמניה, הממלכה המאוחדת, צרפת, ספרד, איטליה, הולנד, שווייץ, אוסטריה, בלגיה ופולין. אלה מכסים את הפורמטים הנפוצים ביותר של IBAN באירופה.

האם אני יכול להשתמש ב-IBANים שנוצרו לעסקאות אמיתיות?

לא. ה-IBANים שנוצרים על ידי יוצר זה הם תקפים מבנית אך אקראיים. הם אינם מקושרים לחשבונות בנק אמיתיים ויש להשתמש בהם רק למטרות בדיקה, חינוך או הדגמה.

איך עובד אימות ה-IBAN?

המאמת בודק מספר היבטים של IBAN:

  1. תקפות קוד המדינה
  2. אורך נכון עבור המדינה הספציפית
  3. תקפות סוגי תווים (אותיות ומספרים במיקומים נכונים)
  4. אימות ספרות בדיקה MOD 97 בהתאם לסטנדרט ISO

האם רווחים חשובים ב-IBAN?

לא. בעוד ש-IBANים מוצגים לעיתים קרובות עם רווחים לצורך קריאות (בדרך כלל בקבוצות של ארבעה תווים), הרווחים מתעלמים במהלך האימות. הכלי שלנו מטפל ב-IBANים מעוצבים ולא מעוצבים.

האם נתוני ה-IBAN שלי נשמרים או משותפים בעת השימוש בכלי זה?

לא. כלי זה פועל לחלוטין בדפדפן שלך. אין נתוני IBAN שנשלחים לשרת כלשהו, נשמרים או משותפים עם צדדים שלישיים. הנתונים שלך נשארים פרטיים ומאובטחים.

האם אני יכול לאמת IBANים ממדינות שאינן ברשימה הנפתחת?

נכון לעכשיו, הכלי מאמת רק IBANים מהמדינות הנתמכות ברשימה הנפתחת. אם אתה זקוק לאימות עבור מדינות נוספות, אנא יידע אותנו דרך טופס המשוב.

מדוע 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  // העבר את ארבעת התווים הראשונים לסוף ה-IBAN
11  const rearranged = cleanedIban.substring(4) + cleanedIban.substring(0, 4);
12  // המרת אותיות למספרים
13  const converted = rearranged.split('').map(char => {
14    if (/[A-Z]/.test(char)) {
15      return (char.charCodeAt(0) - 55).toString();
16    }
17    return char;
18  }).join('');
19  
20  // חישוב מודולו 97
21  let remainder = 0;
22  for (let i = 0; i < converted.length; i++) {
23    remainder = (remainder * 10 + parseInt(converted[i], 10)) % 97;
24  }
25  
26  return remainder === 1;
27}
28
29// דוגמת שימוש
30console.log(validateIban('DE89 3704 0044 0532 0130 00')); // true
31console.log(validateIban('GB29 NWBK 6016 1331 9268 19')); // true
32console.log(validateIban('DE89 3704 0044 0532 0130 01')); // false (ספרות בדיקה לא תקפות)
33

יצירת IBAN

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  // צור 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  // צור IBAN ראשוני עם '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')); // יוצר IBAN גרמני תקף
78console.log(generateIban('GB')); // יוצר IBAN בריטי תקף
79

הפניות

  1. ISO 13616-1:2007 - "שירותים פיננסיים - מספר חשבון בנק בינלאומי (IBAN) - חלק 1: מבנה ה-IBAN"
  2. הוועדה האירופית לתקנים בנקאיים (ECBS) - "IBAN: מספר חשבון בנק בינלאומי"
  3. SWIFT - "מרשם IBAN"
  4. המועצה האירופית לתשלומים - "IBAN ומזהה נושה"
  5. בנק להסדרים בינלאומיים - "מערכות תשלום, ניקוי והסדר"
  6. הבנק המרכזי האירופי - "אזור תשלומים אירופי יחיד (SEPA)"
  7. ISO 9362 - "בנקאות - הודעות טלגרפיות בנקאיות - קוד מזהה עסקי (BIC)"
  8. ISO 7064 - "טכנולוגיית מידע - טכניקות אבטחה - מערכות תווים בדיקה"

סיכום

כלי ייצור ואימות ה-IBAN מספק פתרון פשוט אך רב עוצמה למטרות בדיקה וחינוך הקשורות למזהים בנקאיים בינלאומיים. על ידי הצעת יכולות גם ליצירה וגם לאימות בממשק ידידותי למשתמש, הוא מבטל את הצורך בתצורות מורכבות או אינטגרציות עם צדדים שלישיים.

בין אם אתה מפתח יישומים פיננסיים, בודק מערכות תשלום או לומד על תקנים בנקאיים בינלאומיים, כלי זה מציע דרך פשוטה לעבוד עם IBANים. האימות המקיף מבטיח שכל ה-IBANים שנוצרים הם תקפים מבנית ועומדים בסטנדרטים בינלאומיים.

נסה ליצור או לאמת IBAN עכשיו כדי לחוות את יכולות הכלי בעצמך!