Índice maxLevel 2 exclude Índice
...
TOTVS VAREJO PDV OMNISHOPOMNI | 3.2.148.0 |
---|---|
TOTVS VAREJO PDV OMNISHOPOMNI | 3.2.159.0 |
TOTVS VAREJO FRANQUIAS E REDES | 2022.9.15.8 (Corporativo) |
TOTVS AGENT | 19.8.12.0 |
TOTVS PRÉ REQUISITOS OMNISHOPPDV OMNI | 1.0.42.0 |
...
Para que o consumo do métodos disponíveis da API seja possível é necessário que o SelfCheckout realize o processo de autenticação para obter o Token de Acesso.
...
GET: http://<host>:9000/api/usuario/autenticar
Produto (pelo código de barras): http://<host>:9000/api/usuario/autenticar?Login=teste&senha=teste
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "success": true, "message": "Usuario", "data": { "perfilId": 5, "nome": "Usuário Padrão", "cpf": "00000000000", "login": "", "senha": "", "administrador": 1, "tokenAcesso": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXJ9.eyJ1bmlxdWVfbmFtZSI6IlVzdcOhcmlvIFBhZHLDLCJyb2xlIjoiQWRtaW5pc3RyYWRvciIsIm5iZiI6MTY2MDY2Mjc0OCwiZXhwIjoxNjkyMTk4NzQ4LCJpYXQiOjE2NjA2NjI3NDh9.pXmH-sPu0CC2ks8uCP8lgMhHee3OyRq_w0v0IqBmDBs", "perfil": { "nome": "Administrador", "tipoPerfil": 1, "descontoMaximoItem": 100, "descontoMaximoTotal": 100, "funcionalidades": {}, }, "id": 1, "idRetaguarda": "", "situacao": 1, "dataCadastro": "2022-06-01T17:26:39.456566", "dataAtualizacao": "2022-06-01T17:26:39.456566", "_expandables": [] } } |
...
A loja já possuindo dispositivos móveis em funcionamento, deverá somente ser realizado o cadastro do dispositivo totem conforme abaixo. Caso a loja não irá trabalhar com dispositivos móveis, deverá ser realizado o cadastro do dispositivo totem conforme abaixo e posteriormente as configurações padrões de uma instalação para dispositivo móvel (modelo fiscal, série e numeração fiscal (para NFC-e), etc.).
...
O totem deverá armazenar a informação retornada no campo PDV, para que seja enviada a numeração ao finalizar uma venda.
...
Método utilizado para validar cadastro do produto e recuperar os dados do mesmo.
...
Produtos informados no carrinho
Método: api/Produto
Para realizar a busca de um produto de origem de balança emissora de etiqueta é necessário que o parâmetro chave 134 (utiliza balança emissora de etiqueta) esteja ativo e seja configurado os demais valores referente a leitura de etiqueta de acordo com o modelo de balança utilizada.
...
Totalizando um código com 13 dígitos(2100227016391) que será enviado na consulta do produto
Produto (pelo código de barras de balança emissora de etiqueta): EXEMPLO CHAMADA
A partir dos dados recuperados do código de barra será retornado o Valor total do produto fracionado, quantidade e preço unitário.
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
"Produtos": [ { "Descricao": "69824 EKOS DES HID POLPA CRP CASTANHA NF", "Fracionado": true, "DataAtualizacao": "2021-11-24T08:00:17", "UnidadeMedida": "KG", "DescontoMaximo": 60, "TipoArredondaTrunca": "1", "TipoProduto": 2, "CodigoProduto": "100227", "CodigoAlternativo": "7908132224703", "IdImposto": 2, "IdNcm": 261, "OrigemProduto": "0", "IdRetaguarda": "d22e5b8d-f574-4603-b6a0-b5560c37224d", "Situacao": true, "IdPisCofins": 21542, "Preco": 10, "Quantidade": 1.639, "ValorTotal": 16.39, "Imagem": null, "Estoque": 19989.173, "EscalaRelevante": false, "ValorBaseMediaFCP": 34.9, "CnpjFornecedor": "71673990003940", "Id": 21542, "DataCadastro": "2021-11-24T03:20:18" } ], "Page": { "TotalRecords": 1, "CurrentPage": 1, "PageSize": 100, "OrderBy": "ID ASC", "OrderByColumn": "ID", "OrderByDirection": "ASC", "GroupByColumn": null, "GroupByDirection": null, "TotalPages": 1 }, "Id": null, "DataAtualizacao": null, "Sucesso": true } |
...
Método utilizado para validar cadastro do cliente e recuperar os dados do mesmo. Comunicação com a API do TOTVS Varejo PDV OmnishopOmni/Self Checkout
Método: api/SelfCheckout/BuscarCliente
GET: http://<host>:9000/api/SelfCheckout/BuscarCliente?dto.cpfCnpj=<identificação>
Cliente (pelo CPF): http://<host>:9000/api/SelfCheckout/BuscarCliente?dto.cpfCnpj=71063721881
Cliente (pelo CNPJ): http://<host>:9000/api/SelfCheckout/BuscarCliente?dto.cpfCnpj=27417445000128
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Clientes": [ { "Nome": "João Felipe da Silva", "CpfCnpj": "76224778779", "RgInscricao": "15243912", "TipoDocumento": null, "Endereco": "RUA RUI BARBOSA", "Numero": "5", "Complemento": "", "Bairro": "Jardim Amélia", "Cidade": "Jundiaí", "Estado": "SP", "Cep": "38700-196", "Telefone": "(055)55536-4422", "Celular": "(058)34649-8622", "Email": "[email protected]", "DataNascimento": "1999-03-27T00:00:00", "Sexo": "Masculino", "EstadoCivil": "Solteiro", "AvatarUrl": null, "EnviarPnet": null, "Atividade": "Bronze", "Cracha": null, "PessoaFisica": true, "Fidelidade": null, "Id": 1, "DataCadastro": "2017-12-13T17:38:45.684301", "DataAtualizacao": "2017-12-13T17:38:45.684301", "Situacao": true, "IdRetaguarda": "9a826259-670e-441e-a920-ab5fd2768922" } ], "Id": null, "DataAtualizacao": null, "Erros": [], "Sucesso": true } |
...
Método utilizado para recuperar os dados do vendedor que será atribuído na venda.
...
Tela para informar o código do vendedor Tela de confirmação do vendedor
...
Método utilizado para calcular as promoções da compra. Comunicação com a API do TOTVS Motor de Promoções
...
Método: venda/calcularPromocao
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <beneficioPromocaoes> <beneficioPromocao> <codigoPromocao>[QA] 7 - ParaCada6</codigoPromocao> <descontoValorTotal>0.02</descontoValorTotal> <esgotado>false</esgotado> <mensagemPromocional></mensagemPromocional> <nomePromocao>Para Cada 6 Sai 10</nomePromocao> <produtos> <codigo>2000000</codigo> <desconto>22.98</desconto> <posicaoItem>1</posicaoItem> </produtos> <quantidadeDisponivel>0</quantidadeDisponivel> <vigencia>19/02/2020 a 01/01/2021</vigencia> </beneficioPromocao> <beneficioPromocao> <codigoPromocao>PRMSET20</codigoPromocao> <descontoValorTotal>3.65</descontoValorTotal> <esgotado>false</esgotado> <mensagemPromocional>Promoção 20% mensagem promocional</mensagemPromocional> <nomePromocao>Promoção Setembro 20%</nomePromocao> <quantidadeDisponivel>0</quantidadeDisponivel> <vigencia>10/09/2020 a 30/09/2020</vigencia> </beneficioPromocao> </beneficioPromocaoes> |
Método: venda/finalizar
POST: http://<host>8181/motor2/api/v1/venda/finalizar
...
Retorno esperado: 204 (sucesso)
Método: venda/cancelar
POST: http://<host>8181/motor2/api/v1/venda/cancelar
...
Retorno esperado: 204 (sucesso)
...
Método utilizado para finalizar a venda no emissor fiscal (NFC-e ou SAT). Comunicação com a API TOTVS Varejo PDV OmnishopOmni/Self Checkout
Método: api/SelfCheckout/FecharVenda
POST: api/SelfCheckout/FecharVenda
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "NumeroPDV": 24, "CodigoVendedor": "695", "CnpjLoja": "82373077000171", "CpfFidelidade": 76224778779, "CpfConsumidor": 76224778779, "Descontos": [ { "ValorDesconto":"0.02", "DescricaoMotivoDesconto":"Para Cada 6 Sai 10" }, { "ValorDesconto":"3.65", "DescricaoMotivoDesconto":"Promoção Setembro 20%" } ], "Itens": [ { "CodigoProduto": "2000000", "Quantidade": 6, "Preco": 5.50, "Descontos": [ { "ValorDesconto":"22.98", "DescricaoMotivoDesconto":"Para Cada 6 Sai 10" } ], }, { "CodigoProduto": "1000097", "Quantidade": 3, "Preco": 2.75, "Descontos": [], } ], "Pagamentos": [ { "Tipo": 3, "QuantidadeParcelas": 1, "ValorTotal": 2.60, "Autorizacao": "15635", "Nsu": "000024455", "Administradora": "5", "Bandeira": "00002" }, { "Tipo": 2, "QuantidadeParcelas": 1, "ValorTotal": 12.00, "Autorizacao": "45678", "Nsu": "123444", "Administradora": "5", "Bandeira": "00002" } ] } |
...
Forma de pagamento | Tipo |
---|---|
Outros | 0 |
Dinheiro | 1 |
Crédito | 2 |
Débito | 3 |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Mensagem": "NFC-e", "DadosVenda": { "Processado": true, "Numero": "13", "ChaveConsulta": "13200982373077000171653590000000131330451293", "DataTransmissao": "2020-09-16T21:28:56", "CodigoErro": "", "DetalhesProcessamento": "Lote processado", "Xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><nfeProc versao=\"4.00\" xmlns=\"http://www.portalfiscal.inf.br/nfe\" ><NFe><infNFe versao=\"4.00\" Id=\"NFe13200982373077000171653590000000131330451293\"><ide><cUF>13</cUF><cNF>33045129</cNF><natOp>VENDA</natOp><mod>65</mod><serie>359</serie><nNF>13</nNF><dhEmi>2020-09-16T21:28:50-03:00</dhEmi><tpNF>1</tpNF><idDest>1</idDest><cMunFG>1302603</cMunFG><tpImp>4</tpImp><tpEmis>1</tpEmis><cDV>3</cDV><tpAmb>2</tpAmb><finNFe>1</finNFe><indFinal>1</indFinal><indPres>1</indPres><procEmi>0</procEmi><verProc>1.0.0.0</verProc></ide><emit><CNPJ>82373077000171</CNPJ><xNome>R DAL RI</xNome><xFant>LOJA MANAUS</xFant><enderEmit><xLgr>RUA NOEL NUTELS</xLgr><nro>1762</nro><xBairro>CIDADE NOVA</xBairro><cMun>1302603</cMun><xMun>MANAUS</xMun><UF>AM</UF><CEP>69095000</CEP><cPais>1058</cPais><xPais>Brasil</xPais></enderEmit><IE>054134722</IE><CRT>3</CRT></emit><dest><CPF>76224778779</CPF><xNome>NF-E EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xNome><indIEDest>9</indIEDest></dest><det nItem=\"1\"><prod><cProd>2000000</cProd><cEAN>7896986231339</cEAN><xProd>NOTA FISCAL EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xProd><NCM>18069000</NCM><CEST>1700600</CEST><indEscala>S</indEscala><CFOP>5405</CFOP><uCom>UN</uCom><qCom>6.0000</qCom><vUnCom>5.5000</vUnCom><vProd>33.00</vProd><cEANTrib>7896986231339</cEANTrib><uTrib>UN</uTrib><qTrib>6.0000</qTrib><vUnTrib>5.5000</vUnTrib><vDesc>24.99</vDesc><indTot>1</indTot></prod><imposto><vTotTrib>0.00</vTotTrib><ICMS><ICMS60><orig>0</orig><CST>60</CST></ICMS60></ICMS><PIS><PISNT><CST>04</CST></PISNT></PIS><COFINS><COFINSNT><CST>04</CST></COFINSNT></COFINS></imposto></det><det nItem=\"2\"><prod><cProd>1000097</cProd><cEAN>7896986231469</cEAN><xProd>TRUFFON ART CEREJA 30G</xProd><NCM>18069000</NCM><CEST>1700600</CEST><indEscala>S</indEscala><CFOP>5405</CFOP><uCom>UN</uCom><qCom>3.0000</qCom><vUnCom>2.7500</vUnCom><vProd>8.25</vProd><cEANTrib>7896986231469</cEANTrib><uTrib>UN</uTrib><qTrib>3.0000</qTrib><vUnTrib>2.7500</vUnTrib><vDesc>1.66</vDesc><indTot>1</indTot></prod><imposto><vTotTrib>0.00</vTotTrib><ICMS><ICMS60><orig>5</orig><CST>60</CST></ICMS60></ICMS><PIS><PISNT><CST>04</CST></PISNT></PIS><COFINS><COFINSNT><CST>04</CST></COFINSNT></COFINS></imposto></det><total><ICMSTot><vBC>0.00</vBC><vICMS>0.00</vICMS><vICMSDeson>0.00</vICMSDeson><vFCP>0.00</vFCP><vBCST>0.00</vBCST><vST>0.00</vST><vFCPST>0.00</vFCPST><vFCPSTRet>0.00</vFCPSTRet><vProd>41.25</vProd><vFrete>0.00</vFrete><vSeg>0.00</vSeg><vDesc>26.65</vDesc><vII>0.00</vII><vIPI>0.00</vIPI><vIPIDevol>0.00</vIPIDevol><vPIS>0.00</vPIS><vCOFINS>0.00</vCOFINS><vOutro>0.00</vOutro><vNF>14.60</vNF><vTotTrib>0.00</vTotTrib></ICMSTot></total><transp><modFrete>9</modFrete></transp><pag><detPag><indPag>0</indPag><tPag>03</tPag><vPag>12.00</vPag><card><tpIntegra>2</tpIntegra></card></detPag><detPag><indPag>0</indPag><tPag>04</tPag><vPag>2.60</vPag><card><tpIntegra>2</tpIntegra></card></detPag><vTroco>0.00</vTroco></pag><infAdic><infCpl>OBSERVACOES DO CONTRIBUINTE Trib Aprox: R$ 0.00 Fed, 0.00 Est, 0.00 Mun, Total R$ 0.00 Fonte IBPT 0 Vend: Usuario Padrao Compra realizada via Self Checkout ***Compra nao pontuada no Fidelidade***</infCpl></infAdic><infRespTec><CNPJ>82373077000171</CNPJ><xContato>Desenvolvimento</xContato><email>[email protected]</email><fone>1145838800</fone></infRespTec></infNFe><infNFeSupl><qrCode><![CDATA[https://sistemas.sefaz.am.gov.br/nfceweb-hom/consultarNFCe.jsp?p=13200982373077000171653590000000131330451293|2|2|1|F2CE34662E9DC615092FDBAF0E729F6882AA1FAF]]></qrCode><urlChave>http://sistemas.sefaz.am.gov.br/nfceweb-hom/formConsulta.do</urlChave></infNFeSupl><Signature xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><SignedInfo><CanonicalizationMethod Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/><SignatureMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/><Reference URI=\"#NFe13200982373077000171653590000000131330451293\"><Transforms><Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/><Transform Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/></Transforms><DigestMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/><DigestValue>EiGmSq53mQ4BJplbYVJdBS5N/rs=</DigestValue></Reference></SignedInfo><SignatureValue>MVEsNgAp7+VmbgTLpMUT9jafmf6vGnIr67EQ0CfiOWlXXqOVGSWkcPxhOVi6deFqXm+KuJGcRyVtEJesVJVByf7s+RyovHIYaMAXdKEhtvCewSwc0nG8SXSd7dhkGuD54lRYveDU9gobTiNlH0VahsPkrI1gHc/SrLPXoOFm1t82HwEF0wGf9iLBOXZivqVsn1JbzBTt/9at3nLs392AwmLO82dwT2KhqNO0Le3q3RBBEZI6/4hM1BCfx7zHc9Os4zuSc0IzQCiSfYsSw+2DUJgkVQbYXTaCTKknvuodLT2WrfZXwOhlgkTPAlAlI+mFxhDNLTnXaPRczI8cDgp4Hw==</SignatureValue><KeyInfo><X509Data><X509Certificate>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</X509Certificate></X509Data></KeyInfo></Signature></NFe><protNFe versao=\"4.00\"><infProt><tpAmb>2</tpAmb><verAplic>AM3.10-4.00</verAplic><chNFe>13200982373077000171653590000000131330451293</chNFe><dhRecbto>2020-09-16T21:28:50-03:00</dhRecbto><nProt>113200008881996</nProt><digVal>EiGmSq53mQ4BJplbYVJdBS5N/rs=</digVal><cStat>100</cStat><xMotivo>Autorizado o uso da NF-e [Exija sempre a nota. Sao varios premios DIARIOS. Voce podera ser premiado na proxima!]</xMotivo></infProt></protNFe></nfeProc>" }, "Id": null, "DataAtualizacao": null, "Sucesso": true } |
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Mensagem": "NFC-e", "DadosVenda": { "Processado": false, "Numero": "36487", "ChaveConsulta": "13200882373077000171650020000364871724447621", "DataTransmissao": null, "CodigoErro": "869", "DetalhesProcessamento": "Rejeicao: Valor do troco incorreto\r\nLote processado", "Xml": null }, "Id": null, "DataAtualizacao": null, "Sucesso": true } |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Mensagem": "SAT", "DadosVenda": { "Processado": true, "Numero": "1184", "ChaveConsulta": "41200782373077000171599000047660011842473616", "DataTransmissao": "2020-07-30T17:50:24", "CodigoErro": "", "DetalhesProcessamento": "venda SAT realizada com sucesso!", "Xml": "<?xml version=\"1.0\" encoding=\"utf-8\"?><CFe><infCFe Id=\"CFe41200782373077000171599000047660011842473616\" versao=\"0.07\" versaoDadosEnt=\"0.07\" versaoSB=\"020100\"><ide><cUF>41</cUF><cNF>247361</cNF><mod>59</mod><nserieSAT>900004766</nserieSAT><nCFe>001184</nCFe><dEmi>20200730</dEmi><hEmi>175024</hEmi><cDV>6</cDV><tpAmb>2</tpAmb><CNPJ>16716114000172</CNPJ><signAC>SGR-SAT SISTEMA DE GESTAO E RETAGUARDA DO SAT</signAC><assinaturaQRCODE>Nw9w4FR+Nmbl8iet5E0a9bHGvTql7aVk7KkQzRJaUZ2pKhrG9mQcP32V/cJ4o81FXQVww7hVi8X/EDTiQ4CBAEcW08f/O1IBMLsrVcgArtX21a/mzZIypt5m6fDTg5+zQHmLHq/4IzmrmSg01kBaRPqMGpwkljKpi4N4Dhx/FyvJoojf0gp2aYS4/rV1R5UtTcSJIeLrjR2vbykjwSGteI2zt1IBMDMTpTMFbwemoABsvElSQajP7d5zOnxSW0eDNlyQNCRwzptexFZOFmywDVKAmLtIF7tjZUxEWWSB5aq/Ol+YmWdHvf4rxjZsXk0CL+DX+Jm7P7KSa1GEAUb6ag==</assinaturaQRCODE><numeroCaixa>001</numeroCaixa></ide><emit><CNPJ>82373077000171</CNPJ><xNome>BEMATECH S.A</xNome><enderEmit><xLgr>AVENIDA RUI BARBOSA</xLgr><nro>2529</nro><xCpl>: MODULOS 06 07 E 08;</xCpl><xBairro>IPE</xBairro><xMun>SAO JOSE DOS PINHAIS</xMun><CEP>83055320</CEP></enderEmit><IE>111111111111</IE><cRegTrib>1</cRegTrib><indRatISSQN>N</indRatISSQN></emit><dest><CPF></CPF></dest><det nItem=\"1\"><prod><cProd>40012</cProd><cEAN>7891033283910</cEAN><xProd>CBEM PROT SOL OL CAN FPS15 120</xProd><NCM>33049990</NCM><CFOP>5102</CFOP><uCom>PC</uCom><qCom>1.0000</qCom><vUnCom>129.90</vUnCom><vProd>129.90</vProd><indRegra>A</indRegra><vDesc>0.00</vDesc><vOutro>0.00</vOutro><vItem>129.90</vItem><obsFiscoDet xCampoDet=\"codcest\"><xTextoDet>2001500</xTextoDet></obsFiscoDet></prod><imposto><vItem12741>0.00</vItem12741><ICMS><ICMSSN102><Orig>0</Orig><CSOSN>102</CSOSN></ICMSSN102></ICMS><PIS><PISAliq><CST>01</CST><vBC>129.90</vBC><pPIS>0.0065</pPIS><vPIS>0.84</vPIS></PISAliq></PIS><COFINS><COFINSAliq><CST>01</CST><vBC>129.90</vBC><pCOFINS>0.0300</pCOFINS><vCOFINS>3.90</vCOFINS></COFINSAliq></COFINS></imposto></det><total><ICMSTot><vICMS>0.00</vICMS><vProd>129.90</vProd><vDesc>0.00</vDesc><vPIS>0.84</vPIS><vCOFINS>3.90</vCOFINS><vPISST>0.00</vPISST><vCOFINSST>0.00</vCOFINSST><vOutro>0.00</vOutro></ICMSTot><vCFe>129.90</vCFe><vCFeLei12741>0.00</vCFeLei12741></total><pgto><MP><cMP>04</cMP><vMP>129.90</vMP></MP><vTroco>0.00</vTroco></pgto><infAdic><infCpl>Complemento</infCpl><obsFisco xCampo=\"xCampo1\"><xTexto>xTexto1</xTexto></obsFisco></infAdic></infCFe><Signature xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><SignedInfo xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><CanonicalizationMethod Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"></CanonicalizationMethod><SignatureMethod Algorithm=\"http://www.w3.org/2001/04/xmldsig-more#rsa-sha256\"></SignatureMethod><Reference URI=\"#CFe41200782373077000171599000047660011842473616\"><Transforms><Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"></Transform><Transform Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"></Transform></Transforms><DigestMethod Algorithm=\"http://www.w3.org/2001/04/xmlenc#sha256\"></DigestMethod><DigestValue>DsS7NXK8+/0n3mJ1SG0IUo/uELTs5sxFRJPKoC0NhX0=</DigestValue></Reference></SignedInfo><SignatureValue>B8bQ23XpSgojvDTqwJbwFc5xtBi+nW5iaA2Enpbz/rWdGjsnvLffcFvG+ubC6wSH4DZJpanYa3ixES+zUKBED39mUcODYWB6n/L/smETGw45wZsqn2E+A7KJBgHEt4aa3SXCIvgLX/bCcT5X64kwUEE/iMa21nQ/j6Oy2avSZ1msstn7rzrN804gBaqYs/McFcVbCGIY22AiMYk5KZW3LabJJZmyIrtB2NfkSvx+freVnAo7TIGZaFqca3B/q6/q4gYQfZu4aRQJY26BZKGE+CU+DoRAlzkUYs3Jt6oNaBkbCmTMvma4jx3iSx5AmYEkFynTZ7TxMLOOxgOn044Y5w==</SignatureValue><KeyInfo><X509Data><X509Certificate>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</X509Certificate></X509Data></KeyInfo></Signature></CFe>" }, "Id": null, "DataAtualizacao": null, "Sucesso": true } |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Mensagem":"Falha ao erro emissao de cupom fiscal! Modelo Fiscal:SAT", "DadosVenda":{ "Processado":false, "Numero":null, "ChaveConsulta":null, "DataTransmissao":null, "CodigoErro":null, "DetalhesProcessamento":null, "Xml":null }, "Id":null, "DataAtualizacao":null, "Erros":[ { "Codigo":"Totvs.Pdv.Core.HttpClientExtended+TipoErro.2", "MensagemUsuario":"FalhaDeserializacaoHttp", "MensagemDesenvolvedor":"Erro ao deserializar resposta api: 'http://10.172.104.16:9001/TotvsPDV//SAT/EnviarDadosVenda/'", "Excecao":"Mensagem: Falha de comunicação\nStackTrace: em Totvs.Pdv.Core.HttpClientExtended.<Send>d__0`1.MoveNext() na C:\\Fontes\\PdvMobile\\3.2_release\\Fontes\\Pdv\\Framework\\Totvs.Pdv.Core\\HttpClientExtended.cs:linha 127\nSource: Totvs.Pdv.Core\nException: System.Exception: Falha de comunicação\r\n em Totvs.Pdv.Core.HttpClientExtended.<Send>d__0`1.MoveNext() na C:\\Fontes\\PdvMobile\\3.2_release\\Fontes\\Pdv\\Framework\\Totvs.Pdv.Core\\HttpClientExtended.cs:linha 127" } ], "Sucesso":false } |
...
Para o cancelamento da venda, são necessários três passos, adquirir dados da venda para validar status e obter informações utilizadas nos próximos requests, cancelamento fiscal e caso seja retornado sucesso o cancelamento da venda no banco local para integração com o Retaguarda.
...
Método utilizado para localizar dados da venda no banco local. Comunicação com a API TOTVS Varejo PDV OmnishopOmni
Método: api/venda
...
Exemplo de Requisição
http://<host>:9000/api/venda&Coo=205&SerieNota=0&Situacao=1
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "success":true, "message":"Venda", "data":[ { "ccf":"205", "coo":"205", "vendaData":"2022-08-05T10:06:34.631533", "idTransacaoFidelidade":null, "numeroPdv":"1", "numeroReducaoZ":null, "situacaoVenda":0, "valorLiquido":921.5, "valorBruto":1031.5, "valorDescontoAcrescimo":null, "idMotivo":null, "idCaixa":"40", "idImpressoraSat":1, "sincronizadoVenda":1, "sincronizadoCancelamento":0, "sincronizadoFidelidade":0, "identificacaoCliente":null, "identificacaoFidelidade":"05414745889", "cpfCnpjConsumidor":"", "nomeConsumidor":"", "enderecoConsumidor":"", "idOperador":7, "chaveAcesso":"35220800740770000121590011985800002056261339", "idPreVenda":295, "serieNota":0, "tipoVenda":1, "modeloFiscal":1, "cepConsumidor":"", "numeroConsumidor":"", "complementoConsumidor":"", "bairroConsumidor":"", "cidadeConsumidor":"", "estadoConsumidor":"", "promocaoMotor":0, "promocaoSms":0, "campanhaPromocional":0, "codigoPromocional":"", "idCampanhaPromocional":null, "idTransacaoMotorPromocaoTerceiro":null, "idCanalVenda":null, "idPedidoOmni":null, "numeroPedidoOmni":null, "modalidadeVenda":null, "md5Paf":null, "sistemaPdv":2, "limiteCompra":null, "usuario":{}, "vendaDescontosAcrescimos":[{ }], "vendaItens":[{ }], "vendaPagamentos":[{ }], "id":186, "idRetaguarda":"9b7d267d-760c-4366-bedd-f1689409a4ab", "situacao":1, "dataCadastro":"2022-08-05T10:06:34.633754", "dataAtualizacao":"2022-08-05T10:06:34.633755", "_expandables":[ ] } ] } |
...
Método utilizado para cancelar venda no emissor fiscal (NFC-e). Comunicação com a API Fiscal TOTVS Varejo PDV OmnishopOmni
Método: api/NFCe/CancelaNota
...
Método utilizado para cancelar venda no banco local. Comunicação com a API TOTVS Varejo PDV OmnishopOmni
Método: api/Venda
PACTH : http://<host>:9000/api/Venda
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Id": null, "DataAtualizacao": null, "Sucesso": true } |
...
A rotina é responsável por realizar a validação do limite de compras disponível do cliente informado na venda, para que seja possível aplicar benefícios de desconto através do Motor de Promoções, no caso em que o cliente possuir saldo disponível no limite de Compras.
...
Cenário 2 - Limite de Compra indisponível
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
CPF: "00011111111", |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Dados": { "Cpf": "00011111111", "LimiteCompra": 812.2, "SaldoCompra": 0 }, "Id": null, "DataAtualizacao": null, "Sucesso": true } |
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "Dados": null, "Id": null, "DataAtualizacao": null, "Erros": [ { "Codigo": "Totvs.Pdv.Domain.Venda.Concretes.Services.LimiteCompraService+TipoErro.6", "MensagemUsuario": "servicoIndisponivel", "MensagemDesenvolvedor": "Serviço indísponivel. O limite de compra será atualizado após a disponibilidade do serviço." } ], "Sucesso": false } |
...
Configuração para utilização do swagger no SO Windows:
...
Exemplo:
.
...
Todas as vendas realizadas no Self checkout serão gravadas no banco do PDV Omnishop e integradas normalmente na Retaguarda TVFR, onde fica disponível para visualização nos relatórios da aplicação.
...