Aracılığıyla paylaş


Yazılım abonelikleri için faturalama sıklığını güncelleştirme

Şunun için geçerlidir: İş Ortağı Merkezi

Müşteri ve abonelik IDas zamanlanmış bir değişiklikle eşleşen bir yazılım Abonelik kaynağı için faturalama sıklığını güncelleştirin.

Zamanlanmış değişiklikleri nasıl gerçekleştireceğinizi öğrenmek için Yeni ticaret abonelikleri için zamanlanmış değişiklikleri yönetme belgesine de başvurabilirsiniz. Bu işlemi İş Ortağı Merkezi'nde yapmak için:

  1. Bir müşteri seçin.
  2. Güncelleştirmek istediğiniz Yazılım aboneliğini seçin.
  3. Seçenekleri belirtmek için Yenilemeyi yönet'i, değişikliklerinizi kaydetmek için Kaydet'i ve ardından Sayfayı gönder'i seçin.

Önkoşullar

  • İş Ortağı Merkezi kimlik doğrulamasında açıklandığı gibi kimlik bilgileri. Bu senaryo hem tek başına Uygulama hem de Uygulama+Kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.

  • Müşteri kimliği (customer-tenant-id). Müşterinin kimliğini bilmiyorsanız, İş Ortağı Merkezi'nde Müşteriler çalışma alanını, ardından müşteri listesinden müşteriyi ve ardından Hesap'ı seçerek bunu arayabilirsiniz. Müşterinin Hesap sayfasında, Müşteri Hesabı Bilgileri bölümünde Microsoft Kimliği'ni arayın. Microsoft Kimliği, müşteri kimliğiyle (customer-tenant-id) aynıdır.

  • Abonelik kimliği.

C#

Müşterinin yazılım aboneliğini güncelleştirmek için önce aboneliği alın, ardından aboneliğin billingCycle özelliğini ayarlayın. Değişiklik yapıldıktan sonra IAggregatePartner.Customers koleksiyonunuzu kullanın ve ById() yöntemini çağırın. Ardından Subscriptions özelliğini ve ardından ById() yöntemini çağırın. Ardından Patch() yöntemini çağırarak işlemi tamamlayın.

// IAggregatePartner partnerOperations;
// var selectedCustomerId as string;
// Subscription selectedSubscription;

this.Context.ConsoleHelper.StartProgress("Updating subscription scheduled change");
selectedSubscription.ScheduledNextTermInstructions = new ScheduledNextTermInstructions
{
    Product = new ProductTerm
    {
        ProductId = changeToProductId,
        SkuId = changeToSkuId,
        AvailabilityId = changeToAvailabilityId,
        BillingCycle = changeToBillingCycle,
        TermDuration = changeToTermDuration,
    },
    Quantity = changeToQuantity,
};

var updatedSubscription = subscriptionOperations.Patch(selectedSubscription);

Örnek: Konsol test uygulaması. Proje: PartnerSDK.FeatureSample Sınıfı: UpdateSubscription.cs

REST isteği

İstek söz dizimi

Metot İstek URI'si
PATCH {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{id-for-subscription} HTTP/1.1

URI parametresi

Bu tabloda, bir aboneliğin faturalama sıklığını güncelleştirmek için gerekli parametreler listelenir.

Adı Tür Zorunlu Açıklama
customer-tenant-id GUID Y Müşteriye karşılık gelen GUID.
id-for-subscription GUID Y Aboneliğe karşılık gelen GUID.

İstek üst bilgileri

Daha fazla bilgi için bkz . İş Ortağı Merkezi REST üst bilgileri.

Request body

İstek gövdesinde tam bir ticari market Abonelik kaynağı gereklidir. AutoRenewEnabled özelliğinin güncelleştirildiğinden emin olun.

Yazılım aboneliği için istek örneği

{ 
    "id": "d3b7c9a2-9a4b-40b2-b075-6e442909e3e7", 
    "offerId": "DG7GMGF0DVSV:000P:DG7GMGF0F3Q9", 
    "offerName": "Windows Server Remote Desktop Services CAL - 1 User CAL – 3 year", 
    "friendlyName": "Windows Server Remote Desktop Services CAL - 1 User CAL – 3 year", 
    "productType": { 
        "id": "Software", 
        "displayName": "Software" 
    }, 
    "quantity": 1, 
    "unitType": "Licenses", 
    "hasPurchasableAddons": false, 
    "creationDate": "2021-09-14T16:44:14.1210743Z", 
    "effectiveStartDate": "2021-09-14T16:44:03.4609789Z", 
    "commitmentEndDate": "2024-09-13T00:00:00Z", 
    "cancellationAllowedUntilDate": "2021-10-14T23:59:00Z", 
    "status": "active", 
    "autoRenewEnabled": true, 
    "scheduledNextTermInstructions": { 
      "product": { 
         "productId":  "DG7GMGF0DVSV", 
         "skuId":  "000P", 
         "availabilityId":  "DG7GMGF0F3Q9", 
         "billingCycle":  "Annual", 
         "termDuration":  "P3Y" 
        }, 
      "quantity":  1 
     },  // original value = null 
    "isTrial": false, 
    "billingType": "license", 
    "billingCycle": "triennial", 
    "termDuration": "P3Y", 
    "renewalTermDuration": "", 
    "isMicrosoftProduct": true, 
    "partnerId": "", 
    "attentionNeeded": false, 
    "actionTaken": false, 
    "contractType": "subscription", 
    "links": { 
        "product": { 
            "uri": "/products/DG7GMGF0DVSV?country=US", 
            "method": "GET", 
            "headers": [] 
        }, 
        "sku": { 
            "uri": "/products/DG7GMGF0DVSV/skus/000P?country=US", 
            "method": "GET", 
            "headers": [] 
        }, 
        "availability": { 
            "uri": "/products/DG7GMGF0DVSV/skus/000P/availabilities/DG7GMGF0F3Q9?country=US", 
            "method": "GET", 
            "headers": [] 
        }, 
        "self": { 
            "uri": "/customers/1f53d7b3-cd04-43a3-a09f-e52f3eb3c205/subscriptions/d3b7c9a2-9a4b-40b2-b075-6e442909e3e7", 
            "method": "GET", 
            "headers": [] 
        } 
    }, 
    "publisherName": "Microsoft", 
    "orderId": "123456789101", 
    "attributes": { 
        "objectType": "Subscription" 
    } 
} 

REST yanıtı

Başarılı olursa, bu yöntem yanıt gövdesinde güncelleştirilmiş Abonelik kaynağı özelliklerini döndürür.

Yanıt başarısı ve hata kodları

Her yanıt, başarılı veya başarısız olduğunu ve diğer hata ayıklama bilgilerini gösteren bir HTTP durum koduyla birlikte gelir. Bu kodu, hata türünü ve diğer parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz . Hata Kodları.

Yanıt örneği

{ 
    "id": "d3b7c9a2-9a4b-40b2-b075-6e442909e3e7", 
    "offerId": "DG7GMGF0DVSV:000P:DG7GMGF0F3Q9", 
    "offerName": "Windows Server Remote Desktop Services CAL - 1 User CAL – 3 year", 
    "friendlyName": "Windows Server Remote Desktop Services CAL - 1 User CAL – 3 year", 
    "productType": { 
        "id": "Software", 
        "displayName": "Software" 
    }, 
    "quantity": 1, 
    "unitType": "Licenses", 
    "hasPurchasableAddons": false, 
    "creationDate": "2021-09-14T16:44:14.1210743Z", 
    "effectiveStartDate": "2021-09-14T16:44:03.4609789Z", 
    "commitmentEndDate": "2024-09-13T00:00:00Z", 
    "cancellationAllowedUntilDate": "2021-10-14T23:59:00Z", 
    "status": "active", 
    "autoRenewEnabled": true, 
    "scheduledNextTermInstructions": { 
      "product": { 
         "productId":  "DG7GMGF0DVSV", 
         "skuId":  "000P", 
         "availabilityId":  "DG7GMGF0F3Q9", 
         "billingCycle":  "Annual", 
         "termDuration":  "P3Y" 
        }, 
      "quantity":  1 
     },  // original value = null 

    "isTrial": false, 
    "billingType": "license", 
    "billingCycle": "triennial", 
    "termDuration": "P3Y", 
    "renewalTermDuration": "", 
    "isMicrosoftProduct": true, 
    "partnerId": "", 
    "attentionNeeded": false, 
    "actionTaken": false, 
    "contractType": "subscription", 
    "links": { 
        "product": { 
            "uri": "/products/DG7GMGF0DVSV?country=US", 
            "method": "GET", 
            "headers": [] 
        }, 
        "sku": { 
            "uri": "/products/DG7GMGF0DVSV/skus/000P?country=US", 
            "method": "GET", 
            "headers": [] 
        }, 
        "availability": { 
            "uri": "/products/DG7GMGF0DVSV/skus/000P/availabilities/DG7GMGF0F3Q9?country=US", 
            "method": "GET", 
            "headers": [] 
        }, 
        "self": { 
            "uri": "/customers/1f53d7b3-cd04-43a3-a09f-e52f3eb3c205/subscriptions/d3b7c9a2-9a4b-40b2-b075-6e442909e3e7", 
            "method": "GET", 
            "headers": [] 
        } 
    }, 
    "publisherName": "Microsoft", 
    "orderId": "123456789101", 
    "attributes": { 
        "objectType": "Subscription" 
    } 
}