Freigeben über


Ändern des Abrechnungszyklus für ein Kundenabonnement

anwendbar auf: Partnerzentrum | Partnerzentrum betrieben von 21Vianet | Partnerzentrum für die Microsoft-Cloud für die US-Regierung

Tipp

Mit dieser API können Sie die Abrechnungshäufigkeit nur für Legacy-Abonnements ändern.

Um die Abrechnungshäufigkeit für NCE-Abonnements (New Commerce Experience) und Legacy-Abonnements zu ändern, können Sie die Option Aktualisieren eines Abonnements nach ID verwenden - Entwickler der Partner-App | Microsoft Learn-API .

Aktualisiert eine Bestellung von der monatlichen auf die jährliche Abrechnung oder von der jährlichen auf die monatliche Abrechnung.

In Partner Center kann dieser Vorgang ausgeführt werden, indem Sie zur Seite mit den Abonnementdetails eines Kunden navigieren. Dort sehen Sie eine Option, die den aktuellen Abrechnungszyklus für das Abonnement definiert, mit der Möglichkeit, ihn zu ändern und zu übermitteln.

Außerhalb des Rahmens dieses Artikels:

  • Ändern des Abrechnungszyklus für Testversionen
  • Ändern der Abrechnungszyklen für alle Angebote mit nicht jährlicher Laufzeit (monatlich, sechs Jahre) und Azure-Abonnements
  • Ändern der Abrechnungszyklen für inaktive Abonnements
  • Ändern der Abrechnungszyklen für lizenzbasierte Microsoft Online Services-Abonnements

Voraussetzungen

  • Anmeldeinformationen wie unter Partner Center-Authentifizierung beschrieben. Dieses Szenario unterstützt die Authentifizierung mit eigenständigen App- und App+Benutzeranmeldeinformationen.

  • Eine Kunden-ID (customer-tenant-id). Wenn Sie die Kunden-ID nicht kennen, können Sie sie im Partner Center nachschlagen, indem Sie den Arbeitsbereich Kunden auswählen, dann den Kunden aus der Kundenliste und anschließend Konto. Suchen Sie auf der Kontoseite des Kunden im Abschnitt Kundenkontoinfo nach der Microsoft-ID. Die Microsoft-ID ist identisch mit der Kunden-ID (customer-tenant-id).

  • Eine Bestell-ID.

C#

Um die Häufigkeit des Abrechnungszyklus zu ändern, aktualisieren Sie die Order.BillingCycle-Eigenschaft .

// 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-Anforderung

Anforderungssyntax

Methode Anforderungs-URI
FLICKEN {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1

URI-Parameter

In dieser Tabelle sind die erforderlichen Abfrageparameter aufgeführt, um die Menge des Abonnements zu ändern.

Name Typ Erforderlich BESCHREIBUNG
Kunden-Mieter-ID Globale eindeutige Kennung (GUID) Ja Eine GUID-formatierte Kundenmandanten-ID, die den Kunden identifiziert
Bestell-ID Globale eindeutige Kennung (GUID) Ja Die Bestellkennung

Anforderungsheader

Weitere Informationen finden Sie unter Partner Center REST-Header.

Anfragekörper

In den folgenden Tabellen werden die Eigenschaften im Anforderungstext beschrieben.

Bestellung

Eigentum Typ Erforderlich BESCHREIBUNG
Id Schnur N Eine Auftragskennung, die nach erfolgreicher Erstellung der Bestellung angegeben wird
ReferenzCustomerId Schnur Ja Die Kundenkennung
Abrechnungszyklus Schnur Ja Gibt die Häufigkeit an, mit der der Partner diesen Auftrag in Rechnung stellt. Unterstützte Werte sind die Membernamen, die in BillingCycleType gefunden werden.
Einzelposten Array von Objekten Ja Ein Array von OrderLineItem-Ressourcen
Erstellungsdatum Datum/Uhrzeit N Das Datum, an dem die Bestellung erstellt wurde, im Datum/Uhrzeit-Format
Attribute Objekt N Enthält "ObjectType": "OrderLineItem"

OrderLineItem

Eigentum Typ Erforderlich BESCHREIBUNG
ZeilenNummer Zahl Ja Die Positionsnummer, beginnend mit 0
Angebots-ID Schnur Ja Die ID des Angebots
Abonnement-ID Schnur Ja Die ID des Abonnements
FriendlyName Schnur N Der Anzeigename für das Abonnement, der vom Partner definiert wurde, um die Mehrdeutigkeit zu erleichtern
Menge Zahl Ja Die Anzahl der Lizenzen oder Instanzen
PartnerIdOnRecord Schnur N Die PartnerID des eingetragenen Partners
Attribute Objekt N Enthält "ObjectType": "OrderLineItem"

Beispielanfrage

Aktualisierung der jährlichen Abrechnung

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-Antwort

Bei erfolgreicher Ausführung gibt diese Methode die aktualisierte Abonnementreihenfolge im Antworttext zurück.

Antworterfolgs- und Fehlercodes

Jede Antwort enthält einen HTTP-Statuscode, der Erfolg oder Fehler sowie zusätzliche Debuginformationen angibt. Verwende ein Tool für die Netzwerkablaufverfolgung, um diesen Code, den Fehlertyp und zusätzliche Parameter zu lesen. Die vollständige Liste findest du unter Fehlercodes.

Antwortbeispiel

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