كيف تُولَّد أرقام IBAN وبطاقات اختبارية؟
يتبع IBAN بنية خاصة بكل دولة من سجل SWIFT (السعودية: 24 محرفاً ورقما تحقق يُحسبان بباقي القسمة على 97)، ويجتاز رقم البطاقة رقم تحقق Luhn ويبدأ بنطاق مُصدر حقيقي. تُولَّد القيم الاختبارية لتستوفي تلك القواعد بالضبط — فتقبلها المدقّقات — مع أرقام حساب وبطاقة عشوائية غير منسوخة من أي حساب أو بطاقة فعلية.
IBAN السعودي في المثال، بلا مسافات
الجزء 1:SAالجزء 2:88الجزء 3:23الجزء 4:118993526147632783
- 3–4BBAN: رمز البنك + رقم الحساب
- 1رمز الدولةيحدّد الطول وتخطيط BBAN؛ وطول IBAN السعودي 24 محرفاً.
- 2رقما التحققيُحسبان من بقية المحارف وفق MOD-97، فتقبله أدوات التحقق.محسوبان
- 3رمز البنكرقمان عشوائيان، فقد يطابقان رمز بنك حقيقي.عشوائي
- 4رقم الحساب18 رقماً، غير مأخوذ من أي حساب حقيقي.عشوائي
كيفية استخدام مولّد IBAN للاختبار
- اختر دولة أو «مختلط».
- فعّل «أرقام تحقق خاطئة» (wrong check digits) إذا كنت تحتاج إلى حالات فاشلة.
- حدّد العدد والصيغة واضغط «توليد» (Generate).
- استخدم عمود valid للتأكد من حكم أداة التحقق لديك.
مزايا مولّد IBAN للاختبار
- عشر دول: SA وJO وAE وGB وDE وFR وEG وQA وKW وBH بالطول الصحيح وتخطيط BBAN المناسب
- أرقام تحقق MOD-97 وفق ISO 13616 — تقبل أدوات التحقق كل IBAN مولَّد
- أرقام IBAN الفرنسية تتضمن مفتاح RIB صحيحاً
- رموز بنوك خيالية من 4 أحرف (TEST وDEMO وMOCK…) لـ JO وGB وQA وKW وBH؛ أما رموز البنوك الرقمية (SA وAE وDE وFR وEG) فعشوائية وقد تطابق رمز بنك حقيقي
- صفوف اختيارية بأرقام تحقق خاطئة للاختبارات السلبية، معلَّمة في عمود valid
- تنسيق مجمّع بأربع خانات إلى جانب الصيغة المضغوطة
- قابل للتوليد ببذرة (seed)؛ مع إخراج بصيغة JSON أو CSV أو SQL أو XML أو JSON Lines أو جدول نصي
مثال على مولّد IBAN للاختبار
أرقام IBAN سعودية وبريطانية
الإدخال:
Country: Mixed · IBANs: 2النتيجة:
SA88 2311 8993 5261 4763 2783 SA valid
GB42 TEST 4021 5583 9010 21 GB validالأسئلة الشائعة حول مولّد IBAN للاختبار
هل ستقبل أدوات التحقق أرقام IBAN هذه؟
نعم. لكل IBAN الطول الصحيح وتخطيط BBAN المناسب لدولته، ويجتاز فحص MOD-97 وفق ISO 13616، لذا تعيد أدوات التحقق البنيوي النتيجة "valid".
هل هذه حسابات مصرفية حقيقية؟
لا. أرقام الفرع والحساب عشوائية، ورموز البنوك المكوّنة من 4 أحرف المستخدمة للأردن والمملكة المتحدة وقطر والكويت والبحرين خيالية (TEST وDEMO وMOCK…). أما رموز البنوك الرقمية (السعودية والإمارات وألمانيا وفرنسا ومصر) فأرقام عشوائية قد تطابق رمز بنك حقيقي، فقد يحمل IBAN كهذا رمز بنك موجود فعلاً، لكن رقم الحساب فيه غير مأخوذ من أي حساب حقيقي.
ما الدول المدعومة؟
السعودية والأردن والإمارات والمملكة المتحدة وألمانيا وفرنسا (مع مفتاح RIB صحيح) ومصر وقطر والكويت والبحرين.
هل يمكنني الحصول على أرقام IBAN غير صالحة للاختبارات السلبية؟
فعّل «أرقام تحقق خاطئة» (wrong check digits) ليفشل كل صف رابع في فحص MOD-97؛ ويخبرك عمود valid بالصفوف المعنية.
ملاحظات تقنية
تُحسب أرقام التحقق بنقل رمز الدولة و"00" إلى النهاية، واستبدال الحروف بأرقام (A=10 … Z=35)، وطرح باقي القسمة على 97 من 98، تماماً كما يحدّد ISO 13616. وتعيد الأداة التحقق من كل IBAN تُصدره.
98 − 10 = 88.- 1نقل رمز الدولة و"00" إلى النهايةيأتي BBAN أولاً، ثم
SA00.23118993526147632783SA00 - 2استبدال الحروف بأرقام
A=10 … Z=35، أيS=28،A=10.23118993526147632783281000 - 3حساب باقي القسمة على 97العدد المكوّن من 26 رقماً يترك باقياً قدره 10.
mod 97 = 10 - 4طرح الباقي من 98الناتج، مكتوباً برقمين، هو رقما التحقق.
98 − 10 = 88 → SA88… - 5تعيد الأداة التحقق من IBANبوضع 88 مكان "00" تترك الخطوات نفسها باقياً قدره 1، فهو صالح.
23118993526147632783281088 mod 97 = 1نجاح
المراجع
- IBAN Registryالسجل الرسمي لصيغ IBAN الوطنية (الطول والبنية وقواعد أرقام التحقق لكل دولة)، المُدار وفق ISO 13616.
- Personal Data Protection Law (English translation)النظام السعودي لحماية البيانات الشخصية — ولماذا ينبغي أن تستخدم بيئات الاختبار بيانات اصطناعية بدلاً من نسخ سجلات العملاء الحقيقية.