Gérer les droits d'accès à Google Workspace et Google Chrome

Cette page explique comment gérer les droits d'accès des clients aux produits Google Workspace et Google Chrome.

Prérequis

Avant de continuer, déterminez si votre compte revendeur dispose d'un seul compte de facturation Google Workspace ou de plusieurs comptes de facturation Google Workspace. Pour en savoir plus à ce sujet, consultez le Guide de démarrage pour la gestion de plusieurs comptes de facturation Google Workspace.

Créer un droit d'accès

Avant de commencer

Vous devez configurer Customer avant de continuer.

Pour créer un droit d'accès, procédez comme suit:

  1. Avec le nom du client, appelez listPurchasableSkus pour récupérer la liste des PurchasableSkus.

    ListPurchasableSkusRequest
    {
      "customer": "accounts/123/customers/abc",
      "createEntitlementPurchase": {
        "product": "products/-"
      }
    }
    ListPurchasableSkusResponse
    {
      "purchasableSkus": [
        {
          "sku": {
            "name": "products/product_id/skus/sku_id1",
            "product": {
              "name": "products/product_id",
            }
          }
        },
        {
          "sku": {
            "name": "products/product_id/skus/sku_id2",
            "product": {
              "name": "products/product_id",
            },
          }
        }
      ]
    }
    
  2. Avec le SKU PurchasableSku sélectionné, utilisez la méthode queryEligibleBillingAccounts pour trouver un ensemble d'objets Google Workspace BillingAccount pouvant être utilisés pour payer le droit d'accès.

    1. Si vous souhaitez payer dans une devise spécifique, sélectionnez un compte de facturation avec cette devise.
    QueryEligibleBillingAccountsRequest
    {
      "customer": "accounts/123/customers/abc",
      "skus": ["products/product_id/skus/sku_id1"]
    }
    QueryEligibleBillingAccountsResponse
    {
      "skuPurchaseGroups": [
        {
          "skus": [
            "products/product_id/skus/sku_id1"
          ],
          "billingAccountPurchaseInfos": [
            {
              "billingAccount": {
                "name": "accounts/123/billingAccounts/billing_account_id1",
                "displayName": "Google_Workspace_USD_US_1",
                "currencyCode": "USD",
                "regionCode": "US"
              }
            },
            {
              "billingAccount": {
                "name": "accounts/123/billingAccounts/billing_account_id2",
                "displayName": "Google_Workspace_CAD_CA_1",
                "currencyCode": "CAD",
                "regionCode": "CA"
              }
            }
          ]
        }
      ]
    }
    
  3. Avec les éléments AcheterchasableSku et BillingAccount sélectionnés, utilisez la méthode listPurchasableOffers pour rechercher les PurchasableOffer disponibles.

    ListPurchasableOffersRequest
    {
      "customer": "accounts/123/customers/abc",
      "createEntitlementPurchase": {
        "sku": "products/product_id/skus/sku_id1",
        "billingAccount": "accounts/123/billingAccounts/billing_account_id2"
      }
    }
    ListPurchasableOffersResponse
    {
      "purchasableOffers": [
        {
          "offer": {
            "name": "accounts/123/offers/offer_id1",
          },
          "sku": {
            "name": "products/product_id/skus/sku_id1",
          },
          "plan": {
            "paymentPlan": "FLEXIBLE",
            "paymentCycle": {
              "duration": 1,
              "periodType": "MONTH"
            }
          },
        }
      ],
    }
    
  4. À ce stade, vous devriez disposer du compte de facturation qui paiera pour Entitlement et pour AcheterchasableOffer. Commencez à créer le droit d'accès à l'aide de la méthode create.

    1. Créez un droit, puis ajoutez l'offre, le compte de facturation et tout autre paramètre requis.
    CreateEntitlementRequest
    {
      "parent": "accounts/123/customers/abc",
      "entitlement": {
        "offer": "accounts/123/offers/offer_id1",
        "maxUnits": 100,
        "billingAccount": "accounts/123/billingAccounts/billing_account_id2"
      }
    }
    CreateEntitlementResponse
    {
      "name": "operations/operation_id1"
    }
    

Modifier le forfait sur les droits d'accès à Google Workspace

Avant de commencer

Les droits d'accès à Google Workspace associés à un paiement d'essai plan ne sont pas associés à un compte de facturation Google Workspace. Pour passer d'un forfait à un forfait payant, vous devez suivre quelques étapes supplémentaires pour sélectionner un compte de facturation Google Workspace.

Pour modifier le forfait des droits d'accès à Google Workspace, procédez comme suit:

Les deux premières étapes ne sont nécessaires que si le droit existant est associé à un forfait gratuit ou d'essai.

  1. Avec l'offre, utilisez la méthode lookupOffer pour obtenir des informations sur Sku.

    LookupOfferRequest
    {
      "entitlement": "accounts/123/customers/abc/entitlements/entitlement_id1"
    }
    LookupOffer respones
    {
      "name": "accounts/123/offers/offer_id1",
      "sku": {
        "name": "products/product_id/skus/sku_id1",
       }
    }
    
  2. Avec le client et le SKU, utilisez la méthode queryÉligibleBillingAccounts pour trouver un ensemble de BillingAccount pouvant être utilisé pour payer ce droit d'accès. Si vous souhaitez payer dans une devise spécifique, sélectionnez un compte de facturation avec cette devise.

     QueryEligibleBillingAccountsRequest
     {
       "customer": "accounts/123/customers/abc",
       "skus": ["products/product_id/skus/sku_id1"]
     }
     QueryEligibleBillingAccountsResponse
     {
       "skuPurchaseGroups": [
         {
           "skus": [
             "products/product_id/skus/sku_id1"
           ],
           "billingAccountPurchaseInfos": [
             {
               "billingAccount": {
                 "name": "accounts/123/billingAccounts/billing_account_id1",
                 "displayName": "Google_Workspace_USD_US_1",
                 "currencyCode": "USD",
                 "regionCode": "US"
               }
             },
             {
               "billingAccount": {
                 "name": "accounts/123/billingAccounts/billing_account_id2",
                 "displayName": "Google_Workspace_CAD_CA_1",
                 "currencyCode": "CAD",
                 "regionCode": "CA"
               }
             }
           ]
         }
       ]
     }
     ```
    
  3. Avec le droit et le compte de facturation, utilisez la méthode listPurchasableOffers pour rechercher n'importe quelle offre pouvant être achetée. Le compte de facturation n'est pas nécessaire si le droit existant est déjà associé à un forfait payant. Dans ce cas, le compte de facturation existant est utilisé. Pour modifier le forfait, le champ "purchase_option" doit être changeOfferPurchase.

    ListPurchasableOffersRequest
    {
      "customer": "accounts/123/customers/abc",
      "changeOfferPurchase": {
        "entitlement": "accounts/123/customers/abc/entitlements/entitlement_id1",
        "billingAccount": "accounts/123/billingAccounts/billing_account_id2"
      }
    }
    ListPurchasableOffersResponse
    {
      "purchasableOffers": [
        {
          "offer": {
            "name": "accounts/123/offers/offer_id1",
          },
          "sku": {
            "name": "products/product_id/skus/sku_id1",
          },
          "plan": {
            "paymentPlan": "FLEXIBLE",
            "paymentCycle": {
              "duration": 1,
              "periodType": "MONTH"
            }
          },
        }
      ],
    }
    
  4. À ce stade, vous devriez disposer du droit d'accès, de l'offre et du compte de facturation. Commencez à modifier le forfait à l'aide de la méthode changeOffer.

    ChangeOfferRequest
    {
      "name": "accounts/abc/customers/123/entitlements/entitlement_id1",
      "offer": "accounts/abc/offers/offer_id1",
      "billing_account": "accounts/abc/billingAccounts/billing_account_id2",
      "parameters": [{
        "name": "max_units",
        "value": {
          "int64Value": "100"
        }
      }]
    }
    ChangeOfferResponse
    {
      "name": "operations/operation_id1"
    }
    

Modifier les droits d'accès à Google Workspace

Pour passer à un forfait Google Workspace supérieur ou inférieur, procédez comme suit:

  1. Avec le droit d'accès, appelez la méthode listPurchasableSkus pour récupérer une liste de SKU pouvant être utilisés pour passer à un niveau supérieur ou inférieur.

    ListPurchasableSkusRequest
    {
      "customer": "accounts/123/customers/abc",
      "changeOfferPurchase": {
        "entitlement": "accounts/123/customers/abc/entitlements/entitlement_id1",
        "changeType": "UPGRADE"
      }
    }
    ListPurchasableSkusResponse
    {
      "purchasableSkus": [
        {
          "sku": {
            "name": "products/product_id/skus/sku_id1",
            "product": {
              "name": "products/product_id",
            }
          }
        },
        {
          "sku": {
            "name": "products/product_id/skus/sku_id2",
            "product": {
              "name": "products/product_id",
            },
          }
        }
      ]
    }
    
  2. Avec PurchasableSku, utilisez la méthode queryEligibleBillingAccounts pour trouver un ensemble de comptes de facturation pouvant être utilisés pour payer le droit d'accès.

    1. Si vous souhaitez payer dans une devise spécifique, sélectionnez un compte de facturation avec cette devise.
     QueryEligibleBillingAccountsRequest
     {
       "customer": "accounts/123/customers/abc",
       "skus": ["products/product_id/skus/sku_id1"]
     }
     QueryEligibleBillingAccountsResponse
     {
       "skuPurchaseGroups": [
         {
           "skus": [
             "products/product_id/skus/sku_id1"
           ],
           "billingAccountPurchaseInfos": [
             {
               "billingAccount": {
                 "name": "accounts/123/billingAccounts/billing_account_id1",
                 "displayName": "Google_Workspace_USD_US_1",
                 "currencyCode": "USD",
                 "regionCode": "US"
               }
             },
             {
               "billingAccount": {
                 "name": "accounts/123/billingAccounts/billing_account_id2",
                 "displayName": "Google_Workspace_CAD_CA_1",
                 "currencyCode": "CAD",
                 "regionCode": "CA"
               }
             }
           ]
         }
       ]
     }
     ```
    
  3. Avec le droit et le compte de facturation, utilisez la méthode listPurchasableOffers pour rechercher n'importe quelle offre pouvant être achetée.

      ListPurchasableOffersRequest
      {
        "customer": "accounts/123/customers/abc",
        "changeOfferPurchase": {
          "entitlement": "accounts/123/customers/abc/entitlements/entitlement_id1",
          "billingAccount": "accounts/123/billingAccounts/billing_account_id2"
        }
      }
      ListPurchasableOffersResponse
      {
        "purchasableOffers": [
          {
            "offer": {
              "name": "accounts/123/offers/offer_id1",
            },
            "sku": {
              "name": "products/product_id/skus/sku_id1",
            },
            "plan": {
              "paymentPlan": "FLEXIBLE",
              "paymentCycle": {
                "duration": 1,
                "periodType": "MONTH"
              }
            },
          }
        ],
      }
      ```
    
  4. À ce stade, vous devriez disposer du droit d'accès, de l'offre PurchasableOffer et du compte de facturation. Commencez la mise à niveau ou la rétrogradation à l'aide de la méthode changeOffer.

    1. Créez un objet Entitlement et renseignez le nom, l'offre, le compte de facturation et tous les paramètres requis.
       ChangeOfferRequest
       {
         "name": "accounts/abc/customers/123/entitlements/entitlement_id1",
         "offer": "accounts/abc/offers/offer_id1",
         "billing_account": "accounts/abc/billingAccounts/billing_account_id2",
         "parameters": [{
           "name": "max_units",
           "value": {
             "int64Value": "100"
           }
         }]
       }
       ChangeOfferResponse
       {
         "name": "operations/operation_id1"
       }
       ```
    

Transférer les droits d'accès

Cette section vous aide à transférer les droits d'accès des clients Google Workspace et Chrome existants de leur ancien partenaire.

Pour savoir comment transférer des clients dans la Partner Sales Console, consultez nos guides sur le transfert de clients vers un compte partenaire ou un compte Google.

Les clients Google Workspace ne peuvent acheter des droits d'accès qu'auprès d'un seul partenaire ou d'un seul partenaire et de Google.

Lors du transfert, les droits existants sont automatiquement annulés avant d'être créés à nouveau sous le nouveau partenaire. Si un client dispose de droits d'accès au forfait avec engagement, une nouvelle période d'engagement débutera après le transfert.

Avant de commencer

Pour gérer les droits d'accès d'un client, vous avez besoin d'un jeton de transfert qu'il génère. Contactez le client et indiquez votre identifiant public de partenaire pour qu'il puisse générer un jeton de transfert. Une fois le jeton créé, le client doit vous renvoyer son jeton de transfert pour terminer le processus. Ces jetons expirent 14 jours après leur création. Vous avez également besoin du domaine ou de l'ID Cloud Identity du client.

Lorsque le client crée son jeton de transfert, il sélectionne les droits d'accès qu'il souhaite transférer à son nouveau revendeur. Vous devez transférer tous les droits d'accès sélectionnés au cours du processus.

Pour transférer des droits d'accès, procédez comme suit:

Si vous ne possédez que le domaine du client, vous pouvez utiliser l'API Cloud Channel pour renvoyer son ID Cloud Identity. Appelez checkCloudIdentityAccountsExist avec le domaine du client et, si le domaine existe, l'API renvoie l'ID Cloud Identity du client.

  1. Commencez le transfert en utilisant la méthode customers.import pour importer les données du client.

    ImportCustomerRequest
    {
      "parent": "accounts/abc",
      "domain": "domain"
    }
    
  2. Avec l'ID Cloud Identity du client, appelez listTransferableSkus pour récupérer la liste des transferableSku du client. Vérifiez la transferEligibility de chaque objet pour vous assurer que vous pouvez acheter le SKU associé.

    ListTransferableSkusRequest
    {
      "parent": "accounts/abc",
      "cloudIdentityId": "cloud_identity_id"
    }
    ListTransferableSkusResponse
    {
      "transferableSku": [
        {
          "sku": {
               "name": "products/product_id/skus/voice_sku_id1",
          },
        },
        {
          "sku": {
               "name": "products/product_id/skus/google_workspace_sku_id2",
          },
        },
        {
          "sku": {
               "name": "products/product_id/skus/google_workspace_chrome_sku_id3",
          },
        }
      ],
    }
    
  3. Maintenant que vous disposez d'une liste de TransferableSkus, vous devez déterminer quel compte de facturation utiliser pour payer les droits d'accès. Utilisez la méthode queryEligibleBillingAccounts pour rechercher un ensemble de comptes de facturation pouvant être utilisés pour chaque SKU TransferableSku.

    1. Notez que certains SKU TransferableSku doivent partager le même compte de facturation Google Workspace. C'est pourquoi queryEligibleBillingAccounts renvoie un groupe de SKU qui vous indique quels SKU TransferableSku doivent utiliser le même compte de facturation. S'il existe plusieurs comptes de facturation Google Workspace pour un groupe de SKU donné, vous pouvez choisir un compte de facturation Google Workspace et l'utiliser pour chaque SKU TransferableSku du groupe.
    QueryEligibleBillingAccountsRequest
    {
      "customer": "accounts/123/customers/abc",
      "skus": ["products/product_id/skus/voice_sku_id1","products/product_id/skus/google_workspace_sku_id2","google_workspace_chrome_sku_id3"]
    }
    QueryEligibleBillingAccountsResponse
     {
       "skuPurchaseGroups": [
         {
           "skus": [
             "products/product_id/skus/voice_sku_id1"
           ],
           "billingAccountPurchaseInfos": [
             {
               "billingAccount": {
                 "name": "accounts/123/billingAccounts/voice_billing_account_id1",
                 "displayName": "Google_Workspace_Voice_USD_US_1",
                 "currencyCode": "USD",
                 "regionCode": "US"
               }
             }
           ]
         },
         {
           "skus": [
             "products/product_id/skus/google_workspace_sku_id2","google_workspace_chrome_sku_id3"
           ],
           "billingAccountPurchaseInfos": [
             {
               "billingAccount": {
                 "name": "accounts/123/billingAccounts/gw_billing_account_id1",
                 "displayName": "Google_Workspace_USD_US_1",
                 "currencyCode": "USD",
                 "regionCode": "US"
               }
             },
             {
               "billingAccount": {
                 "name": "accounts/123/billingAccounts/gw_billing_account_id2",
                 "displayName": "Google_Workspace_CAD_CA_1",
                 "currencyCode": "CAD",
                 "regionCode": "CA"
               }
             }
           ]
         }
       ]
     }
     ```
    
  4. Pour chaque paire TransferableSku et BillingAccount, utilisez la méthode listTransferableOffers pour rechercher les TransferableOffers disponibles. À ce stade, vous devriez disposer de la liste des tuples du client, composée de TransferableSku, BillingAccounts et TransferableOffer.

    ListTransferableOffersRequest
    {
      "parent": "accounts/abc",
      "cloudIdentityId": "cloud_identity_id",
      "sku": "products/product_id/skus/voice_sku_id1",
      "billingAccount": "ccounts/123/billingAccounts/voice_billing_account_id1"
    }
    ListTransferableOffersResponse
       {
         "transferableOffers": [
           {
             "offer": {
               "name": "accounts/123/offers/voice_offer_id1",
             },
             "sku": {
               "name": "products/product_id/skus/voice_sku_id1",
             },
             "plan": {
               "paymentPlan": "FLEXIBLE",
               "paymentCycle": {
                 "duration": 1,
                 "periodType": "MONTH"
               }
             },
           }
         ],
       }
    
  5. Pour chaque tuple, créez un objet Entitlement correspondant, et chaque droit nécessite une offre, un compte de facturation et tous les paramètres requis. Appelez la méthode transferEntitlements pour effectuer le transfert.

    TransferEntitlementsRequest
    {
      "parent": "accounts/abc/customers/123",
      "entitlements": [
        {
          "offer": "accounts/123/offers/voice_offer_id1",
          "maxUnits": 100,
          "billingAccount": "accounts/123/billingAccounts/voice_billing_account_id1"
        },
        {
          "offer": "accounts/123/offers/gw_offer_id2",
          "maxUnits": 150,
          "billingAccount": "accounts/123/billingAccounts/gw_billing_account_id1"
        }
        {
          "offer": "accounts/123/offers/gw_chrome_offer_id3",
          "maxUnits": 200,
          "billingAccount": "accounts/123/billingAccounts/gw_billing_account_id1"
        }
      ]
    }
    TransferEntitlementsResponse
    {
      "name": "operations/operation_id1"
    }