Factureringscyclus van een klantabonnement wijzigen
Van toepassing op: Partnercentrum | Partnercentrum beheerd door 21Vianet | Partnercentrum voor Microsoft Cloud voor de Amerikaanse overheid
Tip
Met deze API kunt u alleen uw factureringsfrequentie voor verouderde abonnementen wijzigen.
Als u de factureringsfrequentie voor NCE-abonnementen (New Commerce Experience) en oudere abonnementen wilt wijzigen, kunt u een abonnement bijwerken op id gebruiken - Partner-app-ontwikkelaar | Microsoft Learn-API .
Hiermee wordt een order bijgewerkt van maandelijks naar jaarlijkse facturering of van jaarlijkse naar maandelijkse facturering.
In Partnercentrum kan deze bewerking worden uitgevoerd door naar de pagina met abonnementsgegevens van een klant te gaan. Eenmaal daar ziet u een optie voor het definiƫren van de huidige factureringscyclus voor het abonnement met de mogelijkheid om het te wijzigen en in te dienen.
Buiten het bereik van dit artikel:
- De factureringscyclus voor proefversies wijzigen
- De factureringscycli voor eventuele niet-jaarlijkse termijnaanbiedingen (maandelijks, zes jaar) en Azure-abonnementen wijzigen
- De factureringscycli voor inactieve abonnementen wijzigen
- Factureringscycli wijzigen voor microsoft onlineservices abonnementen op basis van licenties
Vereisten
Referenties zoals beschreven in verificatie in partnercentrum. Dit scenario ondersteunt verificatie met zowel zelfstandige app- als app+gebruikersreferenties.
Een klant-id (
customer-tenant-id
). Als u de klant-id niet weet, kunt u deze opzoeken in het Partnercentrum door de werkruimte Klanten te selecteren, vervolgens de klant in de lijst met klanten en vervolgens Account. Zoek op de pagina Account van de klant naar de Microsoft-id in de sectie Klantaccountgegevens . De Microsoft-id is hetzelfde als de klant-id (customer-tenant-id
).Een order-id.
C#
Als u de frequentie van de factureringscyclus wilt wijzigen, werkt u de eigenschap Order.BillingCycle bij.
// 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);
REST-aanvraag
Aanvraagsyntaxis
Wijze | Aanvraag-URI |
---|---|
LAP | {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1 |
URI-parameter
Deze tabel bevat de vereiste queryparameter om de hoeveelheid van het abonnement te wijzigen.
Name | Type | Vereist | Beschrijving |
---|---|---|---|
klant-tenant-id | GUID | J | Een door de GUID opgemaakte klant-tenant-id die de klant identificeert |
order-id | GUID | J | De order-id |
Aanvraagheaders
Zie Rest-headers in Partnercentrum voor meer informatie.
Aanvraagtekst
In de volgende tabellen worden de eigenschappen in de hoofdtekst van de aanvraag beschreven.
Order
Eigenschap | Type | Vereist | Beschrijving |
---|---|---|---|
ID | tekenreeks | N | Een order-id die wordt opgegeven bij het maken van de bestelling |
ReferenceCustomerId | tekenreeks | J | De klant-id |
BillingCycle | tekenreeks | J | Geeft de frequentie aan waarmee de partner wordt gefactureerd voor deze bestelling. Ondersteunde waarden zijn de ledennamen in BillingCycleType. |
LineItems | matrix van objecten | J | Een matrix van OrderLineItem-resources |
CreationDate | datetime | N | De datum waarop de order is gemaakt, in datum-tijdnotatie |
Kenmerken | Object | N | Bevat "ObjectType": "OrderLineItem" |
OrderLineItem
Eigenschap | Type | Vereist | Beschrijving |
---|---|---|---|
LineItemNumber | Nummer | J | Het regelitemnummer, beginnend met 0 |
OfferId | tekenreeks | J | De id van de aanbieding |
SubscriptionId | tekenreeks | J | De id van het abonnement |
FriendlyName | tekenreeks | N | De beschrijvende naam voor het abonnement dat door de partner is gedefinieerd om te helpen ondubbelzinnig te zijn |
Hoeveelheid | Nummer | J | Het aantal licenties of exemplaren |
PartnerIdOnRecord | tekenreeks | N | De Partner-id van de partner van de record |
Kenmerken | Object | N | Bevat "ObjectType": "OrderLineItem" |
Aanvraagvoorbeeld
Bijwerken naar jaarlijkse facturering
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"
}
}
REST-antwoord
Als dit lukt, retourneert deze methode de bijgewerkte abonnementsvolgorde in de hoofdtekst van het antwoord.
Geslaagde antwoorden en foutcodes
Elk antwoord wordt geleverd met een HTTP-statuscode die aangeeft dat de fout is geslaagd of mislukt en aanvullende informatie over foutopsporing. Gebruik een hulpprogramma voor netwerktracering om deze code, het fouttype en aanvullende parameters te lezen. Zie Foutcodes voor de volledige lijst.
Responsvoorbeeld
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"
}
}