Transfer locations

  • The My Business Account Management API allows transferring business locations between different accounts or location groups, provided the caller has ownership and the recipient is at least a manager.

  • To transfer a location, you'll need the source and destination account details, along with OAuth2 tokens for both accounts to authorize the API calls.

  • The transfer process involves adding the destination account as an owner, then using the API to execute the transfer, ensuring the destination account becomes the primary owner.

  • Locations can be transferred to location groups within an organization by inviting the location group as an admin and accepting the invitation.

  • After a successful transfer, the location will be listed under the destination account and no longer accessible by the source account.

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.

Get started

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 location.
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.

Transfer Locations

To transfer locations, complete the following steps:

  1. 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.create and invite a user to own the listing. Then, use the invited user’s OAuth credentials to call accounts.invitations.list to obtain the invitation id. Call accounts.invitations.accept to accept this invitation.

  2. 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.create call or the accounts.invitations.list call in step 1 can also be used as the account ID. This account ID can refer to a personal account or a location group.

  3. 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 locations.transfer.

Use the destination account’s OAuth credentials to call accounts.locations.list and 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.

Transfer to a location group

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.