Páginas filhas
  • API - Pedidos Online: Balcão

Versões comparadas

Chave

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

Índice
maxLevel10
minLevel2
excludeÍNDICE
stylecircle

07. PEDIDO BALCAO

...

Consulta Status do Pedido

Verifica o status atual do pedido, os possíveis status de um pedido estão descritos na tabela abaixo.

...


Aviso

...

title

...

NaoEncontrado

...

0

...

Recepcionado

...

1

...

Concluido

...

2

...

IMPORTANTE

Os campos para informações do TEF e a forma de pagamento PIX estão disponíveis a partir da versão 3.2406.0001 do PDV 


URL do Serviço:

POST: http

...

://{url_do_servidor}/BalcaoService.svc/StatusPedido

 



Request

...

{
   parametros: {
      CodigoEstabelecimento: "96700001",
      CodigoIntegracao: 1,
      CodigoExternoPedido: "2026017555"
   }
}

Response

...

{
   StatusPedidoResult: {
      Erros: [],
      Status: 1
   }
}

Pedido Balcão

...

Bloco de código
titleJson de Publicação para ExecAuto
{
	"parametros": {
		"CodigoExternoPedido": "16",
		"CodigoEstabelecimento": "96700001PC1",
		"CodigoIntegracao": 99,
		"RequestID": null,
		"TipoServico": null
	}
}


Response


Bloco de código
titleJson de Publicação para ExecAuto
{
	"StatusPedidoResult": {
		"Erros": [],
		"Status": 1
	}
}

Status

Código

NaoEncontrado

0

Recepcionado

1

Concluido

2


Pedido Balcão


URL do Serviço:

POST: http

...

://{url_do_servidor}/BalcaoService.svc/EnviarPedido



Request

Método de envio de pedido para os estabelecimentos.

CodigoEstabelecimento: É o código do estabelecimento no cadastro do TOTVS Chef, este código deve ser vinculado ao cadastro de loja da aplicação integrada.

CodigoIntegracao: códigos inválidos ou inativados são rejeitados. Respeitar tabela de integrações.

    • Pedido

CodigoExternoPedido: refere-se ao código do pedido no aplicativo integrado, este código é utilizado para rastreio do pedido e para validação de duplicidade de pedido (Chave: CodigoIntegracao + CodigoEstabelecimento + CodigoExternoPedido).

    • Cliente

TipoPessoa: deve respeitar a tabela abaixo.

Tipo

Código

Física

0

Jurídica

1

CpfCnpj: deve conter apenas valores numéricos (sem máscara). Para TipoPessoa Física deve ser informado o CPF e para TipoPessoa Jurídica deve ser informado o CNPJ.


    • Itens

1-

...

Tipos de Item

TipoItem: Indica se o item é individual (Normal) ou uma composição de frações de 2 ou mais produtos (Fracionado). Deve respeitar a tabela abaixo

Tipo Item

Código

Normal

0

Fracionado

1


Item inteiro

Item normal não aceita Subitens no

...

atributo ItensFracao, exemplo de item do tipo Normal:

...

 

{


Bloco de código
titleJson de Publicação para ExecAuto
{
	"Itens": [
		{
			"TipoItem"

...

: 0,

...


			"Produto": {

...


				"Codigo": "

...

5",

...


				"Descricao": "COCA COLA

...

",

...


				"PrecoVenda": 

...

   },
   Quantidade: 1,
   Acrescimo: 0,
   Desconto: 0,
   AcrescimoDiferencaFracionada: 0,
   Observacao: "com gelo e limao",
   ItensFracao: null,
   ItensAdicionais: [],
   ValorTotal: 2.5
}

Item fracionado deve conter 2 ou mais itens de composição de fração, exemplo de item do tipo Fracionado:

...

{
   TipoItem: 1,
   Produto: null,
   Quantidade: 0,
   Acrescimo: 0,
   Desconto: 0,
   AcrescimoDiferencaFracionada: 0,
   Observacao: null,
   ItensFracao: [
      {
         TipoItem: 0,
         Produto: {
            Codigo: "10011002",
            Descricao: "FRANGO COM CATUPIRY",
            PrecoVenda: 35.65
         },
         Quantidade: 0.5,
         Acrescimo: 0,
         Desconto: 0,
         AcrescimoDiferencaFracionada: 0,
         Observacao: "",
         ItensFracao: null,
         ItensAdicionais: [],
         ValorTotal: 17.82
      },
      {
         TipoItem: 0,
         Produto: {
            Codigo: "10011003",
            Descricao: "PORTUGUESA",
            PrecoVenda: 40.98
         },
         Quantidade: 0.5,
         Acrescimo: 0,
         Desconto: 0,
         AcrescimoDiferencaFracionada: 0,
         Observacao: "",
         ItensFracao: null,
         ItensAdicionais: [],
         ValorTotal: 20.49
      }
   ],
   ItensAdicionais: null,
   ValorTotal: 38.31
}

A soma das quantidades de todos ItensFracao deve formar 1 inteiro, sendo aceito apenas as frações 1/2 (0,5 + 0,5) 1/3 (0,333 + 0,333 + 0,334) ou 1/4 (0,25 + 0,25 + 0,25 + 0,25).

Um item do tipo fracionado pode ser cobrado pelo valor proporcional de cada fração ou pelo preço do produto de maior valor entre os itens da fração, esta configuração é individual de cada estabelecimento, exemplos:

Valor proporcional

...

Produto

...

Preço

...

Quantidade

...

Valor Total

...

FRANGO COM CATUPIRY

...

35,65

...

0,5

...

17,82

...

QUATRO QUEIJOS

...

50,14

...

0,5

...

25,07

...

Total

...

42,89

...

{
   TipoItem: 1,
   Produto: null,
   Quantidade: 0,
   Acrescimo: 0,
   Desconto: 0,
   AcrescimoDiferencaFracionada: 0,
   Observacao: null,
   ItensFracao: [
      {
         TipoItem: 0,
         Produto: {
            Codigo: "10011002",
            Descricao: "FRANGO COM CATUPIRY",
            PrecoVenda: 35.65
         },
         Quantidade: 0.5,
         Acrescimo: 0,
         Desconto: 0,
         AcrescimoDiferencaFracionada: 0,
         Observacao: "",
         ItensFracao: null,
         ItensAdicionais: [],
         ValorTotal: 17.82
      },
      {
         TipoItem: 0,
         Produto: {
            Codigo: "10011004",
            Descricao: "QUATRO QUEIJOS",
            PrecoVenda: 50.14
         },
         Quantidade: 0.5,
         Acrescimo: 0,
         Desconto: 0,
         AcrescimoDiferencaFracionada: 0,
         Observacao: "",
         ItensFracao: null,
         ItensAdicionais: [],
         ValorTotal: 25.07
      }
   ],
   ItensAdicionais: null,
   ValorTotal: 42.89
}

Neste caso o ValorTotal do Item deve ser a igual a soma do ValorTotal de todos ItensFracao.

Produto de maior valor

...

Produto

...

Preço

...

Quantidade

...

Valor Total

...

FRANGO COM CATUPIRY

...

35,65

...

0,5

...

17,82

...

QUATRO QUEIJOS

...

50,14

...

0,5

...

25,07

...

Total

...

50,14

...

{
   TipoItem: 1,
   Produto: null,
   Quantidade: 0,
   Acrescimo: 0,
   Desconto: 0,
   AcrescimoDiferencaFracionada: 0,
   Observacao: null,
   ItensFracao: [
      {
         TipoItem: 0,
         Produto: {
            Codigo: "10011002",
            Descricao: "FRANGO COM CATUPIRY",
            PrecoVenda: 35.65
         },
         Quantidade: 0.5,
         Acrescimo: 0,
         Desconto: 0,
         AcrescimoDiferencaFracionada: 0,
         Observacao: "",
         ItensFracao: null,
         ItensAdicionais: [],
         ValorTotal: 17.82
      },
      {
         TipoItem: 0,
         Produto: {
            Codigo: "10011004",
            Descricao: "QUATRO QUEIJOS",
            PrecoVenda: 50.14
         },
         Quantidade: 0.5,
         Acrescimo: 0,
         Desconto: 0,
         AcrescimoDiferencaFracionada: 0,
         Observacao: "",
         ItensFracao: null,
         ItensAdicionais: [],
         ValorTotal: 25.07
      }
   ],
   ItensAdicionais: null,
   ValorTotal: 50.14
}

Neste caso o ValorTotal do item é igual ao valor ao maior preço entre os ItensFracao, a soma dos totais dos itens da fração difere do valor total, mas com esta configuração o importante é o valor total do item apenas e não das frações.

2-     Adicionais

Produtos adicionais são produtos que só devem ser vendidos associado a outro produto, um exemplo é Borda Recheada. Os adicionais devem respeitar o relacionamento retornado no serviço ObterCardapio, exemplo uma Borda Recheado não pode ser adicional de uma Coca-Cola.  Exemplo de item com adicional:  

...

{
   TipoItem: 0,
   Produto: {
      Codigo: "10011002",
      Descricao: "FRANGO COM CATUPIRY",
      PrecoVenda: 35.65
   },
   Quantidade: 1,
   Acrescimo: 0,
   Desconto: 0,
   AcrescimoDiferencaFracionada: 0,
   Observacao: "",
   ItensFracao: null,
   ItensAdicionais: [
      {
         TipoItem: 0,
         Produto: {
            Codigo: "10011006",
            Descricao: "BORDA CATUPIRY",
            PrecoVenda: 6.4
         },
         Quantidade: 1,
         Acrescimo: 0,
         Desconto: 0,
         AcrescimoDiferencaFracionada: 0,
         Observacao: null,
         ItensFracao: null,
         ItensAdicionais: null,
         ValorTotal: 6.4
      }
   ],
   ValorTotal: 35.65
}

ValorTotal do item não deve conter o somatório dos adicionais.

3-     Itens com quantidade fracionada

...

5.0,
				"PrecoOriginal": 0,
				"PrecoPromocional": 0,
				"Pesavel": true,
				"Processado": false,
				"ProdutoComposto": false,
				"BaixarEstoqueOnline": false,
				"QuantidadeEstoque": 0,
				"Composicoes": null
			},
			"Quantidade": 1,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": "",
			"ItensFracao": null,
			"ItensAdicionais": [],
			"ValorTotal": 5,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	]
}


Item inteiro com adicional

Produtos adicionais são produtos que só devem ser vendidos associado a outro produto, um exemplo é a "Coca Cola". Os adicionais devem respeitar o relacionamento retornado no serviço "ObterCardapio". Exemplo de item com adicional:  


Bloco de código
titleJson de Publicação para ExecAuto
{{
	"Itens": [
		{
			"TipoItem": 0,
			"Produto": {
				"Codigo": "61",
				"Descricao": "ESFIHA DE CARNE",
				"PrecoVenda": 2.0,
				"PrecoOriginal": 0,
				"PrecoPromocional": 0,
				"Pesavel": false,
				"Processado": false,
				"ProdutoComposto": false,
				"BaixarEstoqueOnline": false,
				"QuantidadeEstoque": 0,
				"Composicoes": null
			},
			"Quantidade": 10,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": "",
			"ItensFracao": null,
			"ItensAdicionais": [
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "5",
						"Descricao": "COCA COLA",
						"PrecoVenda": 5.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 1,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": null,
					"ItensFracao": null,
					"ItensAdicionais": null,
					"ValorTotal": 5,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				}
			],
			"ValorTotal": 20,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	]
}


ValorTotal do item não deve conter o somatório dos adicionais.


Item fracionado

Item fracionado deve conter 2 ou mais itens de composição de fração, exemplo de item do tipo Fracionado:


Bloco de código
titleJson de Publicação para ExecAuto
{
	"Itens": [
		{
			"CodigoExterno": null,
			"TipoItem": 1,
			"Produto": null,
			"Quantidade": 0,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": null,
			"ItensFracao": [
				{
					"CodigoExterno": "54077055",
					"TipoItem": 0,
					"Produto": {
						"Codigo": "13",
						"Descricao": "A MODA DA CASA",
						"PrecoVenda": 54.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 27,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				},
				{
					"CodigoExterno": "468713429",
					"TipoItem": 0,
					"Produto": {
						"Codigo": "14",
						"Descricao": "MODA LIGHT",
						"PrecoVenda": 78.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 39,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				}
			],
			"ItensAdicionais": null,
			"ValorTotal": 66,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	]
}
Aviso
titleIMPORTANTE

A soma das quantidades de todos ItensFracao deve formar 1 inteiro, sendo aceito apenas as frações 1/2 (0,5 + 0,5), 1/3 (0,333 + 0,333 + 0,334) ou 1/4 (0,25 + 0,25 + 0,25 + 0,25).


Um item do tipo fracionado pode ser cobrado pelo valor proporcional de cada fração ou pelo preço do produto de maior valor entre os itens da fração, esta configuração é individual de cada estabelecimento, exemplos:


Item fracionado (1/2) - Valor Proprocional


Produto

Preço

Quantidade

Valor Total

A MODA DA CASA

54,00

0,5

R$ 27,00

MODA LIGHT

78,00

0,5

R$ 39,00

Total



R$ 66,00



Bloco de código
titleJson de Publicação para ExecAuto
{
	"Itens": [
		{
			"TipoItem": 1,
			"Produto": null,
			"Quantidade": 0,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": null,
			"ItensFracao": [
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "13",
						"Descricao": "A MODA DA CASA",
						"PrecoVenda": 54.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 27,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				},
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "14",
						"Descricao": "MODA LIGHT",
						"PrecoVenda": 78.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 39,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				}
			],
			"ItensAdicionais": null,
			"ValorTotal": 66,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	]
}


Item fracionado (1/3) - Valor Proprocional


Produto

Preço

Quantidade

Valor Total

A MODA DA CASA

54,00

0,333

R$ 17,98

MODA LIGHT

78,00

0,333

R$ 25,97

QUATRO QUEIJOS

50,14

0,334

R$ 16,74

Total



R$ 60,69

Bloco de código
titleJson de Publicação para ExecAuto
{
	"ItensFracao": [
		{
			"TipoItem": 0,
			"Produto": {
				"Codigo": "13",
				"Descricao": "A MODA DA CASA",
				"PrecoVenda": 54.0,
				"PrecoOriginal": 0,
				"PrecoPromocional": 0,
				"Pesavel": true,
				"Processado": false,
				"ProdutoComposto": false,
				"BaixarEstoqueOnline": false,
				"QuantidadeEstoque": 0,
				"Composicoes": null
			},
			"Quantidade": 0.333,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": "",
			"ItensFracao": null,
			"ItensAdicionais": [],
			"ValorTotal": 17.98,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		},
		{
			"TipoItem": 0,
			"Produto": {
				"Codigo": "14",
				"Descricao": "MODA LIGHT",
				"PrecoVenda": 78.0,
				"PrecoOriginal": 0,
				"PrecoPromocional": 0,
				"Pesavel": true,
				"Processado": false,
				"ProdutoComposto": false,
				"BaixarEstoqueOnline": false,
				"QuantidadeEstoque": 0,
				"Composicoes": null
			},
			"Quantidade": 0.333,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": "",
			"ItensFracao": null,
			"ItensAdicionais": [],
			"ValorTotal": 25.97,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		},
		{
			"TipoItem": 0,
			"Produto": {
				"Codigo": "160",
				"Descricao": "QUATRO QUEIJOS",
				"PrecoVenda": 50.14,
				"PrecoOriginal": 0,
				"PrecoPromocional": 0,
				"Pesavel": true,
				"Processado": false,
				"ProdutoComposto": false,
				"BaixarEstoqueOnline": false,
				"QuantidadeEstoque": 0,
				"Composicoes": null
			},
			"Quantidade": 0.334,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": "",
			"ItensFracao": null,
			"ItensAdicionais": [],
			"ValorTotal": 16.74,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	],
	"ItensAdicionais": null,
	"ValorTotal": 60.69,
	"ValorDescontoItem": 0,
	"ValorServicoItem": 0,
	"ValorDescontoComboItem": 0,
	"ValorAcrescimoItem": 0,
	"TipoOperacao": 0
}


Neste caso o ValorTotal do Item deve ser a igual a soma do ValorTotal de todos ItensFracao.


Item fracionado (1/2) - Produto de Maior Valor


Produto

Preço

Quantidade

Valor Total

A MODA DA CASA

54,00

0,5

R$ 27,00

MODA LIGHT

78,00

0,5

R$ 39,00

Total



R$ 78,00

Bloco de código
titleJson de Publicação para ExecAuto
{
	"Itens": [
		{
			"TipoItem": 1,
			"Produto": null,
			"Quantidade": 0,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": null,
			"ItensFracao": [
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "13",
						"Descricao": "A MODA DA CASA",
						"PrecoVenda": 54.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 27,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				},
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "14",
						"Descricao": "MODA LIGHT",
						"PrecoVenda": 78.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 39,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				}
			],
			"ItensAdicionais": null,
			"ValorTotal": 78,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	]
}



Item fracionado (1/3) - Produto de Maior Valor


Produto

Preço

Quantidade

Valor Total

A MODA DA CASA

54,00

0,333

R$ 17,98

MODA LIGHT

78,00

0,333

R$ 25,97

QUATRO QUEIJOS

50,14

0,334

R$ 16,74

Total



R$ 78,00

Bloco de código
titleJson de Publicação para ExecAuto
{
	"Itens": [
		{
			"TipoItem": 1,
			"Produto": null,
			"Quantidade": 0,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": null,
			"ItensFracao": [
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "13",
						"Descricao": "A MODA DA CASA",
						"PrecoVenda": 54.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.333,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 17.98,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				},
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "14",
						"Descricao": "MODA LIGHT",
						"PrecoVenda": 78.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.333,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 25.97,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				},
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "160",
						"Descricao": "QUATRO QUEIJOS",
						"PrecoVenda": 50.14,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.334,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [],
					"ValorTotal": 16.74,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				}
			],
			"ItensAdicionais": null,
			"ValorTotal": 78.0,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	]
}


Neste caso o ValorTotal do item é igual ao valor ao maior preço entre os ItensFracao, a soma dos totais dos itens da fração difere do valor total, mas com esta configuração o importante é o valor total do item apenas e não das frações.


Item fracionado com Adicionais

Produtos adicionais são produtos que só devem ser vendidos associado a outro produto. Os adicionais devem respeitar o relacionamento retornado no serviço ObterCardapio.


Bloco de código
titleJson de Publicação para ExecAuto
{
	"Itens": [
		{
			"TipoItem": 1,
			"Produto": null,
			"Quantidade": 0,
			"Acrescimo": 0,
			"Desconto": 0,
			"MotivoAcrescimoDesconto": null,
			"AcrescimoDiferencaFracionada": 0,
			"Observacao": null,
			"ItensFracao": [
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "13",
						"Descricao": "A MODA DA CASA",
						"PrecoVenda": 54.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [
						{
							"TipoItem": 0,
							"Produto": {
								"Codigo": "4",
								"Descricao": "HEINEKEN LONG NECK",
								"PrecoVenda": 2.0,
								"PrecoOriginal": 0,
								"PrecoPromocional": 0,
								"Pesavel": true,
								"Processado": false,
								"ProdutoComposto": false,
								"BaixarEstoqueOnline": false,
								"QuantidadeEstoque": 0,
								"Composicoes": null
							},
							"Quantidade": 1,
							"Acrescimo": 0,
							"Desconto": 0,
							"MotivoAcrescimoDesconto": null,
							"AcrescimoDiferencaFracionada": 0,
							"Observacao": null,
							"ItensFracao": null,
							"ItensAdicionais": null,
							"ValorTotal": 2,
							"ValorDescontoItem": 0,
							"ValorServicoItem": 0,
							"ValorDescontoComboItem": 0,
							"ValorAcrescimoItem": 0,
							"TipoOperacao": 0
						}
					],
					"ValorTotal": 27,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				},
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "14",
						"Descricao": "MODA LIGHT",
						"PrecoVenda": 78.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": true,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 0.5,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [
						{
							"TipoItem": 0,
							"Produto": {
								"Codigo": "3",
								"Descricao": "SKOL LONG NECK",
								"PrecoVenda": 10.0,
								"PrecoOriginal": 0,
								"PrecoPromocional": 0,
								"Pesavel": true,
								"Processado": false,
								"ProdutoComposto": false,
								"BaixarEstoqueOnline": false,
								"QuantidadeEstoque": 0,
								"Composicoes": null
							},
							"Quantidade": 1,
							"Acrescimo": 0,
							"Desconto": 0,
							"MotivoAcrescimoDesconto": null,
							"AcrescimoDiferencaFracionada": 0,
							"Observacao": null,
							"ItensFracao": null,
							"ItensAdicionais": null,
							"ValorTotal": 10,
							"ValorDescontoItem": 0,
							"ValorServicoItem": 0,
							"ValorDescontoComboItem": 0,
							"ValorAcrescimoItem": 0,
							"TipoOperacao": 0
						}
					],
					"ValorTotal": 39,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				}
			],
			"ItensAdicionais": null,
			"ValorTotal": 66,
			"ValorDescontoItem": 0,
			"ValorServicoItem": 0,
			"ValorDescontoComboItem": 0,
			"ValorAcrescimoItem": 0,
			"TipoOperacao": 0
		}
	]
}


ValorTotal do item não deve conter o somatório dos adicionais.


Item com quantidade fracionada

Apenas produtos com a configuração PermitirVendaFracionado habilitada aceitam quantidade com casas decimais(Q), demais produtos aceitam apenas quantidades inteiras(N).

...


Casas Decimais

A tabela abaixo indica a limitação de casa decimais de acordo com cada

...

atributo:


Campo

Decimais

Quantidade

3

Desconto

2

Troco

2

Forma de valor

2

Valor Total Item

2

Valor Total Pedido

2

...


Arredondamento

Quando o cálculo de ValorTotal

...

 do item tiver mais do que 2 casas decimais este resultado deve ser

...

arredondado de acordo com o padrão ABNT


Produto

Preço

Quantidade

Valor Total

Valor Final

Presunto Seara

4,25

2,654

11,2795

11,

...

28



Pagamentos


Tipo
: deve respeitar a tabela abaixo.

Forma de Pagamento

Código

Cartão de Credito

2

Cartão de Debito

3

Pix

20

CodigoReferencia: informar o código de cartões/operada (ex: Visa Electron) da aplicação integrada, através deste código é feita correspondência com o cadastro de cartões/operadoras do TOTVS Chef

...

Desconto

...

: deve ser informado em Reais (R$) e não pode ser maior ou igual ao valor total do pedido. Não é aceito desconto e acrescimo por itens, apenas no totalizador do pedido.

Troco

...

: Indica o valor em Reais (R$) de troco que deve ser devolvido ao cliente, quando existir valor de troco este valor deve ser informado na forma de pagamento, exemplo:

Pedido

Total Itens

...

70,

...

Valor Total Pedido

...

35,80

Pagamento em dinheiro com nota de R$ 35,80

...

Pagamento Cartao

...

35,80

...

00

Valor Total Pedido

70,00

PagamentoTEF: Informações de retorno de uma transação TEF, quando for uma transação TEF todos os campos são obrigatórios, exceto EndToEndId que se refere ao PIX

EndToEndId: Chave de retorno de transação PIX

Código Terminal

Poderá ser enviado o código terminal por parte da integradora de ate 50 caracteres.

Bloco de código
titleJson de Publicação para ExecAuto
{
	"parametros": {

...


		"Pedido": {

...


			"CodigoExternoPedido": 

...

"16",
			"CodigoExternoPedidoReduzido": 

...

null,
			"CodigoTerminal": 

...

"52",
			"CupomIntegradora": "

...

",

...


			"Cliente": 

...

{
				"Id": 

...

null,
				"NomeCompleto": "

...

Totvs 

...

Chef",

...


				"TipoPessoa": 0,

...


				"Sexo": 0,

...


				"CpfCnpj": "08291225249",

...


				"Endereco": 

...

null,
				"EnderecoEntrega": 

...

null,
				"ConheceuComo": null,
				"RgIE": null
			},
			"Troco": 0,
			"Desconto": 0,
			"DescontoTaxaEntrega": 0,
			"ValorTotal": 70,
			"Pagamentos": [
				{
					"Tipo": 2,
					"Valor": 70,
					"CodigoReferencia": "3",
					"PagoOnline": false
					"PagamentoTEF": {
                        "NsuTef": "",
                        "NsuHost": "",
                        "CodigoAutorizadora": "",
                        "CodigoBandeira": "",
                        "CnpjAutorizadora": "",
                        "DescricaoBandeira": "",
                        "DescricaoAutorizadora": "",
                        "CodigoAutorizacao": "" 
                        "EndToEndId": "",                      
					}
			     }
			],
			"IncluirCPFNaNota": true,
			"ObservacaoPedido": null,
			"AceitaPedidoAutomaticamente": false,
			"MinutosRejeitaAutomaticamente": 0,
			"Itens": [
				{
					"TipoItem": 0,
					"Produto": {
						"Codigo": "61",
						"Descricao": "ESFIHA DE CARNE",
						"PrecoVenda": 2.0,
						"PrecoOriginal": 0,
						"PrecoPromocional": 0,
						"Pesavel": false,
						"Processado": false,
						"ProdutoComposto": false,
						"BaixarEstoqueOnline": false,
						"QuantidadeEstoque": 0,
						"Composicoes": null
					},
					"Quantidade": 10,
					"Acrescimo": 0,
					"Desconto": 0,
					"MotivoAcrescimoDesconto": null,
					"AcrescimoDiferencaFracionada": 0,
					"Observacao": "",
					"ItensFracao": null,
					"ItensAdicionais": [
						{
							"TipoItem": 0,
							"Produto": {
								"Codigo": "5",
								"Descricao": "COCA COLA",
								"PrecoVenda": 5.0,
								"PrecoOriginal": 0,
								"PrecoPromocional": 0,
								"Pesavel": true,
								"Processado": false,
								"ProdutoComposto": false,
								"BaixarEstoqueOnline": false,
								"QuantidadeEstoque": 0,
								"Composicoes": null
							},
							"Quantidade": 10,
							"Acrescimo": 0,
							"Desconto": 0,
							"MotivoAcrescimoDesconto": null,
							"AcrescimoDiferencaFracionada": 0,
							"Observacao": null,
							"ItensFracao": null,
							"ItensAdicionais": null,
							"ValorTotal": 50,
							"ValorDescontoItem": 0,
							"ValorServicoItem": 0,
							"ValorDescontoComboItem": 0,
							"ValorAcrescimoItem": 0,
							"TipoOperacao": 0
						}
					],
					"ValorTotal": 20,
					"ValorDescontoItem": 0,
					"ValorServicoItem": 0,
					"ValorDescontoComboItem": 0,
					"ValorAcrescimoItem": 0,
					"TipoOperacao": 0
				}
			]
		},
		"CodigoEstabelecimento": "96700001PC13",
		"CodigoIntegracao": 99,
		"RequestID": null,
		"TipoServico": null
	}
}


...

Response

O serviço retorna um JSON no formato abaixo:

...


Sucesso

Sucesso = true indica que o pedido foi registrado corretamente.


Bloco de código
title
{
Json de Publicação para ExecAuto
{
	"EnviarPedidoResult"

...

: {

...


		"Erros": [],

...


		"NumeroPedido": 

...

62681,
		"Sucesso": true

...

   }

	}
}

...



Erro

Sucesso = false indica que o pedido não foi registrado no sistema, no atributo Erros encontra a lista de motivos/problemas que ocorreram.

...

{
   EnviarPedidoResult: {
      Erros: [


Bloco de código
titleJson de Publicação para ExecAuto
{
	"EnviarPedidoResult": {
		"Erros": [
			

...

"Produto "COCA COLA LT" com quantidade zero.",

...


         	"Somatório das formas de pagamento difere do total do pedido."

...

      ],

...


		],
		"NumeroPedido": 0,

...


		"Sucesso": false

...

   }

	}
}


A tabela abaixo tem a relação completa de possíveis erros e validações que devem ser tratados pelo aplicado integrado.


Mensagem de erro

Erro interno de processamento da requisição.

Erro ao enviar pedido.

Não foi possível estabelecer uma conexão com a loja.

Pedido inválido.

Código integração inválido.

Código externo do pedido inválido.

Duplicidade de pedido por código externo.

Total do pedido difere do somatório dos itens.

O pedido deve conter um cliente.

Cliente sem CPF ou CPNJ.

Cliente com nome inválido.

O pedido deve conter no mínimo 1 item.

Item inválido.

Produto "{0}" com quantidade zero.

O valor total do item "{0}" difere do cálculo do sistema.

Produto "{0}" não permite fração.

Produto "{0}" inválido.

Produto "{0}" com preço desatualizado.

Produto "{0}" sem preço de venda.

O pedido deve conter no mínimo uma forma de pagamento.

Formas de pagamento com valor inválido.

Somatório das formas de pagamento difere do total do pedido.

Erro ao salvar pedido no sistema.

Cliente com CPF ou CPNJ inválido.

Erro ao consultar status do pedido no sistema

Erro ao consultar status do estabelecimento.

O valor total do pedido deve ser igual ou superior a R$ 0,01.

Quantidade do item é inválida para uma venda fracionada (1/2, 1/3 ou 1/4).

A soma dos itens da venda fracionada deve completar 1 inteiro.

O valor total do item fracionado deve ser igual ao preço do item de maior valor.

Item fracionado deve conter no mínimo 2 frações (itens).

O valor total do item deve ser truncado em 2 casas decimais.

A quantidade do item deve conter no máximo 3 casas decimais.

O valor total do item fracionado deve ser igual à soma dos valores das frações (itens).

Item do tipo "normal" não aceita itens fração.

Os itens da fração devem ser do tipo "normal".

Os itens adicionais devem ser do tipo "normal".

Produto "{0}" não é um adicional do produto "{1}".

Forma de pagamento não permitido.

TEF Informado para pagamento {0}, informe todos os campos TEF