With the My Business Account Management API, you can transfer locations to different accounts or location groups. Follow the instructions in this documentation to learn how.
The following items are required to transfer locations:
Source account: The source account is the account that's an owner of the
location. This account can be a personal account or a location group. After
the transfer is complete the source account no longer has access to the
Destination account: The destination account is the account that the location should be transferred to. This account can be a personal account or a location group. After the transfer is complete, the destination account is the primary owner of the location.
OAuth2 refresh/access tokens: The OAuth2 refresh/access tokens for the source and destination accounts are needed for each account in order to call the API.
To transfer locations, complete the following steps:
If you're not an owner of the location, you must become one. Use the current business owner’s OAuth credentials to call
account.admins.createand invite a user to own the listing. Then, use the invited user’s OAuth credentials to call
accounts.invitations.listto obtain the invitation id. Call
accounts.invitations.acceptto accept this invitation.
Use the intended destination account’s OAuth credentials to call
accounts.list. Then, find the account ID in the list that you want to transfer the location to. The admin ID in the response to the
account.admins.createcall or the
accounts.invitations.listcall in step 1 can also be used as the account ID. This account ID can refer to a personal account or a location group.
Use the account ID that you retrieved in step 2 as the destination account. This is the destinationAccount field in the request body, which you can use to call
Use the destination account’s OAuth credentials to call
verify that the transferred location appears in the results. If you call the
accounts.locations.list endpoint with the source account, the transferred
location isn't included in the results.
To transfer a location to a
location group in the organization, call
locations.admins.create using the
merchant OAuth credentials. Use the
account field in the
Admin resource to pass the
location group account ID along with the appropriate
role. You should use the
location group admin credentials to call
accounts.invitations.list using the location group's account ID as the
parent argument to retrieve invitations related to the
location group. Find the invitation that has the correct target location, and then call
accounts.invitations.accept to accept the correct invitation.