بانک‌تک (BankTech)

همه چیز در مورد شبا یا شناسه حساب بانکی ایران

نوشته شده توسط اتاق خبر راه پرداخت

شناسه حساب بانکی ایران  که مختصرا آن را شبا می‌نامندعبارت است از شماره حساب بـانکی ایران، که به منظور تسهیل و استانداردسازی مبادلات بین بانکی و بین‌المللی بانکهای کشور در این مستند تعریف و تبیین شده و در تمام سامانه‌های پرداخت بین بانکی منحصراً از این نوع حساب استفاده می‌شود. «شبا» مستقل از نظام شماره‌گذاری داخلی هر یک از بانکها است، اما در محاسبه «شبا» از شماره حساب مربوط به نظام شماره‌گذاری داخلی بانکها استفاده به عمل می‌آید. «شبا» مطابق با ضوابط IBAN تنظیم می‌شود.

 .

ارقام کنترلی:

عبارتند از ارقامی که به منظور حصول اطمینان از دریافت و ارسال کامل و بدون نقص یا تحریف «شبا»، بر مبنای مندرجات درونی «شبا» محاسبه و به عنوان بخش الزامی «شبا» بدان افزوده می‌شوند. دریافت کننده «شبا» با استفاده از ارقام کنترلی و رمزگشایی آن به روشی که در این مستند ذکر می‌شود، می‌تواند در خصوص صحت و عدم تحریف مندرجات درونی «شبا» اطمینان حاصل کند.

 .

IBAN:

حروف اختصاری «International Bank Account Number»، شناسه‌ ایست که یک شماره حساب خاص را در یک بانک به صورت یکتا معرفی می‌کند. این شناسه مطابق با استاندارد بین‌المللی ISO 13616:2007 تولید شده و به منظور یکسان سازی شماره حسابهای بانکی در سطح بین‌المللی به منظور تسهیلات تبادلات بین‌بانکی، مورد استفاده قرار می‌گیرد.

 .

BBAN:

حروف اختصاری «Basic Bank Account Number»، شناسه ‌ایست شامل شناسه بانک که به صورت یکتا یک حساب خاص را در یک بانک در یک کشور خاص مشخص می‌کند.

.

قواعد ساختاری شبا:

هر کاراکتر تنها می‌تواند یکی از حروف بزرگ الفبای انگلیسی [A-Z] یا یک رقم انگلیسی[۰-۹] باشد. استفاده از هیچ کاراکتر دیگری، از جمله اعداد و حروف فارسی مجاز نیست.

طول شبا دقیقا باید معادل ۲۶ کاراکتر باشد. شماره‌های کمتر یا بیشتر از ۲۶ کاراکتر مجاز نیستند.

استفاده از حروف تنها برای کد کشور (دو رقم سمت چپ شبا) مجاز است. بقیه اجزای شبا تنها می‌تواند در برگیرنده اعداد باشد.

 .

نمایش شبا:

نمایش در سیستم‌های رایانه‌ای: در سیستمهای رایانه‌ای، شبا مانند نمونه زیر، به صورت یکپارچه و بدون فاصله نمایش داده می‌شود، مانند این نمونه:

IR062960000000100324200001

نمایش در اشکال نوشتاری: در اشکال نوشتاری، مانند فرمها و نامه‌ها، از سمت چپ، بین هر چهار کاراکتر، یک فاصله قرار می‌گیرد. در نتیجه کد شبا در فرم نوشتاری شامل ۶ دسته چهار کاراکتری و یک دسته ۲ کاراکتری در سمت راست خواهد بود. به عنوان مثال شبای مذکور در بند فوق به صورت زیر نوشته می‌شود:

IR06 2960 0000 0010 0324 2000 01

.

ساختار و اجزاء شبا:

شبا یک کد ۲۶ کاراکتری است که به صورت زیر به سه بخش اصلی تقسیم می‌شود:

about-Sheba-contex-way2pay-92-11-24

یک شبا به صورت [CC][CD][BBAN] ساخته می‌شود. (کروشه تنها برای تفکیک اجزاء است و در شبا دیده نمی‌شود)

CC به معنی کد کشور، در مورد تمامی حساب‌های بانکی کشور بر اساس استاندارد ISO-3166-1 معادل دو حرف IR (حروف بزرگ لاتین) است. کد کشور تنها بخش حرفی شبا محسوب می‌شود.

CD به طول دو رقم به معنی ارقام کنترلی که در بند (۶) این سند، نحوه محاسبه و ساخت آن توضیح داده شده است.

BBAN به طول ۲۲ رقم که شماره پایه حساب بانکی را تشکیل می‌دهد و در بند (۵) این سند و نیز پیوست‌ آن به تفصیل در مورد آن بحث شده است.

 .

ساختار و قالب BBAN:

مشخصات کلی: قالب BBAN یک کد به طول ۲۲ رقم با قالب زیر است:

about-Sheba-contex-way2pay-92-11-24-a

.

اجزاء BBAN:

بر اساس جدول فوق به صورت زیر توضیح داده می‌شوند:

شناسه بانک، که در موقعیت A1 الی A3 به طول سه رقم قرار می‌گیرد. شناسه بانک یک عدد سه رقمی است که بر اساس کد بانک‌ها نزد بانک مرکزی تدوین شده است. با توجه به این که این کدها در حال حاضر دو رقمی هستند، تا اطلاع ثانوی از صفر در سمت چپ این کد برای تمام بانک‌ها و مؤسسات اعتباری استفاده شده است. کد بانکها مطابق با جدول زیر تنظیم می‌شود:

about-Sheba-contex-way2pay-92-11-24-b

شناسه حساب که در موقعیت B1 الی B19 به طول ۱۹ رقم قرار می‌گیرد. در صورتی که شماره حساب فعلی بانک، دارای شرایط «قواعد کلی ساختاری» نباشد، با استفاده از راهکارهای زیر به قالب مجاز تبدیل می‌شود:

  • در صورتی که طول شماره حساب بانک، کمتر از ۱۹ رقم باشد، باید به اندازه‌ای رقم ۰ به سمت چپ آن افزوده شود که طول شناسه حساب برابر ۱۹ شود.
  • شناسه حساب تنها می‌تواند شامل ارقام باشد. (از ۰ تا ۹)
  • کاراکترهای غیر مجاز در شماره حسابهای فعلی، نظیر حروف، خط فاصله، نقطه، ممیز و نظایر آن باید از شماره حساب حذف شوند. جایگزینی این کاراکترهای غیرمجاز با هیچ رقمی مجاز نیست و در تبدیل شماره حساب به شناسه حساب، این کاراکترها صرفاً حذف می‌شوند.

.

توضیح مهم: الگوریتم ساخت و تفسیر شناسه حساب به تفکیک تمام بانک‌های کشور در پیوست این مشخصات ذکر شده است.

ارقام کنترلی: بخش CD شبا دارای دو مبحث جداگانه محاسبه ارقام کنترلی برای یک BBAN و کنترل ارقام کنترلی در یک شبای داده شده است.

.

الگوریتم محاسبه ارقام کنترلی به صورت زیر است:

طول شبا، مطابق با قواعد کلی تنظیم شبا، باید دقیقا ۲۶ کاراکتر باشد. شباهای کوچکتر یا بزرگتر از ۲۶ کاراکتر، یا شبا هایی که دارای کاراکترهای جدا شونده‌ای نظیر فاصله، ممیز یا خط فاصله باشند نادرست تلقی شده و امکان ایجاد کد کنترلی برای آن وجود ندارد.

  • اعداد متناظر با ارقام کنترلی معادل صفر قرار می‌گیرند.
  • چهار کاراکتر سمت چپ شبا با حفظ ترتیب، به انتهای سمت راست منتقل می‌شوند.
  • تمام کاراکترهای حرفی با دو کاراکتر عددی حاصل از جدول زیر جایگزین می‌شوند. در پایان یک رشته عددی به دست خواهد آمد.

about-Sheba-contex-way2pay-92-11-24-c

رشته به دست آمده به عنوان یک عدد صحیح در نظر گرفته می‌شود. مطابق الگوریتم ISO 7064 (Mod 97-10) بر عدد ۹۷ تقسیم شده، باقیمانده آن به دست می‌آید. با کسر باقیمانده از عدد ۹۸، ارقام کنترلی به دست می‌آیند. عدد حاصل از عدد ۹۸ کم می‌شود. در صورت یک رقمی بودن، صفر به سمت چپ آن اضافه می‌شود. عدد حاصل، دو رقم کنترلی را به دست می‌دهد.

.

مثال: محاسبه شبا برای شناسه حساب بانکی

‌BBAN = 0170000000100324200001

با اضافه کردن IR و دو کاراکتر رقمی برابر صفر، رشته زیر به دست می‌آید:

IR000170000000100324200001

چهار کاراکتر سمت چپ به انتهای سمت راست منتقل می‌شود:

۰۱۷۰۰۰۰۰۰۰۱۰۰۳۲۴۲۰۰۰۰۱IR00

کاراکترهای حرفی با ارقام متناظر جایگزین می‌شوند:

۰۱۷۰۰۰۰۰۰۰۱۰۰۳۲۴۲۰۰۰۰۱۱۸۲۷۰۰

باقیمانده عدد حاصل به عدد ۹۷ محاسبه می‌شود:

۱۷۰۰۰۰۰۰۰۱۰۰۳۲۴۲۰۰۰۰۱۱۸۲۷۰۰ mod 97 = 71

عدد به دست آمده از عدد ۹۸ کم می‌شود: ۹۸ – ۷۱ = ۲۷

.

شبای حاصل برابر است با:

IR27 0170 0000 0010 0324 2000 01

الگوریتم احراز صحت کد کنترل صحت مندرج در شبا به صورت زیر است:

  • طول شبا باید دقیقا ۲۶ کاراکتر باشد. در غیر این صورت کد صحیح نیست.
  • چهار کاراکتر سمت چپ شبا با حفظ ترتیب، به انتهای سمت راست منتقل می‌شوند.
  • تمام حروف با اعداد دو رقمی جایگزین می‌شوند.
  • رشته به دست آمده به عنوان یک عدد صحیح در نظر گرفته شده، باقیمانده تقسیم آن به عدد ۹۷ محاسبه می‌شود.
  • نتیجه حاصل باید عدد ۱ باشد.

.

مثال: به عنوان مثال، صحت شبا به دست آمده قبلی بررسی می‌شود:

IR27 0170 0000 0010 0324 2000 01

ملاحظه می‌شود که طول شبا برابر ۲۶ کاراکتر است و در آن تنها از حروف و ارقام استفاده شده است.

چهار کاراکتر سمت چپ به انتهای سمت راست منتقل می‌شوند:

IR270170000000100324200001

کاراکترهای حرفی با ارقام متناظر خود جایگزین می‌شوند:

۰۱۷۰۰۰۰۰۰۰۱۰۰۳۲۴۲۰۰۰۰۱۱۸۲۷۲۷

باقیمانده تقسیم این عدد به عدد ۹۷ محاسبه می‌شود:

۱۷۰۰۰۰۰۰۰۱۰۰۳۲۴۲۰۰۰۰۱۱۸۲۷۲۷ mod 97 = 1

همان طور که ملاحظه می‌شود، عدد باقیمانده برابر عدد ۱ است که نشان دهنده صحت شبا است.

همچنین می‌توانید مطلب «مشاهده الگوریتم تبدیل حساب‌های بانک‌ها به «شبا» و بالعکس» را در وبلاگ بانک روید مشاهده کنید. علاوه بر این می‌توانید برای «محاسبه شبای کلیه بانک‌های ایران» به این لینک مراجعه کنید.

منبع: وبلاگ بانک روید – علیرضا اسلامی زاد

درباره نویسنده

اتاق خبر راه پرداخت

در اتاق خبر راه پرداخت ما همه خبر‌های قابل انتشار مربوط به صنعت بانکداری و پرداخت الکترونیک ایران را در راه پرداخت منتشر می‌کنیم. ما در راه پرداخت تلاش می‌کنیم بیش و پیش از خبررسانی، تحلیل ارائه کنیم. اما مخاطبان ما می‌توانند از طریق اتاق خبر در جریان مهم‌ترین رویدادها و روندها هم قرار بگیرند.

دیدگاهتان را بنویسید

۱ دیدگاه

  • سلام شماره حساب دخترم که یارانه نقدی میدانید.. حواسم نبوده حسابی که داشته بستم حالا فهمیدم که شماره شبا با اون حساب بوده.. راهنماییم کنید ممنونم

/* ]]> */