কেন কুরিয়ারের এপিআই হঠাৎ বদলে যায়, আর মার্চেন্টরা কীভাবে বিপদে পড়েন
১৪ আগস্ট, ২০২৬ · 5 মিনিট পড়ার সময়
যারা সরাসরি কোনো কুরিয়ারের এপিআই ব্যবহার করে নিজস্ব সিস্টেম বানিয়েছেন, তারা এই অভিজ্ঞতাটা চেনেন — একদিন হঠাৎ কিছু একটা ভেঙে যায়, কোনো আগাম নোটিশ ছাড়াই। এটা কল্পিত সমস্যা না — আমরা নিজেদের প্ল্যাটফর্ম চালাতে গিয়ে এটা একাধিকবার সরাসরি দেখেছি।
বাস্তব উদাহরণ: নতুন স্ট্যাটাস শব্দ হঠাৎ আসা
একটা কুরিয়ার তাদের ট্র্যাকিং স্ট্যাটাসে নতুন নতুন বাংলা/ইংরেজি মিশ্র শব্দ (যেমন "Pickup requested", "At the sorting hub", "On the way to central warehouse") যোগ করেছিল কোনো পূর্ব ঘোষণা ছাড়াই — আমাদের সিস্টেম যেগুলো চিনত না, ফলে সেই স্ট্যাটাসগুলো এরর হিসেবে ধরা পড়ছিল। এটা ইচ্ছাকৃত কোনো ক্ষতিকর পরিবর্তন ছিল না — কুরিয়ারের নিজস্ব অভ্যন্তরীণ অপারেশনে ছোট একটা আপডেট, যেটার বাইরের প্রভাব সম্পর্কে হয়তো তারা নিজেরাও পুরোপুরি সচেতন ছিল না।
বাস্তব উদাহরণ: হেডার নেম কেসিং সমস্যা
আরেকটা ক্ষেত্রে, একটা কুরিয়ারের ওয়েবহুক ভ্যালিডেশন ব্যর্থ হচ্ছিল একটা সূক্ষ্ম প্রযুক্তিগত কারণে — আমাদের হোস্টিং প্ল্যাটফর্ম আউটগোয়িং HTTP হেডারের নাম নিজে থেকেই একটা নির্দিষ্ট ফরম্যাটে রূপান্তর করে দিচ্ছিল (যেমন `X-CB-Header` হয়ে যাচ্ছিল `X-Cb-Header`), যা টেকনিক্যালি ভুল না (HTTP হেডারের নাম কেস-ইনসেনসিটিভ হওয়ার কথা), কিন্তু কুরিয়ারের নিজস্ব ভ্যালিডেটর কেস-সেনসিটিভভাবে চেক করছিল। এই ধরনের সমস্যা কোনো এক পক্ষের "ভুল" না — দুটো সিস্টেমের অনুমানের মধ্যে একটা অমিল, যা কোনো নোটিশ ছাড়াই ধরা পড়ে।
মার্চেন্ট/ডেভেলপার হিসেবে যা করতে পারেন
- কোনো একটা এপিআই রেসপন্সের ফরম্যাট বা স্ট্যাটাস ভ্যালুর তালিকা "চিরস্থায়ী" ধরে নেবেন না — নতুন/অচেনা মান এলে সেটা এরর হিসেবে সিস্টেম ভেঙে ফেলার বদলে, একটা সাধারণ "অজানা স্ট্যাটাস" হিসেবে লগ করে রাখাই নিরাপদ।
- একটামাত্র কুরিয়ারের এপিআই-এর উপর সম্পূর্ণ নির্ভরশীল না থেকে, বিকল্প (পোলিং, ম্যানুয়াল আপডেট) ব্যবস্থা রাখা।
- এই ধরনের সমস্যা যখন হয়, প্রথমেই দুই পক্ষকেই দোষারোপ না করে ধৈর্য ধরে মূল কারণ খুঁজে বের করা — অনেক সময় এটা কোনো পক্ষেরই ইচ্ছাকৃত ভুল না, বরং দুটো সিস্টেমের অনুমানের সংঘর্ষ।
একবারে সব কুরিয়ারের আজকের রেট দেখতে চান? CourierX-এর Compare টুল দিয়ে যাচাই করুন।
CourierX দেখুন