Páginas filhas
  • New Order Cartão - Itens com Valor Integral Adicionais e Descontos

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO


01. VISÃO GERAL
Âncora
ver_geral
ver_geral

Esta documentação tem como finalidade demonstrar o formato do JSON para envio de requisição de pedidos com valor integração na API Order Mesa, no endpoint newOrder  para itens com valor integral, adicionais e desconto.



...

02. EXEMPLO DE UTILIZAÇÃO
Âncora
utilizar
utilizar


2.1 - Request

...

Itens com Valor Integral Adicionais e Descontos:

Ao enviar a requisição para este endpoint, o sistema processa a criação de um novo pedido, incluindo itens de valor integral

Bloco de código
titleJSON para pedido com inteiro
linenumberstrue
{
	"integrationHubServiceId": "3fea8768-bbd9-454b-9e7b-40841e9a6812",
	"data": {
		"id": "de703e24-3c8f-441a-aacd-17ac766206a9",
		"type": "TABLE",
		"displayId": "2",
		"createdAt": "2024-06-24T17:35:00",
		"orderTiming": "2024-06-24T17:40:24",
		"preparationStartDateTime": "2024-06-24T18:00:00",
		"merchant": {
			"id": "c312d2ff-1a8f-40ad-8eed-9ae9a908df6e",
			"name": "BOTECO DO ALBINO"
		},
		"items": [
			{
				"id": "4",
				"index": "4",
				"name": "A FRANCESA",
				"externalCode": "1",
				"unit": "UN",
				"quantity": 1,
				"specialInstructions": "Teste",
				"unitPrice": {
					"value": 69.90,
					"currency": "R$"
				},
				"optionsPrice": {
					"value": 1.00,
					"currency": "R$"
				},
				"totalPrice": {
					"value": 69.90,
					"currency": "R$"
				},
				 "options": [
          {
            "index": "5",
            "id": "5",
            "name": "COMPOSICAO A",
            "externalCode": "201",
            "unit": "UN",
            "quantity": 1,
            "unitPrice": {
              "value": 1.00,
              "currency": "R$"
            },
            "originalPrice": {
              "value": 1.00,
              "currency": "R$"
            },
            "totalPrice": {
              "value": 1.00,
              "currency": "R$"
            },
            "productionPoint": "Teste"
          }
        ]
			}
		],
		"otherFees": [],
		 "discounts": [
      {
        "value": 10.00,
        "target": "ITEM",
        "targetId": "4",
        "sponsorshipValues": [
          {
            "name": "MARKETPLACE",
            "value": 0
          }
        ]
      }
    ],
		"total": {
			"items": 60.90,
			"otherFees": 0.00,
			"discount": 10.00,
			"orderAmount": 60.90,
			"additionalFees": 0,
			"deliveryFee": 0
		},
		"payments": null,
		"delivery": null,
		"extraInfo": "Teste",
		"schedule": null,
		"indoor": null,
		"takeout": null,
		"table": {
			"waiterCode": "9999",
			"tableNumber": "2",
			"chairNumber": "1"
		},
		"card": null
	}
}
Nota
titleNota: HTTP Status Code = 200 OK

Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status.


...

03. ERROS
Âncora
erros
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.


3.1 - Formato inválido do JSON esperado:

A requisição foi enviada com um JSON malformado ou inválido, o que impede o sistema de interpretá-la corretamente. Isso ocorre quando a estrutura JSON contém erros de sintaxe, como chaves ou colchetes incorretos.

Bloco de código
titleJSON Inválido
linenumberstrue
{
	"integrationHubServiceId": "3fea8768-bbd9-454b-9e7b-40841e9a6812",
	"data": {
		"id": "b1e26dd8-0a1b-486e-bf62-65e80ddce2f4",
		"type": "TABLE",
		"displayId": 55,
		"createdAt": "2024-06-24T17:35:00",
		"orderTiming": "2024-06-24T17:40:24",
		"preparationStartDateTime": "2024-06-24T18:00:00",
		"merchant": {
			"id": "c312d2ff-1a8f-40ad-8eed-9ae9a908df6e",
			"name": "BOTECO DO ALBINO"
		},
		"items": [
			{
				"id": "54",
				"index": "54",
				"name": "MARACUJA",
				"externalCode": "58",
				"unit": "UN",
				"quantity": 1.0,
				"specialInstructions": "Teste",
				"unitPrice": {
					"value": 61.00,
					"currency": "R$"
				},
				"optionsPrice": {
					"value": 0.0,
					"currency": "R$"
				},
				"totalPrice": {
					"value": 61.00,
					"currency": "R$"
				}
			}
		],
		"otherFees": [],
		"total": {
			"items": 61.0,
			"otherFees": 0,
			"discount": 0.0,
			"orderAmount": 61.0,
			"additionalFees": 0,
			"deliveryFee": 0
		},
		"payments": null,
		"delivery": null,
		"extraInfo": "Teste",
		"schedule": null,
		"indoor": null,
		"takeout": null,
		"table": {
			"waiterCode": "9999",
			"tableNumber": "54",
			"chairNumber": "1"
		},
		"card": null
	}
}
Bloco de código
titleJSON Resposta
linenumberstrue
{
	"errors": [
		{
			"key": "displayId",
			"message": "body.data.displayId must be a string"
		}
	]
}


...


3.2 - JSON enviado com a ausência de um ou mais campos obrigatórios:

Se a requisição estiver faltando um ou mais campos obrigatórios, o servidor responderá com um erro 400. Cada campo requerido deve estar presente para que a operação seja processada corretamente.

Bloco de código
titleJSON Inválido
linenumberstrue
{
	"integrationHubServiceId": "3fea8768-bbd9-454b-9e7b-40841e9a6812",
	"data": {
		"id": "fa3a2d45-3a29-4136-95e7-692d93db8b2b",
		"type": "TABLE",
		"displayId": "55",
		"createdAt": "2024-06-24T17:35:00",
		"orderTiming": "2024-06-24T17:40:24",
		"preparationStartDateTime": "2024-06-24T18:00:00",		
		"items": [
			{
				"id": "54",
				"index": "54",
				"name": "MARACUJA",
				"externalCode": "58",
				"unit": "UN",
				"quantity": 1.0,
				"specialInstructions": "Teste",
				"unitPrice": {
					"value": 61.00,
					"currency": "R$"
				},
				"optionsPrice": {
					"value": 0.0,
					"currency": "R$"
				},
				"totalPrice": {
					"value": 61.00,
					"currency": "R$"
				}
			}
		],
		"otherFees": [],
		"total": {
			"items": 61.0,
			"otherFees": 0,
			"discount": 0.0,
			"orderAmount": 61.0,
			"additionalFees": 0,
			"deliveryFee": 0
		},
		"payments": null,
		"delivery": null,
		"extraInfo": "Teste",
		"schedule": null,
		"indoor": null,
		"takeout": null,
		"table": {
			"waiterCode": "9999",
			"tableNumber": "54",
			"chairNumber": "1"
		},
		"card": null
	}
}

...

Dica
titleSaiba mais!

Para obter detalhes técnicos sobre o envio de requisições ao endpoint newOrder, incluindo a estrutura do corpo da requisição para itens com valor integral, adicionais  acesse a documentação clicando aqui.


...


...