Modifier l’état de facturation de l’abonnement d’un utilisateur
Utilisez cette méthode dans l’API d’achat du Microsoft Store pour modifier l’état de facturation d’un module complémentaire d’abonnement pour un utilisateur donné. Vous pouvez annuler, étendre, rembourser ou désactiver le renouvellement automatique pour un abonnement.
Remarque
Cette méthode peut uniquement être utilisée par les comptes de développeur qui ont été provisionnés par Microsoft pour pouvoir créer des modules complémentaires d’abonnement pour les applications plateforme Windows universelle (UWP). Les modules complémentaires d’abonnement ne sont actuellement pas disponibles pour la plupart des comptes de développeur.
La bibliothèque Microsoft.StoreServices fournit les fonctionnalités de cette méthode via l’API StoreServicesClient.RecurrenceChangeAysnc.
Prérequis
Pour utiliser cette méthode, vous aurez besoin des éléments suivants :
- Jeton d’accès Azure AD qui a la valeur
https://onestore.microsoft.com
de l’URI d’audience . - Clé d’ID du Microsoft Store qui représente l’identité de l’utilisateur disposant d’un droit à l’abonnement que vous souhaitez modifier.
Pour plus d’informations, consultez Gérer les droits de produit à partir d’un service.
Requête
Syntaxe de la requête
Méthode | URI de demande |
---|---|
POST | https://purchase.mp.microsoft.com/v8.0/b2b/recurrences/{recurrenceId}/change |
En-tête de requête
En-tête | Type | Description |
---|---|---|
Autorisation | string | Obligatoire. Jeton d’accès Azure AD au format porteur<jeton>. |
Host | string | Doit être défini sur la valeur purchase.mp.microsoft.com. |
Longueur-contenu | nombre | Longueur du corps de la demande. |
Content-Type | string | Spécifie le type de demande et de réponse. Actuellement, la seule valeur prise en charge est application/json. |
Paramètres de la demande
Nom | Type | Description | Obligatoire |
---|---|---|---|
recurrenceId | string | ID de l’abonnement que vous souhaitez modifier. Pour obtenir cet ID, appelez les abonnements Get pour une méthode utilisateur , identifiez l’entrée du corps de la réponse qui représente le module complémentaire d’abonnement que vous souhaitez modifier et utilisez la valeur du champ ID pour l’entrée. | Oui |
Corps de la demande
Champ | Type | Description | Obligatoire |
---|---|---|---|
b2bKey | string | Clé d’ID du Microsoft Store qui représente l’identité de l’utilisateur dont vous souhaitez modifier l’abonnement. | Oui |
changeType | string | Une des chaînes suivantes qui identifie le type de modification que vous souhaitez effectuer :
|
Oui |
extensionTimeInDays | string | Si le paramètre changeType a la valeur Extend, ce paramètre spécifie le nombre de jours pour étendre l’abonnement. | Oui, si changeType a la valeur Extend ; sinon, non. |
Exemple de requête
L’exemple suivant montre comment utiliser cette méthode pour étendre la période d’abonnement de 5 jours. Remplacez la valeur b2bKey par la clé d’ID du Microsoft Store qui représente l’identité de l’utilisateur dont vous souhaitez modifier l’abonnement.
POST https://purchase.mp.microsoft.com/v8.0/b2b/recurrences/mdr:0:bc0cb6960acd4515a0e1d638192d77b7:77d5ebee-0310-4d23-b204-83e8613baaac/change HTTP/1.1
Authorization: Bearer <your access token>
Content-Type: application/json
Host: https://purchase.mp.microsoft.com
{
"b2bKey": "eyJ0eXAiOiJ...",
"changeType": "Extend",
"extensionTimeInDays": "5"
}
Response
Cette méthode retourne un corps de réponse JSON qui contient des informations sur le module complémentaire d’abonnement modifié, y compris les champs qui ont été modifiés. L’exemple suivant illustre un corps de réponse pour cette méthode.
{
"items": [
{
"autoRenew":true,
"beneficiary":"pub:gFVuEBiZHPXonkYvtdOi+tLE2h4g2Ss0ZId0RQOwzDg=",
"expirationTime":"2017-06-16T03:07:49.2552941+00:00",
"id":"mdr:0:bc0cb6960acd4515a0e1d638192d77b7:77d5ebee-0310-4d23-b204-83e8613baaac",
"lastModified":"2017-01-10T21:08:13.1459644+00:00",
"market":"US",
"productId":"9NBLGGH52Q8X",
"skuId":"0024",
"startTime":"2017-01-10T21:07:49.2552941+00:00",
"recurrenceState":"Active"
}
]
}
Corps de réponse
Le corps de la réponse contient les données suivantes.
Valeur | Type | Description |
---|---|---|
autoRenew | Boolean | Indique si l’abonnement est configuré pour renouveler automatiquement à la fin de la période d’abonnement en cours. |
bénéficiaire | string | ID du bénéficiaire du droit associé à cet abonnement. |
expirationTime | string | La date et l’heure d’expiration de l’abonnement, au format ISO 8601. Ce champ n’est disponible que lorsque l’abonnement se trouve dans certains états. L’heure d’expiration indique généralement à quel moment l’état actuel expire. Par exemple, pour un abonnement actif, la date d’expiration indique quand le prochain renouvellement automatique se produit. |
expirationTimeWithGrace | string | La date et l’heure auxquelles l’abonnement expire, y compris la période de grâce, au format ISO 8601. Cette valeur indique quand l’utilisateur perd l’accès à l’abonnement après l’échec du renouvellement automatique de l’abonnement. |
id | string | ID de l'abonnement. Utilisez cette valeur pour indiquer l’abonnement que vous souhaitez modifier lorsque vous appelez le changement de l’état de facturation d’un abonnement pour une méthode utilisateur . |
isTrial | Boolean | Indique si l’abonnement est un essai. |
lastModified | string | Date et heure de la dernière modification de l’abonnement au format ISO 8601. |
market | string | Code de pays (au format ISO 3166-1 alpha-2 à deux lettres) dans lequel l’utilisateur a acquis l’abonnement. |
productId | string | ID Store du produit qui représente le module complémentaire d’abonnement dans le catalogue microsoft Store. Un exemple d’ID Store pour un produit est 9NBLGGH42CFD. |
skuId | string | ID store pour la référence SKU qui représente le module complémentaire d’abonnement dans le catalogue microsoft Store. Un exemple d’ID store pour une référence SKU est 0010. |
startTime | string | Date et heure de début de l’abonnement, au format ISO 8601. |
recurrenceState | string | Une des valeurs suivantes :
Remarque :
|
cancellationDate | string | Date et heure de l’annulation de l’abonnement de l’utilisateur, au format ISO 8601. |