บัญชีทดสอบใน Merchant API

ฟีเจอร์บัญชีทดสอบ Merchant API มีพื้นที่ที่ปลอดภัยและแยกต่างหากเพื่อให้คุณทดสอบการผสานรวมได้อย่างละเอียดก่อนที่จะนำไปใช้ในสภาพแวดล้อมที่ใช้งานจริง การใช้บัญชีทดสอบในแซนด์บ็อกซ์ช่วยให้คุณทดลองใช้การเรียก API, ตรวจสอบโค้ด และระบุปัญหาที่อาจเกิดขึ้นได้ตั้งแต่เนิ่นๆ ในวงจรการพัฒนา โดยไม่ส่งผลกระทบต่อข้อมูลที่ใช้งานจริง, ขัดขวางการดำเนินงานแบบเรียลไทม์ หรือละเมิดนโยบาย Merchant Center โดยไม่ตั้งใจ

ข้อกำหนดเบื้องต้น

ก่อนที่จะสร้างและใช้บัญชีทดสอบได้ โปรดตรวจสอบว่าคุณมีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้

สิทธิประโยชน์ของบัญชีทดสอบ

การใช้บัญชีทดสอบมีข้อดีหลักๆ หลายประการดังนี้

  • การตั้งค่าที่ง่าย: การตั้งค่าบัญชีทดสอบเป็นกระบวนการที่ไม่ซับซ้อน ซึ่งช่วยให้คุณเริ่มทดสอบฟีเจอร์และการผสานรวมได้อย่างรวดเร็ว
  • ความสมบูรณ์และความปลอดภัยของข้อมูล: ข้อมูลที่ใช้งานจริงจะยังคงได้รับการปกป้อง และความเสี่ยงที่จะเกิดการละเมิดนโยบายในบัญชีที่ใช้งานจริงจะหมดไป
  • ประสิทธิภาพในการทดสอบ: คุณสามารถทดสอบสถานการณ์ที่หลากหลายและกรณีที่พบได้ยากโดยไม่ต้องกังวลเรื่องการดูแลบัญชีที่ใช้งานจริงคู่ขนานเพื่อวัตถุประสงค์ในการทดสอบ
  • การตรวจสอบข้อเสนอทันที: ใช้ประโยชน์จากการยกเว้นอัตโนมัติจากการอ้างสิทธิ์และการยืนยันหน้าแรกสำหรับบัญชีทดสอบเพื่อทดสอบการแทรกข้อเสนออย่างรวดเร็ว ระบบจะอนุมัติข้อเสนอสำหรับบัญชีทดสอบโดยค่าเริ่มต้น
  • การจำลองที่สมจริง: สภาพแวดล้อมจะจำลองลักษณะการทำงานที่ใช้งานจริงสำหรับฟังก์ชันการทำงานที่สำคัญ เช่น การอัปโหลดผลิตภัณฑ์และการจัดการพื้นที่โฆษณา ซึ่งช่วยให้มั่นใจได้ว่าผลการทดสอบมีความน่าเชื่อถือ
  • การย้ายข้อมูล API ที่ราบรื่นขึ้น: บัญชีทดสอบช่วยให้การเปลี่ยนจาก Content API เป็น Merchant API หรือจาก API เวอร์ชันหนึ่งไปยังอีกเวอร์ชันหนึ่งเป็นไปอย่างมั่นใจและราบรื่นสำหรับผู้ที่ย้ายข้อมูล โดยอนุญาตให้มีการตรวจสอบแบบคู่ขนาน

วิธีสร้างบัญชีทดสอบ

ระบบจะสร้างบัญชีทดสอบโดยใช้เมธอดที่กำหนดเองเฉพาะใน Merchant API

ใช้เมธอด 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: รหัส Merchant Center
  • ACCESS_TOKEN: โทเค็นการให้สิทธิ์เพื่อเรียก API
  • 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"
  }

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างบัญชีทดสอบ

Java

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"
}'

ข้อจำกัด

บัญชีทดสอบออกแบบมาเพื่อการตรวจสอบการทำงานและมีข้อจำกัดเฉพาะดังนี้

  • จำนวนบัญชีทดสอบ: คุณสร้างบัญชีทดสอบได้สูงสุด 5 บัญชีต่อบัญชี Google ระบบจะนับบัญชีทดสอบรวมไว้ในขีดจำกัดเริ่มต้นของบัญชี Merchant Center ต่อบัญชี Google
  • การผสานรวมกับโควต้า Merchant API: ในมุมมองของโควต้า API นั้น Merchant API จะถือว่าบัญชีทดสอบเป็นบัญชีที่ใช้งานจริง บัญชีทดสอบอยู่ภายใต้โควต้าเดียวกับบัญชีที่ใช้งานจริง คุณไม่สามารถเพิ่มโควต้าสำหรับบัญชีทดสอบได้
  • บัญชีขั้นสูง: คุณไม่สามารถสร้างบัญชีทดสอบขั้นสูงหรือเปลี่ยนบัญชีขั้นสูงเป็นบัญชีทดสอบได้
  • ไม่มีการแสดงต่อสาธารณะ: ระบบจะไม่เผยแพร่ข้อมูลที่ส่งไปยังบัญชีทดสอบในแพลตฟอร์มใดๆ ของ Google เช่น Search หรือโฆษณา Shopping
  • ปลายทางที่จำกัด: คุณไม่สามารถใช้บัญชีทดสอบเมื่อใช้ฟีเจอร์บางอย่าง เช่น
  • ข้อจำกัดในการลิงก์: คุณไม่สามารถลิงก์บัญชีทดสอบกับบัญชี Google Ads หรือบัญชี Google Business Profile อื่นๆ ได้
  • ไม่มีการลงทะเบียนสำหรับบัญชีทดสอบ: คุณไม่สามารถดำเนินการ ลงทะเบียนสำหรับบัญชีทดสอบ ได้

แนวทางปฏิบัติแนะนำ

เราขอแนะนำให้ทำตามแนวทางปฏิบัติแนะนำบางอย่างเมื่อใช้บัญชีทดสอบ

  • การพัฒนาแบบแซนด์บ็อกซ์ก่อน: ตรวจสอบฟีเจอร์การผสานรวมใหม่ๆ ในบัญชีทดสอบทุกครั้งก่อนที่จะนำไปใช้กับสภาพแวดล้อมที่ใช้งานจริง
  • การทดสอบการผสานรวมอัตโนมัติ: ใช้บัญชีทดสอบเป็นสภาพแวดล้อมที่เสถียรสำหรับการเรียกใช้การทดสอบการถดถอยอัตโนมัติ
  • การตั้งชื่อบัญชีทดสอบ: ใช้ account_name เพื่อบอกวัตถุประสงค์ของบัญชีทดสอบแต่ละบัญชี เช่น "การทดสอบการย้ายข้อมูล" หรือ "บัญชีทดสอบการผสานรวม"