CONTEÚDO


01. VISÃO GERAL

O endpoint CancelledItems da API Order Mesa é utilizado para envio do resultado da solicitação de itens cancelados de pedido através do Ponto de Vendas (PDV). Este endpoint recebe o mesmo corpo de requisição utilizado pelo endpoint GetCancelledItems -   API Order Mesa - Get Cancelled Items



02. ENDPOINT


MétodoURL
POSThttps://api-barramento.meuelevestage.com/order/cancelledItens



03. EXEMPLO DE UTILIZAÇÃO

01. Corpo da requisição de um cancelamento especifico:

{
	"success": true,
	"error": null,
	"integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
	"orderKeyType": "TABLE",
	"orderKey": [
		"22"
	],
	"lastestUpdatedStatus": "2024-07-18 09:26:47",
	"items": [
		{
			"id": "39735945",
			"index": "5",
			"name": "MARACUJA",
			"externalCode": "58",
			"quantity": 1,
			"cancellationAgent": "ALBINO",
			"cancellationDateTime": "2024-07-17 14:19:33",
			"cancellationReason": " 55596;",
			"tableCardNumber": "22",
			"productionPoint": "NENHUM"
		}
	]
}

A solicitação foi processada com sucesso e o resultado foi retornado conforme esperado.



02. Corpo da requisição de múltiplos cancelamentos:

{
	"success": true,
	"error": null,
	"integrationHubServiceId": "d01ea5cd-7952-4b77-b0ae-ed93aa32e832",
	"orderKeyType": "TABLE",
	"orderKey": [
		"22",
		"23"
	],
	"lastestUpdatedStatus": "2024-07-18 09:48:03",
	"items": [
		{
			"id": "39735945",
			"index": "5",
			"name": "MARACUJA",
			"externalCode": "58",
			"quantity": 1,
			"cancellationAgent": "ALBINO",
			"cancellationDateTime": "2024-07-17 14:19:33",
			"cancellationReason": " 55596;",
			"tableCardNumber": "22",
			"productionPoint": "NENHUM"
		},
		{
			"id": "3973594011",
			"index": "19",
			"name": "MARACUJA",
			"externalCode": "58",
			"quantity": 1,
			"cancellationAgent": "ALBINO",
			"cancellationDateTime": "2024-07-17 16:04:27",
			"cancellationReason": " 55596;",
			"tableCardNumber": "23",
			"productionPoint": "NENHUM"
		}
	]
}

O corpo da requisição enviada é o mesmo que o corpo da resposta obtida através do endpoint GetCancelledItems

Neste exemplo, os dados retornados incluem:

  • success: Indica se a operação foi bem-sucedida.
  • error: Contém informações sobre erros, se houver.
  • integrationHubServiceId: O identificador do serviço de integração.
  • orderKeyType: O tipo da chave do pedido (neste caso, "TABLE").
  • orderKey: Uma lista de identificadores de pedidos (neste caso, número de mesa).
  • lastestUpdatedStatus: A data e hora da última atualização do status dos pedidos.
  • items: Uma lista de itens cancelados, onde cada item inclui:
    • id: O identificador do item.
    • index: O índice do item.
    • name: O nome do item.
    • externalCode: O código externo do item.
    • quantity: A quantidade do item cancelado.
    • cancellationAgent: O agente que realizou o cancelamento.
    • cancellationDateTime: Data e hora do cancelamento.
    • cancellationReason: O motivo do cancelamento.
    • tableCardNumber: O número da mesa ou do cartão associado ao item cancelado.
    • productionPoint: O ponto de produção associado ao item.

integrationHubServiceId: é um código da integração da loja com o Integration Hub

orderKey: é o código do pedido



04. ERROS

A seguir, alguns dos erros comuns que podem ser apresentados ao lidar com requisições HTTP e suas respectivas respostas:


O código de status HTTP 400, conhecido como "Bad Request" (Requisição Inválida), indica que o servidor não pôde processar a requisição do cliente devido a uma sintaxe inválida, estrutura malformada ou dados inválidos presentes na requisição.


01. JSON enviando faltando um ou mais campos.

{
	"integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
	"orderKeyType": "TABLE",
	"orderKey": [
		"22",
		"23"
	],
	"lastestUpdatedStatus": "2024-07-18 09:48:03",
	"items": [
		{
			"id": "39735945",
			"index": "5",
			"name": "MARACUJA",
			"externalCode": "58",
			"quantity": 1,
			"cancellationAgent": "ALBINO",
			"cancellationDateTime": "2024-07-17 14:19:33",
			"cancellationReason": " 55596;",
			"tableCardNumber": "22",
			"productionPoint": "NENHUM"
		},
		{
			"id": "3973594011",
			"index": "19",
			"name": "MARACUJA",
			"externalCode": "58",
			"quantity": 1,
			"cancellationAgent": "ALBINO",
			"cancellationDateTime": "2024-07-17 16:04:27",
			"cancellationReason": " 55596;",
			"tableCardNumber": "23",
			"productionPoint": "NENHUM"
		}
	]
}
{
	"errors": [
		{
			"key": "success",
			"message": "body.success is required"
		}
	]
}


02. Formando inválido do JSON esperado

{
	"success": true,
	"error": null,
	"integrationHubServiceId": "5ffec6b8-1c55-4a7d-985f-12d13685b553",
	"orderKeyType": "String",
	"orderKey": [
		"22",
		"23"
	],
	"lastestUpdatedStatus": "2024-07-18 09:48:03",
	"items": [
		{
			"id": "39735945",
			"index": "5",
			"name": "MARACUJA",
			"externalCode": "58",
			"quantity": 1,
			"cancellationAgent": "ALBINO",
			"cancellationDateTime": "2024-07-17 14:19:33",
			"cancellationReason": " 55596;",
			"tableCardNumber": "22",
			"productionPoint": "NENHUM"
		},
		{
			"id": "3973594011",
			"index": "19",
			"name": "MARACUJA",
			"externalCode": "58",
			"quantity": 1,
			"cancellationAgent": "ALBINO",
			"cancellationDateTime": "2024-07-17 16:04:27",
			"cancellationReason": " 55596;",
			"tableCardNumber": "23",
			"productionPoint": "NENHUM"
		}
	]
}
{
	"errors": [
		{
			"key": "orderKeyType",
			"message": "body.orderKeyType must be one of [ORDER_ID, TABLE, CARD]"
		}
	]
}

A solicitação é inválida e não pôde ser processada devido a erros na entrada fornecida. Verifique os dados enviados e tente novamente.



O código de status HTTP 401, conhecido como "Unauthorized" (Não Autorizado), indica que a requisição não foi aplicada porque carece de credenciais de autenticação válidas para o recurso alvo. Diferente do código 403 (Forbidden), que significa que o servidor entendeu a requisição, mas se recusa a autorizá-la, o 401 é usado especificamente quando a autenticação é necessária e falhou ou ainda não foi fornecida.


A solicitação não pôde ser processada porque o usuário não possui as permissões necessárias. Verifique suas credenciais e tente novamente.




O código de status HTTP 403, conhecido como "Forbidden" (Proibido), indica que o servidor não entendeu a requisição do cliente por está tentando acessar uma URL incorreta


https://api-barramento.meuelevestage.com/order/cancelledItensS
{
	"message": "'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImludGVncmF0aW9uSHViU2VydmljZUlkIjoiNWZmZWM2YjgtMWM1NS00YTdkLTk4NWYtMTJkMTM2ODViNTUzIiwicHJvdmlkZXJNZXJjaGFudElkIjoiNTAiLCJwcm92aWRlcklkIjoiOTZlZjNjOTEtMDFmMy00ZjQ5LThjMmEtMGUxMDBjNjZlYjE5IiwibG9naW4iOiIiLCJwYXNzd29yZCI6IiIsImF1dGhvcml6YXRpb25Db2RlIjoiIiwiYXV0aG9yaXphdGlvbkNvZGVWZXJpZmllciI6IiIsIm1lcmNoYW50SWQiOiJmOTRkMjBjYy0yMTIwLTRjMDMtYjM5NS0xYWM3MjU1NDI2OGEiLCJtZXJjaGFudE5hbWUiOiJCT1RFQ08gRE8gQUxCSU5PIiwicHJvdmlkZXJOYW1lIjoiR29vbWVyIiwiYXBwSWQiOiI1N2Y0MzczMS1mNGE2LTRjMDgtODYxNy03YzkyMTAwMTZiZmIiLCJhcHBEZXNjcmlwdGlvbiI6IlRPVFZTIENoZWYiLCJhcHBOb3RpZmljYXRpb25UeXBlIjoiU1FTIn0sImV4cCI6MTcyMTMxMjA5MCwiaWF0IjoxNzIxMzA4NDkwfQ._oyafbCtPm9kiKS6jEb9lZjiE11O7aNRh3Z4tJAnpM8' not a valid key=value pair (missing equal-sign) in Authorization header: 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7ImludGVncmF0aW9uSHViU2VydmljZUlkIjoiNWZmZWM2YjgtMWM1NS00YTdkLTk4NWYtMTJkMTM2ODViNTUzIiwicHJvdmlkZXJNZXJjaGFudElkIjoiNTAiLCJwcm92aWRlcklkIjoiOTZlZjNjOTEtMDFmMy00ZjQ5LThjMmEtMGUxMDBjNjZlYjE5IiwibG9naW4iOiIiLCJwYXNzd29yZCI6IiIsImF1dGhvcml6YXRpb25Db2RlIjoiIiwiYXV0aG9yaXphdGlvbkNvZGVWZXJpZmllciI6IiIsIm1lcmNoYW50SWQiOiJmOTRkMjBjYy0yMTIwLTRjMDMtYjM5NS0xYWM3MjU1NDI2OGEiLCJtZXJjaGFudE5hbWUiOiJCT1RFQ08gRE8gQUxCSU5PIiwicHJvdmlkZXJOYW1lIjoiR29vbWVyIiwiYXBwSWQiOiI1N2Y0MzczMS1mNGE2LTRjMDgtODYxNy03YzkyMTAwMTZiZmIiLCJhcHBEZXNjcmlwdGlvbiI6IlRPVFZTIENoZWYiLCJhcHBOb3RpZmljYXRpb25UeXBlIjoiU1FTIn0sImV4cCI6MTcyMTMxMjA5MCwiaWF0IjoxNzIxMzA4NDkwfQ._oyafbCtPm9kiKS6jEb9lZjiE11O7aNRh3Z4tJAnpM8'."
}

O cliente não enviou uma requisição para a URL  incorreta.




O código de status HTTP 404, conhecido como "Not Found" (Não Encontrado), indica que o servidor não encontrou o recurso solicitado. Isso ocorrer quando o token  da requisição da autenticação, é diferente do token gerado utilizando o integrationHubId  diferente do corpo da requisição.


{
	"success": true,
	"error": null,
	"integrationHubServiceId": "f1b874af-96ab-4535-aac3-25118fe586cc",
	"orderKeyType": "TABLE",
	"orderKey": [
		"19"
	],
	"lastestUpdatedStatus": "2024-07-15 17:02:35",
	"items": [
		{
			"id": "406a2a14-ac79-422a-b667-769fa1d2a9a0",
			"status": {
				"code": 505,
				"description": "TABLE_IN_USE"
			},
			"deliveryAgent": null,
			"deliveryDateTime": null,
			"cancellationReason": null,
			"tableCardNumber": "19"
		}
	]
}
{
	"errors": [
		{
			"key": "orderKeyType_orderKey",
			"message": "Order status for: TABLE_22 not found"
		}
	]
}

Uma ou mais informações enviadas não puderam ser encontradas.



05. LINKS


API Order Mesa - Get Status
API Order Mesa - Get Consumption
API Order Mesa - Consumption
API Order Mesa - Payment
API Order Mesa - Payment Result
API Order Mesa - Get Cancelled Items
API Order Mesa - Cancelled Items