نگاهی دقیق‌تر به فرمت پیام ISO 8583؛ ستون فقرات تبادل تراکنش در شبکه‌های پرداخت

زند

در دنیای پرداخت الکترونیک، استانداردهایی وجود دارند که بدون دیده‌شدن، زیربنای میلیون‌ها تراکنش روزانه را ایجاد می‌کنند. ISO 8583 یکی از همان استانداردهای کمتر شنیده‌شده اما حیاتی است؛ پروتکلی که تقریباً تمام تعاملات کارت‌محور از خرید تا مانده‌گیری، از کارت‌به‌کارت تا پرداخت‌های خاص بر بستر آن انجام می‌شود.

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

استاندارد ISO 8583 چیست و چرا تا این اندازه مهم است؟

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

نسخه‌های ISO 8583؛ سیر تکامل یک استاندارد حیاتی

اگرچه ISO 8583 یک استاندارد واحد به نظر می‌رسد، اما در عمل سه نسل مهم دارد که هر یک مرحله‌ای از بلوغ صنعت پرداخت را رقم زده‌اند:

 ISO 8583:1987  آغاز استانداردسازی جهانی

اولین نسخه پرکاربرد که پایه بسیاری از پیاده‌سازی‌های اولیه ATM و POS شد.علی‌رغم محدودیت‌ها و ابهام‌های نشانه‌گذاری، این نسخه نقشی کلیدی در ایجاد زبان مشترک بین شبکه‌های پرداخت اولیه داشت.

ISO 8583:1993 شفافیت بیشتر، سازگاری قوی‌تر

نسخه‌ای که شفافیت فیلدها، پشتیبانی بهتر از EMV و استانداردسازی کدهای پاسخ را به ارمغان آورد.
این نسخه کمک کرد جریان تراکنش‌ها در شبکه‌های مختلف قابل اتکا و هماهنگ شود.

ISO 8583:2003  هم‌راستا با EMV و الزامات امنیتی جدید

در این نسخه ساختار پیام مدرن‌تر شد و فیلدهای امنیتی مانند کریپتوگرام کارت و CVM اضافه گردید، این نسخه بیشترین همپوشانی را با مدل تراکنش‌های هوشمند و غیرتماسی دارد.

پیش از ISO 8583؛ جهانی بدون زبان مشترک

پیش از تدوین این استاندارد، هر بانک و شبکه پرداخت پروتکل خاص خود را داشت. پروتکل‌هایی مانند IBM SNA، SDLC، BISYNC و فرمت‌های پوزیشنال یا TLV اختصاصی تنها در محدوده شرکت‌ها قابل استفاده بودند. حتی شرکت‌های بزرگی مانند NCR یا Diebold فرمت‌های مخصوص خودپردازهایشان را ارائه می‌دادند. شبکه‌هایی مانند LINK در انگلستان یا Cirrus و PLUS در آمریکا نیز هرکدام ساختارهای جداگانه داشتند.

معماری پیام ISO 8583؛ قلب ارتباطات تراکنش

MTI؛ شناسنامه پیام

Message Type Indicator  چهار رقم کلیدی دارد که نسخه استاندارد، نوع پیام (مالی، تأیید، بازگشت، مدیریتی)، نقش پیام (درخواست یا پاسخ) و مبدأ آن (پذیرنده، صادرکننده یا سوئیچ) را مشخص می‌کند. برای نمونه، 0200 رایج‌ترین پیام خرید مالی و 0210 پاسخ آن است، در حالی که 0400 برای Reversal و 0800 برای مدیریت شبکه استفاده می‌شود.

MTI؛ شناسنامه پیام

MTI یک فیلد ۴ رقمی است که نقش و ماهیت پیام را مشخص می‌کند. هر رقم مفهوم ویژه‌ای دارد:

رقم

معنا نمونه مقادیر

Digit 1 – Version

نسخه استاندارد 0=1987، 2=1993، 3=2003

Digit 2 – Message Class

نوع عملیات اصلی

 1Authorization 2,=Financial، 4=Reversal، 8=Network

Digit 3 – Message Function

نوع فرآیند پیام

Request، 1=Response، 2=Advice=0

Digit 4 – Message Origin

مبدأ پیام

Acquirer، 2=Issuer، 4=Switch=0

نمونه MTIهای پرکاربرد در تراکنش‌ها

  • 0200 → پیام مالی (Financial) – Request
  • 0210 → پیام مالی Response
  • 0400 → پیام بازگشت تراکنش (Reversal Request)
  • 0800 → پیام مدیریت شبکه (Echo Test / Sign-on / Key Exchange)

این چهار مقدار، رایج‌ترین MTIها در شبکه شتاب و شاپرک نیز هستند.

Bitmap؛ نقشه حضور فیلدها

Bitmap تعیین می‌کند کدام Data Elementها در پیام فعال هستند. بیت اول اگر فعال باشد، وجود Secondary Bitmap را نیز اعلام می‌کند. این ویژگی انعطاف‌پذیری بسیار بالایی به استاندارد داده است.

Data Elementها؛ محتوای اصلی تراکنش

ISO 8583  دارای ۱۲۸ فیلد استاندارد است که هرکدام نقش ویژه‌ای در چرخه تراکنش دارند.
به‌عنوان مثال:

  • DE2:شماره کارت
  •  DE4:مبلغ تراکنش
  • DE11: STAN
  • DE37: RRN
  •  DE39: کد پاسخ
  • DE52: PIN Block
  • DE90 داده‌های تراکنش اصلی مخصوص Reversal

هر فیلد با نوع داده (n, an, ans, b, LLVAR, LLLVAR) و طول مشخص تعریف شده است.

فیلدهای خاص شاپرک؛ استاندارد عمومی با نیازهای بومی

شبکه پرداخت شاپرک، علاوه بر پشتیبانی کامل از ISO 8583، برخی فیلدهای اختصاصی نیز دارد:

DE48 – Additional Data (TLV)

یکی از پیچیده‌ترین ساختارهای پیام در شاپرک است. این فیلد شامل مجموعه‌ای از داده‌ها در قالب Tag–Length–Value بوده و اطلاعاتی چون نسخه پیام، MCC، قابلیت‌های پایانه، کیف پول، سوخت و … را منتقل می‌کند. ساختار TLV شاپرک کاملاً مستقل از TLV شتاب یا EMV است.

DE60 – Specialized Transaction Information

فیلدی ویژه شاپرک که در ISO عمومی وجود ندارد.
این فیلد اطلاعات زیر را حمل می‌کند:

  • نوع سرویس
  • نوع پایانه
  • نوع پذیرنده
  • نوع شبکه
  • پارامترهای داخلی سوئیچ شاپرک

در تراکنش‌های مرتبط با کیف پول، مانده، برگشت، جریمه و کارت‌به‌کارت، DE60 نقشی اساسی دارد.

ISO 8583 تنها یک استاندارد پیام‌رسانی نیست؛ بلکه زیربنای تعاملات حیاتی در شبکه پرداخت جهانی است. این استاندارد با ساختار یکپارچه و قابل اتکای خود، امکان تبادل مطمئن، استاندارد و سازگار پیام‌ها را میان همه اجزای اکوسیستم پرداخت فراهم کرده است. در ایران نیز، معماری شتاب و شاپرک بدون این استاندارد قابل تصور نیست. درک دقیق MTI، Bitmap، Data Elementها و فیلدهای خاص شاپرک مانند DE48 و DE60 برای متخصصانی که با سوئیچ‌های پرداخت، شبکه‌های بین‌بانکی و سامانه‌های عملیاتی کار می‌کنند، یکی از پیش‌نیازهای کلیدی است؛ چراکه کوچک‌ترین خطا در این لایه، مستقیماً بر پایداری و امنیت تراکنش‌ها اثر می‌گذارد.

فهرست مطالب

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

اشتراک گذاری محتوا: