In der Merchant API können erweiterte Konten eine Unterkontobeziehung zu einem anderen Konto haben. Unterkonten sind hilfreich für Unternehmen, die mehrere Verkäufer und große Domains verwalten, z. B. Einzelhändler, die in mehreren Ländern tätig sind. Welche Arten von Unternehmen für ein erweitertes Konto infrage kommen, erfahren Sie unter Unternehmen, die Zugriff auf die erweiterten Kontoeinstellungen haben.
Mit der Merchant Accounts API können Sie neue Unterkonten in Ihrem erweiterten Konto erstellen. Sie benötigen ein erweitertes Konto, um diesen Anruf zu starten. Sie können die Merchant API nicht verwenden, um vorhandene eigenständige Händlerkonten in Ihr Konto zu verschieben.
Wenn Sie Ihr Merchant Center-Konto in ein erweitertes Konto umwandeln möchten, müssen Sie Kontoadministrator sein. Außerdem dürfen in Ihrem Konto keine ausstehenden Probleme vorliegen. Informationen dazu, wie Sie ein erweitertes Konto erhalten, finden Sie unter Einrichtung eines erweiterten Kontos beantragen.
Drittanbieter können mit der Merchant Accounts API eine Benutzeroberfläche entwickeln, mit der Händler ihre Kontodetails erstellen und verwalten können.
Unterkonto erstellen
Wenn Sie ein neues Unterkonto in Ihrem erweiterten Konto erstellen möchten, rufen Sie accounts.createAndConfigure
auf:
- Geben Sie die Details des Unterkontos im Feld
account
ein. - Geben Sie alle neuen autorisierten Nutzer im Feld
users
an. Der Nutzerzugriff wird ebenfalls vom übergeordneten Konto übernommen. Geben Sie im Feld
service
die OptionaccountAggregation
an.Im folgenden Beispiel wird ein Unterkonto unter dem Konto
account/123
erstellt, das ein Aggregator für das Unterkonto ist:POST https://merchantapi.googleapis.com/accounts/v1beta/accounts:createAndConfigure { "account": { "accountName": "merchantStore", "adultContent": false, "testAccount": false, "timeZone": { "id": "America/New_York", } "languageCode": "en-US", }, "service": [ { "accountAggregation": {}, "provider": "providers/123" } ] }
Das folgende Beispiel zeigt, wie Sie mit dem Paket CreateAndConfigureAccountRequest
ein neues Unterkonto erstellen.
Java
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);
}
}
Unterkonten abrufen
Verwenden Sie die Methode accounts.listSubaccounts
, um alle Unterkonten für ein bestimmtes Mehrfachkundenkonto aufzulisten.
Hier ein Beispiel für eine Anfrage:
GET https://merchantapi.googleapis.com/accounts/v1beta/accounts/{ACCOUNT_ID}:listSubaccounts
Hier ist eine Beispielantwort für einen erfolgreichen Aufruf:
{
"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"
}
]
}
Unterkonto löschen
Wenn Sie ein untergeordnetes Konto löschen möchten, verwenden Sie die Methode accounts.delete
. Für die Ausführung dieser Methode ist Administratorzugriff erforderlich.
Hier ein Beispiel für eine Anfrage:
DELETE https://merchantapi.googleapis.com/accounts/v1beta/accounts/{ACCOUNT_ID}
Wenn der Vorgang erfolgreich abgeschlossen wurde, ist der Antworttext ein leeres JSON-Objekt.
Nutzungsbedingungen akzeptieren
Unterkonten übernehmen die Merchant Center-Nutzungsbedingungen, die für das übergeordnete Konto unterzeichnet wurden.
Informationen zum Unternehmen aktualisieren
Mit der Merchant Accounts API können Sie Ihre Unternehmensinformationen bearbeiten.
- Wenn Sie die Informationen zu Ihrem Unternehmen aufrufen möchten, rufen Sie
accounts.getBusinessInfo
auf. - Wenn Sie die Informationen zu Ihrem Unternehmen bearbeiten möchten, rufen Sie
accounts.updateBusinessInfo
an.