شبا به کارت
بانک را از شبا میخواند؛ تبدیل قطعی به کارت عمومی نیست.
تبدیل شبا به شماره کارت یکطرفه و قطعی نیست؛ ساختار کارت از شبا قابل استخراج عمومی نیست.
۲۴ رقم شبا لازم است.
مرتبط
جستجوی «تبدیل شبا به شماره کارت» در ایران اغلب از یک نیاز عملی میآید: در فرم پرداخت فقط IBAN دارید ولی سیستم طرف مقابل PAN میخواهد، یا برعکس میخواهید ببینید کارت روی میز با شبای واریز شده همخانواده است. ابزار شبا به کارت در FinAI با صراحت میگوید: نقشهٔ عمومی و یکسان شبا→کارت برای همهٔ بانکها در دسترس نیست؛ آنچه میتوان با اطمینان گفت معمولاً از خود شبا است — اعتبار ساختار، و نام بانک از سه رقم میانی BBAN. این صفحه راهنمای انتخاب ابزار و حدود صداقت محصول است، نه وعدهٔ استخراج PAN از ۲۶ نویسه.
چه کاری ابزار انجام میدهد
ورودی: رشتهٔ شبا (با یا بدون IR، با نرمال ارقام فارسی). مرحلهٔ اول همراستا با اعتبارسنجی شبا: طول، mod 97، و در صورت معتبر بودن، شناسایی بانک. مرحلهٔ دوم: اگر الگوریتم verified برای تبدیل به PAN در codebase نباشد — که در اکثر بانکها نیست — خروجی کارت قطعی نیست (null یا پیام صریح). کاربر باید PAN را از اپ صادرکننده، POS، یا فیزیک کارت بگیرد.
این رفتار عمداً شبیه کارت به شبا است: جهت مخالف، همان محدودیت الگوریتم عمومی. FinAI ترجیح میدهد «خالی با توضیح» بدهد تا PAN plausible-but-wrong که mod 97 کارت را رعایت نکند ولی گیرنده را گمراه کند.
چرا شبا به کارت مثل IBAN→حساب ساده نیست
شبا BBAN بانک + شماره حساب padded + check digit است. PAN sixteen رقمی شناسهٔ شبکهٔ شتاب است؛ بانک ممکن است برای یک حساب چند کارت، کارت مجازی، یا PAN با token map کند. بدون مستندات صادرکننده، reverse از ۲۲ رقم BBAN به ۱۶ رقم PAN combinatorial و غیرقابل اثبات است — حتی اگر بانک از شبا بگوید «ملت».
برخی سایتهای شخص ثالث database pairing دارند؛ FinAI به leak یا heuristic غیرقابل audit تکیه نمیکند. اگر PAN از third party آمد، قبل از هر تراکنش اعتبارسنجی Luhn و تطبیق نام در درگاه را انجام دهید.
تفکیک نقش ابزارهای بانکی
- بانک از شبا: فقط label موسسه؛ checksum اختیاری.
- اعتبارسنجی شبا: قبل از پایا اجباری.
- بانک از BIN: شش رقم اول PAN.
- کارت به حساب: همان honesty برای account number.
- ساخت شبا: وقتی حساب را دارید، نه PAN.
- جدول کدهای بانک: مرجع انسانی.
بانک را فقط از IBAN بخوانید
سه رقم بعد از دو رقم کنترل در بدنهٔ بیستوچهار رقمی (بدون IR) کد بانک در جدول FinAI است. این slice در validate-sheba و bank-from یکسان است. اگر کاربر فقط «بیست و دو رقم آخر» paste کند بدون check digit، نام بانک جابهجا میشود — ورودی باید شبیه شبای کامل باشد.
نام بانک از IBAN ≠ مالک حساب. حتی checksum درست، تضمین نمیکند پول به intended recipient میرود — درگاه name match را skip نکنید.
سناریو: reconciliation کارت و شبا
مشتری PAN داده؛ فروشنده شبا برای واریز. BIN میگوید بانک A؛ bank-from روی شبا میگوید B — هشدار، نه bug. source of truth برای interbank transfer شبا است. sheba-to-card PAN نمیسازد؛ از مشتری شبا رسمی بخواهید و validate کنید.
حریم خصوصی
پردازش client-side؛ شبا به سرور FinAI برای conversion ارسال نمیشود. PAN و شبا را در گروههای public paste نکنید.
جایگزینهای عملی
- اپ بانک: «اطلاعات حساب / کارت».
- کارت به کارت اگر rail PAN میپذیرد و IBAN لازم نیست.
- درخواست شبا روی letterhead برای B2B.
- transfer test با مبلغ کم + تأیید گیرنده.
سوءتفاهم با card-to-sheba
کاربر فکر میکند اگر card-to-sheba یک روز برای bank X کار کرد، sheba-to-card symmetric است. فنی نیست — encode و decode permissions per bank متفاوت است. FinAI definitive flag در UI باید واضح باشد.
برای marketplace و HR
checkout باید فیلد شبا جدا داشته باشد؛ از IBAN infer PAN نکنید. payroll migration: export از بانک، نه batch sheba-to-card.
برای آموزش
تیتر «با شبا کارت بگیرید» بدون محدودیت خطرناک است — این صفحه wording مسئولانه FinAI است.
mod 97 و نام بانک؛ دو لایهٔ اطمینان
checksum IBAN جلوی typo تصادفی را میگیرد — «یک رقم جابهجا» اغلب invalid میشود. اما mod 97 OK بودن به این معنی نیست که گیرنده همان شخصی است که فکر میکنید — فقط رشته syntactically valid است. بانک از شبا روی همان body slice کار میکند که validate استفاده میکند؛ اگر validate fail ولی شما فقط name میخواهید برای debug، هنوز باید body کامل داشته باشید وگر slice اشتباه interpret میشود.
sheba-to-card بعد از validate ممکن است bank name نشان دهد حتی وقتی PAN خروجی null است — این برای workflow «قبل از واریز بدانیم به کدام brand میرود» مفید است. انتظار PAN در این مرحله اشتباه است.
ادغام بانکها و BIN legacy
پس از ادغام، کد شبا ممکن است brand جدید را نشان دهد ولی کارت هنوز logo قدیمی دارد — sheba-to-card نمیتواند «کارت صادر شده» را predict کند؛ فقط bank code از IBAN. lookup روی PAN جدا است. mismatch هشدار reconciliation.
شبا در فیش حقوق و فاکتور
employer شبا را از HR میگیرد — نه sheba-to-card. worker اگر PAN روی کارت دارد ولی payroll شبا wants، باید از app شبا export کند. FinAI tool consumer-facing education.
فishing و social engineering
مهاجم IBAN با check valid و bank name درست میدهد ولی account field به حساب خودش — name match در درگاه critical. آموزش sheba-to-card: «بانک درست ≠ گیرنده درست».
مقایسه با account-to-sheba forward
اگر حساب به شبا در سایت باشد، direction forward با account known است — inverse sheba-to-card symmetric نیست. generate-sheba با mod 97 از bank code + account.
تست مبلغ کم
بعد از validate، واریز کوچک و تأیید گیرنده — جایگزین حدس PAN. اگر rail کارت-to-کارت در دسترس است و IBAN لازم نیست، همان مسیر سادهتر است.
فرمت IR و فاصله
قالببندی شبا فاصله و IR را یکدست میکند قبل از validate یا sheba-to-card. paste از PDF گاهی کاراکتر LTR مخفی دارد — normalize در client.
چند شبا، یک کارت؟
یک حساب یک شبا؛ چند PAN ممکن. sheba-to-card نمیتواند «کدام PAN فعال» را بداند — فقط inverse محدود. card-to-sheba هم symmetric نیست.
سامانههای دولتی و شبا
برخی سامانهها فقط IBAN میپذیرند — PAN irrelevant. sheba-to-card برای آن workflow بیفایده است؛ validate و bank-from کافی.
آموزش در کلاس کارآفرینی
startup founder باید بداند IBAN روی invoice mandatory است — نه «شماره کارت بده». این صفحه مرجع wording برای curriculum FinAI.
پرسشهای متداول بدون وعدهٔ PAN
آیا با شبا میتوانم کارت بسازم؟ خیر — صدور کارت فقط توسط بانک است. آیا FinAI PAN ذخیره میکند؟ در مدل client-side، شبا برای conversion به سرور نمیرود؛ PAN هم نباید در analytics باشد. اگر validate OK بود، کارت حتماً مال همان person است؟ خیر — فقط checksum و structure. چرا bank-from و sheba-to-card هر دو وجود دارند؟ bank-from focus label؛ sheba-to-card همان plus messaging دربارهٔ PAN.
برای workflow کامل بانکی در FinAI: validate، bank-from، کارت به شبا، کارت به حساب — هر کدام honesty boundary خود را دارد. جدول کدهای بانک برای match دستی سه رقم.
همزیستی با validate و phishing
در attack، victim شبا valid با bank name درست میبیند و relax میکند — sheba-to-card فقط bank slice را confirm میکند. always name match در درگاه. combine با validate before any amount. educate staff: IBAN on invoice from signed PDF not from card photo.
برای developer integrating FinAI copy: show definitive=false prominently when PAN null — UX part of honesty policy.
تفصیل بیشتر دربارهٔ IBAN و کارت
شبا ایران ۲۶ کاراکتر با IR: دو رقم کنترل، سه رقم بانک، بقیه حساب با padding. PAN sixteen digit در شبکهٔ شتاب: BIN شش رقم اول، بقیه per issuer. هیچ استاندارد publish شدهای که بگوید رقم ۷ تا ۱۶ PAN همیشه subset BBAN نیست. بنابراین شبا به کارت فقط bank-from IBAN + honesty message. برای واریز، شبا از گیرنده + validate. برای خرید POS، PAN — دو rail.
در FinAI family: card-to-sheba، card-to-account، sheba-to-card سه corner یک مثلث — همه limited inverse. forward generate-sheba when account+code known.
جمعبندی رفتاری محصول و مسئولیت کاربر
ابزار شبا به کارت وقتی complete است که کاربر بداند چه چیز گرفته و چه چیز نگرفته: نام بانک از IBAN، اعتبار ساختاری اگر validate coupled باشد، و عدم نمایش PAN بدون algorithm verified. این همان خط مشتری FinAI در banking است که trust را با transparency میسازد. هر واریز high-value باید از validate-sheba عبور کند؛ هر PAN باید از app بانک بیاید نه از inverse IBAN. card-to-sheba و card-to-account و sheba-to-card سه رأس یک مثلث محدودیت — forward generate-sheba وقتی account known است.
برای جدول کد بانک کدهای بانک، format قالب شبا، و validate اعتبار شبا workflow کامل میشود بدون fake PAN.
نکات تکمیلی برای واریز و دریافت
در بسیاری از قراردادهای اجاره، خرید خودرو، یا فریلنس، طرف مقابل فقط شبا میدهد — نه کارت. در این حالت شبا به کارت اصلاً لازم نیست؛ کافی است اعتبارسنجی شبا و سپس انتقال. برعکس، اگر در کافه فقط POS دارید و IBAN ندارید، rail کارت م relevant است و inverse شبا بیمعنا. آموزش FinAI تفکیک rail را تقویت میکند: IBAN برای interbank structured transfer؛ PAN برای card network. نام بانک از IBAN helps فقط برای double-check قبل از paste در اپ بانک — «آیا IR… با بانک X همخوان است؟» — نه برای ساخت PAN.
خلاصهٔ صادقانه برای ویرایشگر و کاربر
FinAI در صفحهٔ شبا به کارت هرگز ادعا نمیکند از روی شبا شمارهٔ کارت sixteen رقمی قطعی میدهد؛ آنچه از IBAN reliably میآید شناسایی بانک و — در کنار اعتبارسنجی — درستی ساختار رشته است. کارت برای POS و کارتبهکارت، شبا برای پایا و حقوق؛ inverse عمومی جایگزین دریافت از اپ صادرکننده نیست. اگر محتوای آموزشی دیگر در وب میگوید «فقط شبا کافی است برای کارت»، این صفحه مرجع مخالف مسئولانه است تا واریز اشتباه و اعتماد کاذب کم شود.
جمعبندی
شبا به کارت بانک را از IBAN میخواند؛ تبدیل قطعی به PAN عمومی نیست. validate قبل از پول؛ PAN از منبع رسمی. مکمل: validate، bank-from، کارت به شبا، قالب شبا.