Müşteri aboneliği faturalama döngüsünü değiştirme
için geçerlidir: İş Ortağı Merkezi | 21Vianet tarafından işletilen İş Ortağı Merkezi | ABD Kamu için Microsoft Bulut İş Ortağı Merkezi
Bahşiş
Bu API, yalnızca eski abonelikler için faturalama sıklığınızı değiştirmenize olanak tanır.
Yeni Ticaret Deneyimi (NCE) abonelikleri ve eski aboneliklerinin fatura sıklığını değiştirmek için Aboneliği Kimliğe göre güncelleştirme - İş ortağı uygulama geliştiricisi | Microsoft Learn API'sini kullanabilirsiniz.
Sipariş aylık faturalamadan yıllık faturalamaya veya yıllık faturalamadan aylık faturalamaya güncelleştirir.
İş Ortağı Merkezi'nde bu işlem, müşterinin abonelik ayrıntıları sayfasına giderek gerçekleştirilebilir. Oraya vardığınızda, abonelik için geçerli faturalama döngüsünün değiştirilip gönderilebilmesini tanımlayan bir seçenek görürsünüz.
Bu makale için kapsam dışı:
- Denemeler için faturalama döngüsünü değiştirme
- Azure abonelikleri & yıllık olmayan dönem teklifleri (aylık, altı yıllık) için faturalama döngülerini değiştirme
- Etkin olmayan abonelikler için faturalama döngülerini değiştirme
- Microsoft çevrimiçi hizmetleri lisans tabanlı abonelikler için faturalama döngülerini değiştirme
Önkoşullar
İş Ortağı Merkezi kimlik doğrulaması'nde açıklandığı gibi kimlik bilgileri. Bu senaryo hem tek başına Uygulama hem de Uygulama+Kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.
Bir müşteri kimliği (
customer-tenant-id
). Müşterinin kimliğini bilmiyorsanız, İş Ortağı Merkezi 'de Müşteriler çalışma alanını seçerek, ardından müşteri listesinden müşteriyi ve daha sonra Hesap'ı seçerek arayabilirsiniz. Müşterinin Hesap sayfasında, Müşteri Hesabı Bilgileri bölümünde Microsoft Kimliği bulun. Microsoft kimliği, müşteri kimliğiyle (customer-tenant-id
) aynıdır.Sipariş kimliği.
C#
Faturalama döngüsünün sıklığını değiştirmek için Order.BillingCycle özelliğini güncelleştirin.
// 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 isteği
İstek söz dizimi
Yöntem | İstek URI'si |
---|---|
PATCH | {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1 |
URI parametresi
Bu tabloda, aboneliğin miktarını değiştirmek için gerekli sorgu parametresi listelenir.
Ad | Tür | Gerekli | Açıklama |
---|---|---|---|
customer-tenant-id | GUID | Y | Bir müşteri tanımlayıcı olarak biçimlendirilmiş GUID müşteri-kiracı-id |
sipariş kimliği | GUID | Y | Sipariş tanımlayıcısı |
İstek başlıkları
Daha fazla bilgi için bkz. İş Ortağı Merkezi REST başlıkları.
İstek gövdesi
Aşağıdaki tablolarda istek gövdesindeki özellikler açıklanmaktadır.
Sipariş
Mülk | Tür | Gerekli | Açıklama |
---|---|---|---|
Kimlik | dizgi | N | Siparişin başarıyla oluşturulmasından sonra sağlanan sipariş tanımlayıcısı |
ReferansMüşteriKimliği | dizgi | Y | Müşteri tanımlayıcısı |
BillingCycle | dizgi | Y | İş ortağının bu sipariş için faturalandırıldığı sıklığı gösterir. Desteklenen değerler, BillingCycleTypeiçinde bulunan üye adlarıdır. |
LineItems | nesne dizisi | Y | OrderLineItem kaynaklar dizisi |
OluşturmaTarihi | tarih saat | N | Siparişin oluşturulduğu tarih, tarih-saat biçiminde |
Öznitelik | Nesne | N | İçerir "ObjectType": "OrderLineItem" |
SiparişKalemÖğesi
Mülk | Tür | Gerekli | Açıklama |
---|---|---|---|
KalemNumarası | sayı | Y | 0 ile başlayan satır öğesi numarası |
OfferId | dizgi | Y | Teklifin kimliği |
Abonelik Kimliği (SubscriptionId) | dizgi | Y | Abonelik Kimliği |
Dostça Ad | dizgi | N | İş ortağı tarafından belirsizliği gidermeye yardımcı olmak için tanımlanan aboneliğin kullanıcı dostu adı. |
Miktar | sayı | Y | Lisans veya örnek sayısı |
PartnerIdOnRecord | dizgi | N | Kaydedilen ortağın İş Ortağı Kimliği |
Öznitelik | Nesne | N | İçerir "ObjectType": "OrderLineItem" |
İstek örneği
Yıllık faturalamaya geçiş
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 yanıtı
Başarılı olursa, bu yöntem yanıt gövdesinde güncelleştirilmiş abonelik sırasını 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 belirten bir HTTP durum kodu ve ek hata ayıklama bilgileriyle birlikte gelir. Bu kodu, hata türünü ve ek parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz. Hata Kodları.
Yanıt örneği
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"
}
}