Sdílet prostřednictvím


Rezervace objednávky zákazníka v košíku

Platí pro: Partnerské centrum | Partnerské centrum provozované společností 21Vianet | Partnerské centrum pro Microsoft Cloud pro státní správu USA

Jak rezervovat objednávku zákazníka v košíku

Toto rozhraní API je idempotentní. Partneři můžou rozhraní API CheckoutCart volat několikrát pro jedno ID košíku. Ve scénáři, kdy se objednávka nezdaří kvůli chybě, je možné volání provést znovu, aby se rezervace znovu zobrazila. Pokud byl košík úspěšně rezervován dříve a do stejného košíku se provede následné volání rezervace, odpověď rozhraní API znovu vrátí informace vrácené po počáteční rezervaci.

Poznámka:

Platnost košíků vyprší 7 dnů od počátečního vytvoření.

Požadavky

  • Přihlašovací údaje popsané v ověřování v Partnerském centru Tento scénář podporuje ověřování pomocí samostatných přihlašovacích údajů aplikace i aplikace a uživatele.

  • ID zákazníka (customer-tenant-id). Pokud neznáte ID zákazníka, můžete ho vyhledat v Partnerském centru tak , že vyberete pracovní prostor Zákazníci , pak zákazník ze seznamu zákazníků a pak účet. Na stránce Účet zákazníka vyhledejte ID Microsoftu v části Informace o účtu zákazníka. ID Microsoftu je stejné jako ID zákazníka (customer-tenant-id).

  • ID košíku pro existující košík.

C#

Pokud chcete rezervovat objednávku zákazníka, získejte odkaz na košík pomocí košíku a identifikátoru zákazníka. Nakonec voláním funkcí Create nebo CreateAsync dokončete pořadí.

// IAggregatePartner partnerOperations;
// string customerId;
// string cartId;

var cart = partnerOperations.Customers.ById(customerId).Cart.ById(cartId).Checkout();

Java

Sadu Java SDK Partnerského centra je možné použít ke správě prostředků Partnerského centra. Jedná se o opensourcový projekt spravovaný komunitou partnerů, který oficiálně nepodporuje Microsoft. Pokud narazíte na problém, můžete získat pomoc od komunity nebo otevřít problém na GitHubu .

Pokud chcete rezervovat objednávku zákazníka, získejte odkaz na košík pomocí košíku a identifikátoru zákazníka. Nakonec zavolejte funkci create a dokončete objednávku.

// IAggregatePartner partnerOperations;
// String customerId;
// String cartId;

Cart cart = partnerOperations.getCustomers().byId(customerId).getCart().byId(cartId).checkout();

PowerShell

Modul PowerShellu v Partnerském centru se dá použít ke správě prostředků Partnerského centra. Jedná se o opensourcový projekt spravovaný komunitou partnerů, který oficiálně nepodporuje Microsoft. Pokud narazíte na problém, můžete získat pomoc od komunity nebo otevřít problém na GitHubu .

Pokud chcete rezervovat objednávku pro zákazníka, spusťte příkaz Submit-PartnerCustomerCart a dokončete objednávku.

# $customerId
# $cartId

Submit-PartnerCustomerCart -CartId $cartId -CustomerId $customerId

Požadavek REST

Syntaxe požadavku

metoda Identifikátor URI žádosti
POST {baseURL}/v1/customers/{customer-id}/carts/{cart-id}/checkout HTTP/1.1

Parametry identifikátoru URI

Pomocí následujících parametrů cesty identifikujte zákazníka a zadejte košík, který se má rezervovat.

Name Type Požadováno Popis
ID zákazníka string Ano IDENTIFIKÁTOR GUID naformátovaný id zákazníka, které identifikuje zákazníka.
cart-id string Ano IDENTIFIKÁTOR GUID formátovaný košíkem, který identifikuje košík.

Záhlaví žádosti

Další informace najdete v tématu Hlavičky REST Partnerského centra.

Text požadavku

Nezaokrouhlovat.

Příklad požadavku

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

Důležité

Od června 2023 se teď archivuje nejnovější verze sady .NET SDK partnerského centra 3.4.0. Vydání sady SDK si můžete stáhnout z GitHubu spolu se souborem readme, který obsahuje užitečné informace.

Doporučujeme, aby partneři dál používali rozhraní REST API Partnerského centra.

Odpověď REST

V případě úspěchu obsahuje tělo odpovědi vyplněný prostředek CartCheckoutResult .

Pokud košík obsahuje jedno nebo více předplatných, zobrazí se v odpovědi REST pouze v případě, že jsou odpovídající předplatná zřízená v době volání rozhraní API. Zřizování předplatných probíhá asynchronně, a proto nemusí být hodnoty ID předplatného vždy viditelné v odpovědi REST volání Rezervace košíku. Jakmile jsou ale příslušná předplatná zřízená, dají se k hodnotám ID předplatného přistupovat prostřednictvím volání rozhraní API Get Orders a Get Order by ID.

Kódy úspěšnosti a chyb odpovědi

Každá odpověď obsahuje stavový kód HTTP, který indikuje úspěch nebo selhání a další informace o ladění. Ke čtení tohoto kódu, typu chyby a dalších parametrů použijte nástroj pro trasování sítě. Úplný seznam najdete v tématu Kódy chyb.

Příklad odpovědi na software, více rezervací, plán Azure a skladová položka produktu třetích stran

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": {...},
      ...
    }
  ],
  ...
}

Příklad odpovědi pro nové komerční předplatné založené na licencích

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