Di Merchant API, akun tingkat lanjut dapat memiliki hubungan sub-akun dengan akun lain. Sub-akun membantu bisnis yang mengelola beberapa penjual dan domain skala besar, seperti retailer yang beroperasi di beberapa negara. Untuk mengetahui jenis bisnis yang memenuhi syarat untuk akun tingkat lanjut, lihat Perusahaan yang memenuhi syarat untuk mengakses setelan akun tingkat lanjut.
Anda dapat menggunakan Merchant Accounts API untuk membuat sub-akun baru di akun lanjutan. Anda harus memiliki akun lanjutan yang sudah ada untuk melakukan panggilan ini. Anda tidak dapat menggunakan Merchant API untuk memindahkan akun penjual mandiri yang sudah ada di akun Anda.
Untuk mengonversi akun Merchant Center menjadi akun tingkat lanjut, Anda harus menjadi administrator akun. Anda juga harus memastikan bahwa akun Anda tidak memiliki masalah yang tertunda. Untuk mengetahui informasi tentang cara mendapatkan akun tingkat lanjut, lihat Meminta penyiapan akun tingkat lanjut.
Penyedia pihak ketiga dapat menggunakan Merchant Accounts API untuk mengembangkan antarmuka yang memungkinkan penjual membuat dan mengelola detail akun mereka.
Membuat sub-akun
Untuk membuat sub-akun baru di akun tingkat lanjut, panggil
accounts.createAndConfigure
:
- Berikan detail sub-akun di kolom
account
. - Tentukan pengguna baru yang diberi otorisasi di kolom
users
. Akses pengguna juga diwarisi dari akun induk. Tentukan
accountAggregation
di kolomservice
.Berikut adalah contoh untuk membuat sub-akun di akun
account/123
, yang adalah agregator untuk sub-akun: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" } ] }
Contoh berikut menunjukkan cara menggunakan paket
CreateAndConfigureAccountRequest
untuk
membuat sub-akun baru.
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);
}
}
Mengambil sub-akun
Untuk mencantumkan semua sub-akun untuk akun multiklien tertentu, gunakan metode
accounts.listSubaccounts
.
Berikut adalah contoh permintaan:
GET https://merchantapi.googleapis.com/accounts/v1beta/accounts/{ACCOUNT_ID}:listSubaccounts
Berikut adalah contoh respons dari panggilan yang berhasil:
{
"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"
}
]
}
Menghapus sub-akun
Untuk menghapus sub-akun, gunakan metode
accounts.delete
. Untuk menjalankan metode ini, Anda memerlukan akses administrator.
Berikut adalah contoh permintaan:
DELETE https://merchantapi.googleapis.com/accounts/v1beta/accounts/{ACCOUNT_ID}
Jika berhasil, isi respons adalah objek JSON kosong.
Setujui Persyaratan Layanan
Sub-akun mewarisi Persyaratan Layanan (TOS) Merchant Center yang ditandatangani akun induk.
Memperbarui informasi bisnis Anda
Anda dapat menggunakan Merchant Accounts API untuk mengedit informasi bisnis.
- Untuk melihat informasi bisnis Anda, panggil
accounts.getBusinessInfo
. - Untuk mengedit informasi bisnis, panggil
accounts.updateBusinessInfo
.