ÍNDICE
Índice maxLevel 10 minLevel 2 exclude ÍNDICE style circle
Veja abaixo as informações para utilização da API Pedidos Online.
Servidor WEB:
Homologação | POST: http://hchefweb.bematech.com.br/IntegracaoPedidosOnline/ |
---|
Produção | POST: http://chefweb.bematech.com.br/IntegracaoPedidosOnline/ |
---|
Em ambiente intranet o parâmetro CodigoEstabelecimento não precisa ser informado nas chamadas dos serviços.
O serviço deve ser instalado no servidor de rede local em conjunto com o PDV do Misterchef.
Method: POST
Resquest Format: JSON
Response Format: JSON
A API é dividida nos seguintes módulos:
API - Pedidos Online: Cadastro
API - Pedidos Online: Loja
API - Pedidos Online: Segurança
API - Pedidos Online: Delivery
API - Pedidos Online: Mesa
API - Pedidos Online: Cartão
API - Pedidos Online: Balcão
API - Pedidos Online: Pedido Venda
Abaixo a lista de integrações homologadas. Cada integração deve respeitar seu respectivo código para ser autorizado o acesso no ambiente de produção.
Integração | Código |
Restaurante Web
2tips | 40 |
Delivery direto | 25 |
DNAshopper | 31 |
Fast2Pay | 44 |
Goomer | 9 |
iFood | 2 |
iPizza | 14 |
iRestaurante | 10 |
JaPaguei | 51 |
Liuv | 49 |
MyCheck | 7 |
Neemo | 54 |
O Forno Rio | 3 |
Oca de Savoia |
52 | |
Onyo | 5 |
PedidosJá |
8 |
Reis dos Magos |
13 |
Restaurante Web |
1 |
SemParar |
50 |
Softbr |
11 |
SubDelivery |
4 | |
Via Rio | 12 |
Reis dos Magos
13
iPizza
14
Você Comanda | 26 |
VocêQPad | 6 |
Wabiz | 41 |
O token é composto pelas informações abaixo e o resultado deve ser o Hash MD5 da string concatenada.
CodigoIntegracao | Chave | DataToken
Chave: | Fornecida pela equipe Misterchef, esta chave deve ser alterada periodicamente. |
---|
DataToken: | Data/Hora da geração do token no formato yyyyMMddHHmmsszzz. |
---|
Ex:
CodigoIntegracao: 3
Chave: efdsaTY@!3
DataToken: 01/12/2015 10:22:14-02:00 (fuso horário -02:00) => 20151201102214-0200
Resultado: 3 | efdsaTY@!3 | 20151201102214-0200
MD5: f8dbda2a4b1c94bd5b27e28ed5bc1b12
No Header Authorization (Basic) deve ser informado DataToken (o mesmo valor da geração do token) como Username e o Hash MD5 como Password.
Ex:
DataToken: MD5 Token = 20151201102214-0200:f8dbda2a4b1c94bd5b27e28ed5bc1b12
O resultado deve ser convertido em Base64 e concatenado com o texto "Basic " no inicio.
Basic MjAxNTEyMDExMDIyMTQtMDIwMDpmOGRiZGEyYTRiMWM5NGJkNWIyN2UyOGVkNWJjMWIxMg=
Como enviar pedidos Cadastro via API PedidosOnline
O serviço de consultada de cardápio retorna a lista de produtos cadastrados e habilitados por estabelecimento, a separação por subgrupo deve ser interpretada a partir da relação de subgrupos informados nos produtos.
URL do Serviço:
POST: http://{url_do_servidor}/CadastroService.svc/ObterCardapio |
---|
Request
Este método pode ser consultado de dois modos:
1- Cardápio completo
Este modo retorna todos os produtos cadastrado no estabelecimento e habilitados para vendas.
{ parametros: { CodigoEstabelecimento: "96700001", CodigoIntegracao: 1, DataAtualizacao: null } } |
---|
2- Cardápio parcial
Este modo retorna apenas os produtos que tiveram algum tipo de alteração no cadastro após a data informada no parâmetro DataAtualizacao. No exemplo abaixo o serviço retornará todos os produtos com data de alteração superior a 16/01/2015.
{ parametros: { CodigoEstabelecimento: "96700001", CodigoIntegracao: 1, DataAtualizacao: "/Date(1421373600000)/" } } |
---|
Response
ExibirComoAdicional = true deve ser ocultado do cardápio e exibido apenas como opção de adicionais de algum produto vinculado ao mesmo.
O serviço retorna um JSON no formato abaixo:
{ ObterCardapioResult: { Erros: null, Produtos: [ { Codigo: "10011001", Descricao: "COCA COLA LT", PrecoVenda: 2.5, ExibirComoAdicional: false, PermitirVendaFracionada: false, ProdutosAdicionais: [], Subgrupo: "REFRIGERANTES" }, { Codigo: "10011002", Descricao: "FRANGO COM CATUPIRY", PrecoVenda: 35.65, ExibirComoAdicional: false, PermitirVendaFracionada: true, ProdutosAdicionais: [ "10011006", "10011007", "10011008" ], Subgrupo: "PIZZA" }, { Codigo: "10011003", Descricao: "PORTUGUESA", PrecoVenda: 40.98, ExibirComoAdicional: false, PermitirVendaFracionada: true, ProdutosAdicionais: [ "10011008", "10011006", "10011007" ], Subgrupo: "PIZZA" }, { Codigo: "10011004", Descricao: "QUATRO QUEIJOS", PrecoVenda: 50.14, ExibirComoAdicional: false, PermitirVendaFracionada: true, ProdutosAdicionais: [ "10011006", "10011007", "10011008" ], Subgrupo: "PIZZA" }, { Codigo: "10011005", Descricao: "COCA COLA 2L", PrecoVenda: 8.5, ExibirComoAdicional: false, PermitirVendaFracionada: false, ProdutosAdicionais: [], Subgrupo: "REFRIGERANTES" }, { Codigo: "10011006", Descricao: "BORDA CATUPIRY", PrecoVenda: 6.4, ExibirComoAdicional: true, PermitirVendaFracionada: false, ProdutosAdicionais: [], Subgrupo: "ADICIONAIS - BORDAS" }, { Codigo: "10011007", Descricao: "BORDA CHEDDAR", PrecoVenda: 8.9, ExibirComoAdicional: true, PermitirVendaFracionada: false, ProdutosAdicionais: [], Subgrupo: "ADICIONAIS - BORDAS" }, { Codigo: "10011008", Descricao: "BACON", PrecoVenda: 10.59, ExibirComoAdicional: true, PermitirVendaFracionada: false, ProdutosAdicionais: [], Subgrupo: "ADICIONAIS - RECHEIO" } ] } } |
---|
O serviço de consultada de funcionários retorna a lista de funcionários cadastrados e habilitados por estabelecimento.
URL do Serviço POST: http://{url_do_servidor}/CadastroService.svc/ObterFuncionarios
Request
{ parametros: { CodigoEstabelecimento: "96700001PC90", CodigoIntegracao: 1 } } |
---|
Response
O serviço retorna um JSON no formato abaixo:
{ ObterFuncionariosResult: { Erros: null, Funcionarios: [ { Codigo: 1, Nome: "LEANDRO" }, { Codigo: 4, Nome: "KATIANI" }, { Codigo: 3, Nome: "CRISTINA" }, { Codigo: 9999, Nome: "USUARIO MASTER" } ] } } |
---|
Como enviar pedidos Loja via API PedidosOnline
Consulta Status do Pedido
Verifica se o servidor do estabelecimento está conectado e em perfeito (Online) funcionamento ou desligado (Offline).
URL do Serviço POST: http://{url_do_servidor}/LojaService.svc/StatusEstabelecimento
Request
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Online
|
---|
2- Offline
|
---|
Verifica se o funcionário e senha são válidos e ativo.
URL do Serviço POST: http://{url_do_servidor}/SegurancaService.svc/AutenticarFuncionario
Request
{ parametros: { CodigoEstabelecimento: "96700001PC90", CodigoIntegracao: 1, Login: { Codigo: 1, Senha: "123" } } } |
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Válido
{ AutenticarFuncionarioResult: { Erros: null, Valido: true } } |
---|
2- Inválido
{ AutenticarFuncionarioResult: { Erros: null, Valido: false } } |
---|
Como enviar pedidos Delivery via API PedidosOnline
Consulta Status do Pedido
Verifica o status atual do pedido, os possíveis status de um pedido estão descritos na tabela abaixo.
Status | Código |
---|---|
NaoEncontrado | 0 |
Recepcionado | 1 |
Entregando | 2 |
Concluido | 3 |
Cancelado | 4 |
URL do Serviço POST: http://{url_do_servidor}/DeliveryService.svc/StatusPedido
Request
|
---|
Response
|
---|
Response Cancelamento
|
---|
URL do Serviço POST: http://{url_do_servidor}/DeliveryService.svc/EnviarPedido
Request
Método de envio de pedido para os estabelecimentos.
CodigoEstabelecimento
: É o código do estabelecimento no cadastro do Misterchef, 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
).
PagamentoOnline
: indica que o recebimento é de responsabilidade do aplicativo integrado.
RetirarNaLoja indica
: que o cliente irá retirar o produto no estabelecimento, sendo assim não pode ser cobrado taxa de entrega.
Cliente
Sexo
: deve respeitar a tabela abaixo.
Sexo | Código |
Masculino | 0 |
Feminino | 1 |
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.
ObservacaoPedido
: Apresenta observações gerais do Pedido quando necessário.
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 normal não aceita Subitens no atributo ItensFracao
, exemplo de item do tipo Normal:
|
---|
Item fracionado deve conter 2 ou mais itens de composição de fração, exemplo de item do tipo Fracionado:
|
---|
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 |
|
---|
Valor proporcional produtos fracionados 1/3
Produto | Preço | Quantidade | Valor Total |
FRANGO COM CATUPIRY | 35,65 | 0,333 | 11,87 |
PORTUGUESA | 40,98 | 0,333 | 13,64 |
QUATRO QUEIJOS | 50,14 | 0,334 | 16,74 |
Total | 42,25 |
|
---|
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 |
|
---|
Produto de maior valor fracionados 1/3
Produto | Preço | Quantidade | Valor Total |
FRANGO COM CATUPIRY | 35,65 | 0,333 | 11,87 |
PORTUGUESA | 40,98 | 0,333 | 13,64 |
QUATRO QUEIJOS | 50,14 | 0,334 | 16,74 |
Total | 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:
|
---|
O ValorTotal
do item não deve conter o somatório dos adicionais.
3- Itens com quantidade fracionada
Apenas produtos com a configuração PermitirVendaFracionado
habilitada aceitam quantidade com casas decimais(Q), demais produtos aceitam apenas quantidades inteiras(N).
4- 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 |
5- Truncamento
Quando o cálculo de ValorTotal
do item tiver mais do que 2 casas decimais este resultado deve ser truncado em 2 casas conforme exemplo abaixo:
Produto | Preço | Quantidade | Valor Total | Valor Final |
Presunto Seara | 4,25 | 2,654 | 11,2795 | 11,27 |
Tipo
: deve respeitar a tabela abaixo.
Forma de Pagamento | Código |
Dinheiro | 0 |
Cheque | 1 |
Cartão de Credito | 2 |
Cartão de Debito | 3 |
Ticket | 4 |
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 Misterchef.
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 acréscimo 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 | 35,80 |
Taxa de Entrega | 10,00 |
Valor Total Pedido | 45,80 |
Pagamento em dinheiro com nota de R$ 50,00. Neste caso precisa informar o valor de troco:
Pagamento Dinheiro | 50,00 |
Troco | 4,20 |
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Sucesso
Sucesso
= true indica que o pedido foi registrado corretamente.
PrevisaoEntrega
: pode retornar valor nulo dependendo da configuração do estabelecimento, no exemplo abaixo a data de previsão de entrega é as 20/01/2015 13:18:12.
|
---|
2- Erro
Sucesso
= false indica que o pedido não foi registrado no sistema, no atributo Erros encontra a lista de motivos/problemas que ocorreram.
|
---|
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 ou Telefone. |
Cliente com nome inválido. |
Cliente sem endereço. |
Endereço do cliente com logradouro inválido. |
Endereço do cliente com município inválido. |
Endereço do cliente com UF inválida. |
Endereço do cliente com número inválido. |
Endereço do cliente com bairro 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. |
Pedido com retirada na loja e com taxa de entrega maior do que zero. |
Taxa de entrega com valor inválido. |
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}". |
Como enviar pedidos Mesa via API PedidosOnline
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/EnviarPedido
Request
Método de envio de pedido para os estabelecimentos.
CodigoEstabelecimento
: É o código do estabelecimento no cadastro do Misterchef, este código deve ser vinculado ao cadastro de loja da aplicação integrada. Não é necessário informar em ambiente intranet
CodigoIntegracao
: códigos inválidos ou inativados são rejeitados. Respeitar tabela de integração.
Os campos NumeroCadeira
e NomeCliente
são usados para informar o número da cadeira e o nome do cliente, nenhum desses campos é obrigatório, porém o NomeCliente
só será gravado se NumeroCadeira
maior do zero.
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 normal não aceita Subitens no atributo ItensFracao
, exemplo de item do tipo Normal:
|
---|
Item fracionado deve conter 2 ou mais itens de composição de fração, exemplo de item do tipo Fracionado:
|
---|
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 |
|
---|
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 |
|
---|
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- Código Externo
CodigoExterno
: refere-se ao código do item no aplicativo integrado, este código é utilizado para rastreio do item e para validação de duplicidade de itens (Chave: CodigoIntegracao
+ CodigoEstabelecimento
+ CodigoExterno
). Apenas itens de TipoItem
= 0 deve possuir um código externo.
3- 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:
|
---|
O ValorTotal
do item não deve conter o somatório dos adicionais.
4- Itens com quantidade fracionada
Apenas produtos com a configuração PermitirVendaFracionado
habilitada aceitam quantidade com casas decimais(Q), demais produtos aceitam apenas quantidades inteiras(N).
5- 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 |
6- Truncamento
Quando o cálculo de ValorTotal
do item tiver mais do que 2 casas decimais este resultado deve ser truncado em 2 casas conforme exemplo abaixo:
Produto | Preço | Quantidade | Valor Total | Valor Final |
Presunto Seara | 4,25 | 2,654 | 11,2795 | 11,27 |
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Sucesso
Sucesso
= true indica que o pedido foi registrado corretamente.
|
---|
2- Erro
Sucesso
= false indica que o pedido não foi registrado no sistema, no atributo Erros encontra a lista de motivos/problemas que ocorreram.
|
---|
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. |
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. |
Erro ao salvar 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}". |
Quantidade do item "{0}" superior ao máximo permitido. |
Quantidade de adicionais do item "{0}" superior ao máximo permitido. |
Quantidade de adicionais do item "{0}" inferior ao mínimo permitido. |
Item do tipo fracionado não pode conter adicionais. |
Erro ao baixar estoque dos itens vendidos. |
Mesa em digitação em outro terminal. |
Erro ao imprimir pedidos na impressora de boqueta. |
Erro ao imprimir monitor |
Erro ao imprimir |
Erro ao consultar movimentação da mesa. |
Erro ao consultar mesas em aberto. |
Erro ao consultar transferências de itens. |
Erro ao consultar itens cancelados da mesa. |
Erro ao solicitar garçom. |
Número mesa invalido. |
Mesa fechada. |
Código externo {0} duplicado na lista de itens do pedido. |
Código externo do item inválido. |
Código externo {0} duplicado. |
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/ConsultarMesasAbertas
Request
|
---|
Response
|
---|
StatusMesa
retorna o status conforme tabela abaixo.
Status | Código |
Disponivel | 0 |
Aberta | 1 |
EmDigitacao | 2 |
Fechada | 3 |
Consultar Fase Mesas em Aberto
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/ConsultarFaseMesasAbertas
Request
*Consultar disponibilidade por licença.
|
---|
Response
|
---|
Fase
código indicativo da fase da mesa.
StatusMesa
retorna o status conforme tabela abaixo.
Status | Código |
Disponivel | 0 |
Aberta | 1 |
EmDigitacao | 2 |
Fechada | 3 |
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/ConsultarCupomMesa
Request
*Consultar disponibilidade por licença.
|
---|
Response
} |
---|
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/ConsultarMovimentacaoMesa
Request
} |
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/ConsultarTransferenciasItens
Request
} |
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/ConsultarItensCanceladosMesa
Request
|
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/SolicitarGarcom
Request
|
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/FecharConta
Request
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Sucesso
|
---|
2- Erro
|
---|
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. |
Número mesa invalido. |
Mesa sem movimentação. |
Mesa em digitação em outro terminal. |
Mesa fechada. |
Configure o G-ECF para utilizar esta função. |
G-ECF Inativo. |
Erro ao calcular taxa de serviço. |
O valor de desconto deve ser inferior ao total da conta. |
Erro ao fechar conta. |
Erro ao imprimir conta. |
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/ConsultarMovimentacaoCadeiraMesa
Request
Método para consulta da Mesa agrupada pelas cadeiras e retornando todos os pagamentos feitos.
|
---|
Response
O serviço retorna um JSON no formato abaixo:
|
---|
Cadeiras
Cadeiras com os seus itens da mesa, cade cadeira possui seu próprio totalizador.
StatusCadeira
Estado em que a cadeira se encontra.
Status | Código |
Aberta | 0 |
RecebidoSemEmissaoCupom | 1 |
RecebidoComEmissaoCupom | 2 |
CadeiraPaga
Campo que indica que foi ou não emitido o documento fiscal para essa cadeira.
FormasPagamentoCadeira
Retorna todos os pagamentos realizado na mesa.
Tipo
Tipo do pagamento realizado.
Status | Código |
Dinheiro | 0 |
Cheque | 1 |
CartaoDeCredito | 2 |
CartaoDeDebito | 3 |
Ticket | 4 |
ItensMesaSemVinculoCadeira
Retorna todos os itens mesa que não estão vinculados a uma cadeira específica.
TotalGeral
Total geral da mesa no momento da solicitação.
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 |
Numero de mesa inválido. |
Erro ao consultar movimentação de cadeiras. |
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/EfetuarPagamento
Request
Método para enviar o pagamento feito pelo aplicativo mobile, pode ser por cadeira ou geral. Se informar alguma cadeira, o sistema efetuará o pagamento da(s) cadeira(s) específica(s), senão, o sistema efetuará o pagamento de toda a mesa, exceto as cadeiras já pagas.
} |
---|
Cadeiras
Cadeiras que serão pagas nesse envio, pode ser informa n caderias se as mesma já estiverem sido lançadas.
FormasPagamentoCadeira
Envia todas as formas de pagamento utilizadas para esse pagamento específico, exemplo: pagar em um cartão mastercard e um visa.
CodigoReferencia
Codigo do cartão referente ao tipo de integração a ser realizada para que o sistema possa fazer a amarração com o cartão cadastrado.
Tipo
Tipo do pagamento realizad.o
Status | Código |
Dinheiro | 0 |
Cheque | 1 |
CartaoDeCredito | 2 |
CartaoDeDebito | 3 |
Ticket | 4 |
Totais
Total do pagamento.
RetirarServico
Indica se no momento do pagamento, o cliente vai pagar a taxa de serviço.
Cpf
CPF a ser incluído na Documento Fiscal ou programa de fidelidade.
IncluirCPFNaNota
Indica se o cliente vai querer seu CPF Documento Fiscal.
PontosFidelidade
Indica se o cliente que participar do programa de fidelidade da loja utilizando o cpf quando existir.
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 |
Numero de mesa inválido. |
Erro ao enviar pagamento mesa cadeiras. |
Cadeira {0} já recebida. |
Taxa de Serviço informada é inválida. |
Desconto informado é inválido. |
Total dos produtos informado é diferente do total dos produtos das Cadeiras informadas. |
Total da Conta informada é inválida. |
Total da Conta informada é diferente do total da conta no sistema. |
Nenhum forma de pagamento foi informada. |
CPF não informado. |
CPF inválido. |
Existe mais de uma cadeira com o mesmo número informado. |
Total formas de pagamento é diferente do que o valor total das cadeiras. |
A cadeira informada está aguardando a emissão do cupom fiscal. |
Taxa de Serviço informado quando o pagamento está marcado para retirar a Taxa de Serviço. |
A cadeira informada já emitiu cupom fiscal. |
Mesa não possui itens sem vinculo com cadeiras para recebimento completo. |
Totais de pagamento inválido. |
Não existe licença de Fidelidade Web |
Não existe Fidelidade Web Configurado para esse Estabelecimento |
URL do Serviço POST: http://{url_do_servidor}/MesaService.svc/TransferirItensCadeira
Request
Método para transferir itens entre as cadeiras.
|
---|
ItensAdicionar
Itens que serão adicionados na cadeira informada.
ItensRemover
Itens que serão removidos da cadeira informada.
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 |
Código Controle {0} não pertence à mesa. |
Produto {0} não possui quantidade disponível para realizar a movimentacao. |
A quantidade informada para o item {0} ultrapassa a quantidade máxima permitida. |
A quantidade informada para o item {0} ultrapassa a quantidade mínima permitida. |
Item código controle {0} duplicado. |
Item {0} com quantidade de transferência igual ou inferior a zero. |
A quantidade do item {0} diverge da quantidade salva no sistema. |
Response
O serviço retorna um JSON no formato abaixo:
|
---|
URL do Serviço POST: http://{url_do_servidor}/CartaoService.svc/EnviarPedido
Request
Método de envio de pedido para os estabelecimentos.
CodigoEstabelecimento
: É o código do estabelecimento no cadastro do Misterchef, este código deve ser vinculado ao cadastro de loja da aplicação integrada. Não é necessário informar em ambiente intranet
CodigoIntegracao
: códigos inválidos ou inativados são rejeitados. Respeitar tabela de integração.
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 normal não aceita Subitens no atributo ItensFracao
, exemplo de item do tipo Normal:
|
---|
Item fracionado deve conter 2 ou mais itens de composição de fração, exemplo de item do tipo Fracionado:
|
---|
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 |
|
---|
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 |
|
---|
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- Código Externo
CodigoExterno
: refere-se ao código do item no aplicativo integrado, este código é utilizado para rastreio do item e para validação de duplicidade de itens (Chave: CodigoIntegracao
+ CodigoEstabelecimento
+ CodigoExterno
). Apenas itens de TipoItem
= 0 deve possuir um código externo.
3- Número mesa para entrega
NumeroMesaEntrega
: indica a mesa aonde o pedido deve ser entrega, esta informação é obrigatória.
4- 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:
|
---|
O ValorTotal
do item não deve conter o somatório dos adicionais.
5- Itens com quantidade fracionada
Apenas produtos com a configuração PermitirVendaFracionado
habilitada aceitam quantidade com casas decimais(Q), demais produtos aceitam apenas quantidades inteiras(N).
6- 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 |
7- Truncamento
Quando o cálculo de ValorTotal
do item tiver mais do que 2 casas decimais este resultado deve ser truncado em 2 casas conforme exemplo abaixo:
Produto | Preço | Quantidade | Valor Total | Valor Final |
Presunto Seara | 4,25 | 2,654 | 11,2795 | 11,27 |
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Sucesso
Sucesso
= true indica que o pedido foi registrado corretamente.
|
---|
2- Erro
Sucesso
= false indica que o pedido não foi registrado no sistema, no atributo Erros encontra a lista de motivos/problemas que ocorreram.
} |
---|
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. |
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. |
Erro ao salvar 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}". |
Quantidade do item "{0}" superior ao máximo permitido. |
Quantidade de adicionais do item "{0}" superior ao máximo permitido. |
Quantidade de adicionais do item "{0}" inferior ao mínimo permitido. |
Item do tipo fracionado não pode conter adicionais. |
Erro ao baixar estoque dos itens vendidos. |
Mesa em digitação em outro terminal. |
Erro ao imprimir pedidos na impressora de boqueta. |
Erro ao imprimir monitor |
Erro ao imprimir |
Erro ao consultar movimentação da mesa. |
Erro ao consultar mesas em aberto. |
Erro ao consultar transferências de itens. |
Erro ao consultar itens cancelados da mesa. |
Erro ao solicitar garçom. |
Número mesa invalido. |
Mesa fechada. |
Código externo {0} duplicado na lista de itens do pedido. |
Código externo do item inválido. |
Código externo {0} duplicado. |
URL do Serviço POST: http://{url_do_servidor}/CartaoService.svc/ConsultarCartoesAbertos
Request
|
---|
Response
|
---|
StatusCartao
retorna o status conforme tabela abaixo.
Status | Código |
Disponivel | 0 |
Aberto | 1 |
EmDigitacao | 2 |
Fechado | 3 |
URL do Serviço POST: http://{url_do_servidor}/CartaoService.svc/ConsultarMovimentacaoCartao
Request
|
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/CartaoService.svc/ConsultarTransferenciasItens
Request
|
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/CartaoService.svc/ConsultarItensCanceladosCartao
Request
|
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/CartaoService.svc/SolicitarGarcom
Request
|
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/CartaoService.svc/FecharConta
Request
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Sucesso
|
---|
2- Erro
|
---|
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. |
Número mesa invalido. |
Mesa sem movimentação. |
Mesa em digitação em outro terminal. |
Mesa fechada. |
Configure o G-ECF para utilizar esta função. |
G-ECF Inativo. |
Erro ao calcular taxa de serviço. |
O valor de desconto deve ser inferior ao total da conta. |
Erro ao fechar conta. |
Erro ao imprimir conta. |
Como enviar pedidos Balcão via API PedidosOnline
Verifica o status atual do pedido, os possíveis status de um pedido estão descritos na tabela abaixo.
Status | Código |
NaoEncontrado | 0 |
Recepcionado | 1 |
Concluido | 2 |
URL do Serviço POST: http://{url_do_servidor}/BalcaoService.svc/StatusPedido
Request
|
---|
Response
|
---|
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 Misterchef, 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.
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
).
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.
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 normal não aceita Subitens no atributo ItensFracao
, exemplo de item do tipo Normal:
|
---|
Item fracionado deve conter 2 ou mais itens de composição de fração, exemplo de item do tipo Fracionado:
|
---|
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 |
|
---|
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 |
|
---|
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:
|
---|
O ValorTotal
do item não deve conter o somatório dos adicionais.
3- Itens com quantidade fracionada
Apenas produtos com a configuração PermitirVendaFracionado
habilitada aceitam quantidade com casas decimais(Q), demais produtos aceitam apenas quantidades inteiras(N).
4- 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 |
5- Truncamento
Quando o cálculo de ValorTotal
do item tiver mais do que 2 casas decimais este resultado deve ser truncado em 2 casas conforme exemplo abaixo:
Produto | Preço | Quantidade | Valor Total | Valor Final |
Presunto Seara | 4,25 | 2,654 | 11,2795 | 11,27 |
Tipo
: deve respeitar a tabela abaixo.
Forma de Pagamento | Código |
Cartão de Credito | 2 |
Cartão de Debito | 3 |
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 Misterchef.
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 | 35,80 |
Valor Total Pedido | 35,80 |
Pagamento em dinheiro com nota de R$ 35,80
Pagamento Cartao | 35,80 |
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Sucesso
Sucesso
= true indica que o pedido foi registrado corretamente.
|
---|
2- Erro
Sucesso
= false indica que o pedido não foi registrado no sistema, no atributo Erros encontra a lista de motivos/problemas que ocorreram.
|
---|
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. |
Como enviar pedidos Pedido de Vendas via API PedidosOnline
Verifica o status atual do pedido, os possíveis status de um pedido estão descritos na tabela abaixo.
Status | Código |
NaoEncontrado | 0 |
Recepcionado | 1 |
Expedido | 2 |
Entregue | 3 |
Concluido | 4 |
Cancelado | 5 |
Entregue: é para quando o pedido faturado com RetirarNaLoja
URL do Serviço POST: http://{url_do_servidor}/PedidoVendaService.svc/StatusPedido
Request
|
---|
Response
|
---|
Retorna a quantidade de produto disponivel no periodo desejado
URL do Serviço POST: http://{url_do_servidor}/PedidoVendaService.svc/ConsultarProdutoDisponibilidadeEstoque
Request
|
---|
Response
|
---|
URL do Serviço POST: http://{url_do_servidor}/PedidoVendaService.svc/EnviarPedido
Request
Método de envio de pedido para os estabelecimentos.
CodigoEstabelecimento
: É o código do estabelecimento no cadastro do Misterchef, 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.
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
).
PagamentoOnline
: indica que o recebimento é de responsabilidade do aplicativo integrado.
RetirarNaLoja
: indica que o cliente irá retirar o produto no estabelecimento, sendo assim não precisando informar o EnderecoEntrega
e também nao pode ser cobrado taxa de entrega.
Exemplo de retirada na loja ou entrega no endereço do cliente:
|
---|
Exemplo de entrega no 2º endereço do cliente:
|
---|
DataEntrega
: data destinada para entrega no pedido ou retidada em loja
DataRetorno
: data destinada para retorno dos itens do TipoOperacao
Comodato(2) e ou Consignação(3)
Sexo
: deve respeitar a tabela abaixo.
Sexo | Código |
Masculino | 0 |
Feminino | 1 |
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.
RgIE
: deve conter apenas valores numéricos (sem máscara). Para TipoPessoa Física deve ser informado o RG e para TipoPessoa Jurídica deve ser informado o IE.
1- Tipo Operação
Tipo Operação | Código |
Venda | 1 |
Comodato | 2 |
Consignacao | 3 |
Bonificacao | 4 |
TipoOperacao
: Cada item tem deve conter um tipo operação associado, segue exemplo abaixo
|
---|
2- Tipos de Item
TipoItem
: Indica se o item é individual (Normal)
3- 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 |
4- Truncamento
Quando o cálculo de ValorTotal
do item tiver mais do que 2 casas decimais este resultado deve ser truncado em 2 casas conforme exemplo abaixo:
Produto | Preço | Quantidade | Valor Total | Valor Final |
Presunto Seara | 4,25 | 2,654 | 11,2795 | 11,27 |
Tipo
: deve respeitar a tabela abaixo.
Forma de Pagamento | Código |
Dinheiro | 0 |
Cheque | 1 |
Cartão de Credito | 2 |
Cartão de Debito | 3 |
Ticket | 4 |
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 Misterchef.
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 | 35,80 |
Taxa de Entrega | 10,00 |
Valor Total Pedido | 45,80 |
Pagamento em dinheiro com nota de R$ 50,00. Neste caso precisa informar o valor de troco:
Pagamento Dinheiro | 50,00 |
Troco | 4,20 |
|
---|
Response
O serviço retorna um JSON no formato abaixo:
1- Sucesso
Sucesso
= true indica que o pedido foi registrado corretamente.
|
---|
2- Erro
Sucesso
= false indica que o pedido não foi registrado no sistema, no atributo Erros encontra a lista de motivos/problemas que ocorreram
|
---|
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 ou Telefone. |
Cliente com nome inválido. |
Cliente sem endereço. |
Endereço do cliente com logradouro inválido. |
Endereço do cliente com município inválido. |
Endereço do cliente com UF inválida. |
Endereço do cliente com número inválido. |
Endereço do cliente com bairro 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. |
Pedido com retirada na loja e com taxa de entrega maior do que zero. |
Taxa de entrega com valor inválido. |
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}". |
Cliente sem endereço de entrega. |
Data de Entrega invalida. |
Data de Retorno invalida. |
Data de Entrega {0} está menor que a Data Atual {1}. |
Data de Retorno {0} está menor que a Data Atual {1}. |
Data de Retorno {0} é menor que a data de Entrega {1}. |
Endereço de Entrega com logradouro inválido. |
Endereço de Entrega com município inválido. |
Endereço de Entrega com UF inválida. |
Endereço de Entrega com número inválido. |
Endereço de Entrega com bairro inválido. |
Este item {0} podera ser vendido apenas como Tipo Operacao {1}. |
Este item {0} não podera ser vendido como Tipo Operacao {1}. |
Endereço do cliente com CEP inválido. |
Endereço de Entrega com CEP inválido. |
Card documentos | ||||
---|---|---|---|---|
|
Button Texto Outras integrações do PDV Link http://tdn.totvs.com/pages/viewpage.action?pageId=455806087
Button Texto Outras integrações do PDV Link http://tdn.totvs.com/pages/viewpage.action?pageId=458775104
Templatedocumentos |
---|
HTML |
---|
<!-- esconder o menu --> <style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |