Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

R-1.3 Add Google Ads invite acceptance flow to the setup flow #2262

Closed
Tracked by #2215
joemcgill opened this issue Feb 19, 2024 · 1 comment · Fixed by #2270
Closed
Tracked by #2215

R-1.3 Add Google Ads invite acceptance flow to the setup flow #2262

joemcgill opened this issue Feb 19, 2024 · 1 comment · Fixed by #2270
Assignees

Comments

@joemcgill
Copy link
Collaborator

Overview

As a GL&A customer setting up a new Ads account during the setup process, I want to be directed to immediately accept the newly created account so that I can complete the setup process and connect the Ads account to an MC account.

When creating a new Ads account, after completing the terms & conditions modal, present a second modal that instructs the user to accept their account. Clicking the CTA on this modal will open a new window with the URL for accepting the account invite. Until the account invite is accepted, the Google Ads Account Card will show a notice message with instructions for accepting the invite. The user will not be able to move on to step 2 of the setup process until we've confirmed that the Ads account is accepted. Once we've confirmed that the invite is accepted, complete the conversion action and attempt to link an existing MC account if there is one.

⚠ Step 1 of the onboarding flow cannot be completed until we've confirmed that the Ads account is accepted.

Details

Image
Mocks showing user journey from accepting Ads ToS, to Ads Claim Modal, to GAFE Pop-up

Ads Account Claim Modal

This modal should explain to the user:

  • That they will be redirected to GAFE to accept their claim
  • That they must accept this claim within 20 days to access their account
  • That claiming their account will trigger conversion tracking setup
  • That their account is required to continue with Google Listings & Ads Onboarding
  • That they will be presented with billing setup, but they do not need to complete billing at this time

Example screenshot
Accept Invite Modal

Sample Copy:
Title:
Accept invitation to claim your Google Ads account

Subtitle:
Your new Google Ads Account has been created! Accept the invitation to access your account and continue onboarding

Body 1:
Claiming your account is easy! Simply click “Accept Invitation” below, then click “Continue” in the pop-up screen with the invitation. This will give you access to your new account, and will allow us to automatically set-up conversion tracking for you.

Body 2:
This step is required to continue setting up Google Listings & Ads. If you do not claim access to your account in 20 days, your invite will expire and you will no longer be able to access your newly created account.

Body 3:
Once you have accepted the claim, you will also be directed to set-up billing. While billing setup is required for creating campaigns, you do not need to complete this step at this time and may close the pop-up after clicking “Continue” to claim your account.

CTA behavior
When the user chooses to Accept Invitation, they should be presented with a pop-up (https://ads.google.com/nav/startacceptinvite?ivid=&ocid=&eivid=), where they can accept the claim invite. Once that invite is accepted, we should kick off the conversion action & MC to Ads Link actions (if MC has already been connected), exit the Claim your Google Ads Account Modal

Google Ads Account Card

Pending acceptance
While waiting for confirmation that the account has been accepted, the ads connection modal should be updated to show the new account, and provide the user with a button to claim their account.

Image
Mock of Ads Account Connection Module if user closes Ads Claim Modal without accepting their invite.

Copy:
Your new ads account has been created, but you do not have access to it yet. Claim your new ads account to automatically configure conversion tracking and configure onboarding

Acceptance Confirmed
Once that invite is accepted, we should kick off the conversion action & MC to Ads Link actions (if MC has already been connected), exit the Claim your Google Ads Account Modal

Billing Setup

The user should still be directed to set-up billing in Step 4 (if it is not completed earlier)
We should check in Step 4 if billing was already completed, if it was, we can skip that in Step 4, if they have not we keep the behavior the same, but instead of using the “Accept Invite” link, we link them directly to the billing Sign-up Page

Implementation notes

  • Create a new endpoint like /wp-json/wc/gla/ads/account-status that we can poll to determine if the account has been accepted. It can also catch any errors and send a 428 until we are able to access the account.
  • The new account-status endpoint could use API/Google/Ads::has_access to determine if we have access to the account.
  • An example of opening a new window for a GAFE pop-up can be seen in the BillingSetupCard component at /js/src/components/paid-ads/billing-card/billing-setup-card.js. see the handleClick() function in that component.
  • The create_ads_account() method of the middleware class in /src/API/Google/Middleware.php stores the invite URL that is returned with the invitation link and stored to the OptionsInterface::ADS_BILLING_URL option. This is the URL that we want to use for accepting the invite.
  • For the connect ads account steps we'll need to add an additional one and reorder the existing steps. So we'll end up with [ 'set_id', 'account_access', 'conversion_action', 'link_merchant', 'billing' ]
  • account_access can be optional only when a new account has been created, but probably won't be harmful if double checked for any account
  • link_merchant step is optional, and will only be completed if the MC account is already setup. Otherwise, account linking will happen during the MC setup process.
  • billing should still work as is, the only change we'll need there is if the invitationLink has already been used then we need to direct them directly to complete billing with the link https://ads.google.com/aw/signup/payment?ocid={internal_ads_id}
  • The OCID is only available in the first invitationLink so we'll need to extract it from there or update the create_ads_account method referenced above to add a new option for storing the OCID value separately from the current billing URL saved in that step.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants