লঞ্চের দিন ডেভেলপারের কাছ থেকে যা যা বুঝে নেবেন: লাইভ ওয়েবসাইট, admin panel ও admin credentials, domain registrar অ্যাক্সেস, hosting/VPS/cPanel অ্যাক্সেস, পূর্ণ source code (zip বা Git repository), database export, ডকুমেন্টেশন, payment gateway, courier ও SMS-এর API credentials, একটি backup কপি, deployment configuration, ইমেইল অ্যাকাউন্ট, আর Google Search Console, Analytics ও Meta Pixel অ্যাক্সেস। প্রতিটি জিনিস নিজে লগইন করে বা খুলে যাচাই করুন। তারপর পাসওয়ার্ড বদলান, আর লিখিত সাইন-অফ দিয়ে হস্তান্তর শেষ করুন।
- শুধু "পাঠিয়ে দিয়েছি" শুনে সন্তুষ্ট হবেন না। প্রতিটি লগইন নিজে করে দেখুন।
- source code আর database আলাদা জিনিস। দুটোই লাগবে, তা না হলে ওয়েবসাইট অন্য সার্ভারে চালানো যাবে না।
- হস্তান্তরের পর মূল অ্যাকাউন্টগুলোর পাসওয়ার্ড বদলান। সাপোর্টের জন্য ডেভেলপারকে আলাদা বা সীমিত অ্যাক্সেস দিন।
- সব credentials একটা password manager বা নিরাপদ জায়গায় রাখুন। WhatsApp চ্যাটে ফেলে রাখবেন না।
- শেষে তারিখসহ একটা সাইন-অফ নোট রাখুন: কী কী পেয়েছেন, কী বাকি।
হস্তান্তর চেকলিস্ট কেন দরকার
হস্তান্তর মানে ওয়েবসাইট চালানোর জন্য যা যা দরকার, তার সব কিছু ডেভেলপারের হাত থেকে আপনার হাতে আসা। চেকলিস্ট ধরে না নিলে কিছু না কিছু বাদ পড়ে যায়। আর সেটা টের পাওয়া যায় মাসখানেক পরে, যখন ডেভেলপারের সাথে যোগাযোগ কঠিন হয়ে গেছে।
সাধারণত যে সমস্যাগুলো হয়: domain রিনিউ করতে গিয়ে দেখা যায় লগইন নেই, নতুন ডেভেলপার কাজ করতে চাইলে source code পাওয়া যায় না, কিংবা payment gateway-র API key কোথায় আছে কেউ জানে না। চুক্তিতে মালিকানার কথা লেখা থাকা দরকার (বিস্তারিত আছে ওয়েবসাইটের মালিকানা গাইডে)। আর এই চেকলিস্ট দিয়ে লঞ্চের দিন হাতে-কলমে মিলিয়ে নেবেন যে সব কিছু সত্যিই আপনার কাছে এসেছে।
কাজটা সহজ রাখতে হস্তান্তরের জন্য আলাদা এক-দেড় ঘণ্টা সময় ঠিক করুন, সম্ভব হলে ডেভেলপারের সাথে সামনাসামনি বা ভিডিও কলে বসে। ডেভেলপার একটা একটা করে দেখাবেন, আর আপনি নিজের হাতে লগইন করে মিলিয়ে নেবেন। শুধু একটা লম্বা মেসেজে সব পাসওয়ার্ড পাঠিয়ে দিলে কোনটা কাজ করছে আর কোনটা করছে না, তা সাথে সাথে ধরা পড়ে না।
আরেকটা কথা: হস্তান্তর মানে সম্পর্ক শেষ নয়। ফ্রি সাপোর্ট বা মেইনটেন্যান্স চুক্তি থাকলে ডেভেলপার পরেও কাজ করবেন। পার্থক্য হলো, এখন ওয়েবসাইটের চাবি আপনার হাতে থাকবে, আর আপনি ঠিক করবেন কাকে কতটুকু অ্যাক্সেস দেবেন।
পূর্ণ হস্তান্তর চেকলিস্ট: এক নজরে
নিচের টেবিলটা প্রিন্ট করে বা কপি করে রাখুন। প্রতিটি লাইনে "পেয়েছি" আর "যাচাই করেছি", দুটোতেই টিক পড়লে তবেই সেই আইটেম শেষ।
| আইটেম | কী পাবেন | কীভাবে নিজে যাচাই করবেন |
|---|---|---|
| লাইভ ওয়েবসাইট | নিজের domain-এ HTTPS সহ চালু সাইট | মোবাইল ও কম্পিউটারে খুলে একটা টেস্ট অর্ডার দিন |
| Admin panel ও credentials | অ্যাডমিন URL, আপনার নামে মূল admin অ্যাকাউন্ট | লগইন করে পণ্য যোগ করুন, একটা অর্ডারের স্ট্যাটাস বদলান |
| Domain registrar | registrar-এর লগইন, আপনার নাম ও ইমেইলে domain | registrar-এ লগইন করে মালিকের নাম, ইমেইল ও মেয়াদ দেখুন |
| Hosting / VPS / cPanel | আপনার নামের hosting অ্যাকাউন্ট, cPanel বা সার্ভার অ্যাক্সেস | hosting কোম্পানির বিলিং পেজে আপনার নাম দেখুন, cPanel-এ লগইন করুন |
| Source code | পূর্ণ কোড, zip ফাইল বা Git repository | ফাইল খুলে দেখুন খালি নয়, Git হলে নিজের অ্যাকাউন্ট থেকে অ্যাক্সেস আছে কিনা |
| Database | সাম্প্রতিক database export (যেমন .sql ফাইল) | ফাইলের তারিখ ও সাইজ দেখুন, খালি বা পুরনো কিনা |
| ডকুমেন্টেশন | পণ্য যোগ, অর্ডার ম্যানেজ, রিপোর্ট দেখার নির্দেশনা | নির্দেশনা দেখে নিজে একটা কাজ করে দেখুন |
| API credentials | payment gateway, courier, SMS-এর key ও merchant লগইন | প্রোভাইডারের ড্যাশবোর্ডে নিজে লগইন করুন |
| Backup কপি | লঞ্চের সময়ের ফাইল ও database-এর backup | নিজের Google Drive বা কম্পিউটারে ডাউনলোড করে রাখুন |
| Deployment configuration | সার্ভারের তথ্য, configuration নোট, কোন সার্ভিস কোথায় চলে | নোটে PHP ভার্সন, database নাম, cron job ইত্যাদি আছে কিনা দেখুন |
| ইমেইল অ্যাকাউন্ট | info@yourdomain ধরনের ইমেইলের লগইন | একটা মেইল পাঠিয়ে আর রিসিভ করে দেখুন |
| Google ও Meta টুলস | Search Console, Analytics, Meta Pixel-এ আপনার অ্যাকাউন্টের অ্যাক্সেস | নিজের Google ও Facebook অ্যাকাউন্ট থেকে খুলে দেখুন |
Domain, hosting ও admin অ্যাক্সেস যাচাই
এই তিনটাই ওয়েবসাইটের চাবি। এখানে মূল কথা হলো, অ্যাকাউন্টটা আপনার নামে থাকতে হবে। ডেভেলপারের অ্যাকাউন্টের ভেতরে শুধু আপনাকে একটা লগইন দিয়ে রাখলে সেটা মালিকানা নয়।
- Domain: registrar-এ লগইন করে দেখুন registrant বা মালিক হিসেবে আপনার নাম আর ইমেইল আছে কিনা। মেয়াদ কবে শেষ, auto-renew চালু কিনা, DNS কোথায় সেট করা, এগুলোও দেখে নিন। domain অন্যের নামে থাকলে কী করবেন, তা ধাপে ধাপে আছে ডোমেইন ও হোস্টিং নিজের নামে নেওয়ার গাইডে।
- Hosting/VPS: hosting কোম্পানির বিলিং অ্যাকাউন্টে আপনার নাম, ইমেইল আর পেমেন্ট তথ্য আছে কিনা দেখুন। cPanel বা সার্ভার প্যানেলে লগইন করুন। রিনিউয়ের তারিখ ক্যালেন্ডারে লিখে রাখুন।
- Admin panel: মূল admin অ্যাকাউন্টটা আপনার ইমেইলে হওয়া উচিত। স্টাফ বা ডেভেলপারের জন্য আলাদা অ্যাকাউন্ট তৈরি করুন, যাতে প্রয়োজনে সেটা বন্ধ করা যায়।
registrar বা hosting-এর রিকভারি ইমেইল আর ফোন নম্বর যেন আপনার হয়। এগুলো ডেভেলপারের থাকলে পাসওয়ার্ড বদলালেও তারা "Forgot password" দিয়ে আবার ঢুকতে পারবে।
Source code, database ও deployment configuration
ওয়েবসাইট অন্য সার্ভারে সরাতে বা অন্য ডেভেলপারকে দিয়ে কাজ করাতে চাইলে তিনটা জিনিস একসাথে লাগে: source code, database আর configuration-এর তথ্য। এর যেকোনো একটা না থাকলে বাকি দুটো দিয়ে ওয়েবসাইট আবার চালু করা কঠিন।
Source code
পুরো কোড একটা zip ফাইলে, অথবা একটা Git repository-তে (যেমন GitHub বা GitLab) পেতে পারেন। Git হলে repository আপনার অ্যাকাউন্টে থাকা ভালো, অথবা অন্তত আপনাকে owner অ্যাক্সেস দেওয়া হোক। ডেভেলপার যদি কোনো পেইড থিম বা প্লাগইন ব্যবহার করে থাকে, তার লাইসেন্স কার নামে, সেটাও জেনে নিন।
Database
database-এ থাকে আপনার পণ্য, অর্ডার, কাস্টমার আর সেটিংস। লঞ্চের দিনের একটা export (সাধারণত .sql ফাইল) নিন। cPanel থাকলে phpMyAdmin বা backup টুল থেকে নিজে কীভাবে export নেবেন, সেটা ডেভেলপারকে একবার দেখিয়ে দিতে বলুন।
Deployment configuration
এটা হলো ওয়েবসাইট কোন সার্ভারে, কোন সেটিংসে চলে তার নোট: সার্ভারের ঠিকানা, PHP বা অন্য ভাষার ভার্সন, database-এর নাম, configuration ফাইল (যেমন .env) কোথায় আর তাতে কী কী থাকে, cron job বা নির্ধারিত কাজ, ইমেইল পাঠানোর সেটিংস। গোপন পাসওয়ার্ডগুলো নোটে না লিখে নিরাপদ জায়গায় আলাদা রাখুন।
একটা সহজ পরীক্ষা: ডেভেলপারকে জিজ্ঞেস করুন, "আজ যদি আমি অন্য একজন ডেভেলপারকে এই কোড, database আর নোট দিই, তিনি কি নতুন সার্ভারে ওয়েবসাইটটা চালু করতে পারবেন?" উত্তর "হ্যাঁ" হলে, আর কী কী লাগবে তা নোটে লেখা থাকলে, বুঝবেন হস্তান্তর সম্পূর্ণ হয়েছে।
API credentials, ইমেইল ও Google/Meta টুলস
payment gateway, courier আর SMS-এর অ্যাকাউন্ট আপনার ব্যবসার নামে থাকা উচিত, আর তাদের ড্যাশবোর্ডে আপনার নিজের লগইন থাকা উচিত। ডেভেলপার শুধু API key ব্যবহার করে ওয়েবসাইটে যুক্ত করে।
- Payment gateway: merchant ড্যাশবোর্ডের লগইন, live API key ও secret, আর settlement কোন ব্যাংক অ্যাকাউন্টে যায়। বিস্তারিত আছে পেমেন্ট গেটওয়ে ইন্টিগ্রেশন গাইডে।
- Courier: Steadfast, Pathao, RedX বা যে কুরিয়ার ব্যবহার করেন, তার merchant লগইন ও API key।
- SMS: SMS প্রোভাইডারের অ্যাকাউন্ট, ব্যালান্স কোথায় দেখবেন, sender ID কার নামে।
- ইমেইল: domain-এর ইমেইল অ্যাকাউন্ট আর ওয়েবসাইট থেকে অর্ডারের ইমেইল কোন অ্যাকাউন্ট দিয়ে যায়।
- Google Search Console ও Analytics: আপনার Google অ্যাকাউন্টকে owner বা full access দেওয়া হয়েছে কিনা। Search Console কীভাবে ব্যবহার করবেন, তা আছে Google Search Console গাইডে।
- Meta Pixel: Pixel আপনার নিজের Business Manager-এ আছে কিনা, ডেভেলপারের অ্যাকাউন্টে নয়।
ডকুমেন্টেশন ও backup কপি
ডকুমেন্টেশন দেখে আপনি বা আপনার স্টাফ যেন রোজকার কাজগুলো ডেভেলপার ছাড়াই করতে পারেন। আর backup কপি থাকলে কোনো বিপদে ওয়েবসাইট আবার দাঁড় করানো যায়।
ডকুমেন্টেশনে অন্তত এগুলো থাকা উচিত: পণ্য ও ক্যাটাগরি যোগ বা এডিট, অর্ডার প্রসেস আর কুরিয়ারে পাঠানো, স্টক আপডেট, রিপোর্ট দেখা ও Excel-এ export, স্টাফ অ্যাকাউন্ট তৈরি, আর পলিসি পেজ বা ব্যানার বদলানো। ছোট ভিডিও বা স্ক্রিনশটসহ গাইড হলে আরও কাজে দেয়।
লঞ্চের দিনের backup কপি (ফাইল আর database দুটোই) নিজের Google Drive বা কম্পিউটারে রাখুন। এরপর নিয়মিত backup কত দিন পরপর হবে, কোথায় থাকবে, আর restore করতে কত লাগবে, সেসব প্রশ্নের তালিকা আছে ওয়েবসাইট ব্যাকআপ গাইডে।
হস্তান্তরের পর পাসওয়ার্ড বদল ও নিরাপদে রাখা
সব কিছু বুঝে পাওয়ার পর মূল অ্যাকাউন্টগুলোর পাসওয়ার্ড বদলান। ডেভেলপারকে অবিশ্বাস করার জন্য নয়, ভালো নিরাপত্তার নিয়ম হিসেবেই এটা করা উচিত। সাপোর্ট চলাকালীন ডেভেলপারের অ্যাক্সেস লাগলে আলাদা বা সীমিত অ্যাক্সেস দিন।
- registrar, hosting, admin panel, ইমেইল আর payment gateway ড্যাশবোর্ডের পাসওয়ার্ড বদলান। যেখানে সুযোগ আছে, 2FA চালু করুন।
- ডেভেলপারের কাজের জন্য আলাদা ইউজার তৈরি করুন (যেমন hosting-এ sub-user, admin panel-এ আলাদা অ্যাকাউন্ট), যাতে পরে শুধু সেটা বন্ধ করলেই চলে।
- সাপোর্টের মেয়াদ শেষ হলে বা ডেভেলপার বদলালে সেই অ্যাক্সেস বন্ধ করুন।
- সব credentials একটা password manager-এ রাখুন, অথবা অন্তত একটা এনক্রিপ্টেড ফাইলে। WhatsApp, Messenger বা খোলা ইমেইলে পাসওয়ার্ড ফেলে রাখবেন না।
- ব্যবসার আরেকজন বিশ্বস্ত মানুষ যেন জরুরি দরকারে এগুলো পায়, সেই ব্যবস্থা রাখুন।
credentials-এর তালিকায় প্রতিটি অ্যাকাউন্টের পাশে লিখে রাখুন: কোন ইমেইল দিয়ে খোলা, রিকভারি ফোন নম্বর কোনটা, আর রিনিউয়ের তারিখ কবে। এক বছর পর এই তথ্যগুলোই সবচেয়ে বেশি কাজে লাগে।
সাইন-অফ: হস্তান্তর লিখিতভাবে শেষ করা
সব যাচাই হয়ে গেলে একটা ছোট সাইন-অফ নোট লিখুন: কী কী পেয়েছেন, কোন তারিখে, আর কিছু বাকি থাকলে তা কবে দেওয়া হবে। এতে দুই পক্ষেরই পরিষ্কার রেকর্ড থাকে, আর ফ্রি সাপোর্ট কবে থেকে শুরু হলো তাও বোঝা যায়।
- হস্তান্তরের তারিখ এবং লঞ্চের তারিখ।
- উপরের টেবিলের প্রতিটি আইটেম: পেয়েছি / যাচাই করেছি / বাকি।
- বাকি কাজ বা জানা bug-এর তালিকা, আর কবে ঠিক হবে।
- ফ্রি সাপোর্ট ও bug fixing-এর মেয়াদ কবে শেষ। এ নিয়ে বিস্তারিত আছে মেইনটেন্যান্স ও সাপোর্ট গাইডে।
- দুই পক্ষের নাম ও স্বাক্ষর, অথবা ইমেইলে লিখিত সম্মতি।
EOMS BD যেভাবে হস্তান্তর করে: domain থাকে ক্লায়েন্টের নাম ও ইমেইলে, hosting/VPS খোলা হয় ক্লায়েন্টের অ্যাকাউন্টে, আর আমরা developer access দিয়ে deploy করি। লঞ্চের সময় ক্লায়েন্টকে বুঝিয়ে দেওয়া হয় লাইভ ওয়েবসাইট, admin panel, domain ও hosting অ্যাক্সেস, source code, database, ডকুমেন্টেশন, admin credentials, payment ও courier-এর API credentials, backup আর deployment configuration। এই শর্তগুলো কোটেশন বা চুক্তিতে লেখা থাকে। হস্তান্তরের পর ৬ মাস ফ্রি সাপোর্ট আর ১ বছর ফ্রি bug fixing পাওয়া যায়।
সচরাচর জিজ্ঞাসিত প্রশ্ন
ডেভেলপার source code দিতে না চাইলে কী করব?
প্রথমে কোটেশন বা চুক্তিতে মালিকানা ও হস্তান্তরের কথা কী লেখা আছে দেখুন, আর লিখিতভাবে অনুরোধ করুন। এ কারণেই কাজ শুরুর আগে চুক্তিতে source code ও database হস্তান্তরের শর্ত লিখে নেওয়া জরুরি। জটিল পরিস্থিতিতে আইনি পরামর্শ নিন।
শুধু source code পেলেই কি ওয়েবসাইট অন্য সার্ভারে নেওয়া যায়?
না। source code-এ থাকে ওয়েবসাইটের কাঠামো, কিন্তু আপনার পণ্য, অর্ডার আর কাস্টমারের তথ্য থাকে database-এ। এর সাথে configuration-এর তথ্যও লাগে। তিনটা একসাথে থাকলে তবেই অন্য সার্ভারে ঠিকমতো চালানো যায়।
হস্তান্তরের পর কি ডেভেলপারের সব অ্যাক্সেস বন্ধ করে দেব?
মূল অ্যাকাউন্টগুলোর পাসওয়ার্ড বদলে নিন। তবে ফ্রি সাপোর্ট বা bug fixing চলার সময় ডেভেলপারের অ্যাক্সেস লাগতে পারে। সেজন্য আলাদা sub-user বা সীমিত অ্যাকাউন্ট দিন, আর সাপোর্ট শেষ হলে বা ডেভেলপার বদলালে সেটা বন্ধ করুন।
Git repository কী, আর zip ফাইলের চেয়ে কি এটা ভালো?
Git repository হলো কোড রাখার এমন জায়গা যেখানে প্রতিটি পরিবর্তনের ইতিহাস থাকে, যেমন GitHub বা GitLab। পরে অন্য ডেভেলপার কাজ করলে Git বেশি সুবিধাজনক। তবে zip ফাইলেও পুরো কোড থাকলে চলে, শুধু নিশ্চিত হয়ে নিন সেটা সর্বশেষ সংস্করণ।
পাসওয়ার্ড আর API key কোথায় রাখা নিরাপদ?
একটা ভালো password manager-এ রাখা সবচেয়ে নিরাপদ, অথবা অন্তত পাসওয়ার্ড দিয়ে সুরক্ষিত এনক্রিপ্টেড ফাইলে। WhatsApp চ্যাট, খোলা ইমেইল বা কাগজে লিখে দোকানে রেখে দেওয়া ঝুঁকিপূর্ণ।
লঞ্চের দিন কোন জিনিসগুলো সবার আগে যাচাই করব?
সবার আগে domain registrar আর hosting অ্যাকাউন্টে নিজে লগইন করে দেখুন সেগুলো আপনার নামে আছে কিনা। এরপর admin panel, তারপর source code ও database export। এগুলো থাকলে বাকি অনেক কিছু পরে ঠিক করা যায়।