আপনার অ্যাপে টাকা নেওয়া: পেমেন্ট গ্রহণের সহজ গাইড

AI দিয়ে বানানো অ্যাপে পেমেন্ট গ্রহণ করা মানে Stripe-এর মতো একটি প্রোভাইডারের সঙ্গে সংযুক্ত হওয়া, যেটি কার্ড ফর্ম সামলায় এবং টাকা সরায় — আপনার অ্যাপ শুধু অর্ডার রেকর্ড করে এবং পেমেন্ট নিশ্চিত হলে সাড়া দেয়।

একটা নির্দিষ্ট মুহূর্ত আছে যখন আপনার অ্যাপ শুধু একটা প্রজেক্ট থাকে না, বরং একটা ব্যবসা হয়ে ওঠে: যখন প্রথমবার কেউ এর মাধ্যমে আপনাকে টাকা দেয়। এটাই সেই মুহূর্তও, যখন একটা বাগ শুধু বিব্রতকর থাকে না, বরং হয়ে দাঁড়ায় “তুমি আমার টাকা নিয়েছ আর আমি কিছুই পাইনি।” পেমেন্ট গ্রহণ করা বেশিরভাগ বিল্ডারের যোগ করা সবচেয়ে ঝুঁকিপূর্ণ ফিচার, আর সুখবর হলো — কঠিন, ভয়ের অংশগুলো আসলে আপনার বানাতে হবে না। আপনাকে শুধু সেগুলো ঠিকভাবে জুড়ে দিতে হবে, আর বিরক্তিকর কেসগুলো এড়িয়ে যাওয়া চলবে না।

এটা AI দিয়ে বানানো অ্যাপে পেমেন্ট গ্রহণের একটা সহজ গাইড — ভেতরে আসলে কী ঘটে, কোন তিনটে জিনিস ভুল হতে পারে, আর কোন সেটআপ দিয়ে শুরু করা উচিত।

“পেমেন্ট গ্রহণ করা” আসলে কী বোঝায়?

পেমেন্ট গ্রহণ মানে হলো নিজে একটা পেমেন্ট সিস্টেম বানানোর বদলে আপনার অ্যাপকে একটা পেমেন্ট প্রোভাইডারের সঙ্গে সংযুক্ত করা — Stripe হলো সেই প্রোভাইডার যেটার দিকে বেশিরভাগ মানুষ হাত বাড়ায়, আর এটা একটা ভালো ডিফল্ট চয়েস। কাজের ভাগটা এরকম, কারণ এটা বুঝলে সবচেয়ে বেশি স্বস্তি পাওয়া যায়:

প্রোভাইডার কার্ড ফর্মটা দেখায়। প্রোভাইডার কার্ড নম্বর নেয়, সেটা যাচাই করে, আর টাকা সরায়। তারপর প্রোভাইডার আপনার অ্যাপকে একটাই কথা বলে: “এই মানুষটি আপনাকে $40 দিয়েছেন।” আপনার অ্যাপ কখনো কার্ড নম্বর দেখে না, কখনো সেটা সংরক্ষণ করে না, কখনো সেটা স্পর্শও করে না। এটা কোনো সীমাবদ্ধতা না — এটাই আসল কথা। কার্ডের তথ্য একটা আইনি ও নিরাপত্তাজনিত মাইনফিল্ড, আর সেটা পুরোপুরি প্রোভাইডারের ভেতরে রাখার মানে হলো — মাইনফিল্ডটা তাদের কাজ, আপনার না। আপনার বিল্ডার যদি কখনো “কার্ডটা আপনার ডাটাবেজে সংরক্ষণ করার” প্রস্তাব দেয়, উত্তর সবসময় না।

তাই একটা পেমেন্টে আপনার অ্যাপের আসল কাজটা ছোট: গ্রাহককে প্রোভাইডারের চেকআউটে পাঠানো, আর তারপর প্রোভাইডার যখন বলে টাকা পৌঁছেছে, তখন ঠিকভাবে সাড়া দেওয়া।

আগে একবারের পেমেন্ট নেবেন, নাকি সাবস্ক্রিপশন?

একবারের পেমেন্ট দিয়ে শুরু করুন। এগুলোর মূল কাঠামো সাবস্ক্রিপশনের মতোই, শুধু বারবার হওয়া জটিলতাগুলো নেই — আর বেশিরভাগ প্রথম প্রোডাক্টে শুধু “একবার টাকা দিয়ে জিনিসটা পাওয়া” দরকার হয়। সাবস্ক্রিপশন পরে যোগ করুন, ইচ্ছাকৃতভাবে, যখন সত্যিই এমন কিছু থাকবে যার জন্য প্রতি মাসে টাকা দেওয়ার মতো মূল্য আছে।

দুই ধরনের পেমেন্ট প্রায় সবকিছু কভার করে:

  • একবারের চার্জ — একটা টিকিট, একটা টেমপ্লেট, একটা কোচিং সেশন, বা ডাউনলোডযোগ্য একটা গাইড কেনা। টাকা একবার সরে, ব্যস কাজ শেষ।
  • সাবস্ক্রিপশন — একটা মাসিক মেম্বারশিপ, একটা রিকারিং প্ল্যান। টাকা প্রতি মাসে স্বয়ংক্রিয়ভাবে সরে, যার মানে আপনি সঙ্গে সঙ্গে আরও কিছুতেও সাইন আপ করে ফেলেছেন — “কার্ডের মেয়াদ শেষ হয়ে গেলে কী হবে,” “কেউ বাতিল করলে কী হবে,” আর “এই মাসের পেমেন্ট আসলেই সম্পন্ন হয়েছে কিনা।“

AI দিয়ে বানানো অ্যাপে সবচেয়ে সাধারণ পেমেন্ট ভুলগুলো কী কী?

AI দিয়ে বানানো অ্যাপে প্রায় প্রতিটা পেমেন্ট সমস্যাই তিনটে ভুলে গিয়ে ঠেকে: অ্যাপ ভুলে যায় যে কোনো পেমেন্ট আদৌ হয়েছিল, রসিদ না থাকায় গ্রাহক দুবার টাকা দিয়ে ফেলেন, আর আসল টাকা দিয়ে শুধু সফল-চার্জের পথটাই টেস্ট করা হয়। প্রতিটার সঙ্গেই একটা সহজ নির্দেশনা আছে, যেটা আপনি সরাসরি আপনার বিল্ডারকে দিয়ে দিতে পারেন।

১. পেমেন্ট হয়ে যায়, কিন্তু অ্যাপ ভুলে যায়। গ্রাহক টাকা দেন, টাকাটা আপনার প্রোভাইডার অ্যাকাউন্টে চলে যায় — কিন্তু আপনার অ্যাপের কাছে কোনো রেকর্ড থাকে না কে কীসের জন্য টাকা দিয়েছেন। একজন ওয়ার্কশপ আয়োজক এভাবেই ৩০টা টিকিট বিক্রি করেছিলেন, আর শেষে দেখা গেল Stripe-এ টাকা আছে অথচ স্প্রেডশিটে একটাও নাম নেই। কাকে দরজায় ঢুকতে দেবেন, তা তাঁর কোনো ধারণাই ছিল না।

সমাধান: পেমেন্ট নিশ্চিত হওয়ার সঙ্গে সঙ্গেই একটা অর্ডার রেকর্ড সেভ করুন — কে টাকা দিয়েছে, কী কিনেছে, কত টাকা, কখন, আর স্পষ্ট একটা “paid: yes” চিহ্ন। আপনার বিল্ডারকে বলুন: “যখন কোনো পেমেন্ট সফল হয়, তখন গ্রাহক, আইটেম, পরিমাণ এবং পেমেন্ট স্ট্যাটাস সমেত একটা অর্ডার রেকর্ড তৈরি করো। এর জন্য প্রোভাইডারের পেমেন্ট কনফার্মেশনের ওপর নির্ভর করো, গ্রাহক থ্যাংক-ইউ পেজে ফিরে এল কিনা তার ওপর না।” শেষ কথাটা গুরুত্বপূর্ণ — মানুষ ট্যাব বন্ধ করে দেয়, সিগন্যাল হারায়, বা দুবার ক্লিক করে ফেলে। টাকা সরার নির্ভরযোগ্য সংকেত হলো প্রোভাইডার সরাসরি আপনার অ্যাপে যে বার্তা পাঠায় (একটা ওয়েবহুক), গ্রাহকের ব্রাউজার সাকসেস স্ক্রিনে ফিরে আসা নয়।

২. রসিদ না থাকায় তাঁরা দুবার টাকা দিয়ে ফেলেন। একজন মানুষ পে বাটনে চাপেন, একটা স্পিনার দেখেন, কোনো ইমেইল পান না, কোনো কনফার্মেশন পান না, কিছুই না — তাই তিনি ধরে নেন এটা ব্যর্থ হয়েছে, আর আবার টাকা দেন। এখন আপনাকে একটা রিফান্ড দিতে হয়, আর তাঁর আপনার ওপর ভরসা কমে যায়। আপনার বিল্ডারকে বলুন: “পেমেন্ট নিশ্চিত হওয়ার সঙ্গে সঙ্গেই একটা কনফার্মেশন ইমেইল পাঠাও, আর একটা স্পষ্ট স্ক্রিন দেখাও যেখানে বলা থাকে তাঁর পেমেন্ট হয়ে গেছে আর এরপর কী হবে।” পেমেন্টের পরের নীরবতাই আপনার অ্যাপের সবচেয়ে ব্যয়বহুল নীরবতা।

৩. আসল টাকা দিয়ে টেস্ট করা। এটাই সেই ভুল যেটা চুপচাপ ভাঙা অবস্থাতেই শিপ হয়ে যায়। বিল্ডাররা নিজের কার্ড দিয়ে নিজের প্রোডাক্ট কিনে চেকআউট টেস্ট করেন, একবার কাজ করতে দেখেন, আর ধরে নেন কাজ শেষ — কার্ড ডিক্লাইন হলে বা পেমেন্ট রিফান্ড হলে কী হয়, তা কখনো যাচাই করা হয় না। একটা অ্যাপ কার্ড ডিক্লাইন হওয়া সত্ত্বেও অর্ডারকে “paid” হিসেবে চিহ্নিত করেছিল, কারণ কেউ সেই পথটা টেস্ট করেনি; গ্রাহক প্রোডাক্টটা বিনামূল্যে পেয়ে গিয়েছিলেন, আর প্রতিষ্ঠাতা মাসের শেষে গিয়ে সেটা জানতে পেরেছিলেন।

এটা টেস্ট করতে আপনার কখনোই আসল টাকা লাগবে না। প্রতিটা প্রোভাইডারের একটা টেস্ট মোড থাকে, যেখানে নকল কার্ড নম্বর ব্যবহার করা যায় — এমনকি এমন কিছু নির্দিষ্ট নম্বরও থাকে যেগুলো ইচ্ছাকৃতভাবে ডিক্লাইন হওয়ার জন্য বানানো, যাতে আপনি দেখতে পান আপনার অ্যাপ তখন কী করে। আপনার বিল্ডারকে বলুন: “পুরো চেকআউটটা প্রথমে টেস্ট মোডে বানাও আর টেস্ট করো। শুধু সফল কেসটা না, কার্ড ডিক্লাইন হওয়া আর রিফান্ডের কেসও সামলাও।” টেস্ট মোড গোটা পেমেন্ট দুনিয়ার সবচেয়ে কম ব্যবহৃত ফিচার।

নীরব অংশটা: এখন আপনিই সেই ব্যবসা

দুটো জিনিস মানুষ ভুলে যায়। প্রথমত, সত্যিই টাকা পেতে হলে প্রোভাইডারের আপনার আসল তথ্য দরকার — একটা ব্যবসায়িক বা ব্যাংক অ্যাকাউন্ট, যেখানে টাকা পাঠানো যাবে। এটা একটা ফর্ম, যেটা আপনি একবার পূরণ করেন — অ্যাপ নিজে থেকে এটা বানায় না। দ্বিতীয়ত, যা আয় করেন তার ওপর ট্যাক্স সামলানো আপনার দায়িত্ব, অ্যাপের না। দুটোই কঠিন কিছু না; কিন্তু কেউ যদি জোরে বলে না দেয়, তাহলে দুটোই হঠাৎ করে চমকে দিতে পারে।

পেমেন্ট যোগ করার সময় প্রথমে কী বানানো উচিত?

প্রথমে ঠিক একটাই জিনিস বানান: একটা প্রোডাক্ট, একটা দাম, একটা একবারের পেমেন্ট, টেস্ট মোডে। কার্ট, কুপন, টিয়ার, সাবস্ক্রিপশন — এসবের লোভ সামলান, যতক্ষণ না এই একটা পথ পরিষ্কারভাবে কাজ করছে — টাকা “সরছে,” একটা অর্ডার রেকর্ড হচ্ছে, একটা কনফার্মেশন দেখাচ্ছে। ঠিকঠাক কাজ করা সেই একটা পথের মূল্য এমন একটা ফিচার-ঠাসা চেকআউটের চেয়ে বেশি, যেটা কখনো একটা ডিক্লাইন হওয়া কার্ডের সামনে টিকে থাকেনি।

এরপর “অচেনা মানুষের টেস্ট” চালান, দুবার। প্রথমে, টেস্ট মোডে এমন একটা কার্ড নম্বর দিয়ে চেকআউট করুন যেটা ডিক্লাইন হওয়ার কথা — আপনার অ্যাপ কি সত্যিটা বলছে (“এটা সম্পন্ন হয়নি”), নাকি মিথ্যা বলে অর্ডারটাকে পেইড দেখাচ্ছে? তারপর একটা সফল টেস্ট পারচেজ করুন — আপনি কি এমন একটা অর্ডার রেকর্ড আর কনফার্মেশন পেলেন, যেটা আপনি নিজে গ্রাহক হলে বিশ্বাস করতেন?

পেমেন্ট গ্রহণ করাটা মনে হয় আপনার যোগ করা সবচেয়ে ভয়ের ফিচার, কিন্তু আসলে এটা একটা জোড়া লাগানোর কাজ মাত্র — তিনটে ব্যর্থতার ধরন সমেত, আর একটা টেস্ট মোড যা দিয়ে আপনি সেগুলো বিনামূল্যে মহড়া দিতে পারেন। টাকা দেওয়ার মতো একটা জিনিস বেছে নিন, একটা টেস্ট-মোড চেকআউট জুড়ে দিন, আর আসল কোনো কার্ড স্পর্শ করার আগেই একটা নকল বিক্রি পুরোপুরি চালিয়ে দেখুন — ডিক্লাইন হওয়া কার্ড সমেত। এটাই প্রথম কাজের পুরোটা।