- There are two ways for partners to start a subscription on behalf of their customer. Both ways require an authorization by the end user using OAuth 2.0 and they differ on how Google will charge the partner.
- Create: Create a subscription for the user. The created subscription is associated with the end user inferred from the end user credentials.
- Provision and Entitle: First provision a subscription for the user without a Google account. Follow up by Entitle on a provisioned subscription which is associated with the end user inferred from the end user credentials.
- Billing cycle : the billing cycle starts upon Create (activation of subscription) or Provision (purchase of subscription)
- User Authorized Requests : Starting Subscription (Create or Entitle) requires User Authorization by an authenticated User. Google uses OAuth 2.0 to authorize requests.
If grace period is enabled for the product, subscriptions enter grace period at the end of billing cycle if it’s not authorized by partner for charge (or) not manually extended.
During this grace period, users won't lose access to your current subscription plan and continue to use the Google service.
When subscription has not been extended and the current billing cycle ends, subscriptions can be put into a grace period.
- Extending the subscription during the grace period will put the subscription back to active status.
- If subscription is not extended during the grace period, it will automatically get canceled at the end of the grace period.
In the event the partner rejects authorizeCharge during recurrence, subscription will be moved to grace period.
- Google would attempt to retry authorizeCharge every 24 hours until the grace period ends.
- If the partner approves a retry attempt of authorizeCharge during the grace period, the subscription moves back to the active state.
- If the partner rejects all the retry attempts of authorizeCharge, the subscription will get canceled at the end of the grace period.
- Upgrade/Downgrade : At any time during the subscription, partner can upgrade or downgrade to a new Google service plan using Create or Provision (API Guide)
- Modifying subscriptions requires User Authorization and the request must include an authorization token
- Billing Adjustments : There are 2 options to handle billing cycle (BillingCycleSpec) when modifying the subscription and both will initiate a prorated refund based on the remaining days on the current billing cycle
- Start a new billing cycle with a full charge on the new subscription.
- Align with the previous subscription with a prorated charge on the first month of the new subscription.
Add-ons to existing Subscription
- Currently, you can only purchase add-ons to subscriptions on Google's surface.
- If the partner is opted into outbound authorization
- A synchronous outbound auth will be issued to partners to authorize the purchase of add-on. The end user will see an error in the purchase flow if the request is not authorized.
- Once the partner authorizes the purchase of add-on google will issue another asynchronous outbound auth before proceeding for a prorated charge, this can happen immediately after authorize add-on call or when the add-on free trial ends if applicable. The addon will be deactivated if the authorize charge is not rejected. Google will retry until a valid response is received.
- The first charge for the add-on will be prorated to align with the billing cycle of the base subscription. After that, all subscription line items will be billed together.
- Partners can listen to the Pub/Sub notification from Google for such events and take appropriate action to reflect the change in their own systems.
- Regular Cancelation (cancel): The subscription is canceled at the end of the billing cycle and the consumer retains their subscription until the end of the billing cycle. There are no refunds or grace periods for the subscription.
- Immediate Cancelation: The subscription is canceled immediately
- UndoCancel : Used by partners to revoke the pending cancellation of a subscription, which is currently in STATE_CANCEL_AT_END_OF_CYCLE state
- Once subscription is canceled, it can not be reinstated to an active subscription.
Canceling from Google
- There are few cases where users can remove a Google service. e.g. Delete Google Account, Delete a Google subscription.
- Partners must listen to the Pub/Sub notification from Google for such events and take appropriate action (e.g: Remove Google One service and notify customers. Stop billing).
- Partners are able to verify the status of the subscriptions via using the get API to help troubleshoot technical issues.
- Subject to the commercial alignments, partners can offer promotions (e.g. Free trial, Introductory pricing) when creating a new subscription for the users.
- Google may check for eligibility on the account level, both Google Account and Partner User Token (identifier of the end-user in partner's system).
- To find the eligible promotions or evaluate eligibility of a user's Google account, partner can use FindEligible with User Authorized Requests.