Consultar un pedido para un cliente en un carro
Se aplica a: Centro de partners | Centro de partners operado por 21Vianet | Centro de partners para Microsoft Cloud for US Government
Cómo consultar un pedido para un cliente en un carro.
Esta API es idempotente. Los partners pueden llamar a la API CheckoutCart varias veces para un identificador de carro. En un escenario en el que se produce un error en un pedido debido a un error, la llamada se puede volver a realizar para volver a realizar la finalización de la compra. Si un carro se desprotegió correctamente anteriormente y se realiza una llamada de desprotección posterior a ese mismo carro, la respuesta de la API reiterará la información devuelta después de la finalización inicial de la compra.
Nota:
Los carros expiran 7 días a partir de la creación inicial.
Requisitos previos
Credenciales tal como se describen en el artículo Autenticación del Centro de partners. Este escenario admite la autenticación con credenciales de aplicación independiente y app+usuario.
Un id. de cliente (
customer-tenant-id
). Si no conoce el identificador del cliente, puede buscarlo en el Centro de partners seleccionando el área de trabajo Clientes , luego el cliente de la lista de clientes y, a continuación , Cuenta. En la página Cuenta del cliente, busque el identificador de Microsoft en la sección Información de la cuenta de cliente. El id. de Microsoft es el mismo que el de cliente (customer-tenant-id
).Un identificador de carro para un carro existente.
C#
Para consultar un pedido de un cliente, obtenga una referencia al carro mediante el carro y el identificador del cliente. Por último, llame a las funciones Create o CreateAsync para completar el orden.
// IAggregatePartner partnerOperations;
// string customerId;
// string cartId;
var cart = partnerOperations.Customers.ById(customerId).Cart.ById(cartId).Checkout();
Java
El SDK de Java del Centro de partners se puede usar para administrar los recursos del Centro de partners. Es un proyecto de código abierto mantenido por la comunidad de partners y no es compatible oficialmente con Microsoft. Puedes obtener ayuda de la comunidad o abrir una incidencia en GitHub si se produce un problema.
Para consultar un pedido de un cliente, obtenga una referencia al carro mediante el carro y el identificador del cliente. Por último, llame a la función create para completar el orden.
// IAggregatePartner partnerOperations;
// String customerId;
// String cartId;
Cart cart = partnerOperations.getCustomers().byId(customerId).getCart().byId(cartId).checkout();
PowerShell
El módulo de PowerShell del Centro de partners se puede usar para administrar los recursos del Centro de partners. Es un proyecto de código abierto mantenido por la comunidad de partners y no es compatible oficialmente con Microsoft. Puedes obtener ayuda de la comunidad o abrir una incidencia en GitHub si se produce un problema.
Para consultar un pedido de un cliente, ejecute Submit-PartnerCustomerCart para completar el pedido.
# $customerId
# $cartId
Submit-PartnerCustomerCart -CartId $cartId -CustomerId $customerId
Solicitud REST
Sintaxis de la solicitud
Método | URI de solicitud |
---|---|
POST | {baseURL}/v1/customers/{customer-id}/carts/{cart-id}/checkout HTTP/1.1 |
Parámetros del identificador URI
Use los siguientes parámetros de ruta de acceso para identificar al cliente y especificar el carro que se va a desprotegir.
Nombre | Type | Obligatorio | Descripción |
---|---|---|---|
customer-id | string | Sí | Identificador de cliente con formato GUID que identifica al cliente. |
cart-id | string | Sí | Identificador de carro con formato GUID que identifica el carro. |
Encabezados de solicitud
Para obtener más información, consulta Encabezados REST del Centro de partners.
Cuerpo de la solicitud
Ninguno.
Ejemplo de solicitud
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
Importante
A partir de junio de 2023, la versión 3.4.0 más reciente del SDK de .NET del Centro de partners ahora está archivada. Puede descargar esta versión del SDK de GitHub, junto con un archivo Léame que contiene información útil.
Se recomienda a los partners seguir usando las API REST del Centro de partners.
Respuesta REST
Si se ejecuta correctamente, el cuerpo de la respuesta contiene el recurso CartCheckoutResult rellenado.
Si el carro contiene una o varias suscripciones, los valores de identificador de suscripción respectivos solo aparecen en la respuesta REST si las suscripciones correspondientes se aprovisionan en el momento de la llamada API. Las suscripciones de aprovisionamiento se producen de forma asincrónica y, por lo tanto, es posible que los valores de identificador de suscripción no siempre estén visibles en la respuesta REST de la llamada de desprotección del carro. Sin embargo, una vez aprovisionadas las suscripciones respectivas, se puede acceder a sus valores de identificador de suscripción a través de las llamadas a get orders and Get Order by ID API.
Códigos de error y de respuesta correctos
Cada respuesta incluye un código de estado HTTP que indica éxito o error y más información de depuración. Use una herramienta de seguimiento de red para leer este código, tipo de error y otros parámetros. Para obtener la lista completa, consulte Códigos de error.
Ejemplo de respuesta para software, varias reservas, plan de Azure y SKU de productos de terceros
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": {...},
...
}
],
...
}
Ejemplo de respuesta para una nueva suscripción basada en licencias comerciales
{
"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"
}
}