Bekijk een bestelling voor een klant in een winkelmandje
van toepassing op: Partnercentrum | Partnercentrum beheerd door 21Vianet | Partnercentrum voor Microsoft Cloud voor de Amerikaanse overheid
Hoe u een bestelling voor een klant in een winkelwagen kunt afrekenen.
Deze API is idempotent. Partners kunnen de CheckoutCart-API meerdere keren aanroepen voor één winkelwagen-id. In een scenario waarin een order mislukt vanwege een fout, kan de aanroep opnieuw worden uitgevoerd om het uitchecken opnieuw te proberen. Als een winkelwagen eerder met succes is uitgecheckt en er opnieuw een checkout-verzoek voor diezelfde winkelwagen wordt gedaan, herhaalt de API-reactie de informatie die na de eerste checkout is geretourneerd.
Notitie
Winkelwagentjes verlopen na 7 dagen vanaf de eerste aanmaak.
Voorwaarden
Referenties zoals beschreven in Partnercentrum-authenticatie. 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 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 winkelwagen-id voor een bestaande winkelwagen.
C#
Als u een bestelling voor een klant wilt afronden, haalt u een verwijzing naar de winkelmand op met behulp van de winkelmand- en klant-id. Roep uiteindelijk de functies Create of CreateAsync aan om de bestelling te voltooien.
// IAggregatePartner partnerOperations;
// string customerId;
// string cartId;
var cart = partnerOperations.Customers.ById(customerId).Cart.ById(cartId).Checkout();
Java
De Partner Center Java SDK- kan worden gebruikt voor het beheren van Partnercentrum-resources. Het is een opensource-project dat wordt onderhouden door de partnercommunity en niet officieel wordt ondersteund door Microsoft. U kunt hulp krijgen van de community of een probleem openen op GitHub als u een probleem ondervindt.
Om een bestelling voor een klant te voltooien, haalt u een verwijzing naar het winkelwagentje op met behulp van de winkelwagen en de klant-id. Roep tot slot de create functie aan om de bestelling te voltooien.
// IAggregatePartner partnerOperations;
// String customerId;
// String cartId;
Cart cart = partnerOperations.getCustomers().byId(customerId).getCart().byId(cartId).checkout();
PowerShell
De PowerShell-module van partnercentrum kan worden gebruikt voor het beheren van Partnercentrum-resources. Het is een opensource-project dat wordt onderhouden door de partnercommunity en niet officieel wordt ondersteund door Microsoft. U kunt hulp krijgen van de community of een probleem openen op GitHub als u een probleem ondervindt.
Als u een bestelling voor een klant wilt uitchecken, voert u de Submit-PartnerCustomerCart uit om de bestelling te voltooien.
# $customerId
# $cartId
Submit-PartnerCustomerCart -CartId $cartId -CustomerId $customerId
REST-aanvraag
Aanvraagsyntaxis
Methode | Aanvraag URI |
---|---|
POST | {baseURL}/v1/customers/{customer-id}/carts/{cart-id}/checkout HTTP/1.1 |
URI-parameters
Gebruik de volgende padparameters om de klant te identificeren en de winkelwagen op te geven die moet worden uitgecheckt.
Naam | Type | Vereist | Beschrijving |
---|---|---|---|
klantidentificatie | tekenreeks | Ja | Een klant-id in GUID-formaat die de klant identificeert. |
winkelwagen-id | tekenreeks | Ja | Een met GUID opgemaakte winkelwagen-id die de winkelwagen identificeert. |
Aanvraag-headers
Zie Partnercentrum REST-headersvoor meer informatie.
Aanvraagtekst
Geen.
Voorbeeld van aanvraag
POST /v1/customers/d6bf25b7-e0a8-4f2d-a31b-97b55cfc774d/carts/b4c8fdea-cbe4-4d17-9576-13fcacbf9605/checkout HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 4fa6dad6-a89f-4875-8247-8294a10ae1cf
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Client: Partner Center .NET SDK
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 0
Expect: 100-continue
No-Content-Body
Belangrijk
Vanaf juni 2023 wordt de nieuwste Versie van Partner Center .NET SDK 3.4.0 gearchiveerd. U kunt de SDK-release downloaden van GitHub, samen met een leesmij-bestand met nuttige informatie.
Partners worden aangemoedigd om de Partner center REST API'ste blijven gebruiken.
REST-antwoord
Als dit lukt, bevat de hoofdtekst van het antwoord de ingevulde CartCheckoutResult resource.
Als het winkelwagentje een of meer abonnementen bevat, worden de respectieve abonnements-id-waarden alleen weergegeven in het REST-antwoord als de bijbehorende abonnementen zijn ingericht op het moment van de API-aanroep. Het inrichten van abonnementen vindt asynchroon plaats en daarom zijn abonnements-id-waarden mogelijk niet altijd zichtbaar in het REST-antwoord van de oproep Winkelwagen uitchecken. Echter, zodra de respectieve abonnementen zijn ingericht, kunnen hun abonnements-ID's worden geopend via de API-aanroepen 'Orders ophalen' en 'Order ophalen op ID'.
Geslaagde antwoorden en foutcodes
Elk antwoord komt met een HTTP-statuscode die aangeeft of het succesvol is of mislukt, evenals verdere informatie voor foutopsporing. Gebruik een hulpprogramma voor netwerktracering om deze code, het fouttype en andere parameters te lezen. Zie Foutcodesvoor de volledige lijst.
Antwoordvoorbeeld voor software, meerdere reserveringen, Azure-abonnement en product-SKU van derden
HTTP/1.1 201 Created
Content-Length: 764
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 4fa6dad6-a89f-4875-8247-8294a10ae1cf
X-Locale: en-US,en-US
MS-CV: sF/wRa2ih0CzbABc.0
MS-ServerId: 000001
Date: Thu, 15 Mar 2018 17:15:01 GMT
?{
"orders": [
{
"id": "3c6f2530-1e31-4088-8230-dd1c31a18bce",
"alternateId": "3c6f2530-1e31-4088-8230-dd1c31a18bce",
"referenceCustomerId": "28045616-f6b9-462f-9701-0d89b5e65c44",
"billingCycle": "monthly",
"currencyCode": "USD",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "MS-AZR-0145P",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"termDuration": "P1Y",
"transactionType": "New",
"friendlyName": "Microsoft Azure",
"quantity": 1,
"links": {...}
}
],
"creationDate": "2019-01-16T00:48:44.76+00:00",
"status": "completed",
"transactionType": "UserPurchase",
"links": {...},
...
},
{
"id": "311qiN8iFwkv-XARWMvXRYAwYKMACVqv1",
"alternateId": "0a3624c6e47d",
"referenceCustomerId": "28045616-f6b9-462f-9701-0d89b5e65c44",
"billingCycle": "one_time",
"currencyCode": "USD",
"currencySymbol": "$",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "DZH318Z0BQ36:004G:DZH318Z08C0S",
"termDuration": "P1Y",
"transactionType": "New",
"friendlyName": "Reserved VM Instance, Standard_NV12, US East 2, 1 Year",
"quantity": 1,
"links": {...}
},
{
"lineItemNumber": 1,
"offerId": "DZH318Z0BQ36:004J:DZH318Z08B8X",
"termDuration": "P3Y",
"transactionType": "New",
"friendlyName": "Reserved VM Instance, Standard_NV12, US East 2, 3 Years",
"quantity": 1,
"links": {...}
},
{
"lineItemNumber": 2,
"offerId": "DG7GMGF0DWM3:0002:DG7GMGF0DT1M",
"transactionType": "New",
"friendlyName": "BizTalk Server 2016 Branch",
"quantity": 1,
"links": {...}
}
],
"creationDate": "2019-01-16T00:48:51.6578126Z",
"status": "pending",
"transactionType": "UserPurchase",
"links": {...},
...
},
{
"id": "HVu_cO8Ea7fNRQP4ia1QTpZap-kg_7P71",
"alternateId": "55a4e6854d54",
"referenceCustomerId": "28045616-f6b9-462f-9701-0d89b5e65c44",
"billingCycle": "monthly",
"currencyCode": "USD",
"currencySymbol": "$",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "DZH318Z0BXWC:0002:DZH318Z0BMRV",
"termDuration": "P1M",
"transactionType": "New",
"friendlyName": "Barracuda WaaS - Medium Plan",
"quantity": 1,
"links": {...}
}
],
"creationDate": "2019-01-16T00:48:44.4514129Z",
"status": "pending",
"transactionType": "UserPurchase",
"links": {...},
...
}
],
...
}
Antwoordvoorbeeld voor een nieuw abonnement op basis van een commercelicentie
{
"id": "a68736758d9c",
"alternateId": "a68736758d9c",
"referenceCustomerId": "94cd6638-11b6-4323-8c9f-6ae3088adc59",
"billingCycle": "monthly",
"currencyCode": "USD"
"currencySymbol": "US$",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "CFQ7TTC0LF8S:0001:CFQ7TTC0N81H",
"subscriptionId": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"termDuration": "P1M",
"transactionType": "New",
"friendlyName": "Office 365 E5 without Audio Conferencing",
"quantity": 1,
"pricing": {
"listPrice": 36.48,
"discountedPrice": 36.48,
"proratedPrice": 36.48,
"price": 36.48,
"extendedPrice": 36.48
},
"links": {
"product": {
"uri": "/products/CFQ7TTC0LF8S?country=US",
"method": "GET",
"headers": []
},
"sku": {
"uri": "/products/CFQ7TTC0LF8S/skus/0001?country=US",
"method": "GET",
"headers": []
},
"availability": {
"uri": "/products/CFQ7TTC0LF8S/skus/0001/availabilities/CFQ7TTC0N81H?country=US",
"method": "GET",
"headers": []
}
}
}
],
"creationDate": "2023-04-18T22:03:45.4505136Z",
"status": "pending",
"transactionType": "UserPurchase",
"links": {
"self": {
"uri": "/customers/94cd6638-11b6-4323-8c9f-6ae3088adc59/orders/a68736758d9c",
"method": "GET",
"headers": []
},
"provisioningStatus": {
"uri": "/customers/94cd6638-11b6-4323-8c9f-6ae3088adc59/orders/a68736758d9c/provisioningstatus",
"method": "GET",
"headers": []
},
"patchOperation": {
"uri": "/customers/94cd6638-11b6-4323-8c9f-6ae3088adc59/orders/a68736758d9c",
"method": "PATCH",
"headers": []
}
},
"totalPrice": 36.48,
"client": {},
"attributes": {
"objectType": "Order"
}
}