Delen via


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"
    }
}