Modificare il ciclo di fatturazione dell'abbonamento cliente
si applica a: Centro per i partner | Centro per i partner gestito da 21Vianet | Centro per i partner per Microsoft Cloud per il governo degli Stati Uniti
Mancia
Questa API consente di modificare la frequenza di fatturazione solo per le sottoscrizioni legacy.
Per modificare la frequenza di fatturazione per le sottoscrizioni di New Commerce Experience (NCE) e le sottoscrizioni legacy, è possibile usare l'API Aggiornare una sottoscrizione in base all'ID - Sviluppatore di app partner | Microsoft Learn.
Aggiorna un Order da fatturazione mensile a annuale o da fatturazione annuale a mensile.
Nel Centro per i partner questa operazione può essere eseguita passando alla pagina dei dettagli della sottoscrizione di un cliente. Al termine, verrà visualizzata un'opzione che definisce il ciclo di fatturazione corrente per la sottoscrizione con la possibilità di modificarla e inviarla.
, fuori ambito per questo articolo:
- Modifica del ciclo di fatturazione per le prove
- Modifica dei cicli di fatturazione per qualsiasi offerta a termine non annuale (mensile, sei anni) & sottoscrizioni di Azure
- Modifica dei cicli di fatturazione per le sottoscrizioni inattive
- Modifica dei cicli di fatturazione per le sottoscrizioni basate su licenza di Microsoft Online Services
Prerequisiti
Credenziali descritte in 'autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione con le credenziali dell'app standalone e App+Utente.
ID cliente (
customer-tenant-id
). Se non si conosce l'ID del cliente, è possibile cercarlo in Centro per i partner selezionando l'area di lavoro clienti, quindi il cliente dall'elenco dei clienti, quindi Account. Nella pagina Account del cliente, cercare il ID Microsoft nella sezione informazioni sull'account cliente. L'ID Microsoft corrisponde all'ID cliente (customer-tenant-id
).Un ID ordine.
C#
Per modificare la frequenza del ciclo di fatturazione, aggiornare la proprietàOrder.BillingCycle.
// IAggregatePartner partnerOperations;
// string customerId;
// string offerId;
// string orderId;
var order = new Order()
{
ReferenceCustomerId = customerId,
BillingCycle = BillingCycleType.Annual,
LineItems = new List<OrderLineItem>()
{
new OrderLineItem()
{
LineItemNumber = 0,
OfferId = offerId,
SubscriptionId = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
Quantity = 1
}
}
};
var createdOrder = partnerOperations.Customers.ById(customerId).Orders.ById(orderId).Patch(order);
Richiesta REST
Sintassi della richiesta
Metodo | URI della richiesta |
---|---|
PATCH | {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1 |
Parametro URI
Questa tabella elenca il parametro di query necessario per modificare la quantità della sottoscrizione.
Nome | Digitare | Obbligatorio | Descrizione |
---|---|---|---|
id-cliente-inquilino | GUID | Y | Un customer-tenant-id formato GUID che identifica il cliente |
id ordine | GUID | Y | Identificatore dell'ordine |
Intestazioni della richiesta
Per altre informazioni, vedere intestazioni REST del Centro per i partner.
Corpo della richiesta
Le tabelle seguenti descrivono le proprietà nel corpo della richiesta.
Ordine
Proprietà | Digitare | Obbligatorio | Descrizione |
---|---|---|---|
Id | corda | N | Identificatore dell'ordine fornito al termine della creazione dell'ordine |
ReferenceCustomerId | corda | Y | Identificatore del cliente |
BillingCycle | corda | Y | Indica la frequenza con cui il partner viene fatturato per questo ordine. I valori supportati sono i nomi dei membri disponibili in BillingCycleType. |
LineItems | matrice di oggetti | Y | Matrice di risorse di OrderLineItem |
Data di Creazione | data e ora | N | Data di creazione dell'ordine, in formato data/ora |
Attributi | Oggetto | N | Contiene "ObjectType": "OrderLineItem" |
OrderLineItem
Proprietà | Tipo | Obbligatorio | Descrizione |
---|---|---|---|
LineItemNumber | numero | Y | Numero dell'elemento di riga, a partire da 0 |
OfferId | corda | Y | ID dell'offerta |
ID Sottoscrizione | corda | Y | ID della sottoscrizione |
NomeAmichevole | corda | N | Nome amichevole per la sottoscrizione definita dal partner per evitare ambiguità |
Quantità | numero | Y | Numero di licenze o istanze |
PartnerIdOnRecord | corda | N | L'ID del partner ufficiale |
Attributi | Oggetto | N | Contiene "ObjectType": "OrderLineItem" |
Esempio di richiesta
Aggiornamento alla fatturazione annuale
PATCH https://api.partnercenter.microsoft.com/v1/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/orders/CF3B0E37-BE0B-4CDD-B584-D1A97D98A922 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 17a2658e-d2cc-439b-a2f0-2aefd9344fbc
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 414
Expect: 100-continue
{
"Id": null,
"ReferenceCustomerId": "4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04",
"BillingCycle" : "Annual",
"LineItems": [{
"LineItemNumber": 0,
"OfferId": "2828BE95-46BA-4F91-B2FD-0BEF192ECF60",
"SubscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"FriendlyName": "Some friendly name",
"Quantity": 2,
"PartnerIdOnRecord": null,
"Attributes": {
"ObjectType": "OrderLineItem"
}
}
],
"CreationDate": null,
"Attributes": {
"ObjectType": "Order"
}
}
Risposta REST
In caso di esito positivo, questo metodo restituisce l'ordine di sottoscrizione aggiornato nel corpo della risposta.
Codici di errore e esito positivo della risposta
Ogni risposta viene fornita con un codice di stato HTTP che indica l'esito positivo o negativo e altre informazioni di debug. Usare uno strumento di traccia di rete per leggere il codice, il tipo di errore e i parametri aggiuntivi. Per l'elenco completo, vedere codici di errore .
Esempio di risposta
HTTP/1.1 200 OK
Content-Length: 1135
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 17a2658e-d2cc-439b-a2f0-2aefd9344fbc
MS-CV: WtFy3zI8V0u2lnT9.0
MS-ServerId: 020021921
Date: Wed, 25 Jan 2017 23:01:08 GMT
{
"id": "cf3b0e37-be0b-4cdd-b584-d1a97d98a922",
"referenceCustomerId": "4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04",
"billingCycle": "Annual",
"lineItems": [{
"lineItemNumber": 0,
"offerId": "195416C1-3447-423A-B37B-EE59A99A19C4",
"subscriptionId": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"friendlyName": "new offer purchase",
"quantity": 5,
"links": {
"subscription": {
"uri": "/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"method": "GET",
"headers": []
}
}
},
{
"lineItemNumber": 1,
"offerId": "2828BE95-46BA-4F91-B2FD-0BEF192ECF60",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"friendlyName": "Some friendly name",
"quantity": 2,
"links": {
"subscription": {
"uri": "/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"method": "GET",
"headers": []
}
}
}
],
"creationDate": "2017-01-25T14:53:12.093-08:00",
"links": {
"self": {
"uri": "/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/orders/cf3b0e37-be0b-4cdd-b584-d1a97d98a922",
"method": "GET",
"headers": []
}
},
"attributes": {
"etag": "eyJpZCI6ImNmM2IwZTM3LWJlMGItNGNkZC1iNTg0LWQxYTk3ZDk4YTkyMiIsInZlcnNpb24iOjJ9",
"objectType": "Order"
}
}