মার্চেন্ট এপিআই টেস্ট অ্যাকাউন্টস ফিচারটি ইন্টিগ্রেশনগুলোকে লাইভ এনভায়রনমেন্টে ডেপ্লয় করার আগে পুঙ্খানুপুঙ্খভাবে পরীক্ষা করার জন্য একটি নিরাপদ ও বিচ্ছিন্ন স্থান প্রদান করে। স্যান্ডবক্সড টেস্ট অ্যাকাউন্ট ব্যবহার করে, আপনি প্রোডাকশন ডেটাকে প্রভাবিত না করে, রিয়েল-টাইম অপারেশনে ব্যাঘাত না ঘটিয়ে, বা অনিচ্ছাকৃতভাবে মার্চেন্ট সেন্টার পলিসি লঙ্ঘন না করেই, ডেভেলপমেন্ট সাইকেলের একেবারে শুরুতে এপিআই কল নিয়ে পরীক্ষা-নিরীক্ষা করতে, কোড যাচাই করতে এবং সম্ভাব্য সমস্যাগুলো চিহ্নিত করতে পারেন।
পূর্বশর্ত
টেস্ট অ্যাকাউন্ট তৈরি ও ব্যবহার করার আগে, নিশ্চিত করুন যে আপনি নিম্নলিখিত শর্তগুলো পূরণ করেছেন:
- মার্চেন্ট সেন্টার অ্যাকাউন্ট: আপনার একটি মার্চেন্ট সেন্টার অ্যাকাউন্ট থাকতে হবে।
- মার্চেন্ট এপিআই অ্যাক্সেস: আপনাকে অবশ্যই মার্চেন্ট এপিআই-এর একজন নিবন্ধিত ব্যবহারকারী হতে হবে।
টেস্ট অ্যাকাউন্টের সুবিধাগুলি
টেস্ট অ্যাকাউন্ট ব্যবহারের বেশ কিছু গুরুত্বপূর্ণ সুবিধা রয়েছে:
- সহজ সেটআপ: টেস্ট অ্যাকাউন্ট সেটআপ একটি স্বল্প-জটিল প্রক্রিয়া, যা আপনাকে দ্রুত আপনার ফিচার এবং ইন্টিগ্রেশনগুলো পরীক্ষা করা শুরু করতে দেয়।
- ডেটার অখণ্ডতা ও নিরাপত্তা: প্রোডাকশন ডেটা সুরক্ষিত থাকে এবং প্রোডাকশন অ্যাকাউন্টগুলোতে নীতি লঙ্ঘনের ঝুঁকি দূর হয়।
- পরীক্ষার কার্যকারিতা: পরীক্ষার উদ্দেশ্যে একটি সমান্তরাল প্রোডাকশন অ্যাকাউন্ট রক্ষণাবেক্ষণের ঝামেলা ছাড়াই আপনি বিভিন্ন ধরনের সিনারিও এবং এজ কেস পরীক্ষা করতে পারেন।
- তাৎক্ষণিক অফার যাচাইকরণ: টেস্ট অ্যাকাউন্টগুলোর জন্য হোমপেজে দাবি করা ও যাচাইকরণ থেকে স্বয়ংক্রিয় অব্যাহতির সুবিধা নিয়ে দ্রুত অফারগুলো পরীক্ষা করুন। টেস্ট অ্যাকাউন্টগুলোর জন্য অফারগুলো ডিফল্টরূপে অনুমোদিত থাকে।
- বাস্তবসম্মত সিমুলেশন: পরিবেশটি পণ্য আপলোড এবং ইনভেন্টরি ব্যবস্থাপনার মতো গুরুত্বপূর্ণ কার্যকারিতাগুলোর জন্য উৎপাদন প্রক্রিয়াকে প্রতিফলিত করে, যা পরীক্ষার ফলাফলের নির্ভরযোগ্যতা নিশ্চিত করে।
- মসৃণ এপিআই মাইগ্রেশন: টেস্ট অ্যাকাউন্টগুলো পাশাপাশি যাচাইকরণের সুযোগ দিয়ে কন্টেন্ট এপিআই থেকে মার্চেন্ট এপিআই-তে অথবা এক এপিআই ভার্সন থেকে অন্যটিতে স্থানান্তরিত হওয়া ব্যক্তিদের জন্য একটি আত্মবিশ্বাসী ও নির্বিঘ্ন রূপান্তরকে সহজ করে তোলে।
টেস্ট অ্যাকাউন্ট তৈরি করার পদ্ধতি
মার্চেন্ট এপিআই-এর একটি নির্দিষ্ট কাস্টম পদ্ধতি ব্যবহার করে টেস্ট অ্যাকাউন্টগুলো তৈরি করা হয়।
accounts.createTestAccount পদ্ধতিটি ব্যবহার করুন:
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}:createTestAccount
Content-Type: application/json
Authorization: Bearer {ACCESS_TOKEN}"
{
"account_name": "{TEST_ACCOUNT_NAME}",
"time_zone": {
"id": "America/Los_Angeles"
},
"language_code": "en-US"
}
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
ACCOUNT_ID: আপনার মার্চেন্ট সেন্টার আইডি। -
ACCESS_TOKEN: এপিআই কল করার জন্য অনুমোদন টোকেন -
TEST_ACCOUNT_NAME: টেস্ট অ্যাকাউন্টের নাম। আমরা এমন অর্থপূর্ণ নাম ব্যবহার করার পরামর্শ দিই যা থেকে বোঝা যায় যে এটি পরীক্ষার জন্য ব্যবহৃত হয়। উদাহরণস্বরূপ, টেস্ট অ্যাকাউন্টের নামের মধ্যেtest' শব্দটি রাখুন।
একটি টেস্ট অ্যাকাউন্ট তৈরি করার সময় নিম্নলিখিত ফিল্ডগুলি পূরণ করা আবশ্যক:
-
time_zone: অ্যাকাউন্টটির রিপোর্টিং এবং প্রদর্শনের জন্য নির্ধারিত টাইম জোন। -
language_code: অ্যাকাউন্টের জন্য BCP-47 ভাষা কোড, যেমনen-US।
একটি সফল কল একটি অ্যাকাউন্ট রিসোর্স ফেরত দেয়, যার মধ্যে নতুন টেস্ট অ্যাকাউন্টের অনন্য accountId এবং রিসোর্স নাম অন্তর্ভুক্ত থাকে:
{
"name": "accounts/{TEST_ACCOUNT_ID}",
"accountId": "{TEST_ACCOUNT_ID}",
"accountName": "{TEST_ACCOUNT_NAME}",
"adultContent": false,
"testAccount": true,
"timeZone": {
"id": "America/Los_Angeles"
},
"languageCode": "en-US"
}
নিম্নলিখিত কোড নমুনাগুলি দেখায় কিভাবে একটি টেস্ট অ্যাকাউন্ট তৈরি করতে হয়:
জাভা
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1.Account;
import com.google.shopping.merchant.accounts.v1.AccountsServiceClient;
import com.google.shopping.merchant.accounts.v1.AccountsServiceSettings;
import com.google.shopping.merchant.accounts.v1.CreateTestAccountRequest;
import com.google.type.TimeZone;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/**
* This class demonstrates how to create a new Merchant Center test account.
*
* <p>For more information refer to:
* https://developers.google.com/merchant/api/guides/accounts/test-accounts
*/
public class CreateTestAccountSample {
// Method to create a test account.
public static void createTestAccount(Config config, String newAccountName) throws Exception {
// Obtains OAuth token based on the user's configuration.
GoogleCredentials credential = new Authenticator().authenticate();
// Creates service settings using the credentials retrieved above.
AccountsServiceSettings accountsServiceSettings =
AccountsServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
// Calls the API and catches and prints any network failures/errors.
try (AccountsServiceClient accountsServiceClient =
AccountsServiceClient.create(accountsServiceSettings)) {
// The test account to be created.
Account account =
Account.newBuilder()
.setAccountName(newAccountName)
.setTimeZone(TimeZone.newBuilder().setId("Europe/Zurich"))
.setLanguageCode("en-US")
.build();
// Creates parent to identify where to insert the account.
String parent = String.format("accounts/%s", config.getAccountId());
// Create the request message.
CreateTestAccountRequest request =
CreateTestAccountRequest.newBuilder().setParent(parent).setAccount(account).build();
System.out.println("Sending Create Test Account request:");
Account response = accountsServiceClient.createTestAccount(request);
System.out.println("Created Test Account below:");
System.out.println(response);
} catch (Exception e) {
System.err.println("Error during test account creation:");
e.printStackTrace();
}
}
// Main method to run the sample.
public static void main(String[] args) throws Exception {
Config config = Config.load();
// This is the name of the new test account to be created.
String newAccountName = "MyNewTestShop";
createTestAccount(config, newAccountName);
}
}
cURL
curl -X POST \
"https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/:createTestAccount" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"account_name": "{TEST_ACCOUNT_NAME}",
"time_zone": {
"id": "America/Los_Angeles"
},
"language_code": "en-US"
}'
সীমাবদ্ধতা
টেস্ট অ্যাকাউন্টগুলো কার্যকারিতা যাচাইয়ের জন্য তৈরি করা হয়েছে এবং এগুলোর নির্দিষ্ট সীমাবদ্ধতা রয়েছে:
- টেস্ট অ্যাকাউন্টের সংখ্যা: আপনি প্রতিটি গুগল অ্যাকাউন্টের জন্য সর্বোচ্চ ৫টি টেস্ট অ্যাকাউন্ট তৈরি করতে পারবেন। টেস্ট অ্যাকাউন্টগুলো আপনার প্রতিটি গুগল অ্যাকাউন্টের জন্য নির্ধারিত মার্চেন্ট সেন্টার অ্যাকাউন্টের সীমার মধ্যেই গণনা করা হবে।
- মার্চেন্ট এপিআই কোটার সাথে ইন্টিগ্রেশন: এপিআই কোটার দৃষ্টিকোণ থেকে, মার্চেন্ট এপিআই টেস্ট অ্যাকাউন্টগুলোকে প্রোডাকশন অ্যাকাউন্ট হিসেবেই গণ্য করে। টেস্ট অ্যাকাউন্টগুলো প্রোডাকশন অ্যাকাউন্টের মতোই একই কোটার অধীন। টেস্ট অ্যাকাউন্টের জন্য কোটা বৃদ্ধি করা সম্ভব নয়।
- অ্যাডভান্সড অ্যাকাউন্ট: আপনি অ্যাডভান্সড টেস্ট অ্যাকাউন্ট তৈরি করতে পারবেন না বা কোনো অ্যাডভান্সড অ্যাকাউন্টকে টেস্ট অ্যাকাউন্টে রূপান্তর করতে পারবেন না।
- সর্বসাধারণের জন্য প্রকাশ নয়: টেস্ট অ্যাকাউন্টে জমা দেওয়া ডেটা কখনোই গুগলের কোনো প্ল্যাটফর্মে, যেমন সার্চ বা শপিং বিজ্ঞাপনে, প্রকাশ করা হবে না।
- সীমাবদ্ধ এন্ডপয়েন্ট: কিছু নির্দিষ্ট ফিচার ব্যবহার করার সময় আপনি টেস্ট অ্যাকাউন্ট ব্যবহার করতে পারবেন না, যেমন:
- লিঙ্ক করার সীমাবদ্ধতা: আপনি টেস্ট অ্যাকাউন্ট অন্য Google Ads বা Google Business Profile অ্যাকাউন্টের সাথে লিঙ্ক করতে পারবেন না।
- টেস্ট অ্যাকাউন্টের জন্য নিবন্ধন করা যাচ্ছে না: আপনি টেস্ট অ্যাকাউন্টের জন্য নিবন্ধন করতে পারবেন না।
সর্বোত্তম অনুশীলন
টেস্ট অ্যাকাউন্ট ব্যবহার করার সময় আমরা কিছু সর্বোত্তম অনুশীলন অনুসরণ করার পরামর্শ দিই:
- স্যান্ডবক্স-ফার্স্ট ডেভেলপমেন্ট: নতুন ইন্টিগ্রেশন ফিচারগুলো আপনার প্রোডাকশন এনভায়রনমেন্টে প্রয়োগ করার আগে সর্বদা একটি টেস্ট অ্যাকাউন্টে যাচাই করে নিন।
- স্বয়ংক্রিয় ইন্টিগ্রেশন টেস্টিং: স্বয়ংক্রিয় রিগ্রেশন টেস্ট চালানোর জন্য টেস্ট অ্যাকাউন্টগুলোকে স্থিতিশীল পরিবেশ হিসেবে ব্যবহার করুন।
- টেস্ট অ্যাকাউন্টের নামকরণ: প্রতিটি টেস্ট অ্যাকাউন্টের উদ্দেশ্য বোঝাতে
account_nameব্যবহার করুন, যেমন "মাইগ্রেশন টেস্টিং" বা "ইন্টিগ্রেশন টেস্ট অ্যাকাউন্ট"।