ایپ ڈویلپرز کے لیے PCI کی تعمیل: مختصر، دردناک ورژن
اگر کارڈ کا ڈیٹا کبھی بھی آپ کے لکھے گئے کوڈ کو چھوتا ہے، تو آپ پر PCI DSS کا پورا بوجھ عائد ہوتا ہے۔ یہاں SAQ A سے SAQ D تک اضافے کا عمل، کارڈ کی موجودگی میں کی جانے والی ادائیگیوں کو تصدیق شدہ ہارڈ ویئر کی ضرورت کیوں ہے، اور اس طرح سے تعمیر کرنے کا طریقہ پیش ہے تاکہ اس کا کوئی بوجھ آپ پر نہ آئے۔

PCI کی تعمیل (کارڈ کے ڈیٹا سے نمٹنے والے کسی بھی فرد کے لیے پیمنٹ کارڈ انڈسٹری کے سیکیورٹی قواعد) "کریڈٹ کارڈز قبول کرتا ہے" کے الفاظ کی قیمت ہے۔ مختصر ورژن: اگر کارڈ کا ڈیٹا کبھی بھی آپ کے لکھے گئے کوڈ یا آپ کے چلائے جانے والے سرورز کو چھوتا ہے، تو آپ کو سیکڑوں کنٹرولز، ایک سالانہ تصدیقنامے (ایک باضابطہ دستخط شدہ اعلامیہ کہ آپ اس معیار پر پورا اترتے ہیں)، اور آپ کے پیمنٹ پروسیسر کے ذریعے بھیجے گئے نتائج کے ساتھ سیکیورٹی کا معیار وراثت میں ملتا ہے۔ ایپ ڈویلپرز کے لیے PCI کی تعمیل کا دردناک ورژن: زیادہ تر لوگوں کو چیک آؤٹ بننے کے بعد اس کا پتہ چلتا ہے۔
تفصیلات سے پہلے ایک نوٹ۔ ذیل میں ورژن نمبرز، تاریخیں، اور سوالنامے کے قواعد اشاعت کے وقت تک درست ہیں؛ یہ معیار تبدیل ہوتا رہتا ہے، اس لیے تفصیلات کو اس وقت کا جائزہ سمجھیں۔
درحقیقت PCI کی تعمیل کیا ہے؟
PCI DSS (پیمنٹ کارڈ انڈسٹری ڈیٹا سیکیورٹی اسٹینڈرڈ) ایک معاہداتی ذمہ داری ہے، قانون نہیں۔ کارڈ نیٹ ورکس اسے بینکس اور پیمنٹ پروسیسرز پر نافذ کرتے ہیں، اور وہ اسے تاجروں (مرچنٹس) اور ان سافٹ ویئر پر نافذ کرتے ہیں جو وہ تاجر چلاتے ہیں۔ موجودہ ورژن 4.0.1 ہے، اور اس کی نئی ضروریات کی آخری لہر 31 مارچ 2025 کو لازمی ہو گئی تھی¹۔ یہ معیار نیٹ ورک سیکیورٹی اور انکرپشن سے لے کر ایکسیز کنٹرول اور لاگنگ تک 12 ضرورت کے خاندانوں پر محیط ہے، جو سیکڑوں انفرادی کنٹرولز میں پھیلے ہوئے ہیں²۔
کوئی ریگولیٹر آپ کے دروازے پر نہیں آتا۔ اس کے بجائے نتائج تجارتی طور پر سامنے آتے ہیں: آپ کے ایکوائرنگ بینک (وہ بینک جو کسی تاجر کے لیے کارڈ کی ادائیگیاں سیٹل کرتا ہے) کے ذریعے منتقل کیے جانے والے جرمانے، زیادہ پروسیسنگ کی شرح، اور برے ترین معاملے میں کارڈز قبول کرنے کی صلاحیت سے محروم ہونا۔ ڈیٹا لیک کے بعد، فارنسک تحقیقات اور کارڈ کے دوبارہ اجراء کے اخراجات اسی راستے پر چلتے ہیں۔
"صرف ادائیگیاں شامل کریں" آپ کی پوری ایپ کو اسکوپ میں کیوں لاتا ہے؟
اسکوپ ہی سارا کھیل ہے۔ PCI DSS ہر اس سسٹم پر لاگو ہوتا ہے جو کارڈ ہولڈر کا ڈیٹا اسٹور، پروسیس، یا منتقل کرتا ہے، بشمول ان سسٹمز سے منسلک ہر چیز۔ توثیق ایک سیڑھی کی طرح کام کرتی ہے، اور ہر اگلا ڈنڈا پچھلے سے کہیں زیادہ بھاری ہوتا ہے²:
SAQ A (خود سے جائزہ کا سوالنامہ A): ادائیگیاں مکمل طور پر ایک مطابقت پذیر فراہم کنندہ کو آؤٹ سورس کی جاتی ہیں اور کارڈ کا ڈیٹا کبھی بھی آپ کے سسٹمز کو نہیں چھوتا۔ سب سے چھوٹا سوالنامہ۔
SAQ A-EP: آپ کی سائٹ کبھی بھی کارڈ کے ڈیٹا کو نہیں چھوتی لیکن اس کا کنٹرول کرتی ہے کہ صارفین ادائیگی کے فارم تک کیسے پہنچتے ہیں۔ مکمل معیار کا ایک بڑا حصہ اب آپ کے ویب سرورز پر لاگو ہوتا ہے۔
SAQ D: کارڈ کا ڈیٹا آپ کی بنائی ہوئی کسی بھی چیز سے گزرتا ہے، چاہے مختصر وقت کے لیے ہو، چاہے اسٹور نہ کیا گیا ہو۔ مؤثر طریقے سے پورا معیار، ہر سال دستاویز شدہ اور تصدیق شدہ۔

سب سے نچلا ڈنڈا بھی "کچھ بھی نہیں" نہیں ہے۔ جنوری 2025 میں PCI سیکیورٹی اسٹینڈرڈز کونسل نے SAQ A سے ادائیگی والے صفحے کے اسکرپٹ کے تقاضوں کو ہٹا دیا، لیکن ایک اہلیت کی شرط شامل کر دی: آپ کو یہ تصدیق کرنی ہوگی کہ آپ کی سائٹ ایسے اسکرپٹ حملوں سے محفوظ ہے جو آپ کے ای کامرس سسٹم کو متاثر کر سکتے ہیں¹۔ یہاں تک کہ مکمل آؤٹ سورس شدہ سطح بھی آپ سے اس صفحے کا دفاع کرنے کی توقع رکھتی ہے جو کسی اور کے ادائیگی فارم کی ہوسٹنگ کرتا ہے۔
سالانہ چھ ملین کارڈ لین دین سے تجاوز کرنے پر، خود سے جائزہ مکمل طور پر ختم ہو جاتا ہے اور QSA (ایک تصدیق شدہ بیرونی جائزہ کار) کی طرف سے آن سائٹ آڈٹ شروع ہوتا ہے²۔
کیا آپ کارڈ کی موجودگی میں کی جانے والی ادائیگیوں کا کوڈنگ کے ذریعے کوئی حل نکال سکتے ہیں؟
نہیں۔ ذاتی طور پر کی جانے والی ادائیگیاں وہ جگہ ہیں جہاں سیڑھی ایک دیوار بن جاتی ہے۔ کارڈ کی موجودگی والے لین دین کے لیے تصدیق شدہ ہارڈ ویئر کی ضرورت ہوتی ہے: ایسے فزیکل ریڈرز جنہوں نے کونسل کا PTS لیب پروگرام پاس کیا ہو، منظور شدہ فرم ویئر چلا رہے ہوں، اور پیمنٹ پروسیسر کے ذریعے فراہم کیے گئے ہوں۔ صرف سافٹ ویئر کے ذریعے فون کو ریڈر میں تبدیل کرنا ایک الگ معیار کے تحت آتا ہے، Mobile Payments on COTS (MPoC)، اور یہ حل فراہم کرنے والے کی تصدیق کرتا ہے، آپ کی بلڈ کی نہیں۔

یہ ایک ایسی حد ہے جسے AI کوڈ جنریشن پار نہیں کر سکتی۔ ایک ماڈل ایک دوپہر میں چیک آئوٹ اسکرین بنا سکتا ہے؛ کیا آپ Lovable یا Replit کے ساتھ POS بنا سکتے ہیں؟ اور ایک پوائنٹ آف سیل کی وائب کوڈنگ یہ بتاتے ہیں کہ وہ بلڈز کہاں رک جاتی ہیں۔ کوئی بھی جنریٹ کیا گیا کوڈ ایک تصدیق شدہ ریڈر، ایکوائرنگ کا معاہدہ، یا تعمیل کا تصدیقنامہ تیار نہیں کرتا، چاہے ماڈل بغیر کسی نگرانی کے جتنے وقت تک کوڈنگ کرتا رہے۔ تعمیل ایک بار بار سامنے آنے والی وجہ بھی ہے کہ وائب کوڈ شدہ پیمنٹ ایپس کو ایپ اسٹور سے کیوں مسترد کر دیا جاتا ہے۔
ڈویلپرز درحقیقت PCI کے اسکوپ کو کیسے کم کرتے ہیں؟
آپ زیادہ سختی سے تعمیل نہیں کرتے؛ بلکہ آپ ایسا فن تعمیر تیار کرتے ہیں کہ تعمیل کے لیے کم سے کم باقی رہے:
PAN (پرائمری اکاؤنٹ نمبر، یعنی کارڈ نمبر بذاتِ خود) کو کبھی بھی اپنے کوڈ کو چھونے نہ دیں۔ اپنے پروسیسر کے ہوسٹ شدہ پیمنٹ فیلڈز استعمال کریں تاکہ کارڈ کا ڈیٹا کسٹمر کے براؤزر سے سیدھا پروسیسر تک پہنچے۔
ٹوکنز اسٹور کریں، کارڈز نہیں۔ ٹوکنائزیشن (کارڈ نمبر کو ایک ریفرنس سٹرنگ سے بدلنا جو چوری ہونے کی صورت میں بیکار ہوتی ہے) محفوظ شدہ کارڈز اور ریفنڈز کو آپ کے ڈیٹا بیس کو اسکوپ میں لانے سے روکتی ہے۔
باہم بالمشافہ سیلز کے لیے، اپنے پروسیسر کے تصدیق شدہ ریڈرز استعمال کریں تاکہ کارڈ کا ڈیٹا آپ کی ایپ سے گزرے بغیر ریڈر سے پروسیسر تک منتقل ہو۔
ادائیگی کے صفحے کو سادہ رکھیں۔ اس پر موجود ہر فریق ثالث کا اسکرپٹ ایک ایسی چیز بن جاتا ہے جس کا آپ کو حساب دینا پڑتا ہے۔

اگر صحیح طریقے سے کیا جائے، تو آپ کی ایپ کبھی کارڈ کا ڈیٹا حاصل کیے بغیر فروخت کا نظم کرتی ہے، اور سوالنامہ مختصر رہتا ہے۔ اگر غلط طریقے سے کیا جائے، تو ایک سہولت کی خصوصیت ("صرف پوری ریکویسٹ باڈی کو لاگ کریں") خاموشی سے آپ کو SAQ D میں تبدیل کر دیتی ہے۔
تو ایپ ڈویلپرز کے لیے PCI کی تعمیل کتنی دردناک ہے؟
یہ اس تناسب سے دردناک ہے کہ آپ کا کوڈ کارڈ کے کتنے ڈیٹا کو چھوتا ہے، اسی لیے کامیاب قدم یہ ہے کہ کسی ڈیٹا کو بھی نہ چھوا جائے۔ معیار کو اس سے کوئی فرق نہیں پڑتا کہ آپ کی ایپ کسی ڈویلپر ٹیم نے لکھی ہے یا کسی AI نے اسے ایک دوپہر میں جنریٹ کیا ہے؛ اسکوپ اسکوپ ہی ہوتا ہے۔ کارڈ قبول کرنے والی کسی بھی چیز کو جاری کرنے سے پہلے، ایک سوال پوچھیں: کیا کارڈ کا نمبر کبھی میرے لکھے ہوئے کوڈ سے گزر سکتا ہے؟ اگر ہاں، تو آڈٹ کے لیے بجٹ رکھیں۔ اگر نہیں، تو اسے ایسا ہی رکھیں۔
Final بھی اس فن تعمیر کو اسی طرح سنبھالتا ہے۔ Final پر بنایا گیا چیک آئوٹ، چاہے Build میں پرومپٹ کیا گیا ہو یا MCP پر آپ کی اپنی AI کے ذریعہ بنایا گیا ہو، Final Pay کے ذریعے اپنی ادائیگیاں چلاتا ہے: ایک پیمنٹ پروسیسر اور تصدیق شدہ ٹرمینل ہارڈ ویئر کارڈ کے ڈیٹا کو سنبھالتے ہیں، تاکہ فلو خود کبھی کارڈ کا نمبر حاصل نہ کرے۔ جہاں Final Pay دستیاب ہے میں عملی پہلو کا احاطہ کیا گیا ہے، اور ٹپ ٹو پے کو AI POS فلو سے جوڑنا یہ دکھاتا ہے کہ کارڈ کی منظوری اس وقت کیسی نظر آتی ہے جب تعمیلی لیئر پہلے سے نیچے موجود ہو۔
اکثر پوچھے جانے والے سوالات
کیا PCI کی تعمیل ایک قانونی ضرورت ہے؟
نہیں۔ PCI DSS ایک معاہداتی ذمہ داری ہے جو کارڈ نیٹ ورکس کی طرف سے بینکس اور پیمنٹ پروسیسرز کے ذریعے عائد کی جاتی ہے۔ نتائج تجارتی ہیں: آپ کے ایکوائرنگ بینک کے ذریعے ملنے والے جرمانے، پروسیسنگ کی زیادہ شرح، یا کارڈز قبول کرنے کی صلاحیت سے محروم ہونا۔
کیا ادائیگیوں کو مکمل طور پر آؤٹ سورس کرنے سے PCI کی ذمہ داریاں ختم ہو جاتی ہیں؟
نہیں۔ مکمل طور پر آؤٹ سورس کرنے والے تاجر SAQ A (سب سے چھوٹے سوالنامے) کے ساتھ توثیق کر سکتے ہیں، لیکن جنوری 2025 کی نظر ثانی کے بعد سے انہیں یہ تصدیق بھی کرنی ہوگی کہ ان کی سائٹ ایسے اسکرپٹ حملوں سے محفوظ ہے جو ای کامرس سسٹم کو متاثر کر سکتے ہیں۔
SAQ A اور SAQ D میں کیا فرق ہے؟
SAQ A اس وقت لاگو ہوتا ہے جب کوئی مطابقت پذیر فریق ثالث تمام کارڈ ڈیٹا کو سنبھالتا ہے اور یہ معیار کے ایک چھوٹے سے حصے کا احاطہ کرتا ہے۔ SAQ D اس وقت لاگو ہوتا ہے جب کارڈ کا ڈیٹا آپ کے اپنے سسٹمز کو چھوتا ہے اور یہ مؤثر طریقے سے پورے معیار کا احاطہ کرتا ہے، جس کی سالانہ تصدیق کی جاتی ہے۔
کیا AI سے تیار کردہ ایپ PCI کے مطابق ہو سکتی ہے؟
کوڈ محفوظ نمونوں کی پیروی کر سکتا ہے، لیکن تعمیل کا تعلق کاروبار اور اس کے انفراسٹرکچر سے ہوتا ہے: تصدیق شدہ کارڈ ریڈرز، پروسیسر کا معاہدہ، اور ایک سالانہ تصدیقنامہ۔ کوئی بھی جنریٹ کیا ہوا کوڈ ان اجزاء کو فراہم نہیں کرتا۔
PCI DSS کا کون سا ورژن فی الوقت جاری ہے؟
اس مضمون کی اشاعت تک PCI DSS 4.0.1 جاری ہے۔ اس کے مستقبل کی تاریخ سے متعلق حتمی تقاضے 31 مارچ 2025 کو لازمی ہو گئے تھے۔ موجودہ صورتحال کے لیے PCI سیکیورٹی اسٹینڈرڈز کونسل کی سائٹ چیک کریں۔
