আপনার নিজস্ব ট্যাপ টু পে অ্যাপ তৈরি করা কতটা কঠিন? (আমরা চেষ্টা করেছি)
আমরা আমাদের নিজস্ব POS অ্যাপে ট্যাপ টু পে ফিচারটি চালু করেছি। এর জন্য আসলে কী প্রয়োজন তা এখানে দেওয়া হলো: একটি প্রসেসর পার্টনারশিপ, অ্যাপলের এনটাইটেলমেন্ট, অ্যান্ড্রয়েডে PCI সার্টিফিকেশন এবং ট্যাপ ফিচারের চারপাশে একটি কার্যকর পয়েন্ট অব সেল।

SDK-এর ব্রোশারে যতটা সহজ বলা হয় তার চেয়েও কঠিন, এবং এই কঠিন অংশটি মূলত কোডিং নয়। আমরা Final POS অ্যাপে Tap to Pay ফিচারটি চালু করেছি, তাই এই উত্তরটি কোনো ডকুমেন্টেশন পড়ে নয়, বরং সরাসরি কাজ করার অভিজ্ঞতা থেকে আসছে। আপনি যদি নিজের ট্যাপ টু পে অ্যাপ তৈরি করতে চান, তবে একটি ছোট সফটওয়্যার প্রজেক্টের পরিকল্পনা করুন যা একটি দীর্ঘস্থায়ী অনুমতি প্রক্রিয়ার মধ্যে মোড়ানো থাকবে: একটি পেমেন্ট প্রসেসর পার্টনারশিপ, অ্যাপলের কাছ থেকে একটি ম্যানুয়াল এনটাইটেলমেন্ট বা অ্যান্ড্রয়েডে ল্যাব মূল্যায়ন এবং একটি অ্যাপ রিভিউ—সবকিছুই আপনার প্রথম লাইভ ট্যাপের আগে সম্পন্ন করতে হবে।
একটি দ্রুত সতর্কবার্তা: প্ল্যাটফর্ম এবং কার্ড-ইন্ডাস্ট্রির নিয়মাবলী প্রায়শই পরিবর্তিত হয়। নিচের সবকিছুই প্রকাশের সময়কালের জন্য সঠিক, তাই এই বিবরণগুলোকে একটি নির্দিষ্ট সময়ের চিত্র হিসেবে ধরে নিন।
একটি ট্যাপ টু পে অ্যাপ আসলে কী করে?
ট্যাপ টু পে ফোনটিকেই কার্ড রিডারে পরিণত করে। কোনো টার্মিনাল বা ডঙ্গলের প্রয়োজন নেই: গ্রাহক মার্চেন্টের ডিভাইসে সরাসরি একটি কন্ট্যাক্টলেস কার্ড বা অ্যাপল পে অথবা গুগল পে-র মতো ফোন ওয়ালেট ট্যাপ করেন এবং পেমেন্টটি ফোনের NFC চিপের (কন্ট্যাক্টলেসের জন্য ব্যবহৃত স্বল্প-পাল্লার রেডিও) মাধ্যমে সম্পন্ন হয়। পরিভাষাটি যদি জটিল মনে হয়, তবে আমরা মোবাইল ট্যাপ পেমেন্ট এবং মোবাইলে Tap to Pay-এর মধ্যকার পার্থক্য বিশদভাবে আলোচনা করেছি।
এখানেই রয়েছে ফাঁদ। একটি NFC ট্যাগ রিড করা আসলেই একটি উইকএন্ড প্রজেক্ট; শখের বশে অনেকেই এটি প্রতিনিয়ত করে থাকেন। কিন্তু একটি পেমেন্ট কার্ড রিড করা সম্পূর্ণ ভিন্ন বিষয়। কার্ডগুলো EMV (কার্ড ইন্ডাস্ট্রির চিপ প্রোটোকল) ভাষায় কথা বলে, কার্ডের ডেটা শুরু থেকে শেষ পর্যন্ত এনক্রিপ্ট করা থাকতে হবে এবং কেবল সার্টিফাইড সফটওয়্যারই এটি স্পর্শ করার অনুমতি পায়।
কেন আপনি নিজেই কার্ডটি রিড করতে পারেন না?
কারণ আপনার কোডটি সবার সামনে চালানোর আগে এই কাঠামোর প্রতিটি স্তরে অনুমতির প্রয়োজন হয়।
অ্যাপল অ্যাপগুলোকে পেমেন্ট NFC-তে সরাসরি অ্যাক্সেস দেয় না। আপনাকে অবশ্যই এর ProximityReader ফ্রেমওয়ার্ক ব্যবহার করতে হবে, যা একটি Tap to Pay on iPhone এনটাইটেলমেন্ট-এর (একটি বিশেষ অনুমতি যা অ্যাপল প্রতিটি কেস বিবেচনা করে প্রদান করে) অধীনে থাকে। অ্যাপল আপনাকে একটি সমর্থিত পেমেন্ট সার্ভিস প্রোভাইডার বা PSP-এর (যে কোম্পানিটি আসলে টাকা স্থানান্তর করে) সাথে ইন্টিগ্রেট করারও তাগিদ দেয়। PSP মার্চেন্টের ডিভাইসে লোড করা সার্টিফাইড রিডার কনফিগারেশন সরবরাহ করে এবং সার্টিফিকেশনের দায়ভার বহন করে।
অ্যান্ড্রয়েড ডেভেলপারদের আরও উন্মুক্ত NFC অ্যাক্সেস দেয়, তবে একটি পেমেন্ট গ্রহণকারী অ্যাপকে এখনও একটি স্বাধীন PCI-স্বীকৃত ল্যাবরেটরি দ্বারা PCI MPoC স্ট্যান্ডার্ড (পেমেন্ট টার্মিনাল হিসেবে কাজ করা ফোনের জন্য কার্ড ইন্ডাস্ট্রির নিরাপত্তা নিয়মাবলী) অনুযায়ী মূল্যায়ন করতে হয়।
উভয় প্ল্যাটফর্মের নিচেই আপনার একটি অ্যাকোয়ারিং সম্পর্ক প্রয়োজন: এমন একটি প্রসেসর যা আপনার মার্চেন্টদের জন্য টাকা সেটেল করতে ইচ্ছুক এবং যার সাথে কার্ড নেটওয়ার্কের নিয়মাবলী যুক্ত থাকে।
এর কোনোটিই কেবল আরও ভালো কোড লিখে জোরপূর্বক করা সম্ভব নয়। এটি মূলত কাগজের কাজ, চুক্তি এবং রিভিউ কিউ-এর বিষয়।
আইফোনে অনুমতির পথটি কেমন দেখায়?
অ্যাপলের প্রকাশিত প্রয়োজনীয়তা অনুসারে, পথটি এইরকম: একটি প্রতিষ্ঠান-পর্যায়ের Apple Developer অ্যাকাউন্ট থাকতে হবে (অ্যাকাউন্ট হোল্ডার ব্যক্তিগতভাবে অনুরোধ ফাইল করবেন), আপনার অঞ্চলের জন্য একটি সমর্থিত PSP-এর সাথে অংশীদারিত্ব করতে হবে, এনটাইটেলমেন্টের জন্য অনুরোধ করতে হবে, ProximityReader API বা আপনার PSP-এর SDK ইন্টিগ্রেট করতে হবে, পেমেন্ট স্ক্রিনের জন্য অ্যাপলের ডিজাইন গাইডলাইন অনুসরণ করতে হবে এবং রিভিউয়ের জন্য অ্যাপটি জমা দিতে হবে। অ্যাপলের ডকুমেন্টেশনে আরও উল্লেখ করা হয়েছে যে এই ফিচারটি কেবল সমর্থিত দেশ এবং অঞ্চলে কাজ করে, তাই এর প্রাপ্যতা বাজার অনুযায়ী আগে থেকেই নির্ধারিত থাকে।
একজন ডেভেলপার হিসেবে না দেখে, একজন প্রতিষ্ঠাতা বা মার্চেন্ট হিসেবে এই তালিকাটি আবার পড়ুন। এর একটি ধাপও "ফিচারটি লিখুন" নয়। ফিচারটি সহজ অংশ; এনটাইটেলমেন্টটিই হলো আসল বাধা।
ট্যাপ ফিচারটি কাজ করার পর বাকি কাজগুলো কোথায় যায়?
একটি অনুমোদিত ট্যাপ আপনাকে একটি পেমেন্ট দেয়, কোনো পয়েন্ট অব সেল দেয় না। টাকা স্থানান্তরিত হওয়ার সাথে সাথেই ট্যাপের চারপাশের সবকিছু সঠিক হতে হবে: যে কার্টের বিপরীতে এটি সেটেল হচ্ছে, রসিদের ট্যাক্স, রিফান্ডের পথ এবং রিপোর্টিং যা রিকনসিল করে (প্রতিটি ডলার একটি বিক্রির সাথে মিলে যায়, প্রতিদিন)। আমরা যখন Lovable বা Replit দিয়ে একটি POS তৈরি করা যায় কি না তা খতিয়ে দেখছিলাম, তখন একই ব্যবধান খুঁজে পেয়েছিলাম: একটি ইন্টারফেস জেনারেট করা দ্রুত হলেও, এর নিচের কমার্স লেয়ারটিই আসল সময় কেড়ে নেয়।
ট্যাপ টু পে-র নিজস্ব কিছু অপারেশনাল বৈশিষ্ট্যও রয়েছে। আমাদের বাস্তবায়নে, যে ডিভাইসে ট্যাপ নেওয়া হচ্ছে সেই একই ডিভাইসেই বিক্রিটি এন্ট্রি করতে হবে এবং এটি কেবল নেটিভ অ্যাপেই কাজ করে, ব্রাউজারে কখনোই নয়। এই ধরনের সীমাবদ্ধতা কোনো ব্রোশারে থাকে না। আপনি এগুলো আবিষ্কার করেন, সে অনুযায়ী ইঞ্জিনিয়ারিং করেন, তারপর হেল্প আর্টিকেল লেখেন। আর কাউন্টারে যখন একটি ফোনই যথেষ্ট থাকে না, তখন আপনাকে আসল হার্ডওয়্যার সংক্রান্ত সিদ্ধান্ত নিতেই হয়।

তাহলে, আপনার নিজস্ব ট্যাপ টু পে অ্যাপ তৈরি করা কতটা কঠিন?
একটি নির্দিষ্ট উপায়ে কঠিন: কোডিং হলো সবচেয়ে ছোট অংশ, যেখানে প্রসেসর পার্টনারশিপ, অ্যাপল এনটাইটেলমেন্ট, অ্যান্ড্রয়েডে ল্যাব সার্টিফিকেশন এবং অ্যাপ রিভিউই সিংহভাগ জুড়ে থাকে এবং এর কোনোটিই ইঞ্জিনিয়ারিং প্রচেষ্টার মাধ্যমে ত্বরান্বিত করা যায় না। আমাদের জন্য এটি সার্থক ছিল, কারণ একটি POS প্ল্যাটফর্ম এই খরচটি ব্যবহারকারী প্রতিটি মার্চেন্টের মধ্যে ভাগ করে দেয়। ট্যাপ টু পে এখন একটি চেকআউট বাটন যা আমাদের মার্চেন্টরা চালু করতে পারেন, এবং একটি Tap to Pay পেমেন্ট নেওয়া হলো পাঁচ ধাপের একটি কাউন্টার রুটিন। পেমেন্ট যদি আপনার প্রোডাক্ট হয়, তবে এই কঠিন পথটিই হলো প্রবেশের মূল্য। আর পেমেন্ট যদি কেবল আপনার টাকা পাওয়ার উপায় হয়, তবে নিজের ট্যাপ টু পে অ্যাপ তৈরি করার কোনো আর্থিক যৌক্তিকতা নেই; এর তৈরি সংস্করণ ইতিমধ্যেই POS অ্যাপগুলোর ভেতরে রয়েছে এবং ফি-এর মধ্যেই আসল তুলনাটি লুকিয়ে থাকে।
সহজ নিয়ম: যদি কোনো ফিচার অস্তিত্বশীল হওয়ার জন্য অন্য কারও অনুমতির প্রয়োজন হয়, তবে কোনো চতুর কোডই তা সহজে সমাধান করতে পারে না।
সাধারণ জিজ্ঞাসা
tap to pay-এর জন্য কি আলাদা কার্ড রিডারের প্রয়োজন হয়?
না। ফোন নিজেই রিডার হিসেবে কাজ করে: গ্রাহক মার্চেন্টের ডিভাইসে একটি কন্ট্যাক্টলেস কার্ড বা ফোন ওয়ালেট ট্যাপ করেন এবং পেমেন্টটি ফোনের NFC চিপের মাধ্যমে সম্পন্ন হয়।
যেকোনো ডেভেলপার কি iPhone-এ একটি tap to pay অ্যাপ তৈরি করতে পারেন?
অনুমোদন ছাড়া সম্ভব নয়। অ্যাপল-এর জন্য একটি সমর্থিত পেমেন্ট সার্ভিস প্রোভাইডারের সাথে ইন্টিগ্রেশন এবং 'Tap to Pay on iPhone' ব্যবহারের অধিকার প্রয়োজন যা তারা প্রতিটি কেস যাচাই করে প্রদান করে, এবং এরপর অ্যাপ রিভিউ করা হয়।
Android-এ tap to pay কীভাবে সার্টিফাইড হয়?
পেমেন্ট গ্রহণকারী অ্যাপগুলোকে স্বাধীন PCI-স্বীকৃত ল্যাবরেটরি দ্বারা PCI MPoC স্ট্যান্ডার্ডের বিপরীতে মূল্যায়ন করা হয়, যা পেমেন্ট টার্মিনাল হিসেবে ব্যবহৃত ফোনের জন্য কার্ড ইন্ডাস্ট্রির একটি নিরাপত্তা স্ট্যান্ডার্ড।
tap to pay কি নিরাপদ?
সার্টিফাইড সংস্করণগুলো নিরাপদ। iPhone-এ, লেনদেনগুলো এনক্রিপ্ট করা হয় এবং ডিভাইসের Secure Element ব্যবহার করে প্রসেস করা হয়; Android-এ, MPoC-সার্টিফাইড সমাধানগুলোকে অবশ্যই স্ট্যান্ডার্ডের নিরাপত্তা প্রয়োজনীয়তাগুলো পূরণ করতে হবে।
AI কি আমার জন্য একটি tap to pay অ্যাপ লিখে দিতে পারে?
এটি ইন্টিগ্রেশন কোড লিখে দিতে পারে। তবে এটি অ্যাপল-এর ব্যবহারের অধিকার দিতে পারবে না, PCI ল্যাব মূল্যায়ন পাস করাতে পারবে না বা প্রসেসর চুক্তি স্বাক্ষর করতে পারবে না, আর এই ধাপগুলোই হলো প্রজেক্টের প্রধান অংশ।
