এই নির্দেশিকাটি আপনাকে মার্চেন্ট এপিআই v1beta থেকে v1 এ স্থানান্তরিত হতে সাহায্য করবে, যা সাধারণ ব্যবহারের জন্য প্রথম সংস্করণ। v1 সংস্করণে বেশ কিছু আপডেট এবং কয়েকটি পরিবর্তন আনা হয়েছে, যার জন্য কোড আপডেটের প্রয়োজন হতে পারে। এই পরিবর্তনগুলো এপিআই-কে সরল করতে এবং আপনার মার্চেন্ট সেন্টার অ্যাকাউন্টের ব্যবস্থাপনা উন্নত করার জন্য ডিজাইন করা হয়েছে।
মূল পার্থক্য
v1beta থেকে v1 এ স্থানান্তরের সময় যে সবচেয়ে গুরুত্বপূর্ণ পরিবর্তনগুলো সম্পর্কে সচেতন থাকতে হবে, সেগুলো নিচে দেওয়া হলো:
- মার্চেন্ট এপিআই ব্যবহার করার জন্য কমপক্ষে একজন এপিআই ডেভেলপারের এককালীন নিবন্ধন: আপনার যোগাযোগের বিবরণ প্রদান করার জন্য আপনাকে
registerGcpমেথডটি কল করতে হবে (প্রমাণীকরণের জন্য ব্যবহৃত প্রতিটি গুগল ক্লাউড প্রজেক্টের জন্য শুধুমাত্র একবার)। এর মাধ্যমে আপনি এপিআই ব্যবহার করতে এবং মার্চেন্ট এপিআই সম্পর্কিত আপডেট ও ঘোষণা পেতে পারবেন। এই ধাপটি সম্পন্ন না হওয়া পর্যন্ত আপনি কোনোv1বাv1alphaএপিআই ব্যবহার করতে পারবেন না। নিবন্ধন প্রক্রিয়া সম্পর্কে আরও তথ্যের জন্য, নিবন্ধন (Registration) দেখুন। পণ্যের নামের এনকোডিং :
ProductInput.nameএবংProduct.nameফিল্ডগুলো আনপ্যাডেড base64url (RFC 4648 সেকশন 5) এনকোডিং সমর্থন করে। এই নির্দেশিকাগুলো অনুসরণ করুন:- এনকোড করার আগে, স্ট্রিংটিকে অবশ্যই
contentLanguage~feedLabel~offerIdফরম্যাটটি মেনে চলতে হবে। আপনার পণ্যের নামে মার্চেন্ট এপিআই (Merchant API) দ্বারা ব্যবহৃত অক্ষর অথবা ইউআরএল-সংরক্ষিত অক্ষর, যেমন— নিম্নলিখিত অক্ষরগুলো থাকলে এনকোডিং করা বাধ্যতামূলক :
% . + / : ~ , ( * ! ) & ? = @ # $যদি আপনার পণ্যের নামটি
contentLanguage~feedLabel~offerIdফরম্যাট মেনে চলে এবং এতে মার্চেন্ট এপিআই (Merchant API) দ্বারা ব্যবহৃত কোনো অক্ষর বা ইউআরএল-সংরক্ষিত (URL-reserved) অক্ষর না থাকে, তাহলে আপনি এনকোডিং ছাড়াই সাধারণ ফরম্যাটটি ব্যবহার করতে পারেন।সামঞ্জস্যপূর্ণ ও সঠিক পার্সিং নিশ্চিত করতে, আমরা সকল পণ্যের নামের জন্য আনপ্যাডেড বেস৬৪ইউআরএল এনকোডিং ব্যবহার করার পরামর্শ দিই।
- এনকোড করার আগে, স্ট্রিংটিকে অবশ্যই
পণ্য-স্তরের কর তথ্য অপসারণ:
taxesএবংtaxCategory।Product.attributesনাম পরিবর্তন করা হয়েছে :Product.attributesফিল্ডটির নাম পরিবর্তন করেProduct.productAttributesরাখা হয়েছে।পণ্য-স্তরের কর তথ্য অপসারণ:
Product.productAttributesঅবজেক্ট থেকেtaxesএবংtaxCategoryফিল্ডগুলো সরিয়ে ফেলা হয়েছে। আরও তথ্যের জন্য কর সংক্রান্ত Google Merchant Center-এর হেল্প আর্টিকেলটি দেখুন।GTIN ফিল্ডে পরিবর্তন:
Product.productAttributesঅবজেক্টেরgtinফিল্ডটির নাম পরিবর্তন করেgtinsরাখা হয়েছে, যা এটি একাধিক মান ধারণ করতে পারে—এই বিষয়টি আরও ভালোভাবে প্রতিফলিত করে।OrderTrackingSignals.lineItemDetailsঅবজেক্টেরgtinফিল্ডটি এখন একটিarrayএবং এর নামও পরিবর্তন করেgtinsরাখা হয়েছে।চ্যানেল ফিল্ড অপসারণ: প্রোডাক্ট, প্রোডাক্ট ইনপুট এবং ডেটা সোর্স থেকে
channelফিল্ডটি সরিয়ে ফেলা হয়েছে। শুধুমাত্র ফিজিক্যাল স্টোরে বিক্রি হওয়া প্রোডাক্টগুলোকে স্পষ্টভাবে চিহ্নিত করার জন্যlegacyLocalএকটি নতুন বুলিয়ান ফিল্ড চালু করা হয়েছে। দ্রষ্টব্য:legacyLocalফিল্ডটি মাইগ্রেশনে সাহায্য করার জন্য একটি সহায়ক ফিল্ড এবং অনলাইন ও লোকাল মার্কেটিং পদ্ধতিগুলো একটিমাত্র প্রোডাক্ট সোর্স দিয়ে সম্পূর্ণরূপে টার্গেট করা গেলে এটি পর্যায়ক্রমে বাতিল করা হবে। আরও তথ্যের জন্য পরবর্তী সেকশনের টেবিলটি দেখুন।আঞ্চলিক ও স্থানীয় ইনভেন্টরি বৈশিষ্ট্যগুলির জন্য নতুন ক্ষেত্র :
-
name,accountএবংregionছাড়াRegionalInventoryবাকি সব ফিল্ড এখনregionalInventoryAttributesনামক একটি নতুন অবজেক্টের অধীনে আনা হয়েছে। উদাহরণস্বরূপ,RegionalInventory.priceঅ্যাট্রিবিউটটি এখনRegionalInventory.regionalInventoryAttributes.priceএর অধীনে রয়েছে। -
name,accountএবংstoreCodeছাড়াLocalInventoryবাকি সব ফিল্ড এখনlocalInventoryAttributesনামক একটি নতুন অবজেক্টের অধীনে আনা হয়েছে। উদাহরণস্বরূপ,LocalInventory.priceঅ্যাট্রিবিউটটি এখনLocalInventory.localInventoryAttributes.priceএর অধীনে রয়েছে।
-
আঞ্চলিক এবং স্থানীয় ইনভেন্টরি থেকে
customAttributesঅপসারণ:customAttributesফিল্ডটিRegionalInventoryএবংLocalInventoryউভয় রিসোর্স থেকে অপসারণ করা হয়েছে।অ্যাকাউন্ট তৈরির পরিমার্জিত পদ্ধতি:
CreateAndConfigureAccountRequestথেকে অপ্রয়োজনীয়usersফিল্ডটি সরিয়ে দেওয়া হয়েছে। একজন প্রাথমিক ব্যবহারকারীকে একটি নতুন অ্যাকাউন্টের সাথে যুক্ত করতে 'userফিল্ডটি ব্যবহার করুন।কিছু অ্যাট্রিবিউট টাইপ স্ট্রিং থেকে এনামে পরিবর্তন করা হয়েছে: উন্নত ডেটা ভ্যালিডেশনের জন্য
ProductএবংInventoryরিসোর্সের মধ্যে থাকা কিছু ফিল্ড, যেগুলোর ভ্যালুর একটি সংক্ষিপ্ত তালিকা নির্দিষ্ট ছিল, সেগুলোকেstringটাইপ থেকেenumটাইপে পরিবর্তন করা হয়েছে (উদাহরণস্বরূপ,Product.ProductAttributes.conditionফিল্ডটি এখন একটিenum)।অনলাইন রিটার্ন পলিসি আপডেট করার পদ্ধতি অপসারণ:
v1থেকেonlineReturnPolicy.updateপদ্ধতিটি সরিয়ে ফেলা হয়েছে। এর পরিবর্তেonlineReturnPolicy.createপদ্ধতি ব্যবহার করে একটি অনলাইন রিটার্ন পলিসি তৈরি করুন।
কীভাবে স্থানান্তর করবেন
মার্চেন্ট এপিআই-এর v1beta সংস্করণটি ২৮শে ফেব্রুয়ারি, ২০২৬ তারিখে বন্ধ করে দেওয়া হবে। এই বাতিলকরণ সময়সূচী সম্পর্কে আরও তথ্যের জন্য, মার্চেন্ট এপিআই ভার্সনিং গাইড দেখুন।
মাইগ্রেট করার জন্য আপনার প্রথম ধাপ হলো এককালীন ডেভেলপার রেজিস্ট্রেশন করা (দেখুন 'ডেভেলপার হিসেবে নিবন্ধন করুন ')। যেকোনো
v1পদ্ধতি কাজ করার আগে, প্রমাণীকরণের জন্য ব্যবহৃত আপনার প্রতিটি গুগল ক্লাউড প্রজেক্টের জন্য অবশ্যইregisterGcpমেথডটি কল করতে হবে।আপনি এপিআইগুলো যেভাবে কল করুন না কেন (REST, gRPC বা ক্লায়েন্ট লাইব্রেরি ব্যবহার করে), আপনি পর্যায়ক্রমে মাইগ্রেট করতে পারেন। এর মানে হলো, আপনাকে পুরো ইন্টিগ্রেশনটি একবারে আপডেট না করেই, আপনি একটি একটি করে এপিআই আপডেট ও মাইগ্রেট করতে পারবেন (উদাহরণস্বরূপ,
AccountsAPI-কেv1betaতে রেখেProductsAPI-কেv1এ নিয়ে যাওয়া)।
বিস্তারিত ক্ষেত্রের পরিবর্তন
এই সারণিতে v1beta এবং v1 সংস্করণের মধ্যে পরিবর্তিত ক্ষেত্রগুলির একটি বিশদ তুলনা প্রদান করা হয়েছে।
| v1beta | v1 | বর্ণনা |
|---|---|---|
ProductInput.name | ProductInput.name | মার্চেন্ট এপিআই দ্বারা ব্যবহৃত অক্ষর বা ইউআরএল-সংরক্ষিত অক্ষরযুক্ত পণ্যের নামের জন্য Unpadded base64url encoding সমর্থিত এবং বাধ্যতামূলক। |
Product.name | Product.name | মার্চেন্ট এপিআই দ্বারা ব্যবহৃত অক্ষর বা ইউআরএল-সংরক্ষিত অক্ষরযুক্ত পণ্যের নামের জন্য Unpadded base64url encoding সমর্থিত এবং বাধ্যতামূলক। |
Product.gtin | Product.gtins | GTIN-এর ফিল্ডটির নাম পরিবর্তন করা হয়েছে। |
Product.taxes | অপসারণ করা হয়েছে | taxes ক্ষেত্রটি সরানো হয়েছে |
Product.taxCategory | অপসারণ করা হয়েছে | taxCategory ফিল্ডটি সরিয়ে ফেলা হয়েছে |
Product.channel | অপসারণ করা হয়েছে | channel ফিল্ডটি সরিয়ে দেওয়া হয়েছে। স্থানীয় ব্যবহারের জন্য legacyLocal ফিল্ডটি ব্যবহার করুন। |
Product.attributes | Product.productAttributes | attributes ফিল্ডটির নাম পরিবর্তন করে productAttributes রাখা হয়েছে। |
Product ফিল্ডের availability , condition , gender , includedDestinations এবং excludedDestinations strings (বা strings -এর array ) হিসেবে উপস্থাপিত হয়। | এই ফিল্ডগুলো এখন enums (বা enums array ) | যেসব ফিল্ডের মানের একটি সংক্ষিপ্ত তালিকা নির্দিষ্ট ছিল, সেগুলোকে string টাইপ থেকে enum টাইপে পরিবর্তন করা হয়েছে। |
price , salePrice , salePriceEffectiveDate এবং RegionalInventory availability | RegionalInventory.regionalInventoryAttributes এ স্থানান্তরিত হয়েছে | এই ফিল্ডগুলো regionalInventoryAttributes অধীনে স্থানান্তর করা হয়েছে। |
RegionalInventory.availability ফিল্ডটি একটি string | RegionalInventory.regionalInventoryAttributes.availability এখন একটি enums | প্রাপ্যতার ধরণ string থেকে enum পরিবর্তিত হয়েছে। |
LocalInventory price , salePrice , salePriceEffectiveDate , availability , quantity , pickupMethod , pickupSla এবং instoreProductLocation | LocalInventory.localInventoryAttributes এ স্থানান্তরিত হয়েছে | এই ফিল্ডগুলো localInventoryAttributes অধীনে স্থানান্তর করা হয়েছে। |
LocalInventory.availability ফিল্ডটি একটি string | LocalInventory.localInventoryAttributes.availability এখন একটি enums | প্রাপ্যতার ধরণ string থেকে enum পরিবর্তিত হয়েছে। |
LocalInventory.customAttributes | অপসারণ করা হয়েছে | স্থানীয় ইনভেন্টরির জন্য কাস্টম অ্যাট্রিবিউট আর সমর্থিত নয়। |
RegionalInventory.customAttributes | অপসারণ করা হয়েছে | আঞ্চলিক ইনভেন্টরির জন্য কাস্টম অ্যাট্রিবিউট আর সমর্থিত নয়। |
ProductInput.channel | অপসারণ করা হয়েছে | channel ফিল্ডটি সরিয়ে দেওয়া হয়েছে। স্থানীয় ব্যবহারের জন্য legacyLocal ফিল্ডটি ব্যবহার করুন। |
DataSource.channel | অপসারণ করা হয়েছে | channel ফিল্ডটি সরিয়ে দেওয়া হয়েছে। স্থানীয় ব্যবহারের জন্য legacyLocal ফিল্ডটি ব্যবহার করুন। |
| উপলব্ধ নয় | ProductInput.legacyLocal | একটি নতুন বুলিয়ান ফিল্ড যা নির্দেশ করবে যে একটি পণ্য শুধুমাত্র স্থানীয় বিপণন পদ্ধতিকে লক্ষ্য করতে পারবে। পণ্য রিসোর্স আইডির শুরুতে "local~" উপসর্গ থাকবে। |
| উপলব্ধ নয় | Product.legacyLocal | একটি নতুন বুলিয়ান ফিল্ড, যা নির্দেশ করবে যে কোনো পণ্য শুধুমাত্র স্থানীয় দোকানে বিক্রি হয় এবং অনলাইনে কেনার জন্য উপলব্ধ নয়। |
| উপলব্ধ নয় | DataSource.legacyLocal | একটি নতুন বুলিয়ান ফিল্ড, যা নির্দেশ করে যে কোনো ডেটা সোর্সে শুধুমাত্র স্থানীয় দোকানে বিক্রি হওয়া পণ্য রয়েছে। |
OrderTrackingSignals.LineItemDetails.gtin | OrderTrackingSignals.LineItemDetails.gtins | gtin ফিল্ডটির নাম পরিবর্তন করে gtins রাখা হয়েছে এবং এটি এখন একটি স্ট্রিং-এর অ্যারে। |
CreateAndConfigureAccountRequest.users | অপসারণ করা হয়েছে | users ক্ষেত্রটি সরিয়ে দেওয়া হয়েছে। অ্যাকাউন্টে প্রাথমিক প্রশাসক যোগ করতে user ক্ষেত্রটি ব্যবহার করুন। |