মার্চেন্ট এপিআই-তে টেস্ট অ্যাকাউন্ট

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

পূর্বশর্ত

টেস্ট অ্যাকাউন্ট তৈরি ও ব্যবহার করার আগে, নিশ্চিত করুন যে আপনি নিম্নলিখিত শর্তগুলো পূরণ করেছেন:

  • মার্চেন্ট সেন্টার অ্যাকাউন্ট: আপনার একটি মার্চেন্ট সেন্টার অ্যাকাউন্ট থাকতে হবে।
  • মার্চেন্ট এপিআই অ্যাক্সেস: আপনাকে অবশ্যই মার্চেন্ট এপিআই-এর একজন নিবন্ধিত ব্যবহারকারী হতে হবে।

টেস্ট অ্যাকাউন্টের সুবিধাগুলি

টেস্ট অ্যাকাউন্ট ব্যবহারের বেশ কিছু গুরুত্বপূর্ণ সুবিধা রয়েছে:

  • সহজ সেটআপ: টেস্ট অ্যাকাউন্ট সেটআপ একটি স্বল্প-জটিল প্রক্রিয়া, যা আপনাকে দ্রুত আপনার ফিচার এবং ইন্টিগ্রেশনগুলো পরীক্ষা করা শুরু করতে দেয়।
  • ডেটার অখণ্ডতা ও নিরাপত্তা: প্রোডাকশন ডেটা সুরক্ষিত থাকে এবং প্রোডাকশন অ্যাকাউন্টগুলোতে নীতি লঙ্ঘনের ঝুঁকি দূর হয়।
  • পরীক্ষার কার্যকারিতা: পরীক্ষার উদ্দেশ্যে একটি সমান্তরাল প্রোডাকশন অ্যাকাউন্ট রক্ষণাবেক্ষণের ঝামেলা ছাড়াই আপনি বিভিন্ন ধরনের সিনারিও এবং এজ কেস পরীক্ষা করতে পারেন।
  • তাৎক্ষণিক অফার যাচাইকরণ: টেস্ট অ্যাকাউন্টগুলোর জন্য হোমপেজে দাবি করা ও যাচাইকরণ থেকে স্বয়ংক্রিয় অব্যাহতির সুবিধা নিয়ে দ্রুত অফারগুলো পরীক্ষা করুন। টেস্ট অ্যাকাউন্টগুলোর জন্য অফারগুলো ডিফল্টরূপে অনুমোদিত থাকে।
  • বাস্তবসম্মত সিমুলেশন: পরিবেশটি পণ্য আপলোড এবং ইনভেন্টরি ব্যবস্থাপনার মতো গুরুত্বপূর্ণ কার্যকারিতাগুলোর জন্য উৎপাদন প্রক্রিয়াকে প্রতিফলিত করে, যা পরীক্ষার ফলাফলের নির্ভরযোগ্যতা নিশ্চিত করে।
  • মসৃণ এপিআই মাইগ্রেশন: টেস্ট অ্যাকাউন্টগুলো পাশাপাশি যাচাইকরণের সুযোগ দিয়ে কন্টেন্ট এপিআই থেকে মার্চেন্ট এপিআই-তে অথবা এক এপিআই ভার্সন থেকে অন্যটিতে স্থানান্তরিত হওয়া ব্যক্তিদের জন্য একটি আত্মবিশ্বাসী ও নির্বিঘ্ন রূপান্তরকে সহজ করে তোলে।

টেস্ট অ্যাকাউন্ট তৈরি করার পদ্ধতি

মার্চেন্ট এপিআই-এর একটি নির্দিষ্ট কাস্টম পদ্ধতি ব্যবহার করে টেস্ট অ্যাকাউন্টগুলো তৈরি করা হয়।

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 ব্যবহার করুন, যেমন "মাইগ্রেশন টেস্টিং" বা "ইন্টিগ্রেশন টেস্ট অ্যাকাউন্ট"।