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

ฟีเจอร์บัญชีทดสอบ Merchant API มีพื้นที่ที่ปลอดภัยและแยกต่างหากเพื่อให้คุณทดสอบการผสานรวมอย่างละเอียดก่อนที่จะนําไปใช้ในสภาพแวดล้อมที่ใช้งานจริง การใช้บัญชีทดสอบใน Sandbox ช่วยให้คุณทดลองใช้การเรียก 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

การเรียกที่สำเร็จจะแสดงผลทรัพยากร Account ซึ่งมี 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 อื่นไม่ได้
  • ไม่ต้องลงทะเบียนสำหรับบัญชีทดสอบ: คุณไม่สามารถลงทะเบียนสำหรับบัญชีทดสอบได้

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

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

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