Dela via


Ändra faktureringscykel för kundprenumeration

Gäller för: Partnercenter | Partnercenter som drivs av 21Vianet | Partnercenter för Microsoft Cloud for US Government

Dricks

Med det här API:et kan du endast ändra faktureringsfrekvensen för äldre prenumerationer.

Om du vill ändra din faktureringsfrekvens för NCE-prenumerationer (New Commerce Experience) och äldre prenumerationer kan du använda Uppdatera en prenumeration efter ID – Partnerapputvecklare | Microsoft Learn API.

Uppdaterar en order från månatlig till årlig fakturering eller från årlig till månatlig fakturering.

I Partnercenter kan den här åtgärden utföras genom att gå till en kunds prenumerationsinformationssida. Väl där ser du ett alternativ som definierar den aktuella faktureringscykeln för prenumerationen med möjlighet att ändra och skicka den.

Utanför omfånget för den här artikeln:

  • Ändra faktureringscykeln för utvärderingsversioner
  • Ändra faktureringscyklerna för alla icke-årliga terminserbjudanden (månadsprenumerationer, sex år) och Azure-prenumerationer
  • Ändra faktureringscyklerna för inaktiva prenumerationer
  • Ändra faktureringscykler för Microsoft usluge na mreži licensbaserade prenumerationer

Förutsättningar

  • Autentiseringsuppgifter enligt beskrivningen i Partnercenter-autentisering. Det här scenariot stöder autentisering med både fristående app- och App+User-autentiseringsuppgifter.

  • Ett kund-ID (customer-tenant-id). Om du inte känner till kundens ID kan du söka efter det i Partnercenter genom att välja arbetsytan Kunder , sedan kunden från kundlistan och sedan Konto. På kundens kontosida letar du efter Microsoft-ID :t i avsnittet Kundkontoinformation . Microsoft-ID:t är samma som kund-ID :t (customer-tenant-id).

  • Ett order-ID.

C#

Om du vill ändra faktureringsperiodens frekvens uppdaterar du egenskapen 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);

REST-begäran

Syntax för begäran

Metod URI för förfrågan
LAPP {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1

URI-parameter

Den här tabellen visar den frågeparameter som krävs för att ändra prenumerationens kvantitet.

Namn Typ Obligatoriskt Beskrivning
customer-tenant-id GUID Y Ett GUID-formaterat kund-klient-ID som identifierar kunden
order-id GUID Y Orderidentifieraren

Begärandehuvuden

Mer information finns i REST-huvuden för Partnercenter.

Begärandetext

I följande tabeller beskrivs egenskaperna i begärandetexten.

Order

Property Type Obligatoriskt Beskrivning
Id sträng N En orderidentifierare som tillhandahålls när beställningen har skapats
ReferenceCustomerId sträng Y Kundidentifieraren
BillingCycle sträng Y Anger hur ofta partnern faktureras för den här ordern. Värden som stöds är medlemsnamnen som finns i BillingCycleType.
LineItems en matris med objekt Y En matris med OrderLineItem-resurser
CreationDate datetime N Det datum då ordern skapades, i datum-tidsformat
Attribut Objekt N Innehåller "ObjectType": "OrderLineItem"

OrderLineItem

Property Type Obligatoriskt Beskrivning
LineItemNumber Nummer Y Radobjektsnumret, som börjar med 0
OfferId sträng Y Erbjudandets ID
SubscriptionId sträng Y Prenumerationens ID
FriendlyName sträng N Det egna namnet på prenumerationen som definierats av partnern för att hjälpa till att skilja
Kvantitet Nummer Y Antalet licenser eller instanser
PartnerIdOnRecord sträng N Partner-ID för postens partner
Attribut Objekt N Innehåller "ObjectType": "OrderLineItem"

Exempel på begäran

Uppdatera till årlig fakturering

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

Om det lyckas returnerar den här metoden den uppdaterade prenumerationsordningen i svarstexten.

Svarsframgång och felkoder

Varje svar levereras med en HTTP-statuskod som anger lyckad eller misslyckad och ytterligare felsökningsinformation. Använd ett verktyg för nätverksspårning för att läsa den här koden, feltypen och ytterligare parametrar. Den fullständiga listan finns i Felkoder.

Svarsexempel

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