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 pour les 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, consultez le guide de démarrage pour plusieurs comptes de facturation Google Workspace.

Créer un droit d'accès

Avant de commencer

Vous devez configurer Customer avant de pouvoir continuer.

Pour créer un droit d'accès:

  1. Avec le nom du client, appelez listPurchasableSkus pour récupérer une liste de 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 code PurchasableSku sélectionné, utilisez la méthode queryEligibleBillingAccounts pour trouver un ensemble de BillingAccount Google Workspace pouvant être utilisé pour payer le droit d'accès.

    1. Si vous souhaitez payer dans une devise spécifique, sélectionnez un compte de facturation dans 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 valeurs PurchasableSku et BillingAccount sélectionnées, utilisez la méthode listPurchasableOffers pour trouver 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 devez disposer du compte de facturation qui paiera l'Entitlement et l'offre achetable. Commencez à créer le droit d'accès à l'aide de la méthode create.

    1. Créez un droit d'accès et renseignez l'offre, le compte de facturation et tous les autres paramètres 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 de vos droits d'accès Google Workspace

Avant de commencer

Les droits d'accès Google Workspace avec un paiement plan gratuit ou en essai ne disposent pas d'un compte de facturation Google Workspace. Pour modifier le forfait d'un droit d'accès en forfait payant, vous devez suivre quelques étapes supplémentaires pour sélectionner un compte de facturation Google Workspace.

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

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

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

    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 code produit, utilisez la méthode queryEligibleBillingAccounts pour trouver un ensemble de comptes de facturation pouvant être utilisés pour payer cet accès. Si vous souhaitez payer dans une devise spécifique, sélectionnez un compte de facturation dans 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 droits d'accès et le compte de facturation, utilisez la méthode listPurchasableOffers pour trouver une offre achetable. Le BillingAccount n'est pas nécessaire si le droit d'accès existant dispose déjà d'un forfait payant. Dans ce cas, le BillingAccount existant sera 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 des droits d'accès, de l'offre et du compte de facturation. Commencez à modifier le forfait de paiement à 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"
    }
    

Passer à une édition supérieure ou inférieure de Google Workspace

Pour mettre à niveau ou rétrograder des droits d'accès Google Workspace, 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 la mise à niveau ou la rétrogradation.

    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 le PurchasableSku, utilisez la méthode queryEligibleBillingAccounts pour trouver un ensemble de BillingAccounts 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 dans 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 l'attribut Entitlement et le compte de facturation, utilisez la méthode listPurchasableOffers pour trouver toutes les offres achetables.

      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 des éléments Entitlement, PurchasableOffer et BillingAccount. Commencez à passer à un niveau supérieur ou inférieur à l'aide de la méthode changeOffer.

    1. Créez un objet Entitlement et renseignez le nom, l'offre, le compte de facturation et les paramètres obligatoires.
       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 des droits

Cette section vous aide à transférer les droits d'accès des clients Google Workspace et Chrome existants depuis 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 d'accès existants sont automatiquement annulés avant d'être à nouveau créés sous le nouveau partenaire. Si un client dispose d'un forfait d'engagement, un nouveau terme d'engagement commencera 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 généré par le client. Contactez le client et fournissez-lui votre identifiant public de partenaire afin qu'il puisse générer un jeton de transfert. Une fois qu'il a créé un jeton, le client doit vous l'envoyer pour finaliser 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 disposez que du domaine du client, vous pouvez utiliser l'API Cloud Channel pour renvoyer son ID Cloud Identity. Appelez checkCloudIdentityAccountsExist avec le domaine du client. Si le domaine existe, l'API renvoie l'ID Cloud Identity du client.

  1. Commencez le transfert à l'aide de 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 le transferEligibility de chaque objet pour vous assurer que vous pouvez acheter le code 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 le BillingAccount à utiliser pour payer les droits d'accès. Utilisez la méthode queryEligibleBillingAccounts pour trouver un ensemble de BillingAccount pouvant être utilisé pour chaque TransferableSku.

    1. Notez que certains TransferableSkus doivent partager le même compte de facturation Google Workspace. C'est pourquoi queryEligibleBillingAccounts renvoie un groupe d'articles qui vous indique les TransferableSkus qui doivent utiliser le même BillingAccount. Si plusieurs comptes de facturation Google Workspace sont associés à un groupe de codes SKU donné, vous pouvez choisir l'un d'entre eux et l'utiliser pour tous les 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 trouver les TransferableOffers disponibles. À ce stade, vous devriez disposer de la liste des tupels 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. Chaque Entitlement nécessite une offre, un compte de facturation et 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"
    }