Merchant API에서 고급 계정은 다른 계정과 하위 계정 관계를 가질 수 있습니다. 하위 계정은 여러 국가에서 운영하는 소매업체와 같이 여러 판매자와 대규모 도메인을 관리하는 비즈니스에 도움이 됩니다. 고급 계정을 사용할 수 있는 비즈니스 유형은 고급 계정 설정에 액세스할 수 있는 자격 요건을 충족하는 회사를 참고하세요.
Merchant Accounts API를 사용하여 고급 계정에서 새 하위 계정을 만들 수 있습니다. 이 전화를 걸려면 기존 고급 계정이 있어야 합니다. Merchant API를 사용하여 계정의 기존 독립형 판매자 계정을 이전할 수는 없습니다.
판매자 센터 계정을 고급 계정으로 전환하려면 계정 관리자여야 합니다. 계정에 대기 중인 문제가 없는지도 확인해야 합니다. 고급 계정을 받는 방법에 대한 자세한 내용은 고급 계정 설정 요청을 참고하세요.
서드 파티 제공업체는 Merchant Accounts API를 사용하여 판매자가 계정 세부정보를 만들고 관리할 수 있는 인터페이스를 개발할 수 있습니다.
하위 계정 만들기
고급 계정에서 새 하위 계정을 만들려면 accounts.createAndConfigure
를 호출합니다.
account
필드에 하위 계정의 세부정보를 입력합니다.users
필드에 새 승인된 사용자를 지정합니다. 사용자 액세스 권한도 상위 계정에서 상속됩니다.service
필드에accountAggregation
를 지정합니다.다음은 하위 계정의 애그리게이터인 계정
account/123
아래에 하위 계정을 만드는 예입니다.POST https://merchantapi.googleapis.com/accounts/v1beta/accounts:createAndConfigure { "account": { "accountName": "merchantStore", "adultContent": false, "timeZone": { "id": "America/New_York", } "languageCode": "en-US", }, "service": [ { "accountAggregation": {}, "provider": "providers/123" } ] }
다음 샘플은 CreateAndConfigureAccountRequest
패키지를 사용하여 새 하위 계정을 만드는 방법을 보여줍니다.
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.shopping.merchant.accounts.v1beta.Account;
import com.google.shopping.merchant.accounts.v1beta.AccountAggregation;
import com.google.shopping.merchant.accounts.v1beta.AccountsServiceClient;
import com.google.shopping.merchant.accounts.v1beta.AccountsServiceSettings;
import com.google.shopping.merchant.accounts.v1beta.CreateAndConfigureAccountRequest;
import com.google.shopping.merchant.accounts.v1beta.CreateAndConfigureAccountRequest.AddAccountService;
import com.google.type.TimeZone;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/** This class demonstrates how to create a sub-account under an MCA account. */
public class CreateSubAccountSample {
private static String getParent(String accountId) {
return String.format("accounts/%s", accountId);
}
public static void createSubAccount(Config config) 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();
// Creates parent/provider to identify the MCA account into which to insert the subaccount.
String parent = getParent(config.getAccountId().toString());
// Calls the API and catches and prints any network failures/errors.
try (AccountsServiceClient accountsServiceClient =
AccountsServiceClient.create(accountsServiceSettings)) {
CreateAndConfigureAccountRequest request =
CreateAndConfigureAccountRequest.newBuilder()
.setAccount(
Account.newBuilder()
.setAccountName("Demo Business")
.setAdultContent(false)
.setTimeZone(TimeZone.newBuilder().setId("America/New_York").build())
.setLanguageCode("en-US")
.build())
.addService(
AddAccountService.newBuilder()
.setProvider(parent)
.setAccountAggregation(AccountAggregation.getDefaultInstance())
.build())
.build();
System.out.println("Sending Create SubAccount request");
Account response = accountsServiceClient.createAndConfigureAccount(request);
System.out.println("Inserted Account Name below");
// Format: `accounts/{account}
System.out.println(response.getName());
} catch (Exception e) {
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
createSubAccount(config);
}
}
하위 계정 검색
지정된 멀티 클라이언트 계정의 모든 하위 계정을 나열하려면 accounts.listSubaccounts
메서드를 사용합니다.
다음은 샘플 요청입니다.
GET https://merchantapi.googleapis.com/accounts/v1beta/accounts/{ACCOUNT_ID} :listSubaccounts
다음은 호출에 성공했을 때의 샘플 응답입니다.
{
"accounts": [
{
"name": "accounts/{ACCOUNT_ID} ",
"accountId": "{ACCOUNT_ID} ",
"accountName": "{ACCOUNT_NAME} ",
"timeZone": {
"id": "America/Los_Angeles"
},
"languageCode": "en-US"
},
{
"name": "accounts/{ACCOUNT_ID} ",
"accountId": "{ACCOUNT_ID} ",
"accountName": "{ACCOUNT_NAME} ",
"timeZone": {
"id": "America/Los_Angeles"
},
"languageCode": "en-US"
}
]
}
하위 계정 삭제하기
하위 계정을 삭제하려면 accounts.delete
메서드를 사용합니다. 이 메서드를 실행하려면 관리자 액세스 권한이 필요합니다.
다음은 샘플 요청입니다.
DELETE https://merchantapi.googleapis.com/accounts/v1beta/accounts/{ACCOUNT_ID}
성공하면 응답 본문은 빈 JSON 객체입니다.
서비스 약관 동의
하위 계정은 상위 계정에서 서명한 판매자 센터 서비스 약관(TOS)을 상속합니다.
비즈니스 정보 업데이트
Merchant Accounts API를 사용하여 비즈니스 정보를 수정할 수 있습니다.
- 비즈니스 정보를 보려면
accounts.getBusinessInfo
를 호출합니다. - 비즈니스 정보를 수정하려면
accounts.updateBusinessInfo
를 호출합니다.