গাইড

API ইন্টিগ্রেশন কী, ট্রাভেল ব্যবসার জন্য ব্যাখ্যা

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

  • একটি রিকোয়েস্ট, একটি রেসপন্স
  • REST, XML, SOAP ও ওয়েবহুক
  • চারটি সিস্টেম পেরোনো একটি বুকিং
  • ইন্টিগ্রেশন কীভাবে টেস্ট হয়

সংজ্ঞা

API ইন্টিগ্রেশন কী, সহজ ভাষায়

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

ট্রাভেলে এই প্ল্যাটফর্ম সাধারণত ট্রাভেল বুকিং সফটওয়্যার-এর মতো একটি বুকিং সিস্টেম, আর ইন্টারফেসটি কোনো সাপ্লায়ার, পেমেন্ট গেটওয়ে বা বিজনেস টুলের। আমাদের ট্রাভেল API ইন্টিগ্রেশন পেজে PHPTRAVELS কীভাবে এই সংযোগগুলো ডেলিভার করে তা ব্যাখ্যা করা আছে, আর সব ইন্টিগ্রেশন-এ ইতিমধ্যে যুক্ত সাপ্লায়ারদের তালিকা রয়েছে।

  • ডেটা বিনিময়

    রেট, অ্যাভেইলেবিলিটি, গ্রাহকের তথ্য ও স্ট্যাটাস আপডেট কাঠামোবদ্ধ ফরম্যাটে সিস্টেমগুলোর মধ্যে চলাচল করে।

  • কাজ স্বয়ংক্রিয় করা

    সার্চ, বুক, পেমেন্ট, বাতিল ও রিকনসাইল রিকোয়েস্ট হিসেবে ঘটে, কাউকে হাতে বারবার করতে হয় না।

  • ফলাফল ট্র্যাক করা

    প্রতিটি কলে একটি রেফারেন্স থাকে, তাই ব্যর্থ বুকিং যে রিকোয়েস্ট থেকে হয়েছে তা খুঁজে বের করা যায়।

রিকোয়েস্ট

POST /v1/hotels/availability HTTP/1.1Host: api.supplier.exampleAuthorization: Bearer sk_test_••••••••Content-Type: application/json{  "city": "DXB",  "check_in": "2026-11-12",  "check_out": "2026-11-14",  "guests": 2,  "currency": "USD"}

রেসপন্স

HTTP/1.1 200 OKContent-Type: application/jsonX-Request-Id: req_7f3a91{  "hotel": "Palm Marina Hotel",  "room": "Deluxe, 2 adults",  "rate": { "amount": 438.00, "currency": "USD" },  "refundable": true,  "rate_key": "rk_19d2c7"}
একটি কাল্পনিক হোটেল সাপ্লায়ারে নমুনা কল। ফিল্ডের নাম, এন্ডপয়েন্ট ও পরিমাণ সাপ্লায়ারভেদে আলাদা।

একটি API কলের গঠন

  1. 1

    এন্ডপয়েন্ট ও মেথড

    অপারেশনের ঠিকানা এবং তার ওপর ব্যবহৃত ক্রিয়া: availability-তে POST মানে রুম খোঁজা।

  2. 2

    অথেনটিকেশন

    কী, টোকেন বা সিগনেচার প্রমাণ করে কে কল করছে। সাপ্লায়াররা স্যান্ডবক্স ও প্রোডাকশনের জন্য আলাদা ক্রেডেনশিয়াল দেয়।

  3. 3

    পেলোড

    কাঠামোবদ্ধ ইনপুট: শহর, তারিখ, অতিথি ও মুদ্রা। সাপ্লায়ারের ডকুমেন্টেশন প্রতিটি ফিল্ড নির্ধারণ করে।

  4. 4

    স্ট্যাটাস কোড

    কলটি কেমন গেল তা জানানো একটি সংখ্যা: 200 সফল, 4xx রিকোয়েস্টে সমস্যা, 5xx সাপ্লায়ারের দিকে সমস্যা।

  5. 5

    রিকোয়েস্ট ID

    উভয় পক্ষ যে শনাক্তকারী রাখে। সাপোর্ট যখন জিজ্ঞেস করে কোনো বুকিংয়ের কী হলো, তখন এটাই খোঁজা হয়।

  6. 6

    রেসপন্স বডি

    সাপ্লায়ারের ফরম্যাটে উত্তর, যা আপনার প্ল্যাটফর্ম নিজের রুম, রেট ও নীতিতে ম্যাপ করে।

একটি বুকিং, চারটি সিস্টেম

হোটেল বুকিংয়ের সময় API ইন্টিগ্রেশন কী করে

দুই রাতের একটি থাকা সার্চ থেকে ভাউচার পর্যন্ত অনুসরণ করুন। প্রতিটি তীর একটি API কল; যাত্রী শুধু প্রথম ও শেষটি দেখেন।

  1. 01যাত্রীবুকিং প্ল্যাটফর্মদুবাইয়ে হোটেল খোঁজেন, দুই রাত, দুই অতিথি
  2. 02বুকিং প্ল্যাটফর্মসাপ্লায়ার APIতারিখ, অতিথি ও মুদ্রাসহ অ্যাভেইলেবিলিটি রিকোয়েস্ট
  3. 03সাপ্লায়ার APIবুকিং প্ল্যাটফর্মরুম, রেট, নীতি ও একটি রেট কী
  4. 04বুকিং প্ল্যাটফর্মযাত্রীআপনার মার্কআপ ও মুদ্রা প্রয়োগ করে ফলাফল দেখানো হয়
  5. 05বুকিং প্ল্যাটফর্মসাপ্লায়ার APIপেমেন্টের আগে নির্বাচিত রেট কী-তে দাম পুনঃযাচাই
  6. 06বুকিং প্ল্যাটফর্মপেমেন্ট গেটওয়েমোট অঙ্কের জন্য পেমেন্ট অথরাইজেশন
  7. 07পেমেন্ট গেটওয়েবুকিং প্ল্যাটফর্মঅথরাইজড, স্বাক্ষরিত ওয়েবহুক প্রাপ্ত
  8. 08বুকিং প্ল্যাটফর্মসাপ্লায়ার APIঅতিথির তথ্যসহ বুকিং রিকোয়েস্ট
  9. 09সাপ্লায়ার APIবুকিং প্ল্যাটফর্মকনফার্মেশন নম্বর ও বাতিলের শর্ত
  10. 10বুকিং প্ল্যাটফর্মযাত্রীভাউচার, ইনভয়েস ও বুকিং রেফারেন্স

মাঝের প্ল্যাটফর্মটিই API ইন্টিগ্রেশনের জায়গা: এটি যাত্রীর স্ক্রিন আর প্রতিটি সাপ্লায়ারের ফরম্যাটের মধ্যে অনুবাদ করে এবং প্রতিটি রেফারেন্স সংরক্ষণ করে।

একই ক্রম GDS-সহ ফ্লাইট বুকিং সফটওয়্যার, অ্যাক্টিভিটি সাপ্লায়ারসহ ট্যুর অপারেটর সফটওয়্যার এবং যেকোনো গেটওয়েসহ পেমেন্ট গেটওয়ে ইন্টিগ্রেশন-এর জন্য কাজ করে; শুধু ফিল্ডের নাম বদলায়।

ইন্টিগ্রেশনের ধরন

REST, XML, SOAP, ওয়েবহুক ও GraphQL

সাপ্লায়াররা তাদের ইন্টারফেস ভিন্ন ভিন্ন ধরনে প্রকাশ করে। ধরনটি সাপ্লায়ারের ডকুমেন্টেশন ঠিক করে, পছন্দ নয়, তাই ট্রাভেল প্ল্যাটফর্মকে সবগুলোই জানতে হয়।

  • REST ও JSON

    JSON
    ডেটা ফরম্যাট
    JSON ডকুমেন্ট
    ট্রান্সপোর্ট
    HTTP মেথড: GET, POST, PUT, DELETE
    ট্রাভেলে প্রচলিত
    নতুন ফ্লাইট, হোটেল, অ্যাক্টিভিটি ও পেমেন্ট API
    শক্তি
    ছোট পেলোড ও বিস্তৃত ডেভেলপার টুল
    সতর্ক থাকুন
    শিথিল সংজ্ঞা; প্রতিটি সাপ্লায়ার REST-কে আলাদাভাবে বোঝে
  • XML ও SOAP

    XML
    ডেটা ফরম্যাট
    XML ডকুমেন্ট, প্রায়ই কঠোর স্কিমাসহ
    ট্রান্সপোর্ট
    SOAP এনভেলপ বা সাধারণ XML-সহ HTTP POST
    ট্রাভেলে প্রচলিত
    GDS, বেডব্যাংক ও প্রতিষ্ঠিত হোটেল ও ট্যুর সিস্টেম
    শক্তি
    আনুষ্ঠানিক চুক্তি, সিগনেচার ও সার্ভিস সংজ্ঞা
    সতর্ক থাকুন
    দীর্ঘ বার্তা ও ভারী পার্সিং
  • ওয়েবহুক

    EVENT
    ডেটা ফরম্যাট
    JSON বা XML, অন্য পক্ষ থেকে পুশ করা
    ট্রান্সপোর্ট
    আপনার নিবন্ধিত URL-এ HTTP POST
    ট্রাভেলে প্রচলিত
    পেমেন্টের ফলাফল, বুকিং স্ট্যাটাস পরিবর্তন, টিকিটিং আপডেট
    শক্তি
    পোলিং নেই; কিছু ঘটলে আপনার প্ল্যাটফর্মকে জানানো হয়
    সতর্ক থাকুন
    সিগনেচার যাচাই ও পুনরাবৃত্তি সামলাতে হয়
  • GraphQL

    QUERY
    ডেটা ফরম্যাট
    JSON, আপনার পাঠানো কোয়েরির আকারে
    ট্রান্সপোর্ট
    একটি মাত্র HTTP এন্ডপয়েন্ট
    ট্রাভেলে প্রচলিত
    কিছু নতুন ডিস্ট্রিবিউশন প্ল্যাটফর্ম ও অভ্যন্তরীণ API
    শক্তি
    ঠিক যে ফিল্ড দরকার সেটিই চান
    সতর্ক থাকুন
    ট্রাভেলে সাপ্লায়ার সাপোর্ট এখনও কম

API ইন্টিগ্রেশন বনাম API ডেভেলপমেন্ট

API ইন্টিগ্রেশন

আপনার প্রোডাক্টকে ইতিমধ্যে থাকা একটি ইন্টারফেসের সঙ্গে যুক্ত করে। API সাপ্লায়ারের; আপনি ক্লায়েন্ট, ম্যাপিং ও তার চারপাশের নিয়ম তৈরি করেন।

API ডেভেলপমেন্ট

এমন ইন্টারফেস তৈরি করে যা অন্য সিস্টেম আপনার প্রোডাক্টে যুক্ত হতে ব্যবহার করে, যেমন এজেন্টদের টুল যে B2B API কল করতে পারে। চুক্তি ও তার সংস্করণ আপনার।

অনেক ট্রাভেল প্রকল্পে দুটোই লাগে: প্ল্যাটফর্ম একদিকে সাপ্লায়ার ইন্টিগ্রেট করে, অন্যদিকে এজেন্ট ও পার্টনারদের জন্য নিজের API প্রকাশ করে।

আগে ও পরে

সিস্টেম ইন্টিগ্রেট হলে কী বদলায়

একটি বুকিংয়ের একই পাঁচটি ধাপ, সাপ্লায়ার পোর্টালে হাতে করা এবং API ইন্টিগ্রেশনের মাধ্যমে করা।

সার্চ

ইন্টিগ্রেশন ছাড়াম্যানুয়াল

একজন এজেন্ট প্রতিটি সাপ্লায়ার পোর্টাল খুলে দাম কোটেশনে কপি করেন।

API ইন্টিগ্রেশনসহস্বয়ংক্রিয়

একটি সার্চ সব সংযুক্ত সাপ্লায়ারে ছড়িয়ে যায় এবং একটি তালিকা ফেরত দেয়।

দাম

ইন্টিগ্রেশন ছাড়াম্যানুয়াল

মার্কআপ স্প্রেডশিটে যোগ হয়; কোটেশন পাঠানোর মধ্যে রেট বদলে যেতে পারে।

API ইন্টিগ্রেশনসহস্বয়ংক্রিয়

মার্কআপ, কর ও মুদ্রার নিয়ম রেসপন্সের সময় প্রযোজ্য হয়; পেমেন্টের আগে রেট পুনঃযাচাই হয়।

বুক

ইন্টিগ্রেশন ছাড়াম্যানুয়াল

অতিথির তথ্য সাপ্লায়ার পোর্টালে আবার টাইপ হয়; টাইপোগুলো বুকিং ত্রুটি হয়ে যায়।

API ইন্টিগ্রেশনসহস্বয়ংক্রিয়

তথ্য একবার পাঠানো হয়, যাচাই হয় এবং সাপ্লায়ারের কনফার্মেশনসহ সংরক্ষিত হয়।

পেমেন্ট

ইন্টিগ্রেশন ছাড়াম্যানুয়াল

পেমেন্ট আলাদাভাবে নেওয়া হয় এবং পরে বুকিংয়ের সঙ্গে মেলানো হয়।

API ইন্টিগ্রেশনসহস্বয়ংক্রিয়

অথরাইজেশন, ক্যাপচার ও রিফান্ড বুকিং রেফারেন্সের সঙ্গে বাঁধা থাকে।

সার্ভিস

ইন্টিগ্রেশন ছাড়াম্যানুয়াল

বাতিল ও পরিবর্তন মানে আরেকটি লগইন ও আরেকটি ইমেইল।

API ইন্টিগ্রেশনসহস্বয়ংক্রিয়

পরিবর্তন ও বাতিল একই সংযোগের মাধ্যমে চলে এবং রেকর্ড আপডেট করে।

শব্দভাণ্ডার

API ডকুমেন্টেশনে যে শব্দগুলো পাবেন

প্রায় প্রতিটি সাপ্লায়ারের ডেভেলপার পোর্টালে আসা বারোটি শব্দ, ট্রাভেলে যেভাবে ব্যবহৃত হয় সেভাবে সংজ্ঞায়িত।

  • API

    অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস: একটি সিস্টেমের সঙ্গে কথা বলার প্রকাশিত নিয়ম।

  • অথেনটিকেশন

    কে কল করছে তা প্রমাণ করা, API কী, বেয়ারার টোকেন, সিগনেচার বা অনুমোদিত IP ঠিকানা দিয়ে।

  • সার্টিফিকেশন

    প্রোডাকশন ক্রেডেনশিয়াল দেওয়ার আগে সাপ্লায়ারের করা আপনার ইন্টিগ্রেশনের পর্যালোচনা।

  • এন্ডপয়েন্ট

    একটি অপারেশনের জন্য একটি ঠিকানা, যেমন সার্চ, বুক বা বাতিল।

  • আইডেমপোটেন্সি

    একই রিকোয়েস্ট দুবার পাঠালে একটিই ফলাফল হয়, যা ডুপ্লিকেট বুকিং ও চার্জ আটকায়।

  • ম্যাপিং

    সাপ্লায়ারের ফিল্ড, কোড ও নাম আপনার প্ল্যাটফর্মের নিজস্ব ডেটা মডেলে অনুবাদ করা।

  • পেলোড

    রিকোয়েস্ট বা রেসপন্সের ভেতরে বহন করা ডেটা, সাধারণত JSON বা XML।

  • রেট লিমিট

    প্রত্যাখ্যান শুরু করার আগে সাপ্লায়ার প্রতি সেকেন্ড বা প্রতিদিন যতগুলো কল অনুমোদন করে।

  • রিকোয়েস্ট ও রেসপন্স

    একটি কল: আপনার প্ল্যাটফর্ম জিজ্ঞেস করে, সাপ্লায়ার উত্তর দেয়, এবং উভয় পক্ষ তা লগ করে।

  • স্যান্ডবক্স

    নকল ইনভেন্টরি ও টেস্ট কার্ডসহ একটি টেস্ট পরিবেশ যেখানে সত্যিই কিছু বুক বা চার্জ হয় না।

  • স্ট্যাটাস কোড

    ফলাফলের সারসংক্ষেপ জানানো HTTP সংখ্যা: 200 সফল, 401 অননুমোদিত, 429 রেট লিমিট, 500 সাপ্লায়ার ত্রুটি।

  • ওয়েবহুক

    উল্টো দিকের একটি কল: কোনো ঘটনা ঘটলে সাপ্লায়ার বা গেটওয়ে আপনার প্ল্যাটফর্মকে জানায়।

টেস্টিং ও স্কোপিং

লাইভ হওয়ার আগে ট্রাভেল API ইন্টিগ্রেশন কীভাবে টেস্ট হয়

ইন্টিগ্রেশন তখনই সম্পূর্ণ যখন ব্যর্থতার পথগুলোও ঠিকভাবে আচরণ করে। সার্টিফিকেশন ও প্রোডাকশন ক্রেডেনশিয়ালে যাওয়ার আগে সাপ্লায়ার স্যান্ডবক্সে একটি টেস্ট রান নিচের কেসগুলো কভার করে।

run integration tests

সাপ্লায়ার স্যান্ডবক্স, নয়টি কেস

  • OK: বৈধ ও মেয়াদোত্তীর্ণ ক্রেডেনশিয়ালে অথেনটিকেশন
  • OK: অবৈধ রিকোয়েস্ট পাঠযোগ্য ত্রুটিসহ প্রত্যাখ্যাত
  • OK: সাপ্লায়ার টাইমআউট ঝুলন্ত বুকিং ছাড়াই সামলানো
  • OK: রেট লিমিট মানা হয়েছে ও অপেক্ষার পরে পুনঃচেষ্টা
  • OK: পুনঃযাচাইয়ে দামের পরিবর্তন ধরা পড়েছে ও পেমেন্টের আগে দেখানো হয়েছে
  • OK: ডুপ্লিকেট সাবমিশন প্রথম বুকিং ফেরত দেয়, দ্বিতীয়টি নয়
  • OK: বাতিল প্রয়োগ ও ফি হিসাব
  • OK: মূল পেমেন্টের বিপরীতে রিফান্ড জারি
  • OK: বুকিং, পেমেন্ট ও সাপ্লায়ার রেফারেন্স মিলে যায়

সব কেস পাস, সার্টিফিকেশনের জন্য প্রস্তুত

স্কোপিংয়ের জন্য আপনার কাছ থেকে যা দরকার

  1. 1সাপ্লায়ার চুক্তি, ডকুমেন্টেশন ও স্যান্ডবক্স ক্রেডেনশিয়াল
  2. 2বাজার, মুদ্রা, পণ্য ও ব্যবহারকারীর ভূমিকা
  3. 3সার্চ, বুকিং, পরিবর্তন, বাতিল ও রিফান্ডের পরিধি
  4. 4সার্টিফিকেশনের শর্ত ও প্রোডাকশন অ্যাক্সেস প্রক্রিয়া

সাপ্লায়ার যুক্ত করতে প্রস্তুত

PHPTRAVELS সাপ্লায়ার, গেটওয়ে ও বিজনেস টুলকে সোর্স কোডসহ ডেলিভার করা একটি সেলফ-হোস্টেড প্ল্যাটফর্মে ইন্টিগ্রেট করে। তিনটি এককালীন প্ল্যানের জন্য মূল্য দেখুন, বা নির্দিষ্ট কোনো API নিয়ে আমাদের জিজ্ঞেস করুন।

প্রশ্ন

API ইন্টিগ্রেশনের প্রশ্ন, উত্তরসহ

প্রথম ইন্টিগ্রেশন প্রকল্পের আগে মানুষ যে প্রশ্নগুলো করে, তার সংক্ষিপ্ত উত্তর।

সেলসের সাথে কথা বলুন

API ইন্টিগ্রেশন এমন একটি সংযোগ যার মাধ্যমে দুটি সফটওয়্যার সিস্টেম স্বয়ংক্রিয়ভাবে ডেটা বিনিময় করে ও কাজ শুরু করে। একটি সিস্টেম কাঠামোবদ্ধ রিকোয়েস্ট পাঠায়, অন্যটি কাঠামোবদ্ধ রেসপন্স ফেরত দেয়, এবং উভয়ই নিরাপত্তা ও ডেটার সম্মত নিয়ম মেনে চলে।

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

REST একটি আর্কিটেকচারাল স্টাইল যা সাধারণত HTTP-তে JSON বিনিময় করে। XML একটি ডেটা ফরম্যাট যা GDS ও বেডব্যাংক সাপ্লায়ারদের মধ্যে এখনও প্রচলিত, প্রায়ই SOAP-এ মোড়ানো। সাপ্লায়ারের চুক্তি ও ডকুমেন্টেশন ঠিক করে আপনি কোনটি ব্যবহার করবেন।

এটি সাপ্লায়ার অ্যাক্সেস, পরিধির এন্ডপয়েন্ট, সার্টিফিকেশন, ম্যাপিং নিয়ম ও বুকিংয়ের প্রান্তিক ক্ষেত্রের ওপর নির্ভর করে। ডকুমেন্টেশন, ক্রেডেনশিয়াল ও আপনার প্রয়োজনীয় ওয়ার্কফ্লো পর্যালোচনার পরেই নির্ভরযোগ্য অনুমান পাওয়া যায়।

অথেনটিকেশন, বৈধ ও অবৈধ রিকোয়েস্ট, টাইমআউট, রেট লিমিট, দামের পরিবর্তন, ডুপ্লিকেট সাবমিশন, বাতিল, রিফান্ড ও রিকনসিলিয়েশন টেস্ট করুন। প্রোডাকশনে প্রতিটি রিকোয়েস্ট একটি বুকিং রেফারেন্সে ট্রেস করা যাওয়া উচিত।

না। ইন্টিগ্রেশন আপনার প্রোডাক্টকে বিদ্যমান API-এর সঙ্গে যুক্ত করে; ডেভেলপমেন্ট এমন ইন্টারফেস তৈরি করে যাতে অন্যরা যুক্ত হয়। ট্রাভেল প্ল্যাটফর্মে প্রায়ই দুটোই লাগে: একদিকে ইন্টিগ্রেট করা সাপ্লায়ার, অন্যদিকে পার্টনারদের জন্য প্রকাশিত B2B API।