Sobre o Web Service

Aprenda a sincronizar vendas, movimentações de valores nos caixas e transações TEFs de uma de Ponto de Venda à uma Retaguarda da Saurus.

Visão geral

O Web Service Recepção é um dos três serviços desenvolvidos pelo time da Saurus que propicia a sincronização de vendas da Retaguarda com o PDV. A principal funcionalidade, envArqIntegracao, oferece o envio e alteração de vendas, bem como lançar movimentações de valores no caixa e transações TEFs. Ao longo da documentação, você poderá aprender tudo sobre as ações deste serviço.

Glossário

Entenda os principais termos aplicados nas páginas da documentação:

Termo

Descrição

Adquirente

Empresa administradora das transações financeiras.

Arquivo de Envio

Arquivo XML compactado submetido na requisição.

Arquivo de Retorno

Arquivo XML compactado retornado na resposta.

Campo

Utilizado como sinônimo para elemento de arquivos XML.

CCe

Carta de Correção Eletrônica.

Método

Endpoint do Web Service.

PDV

Ponto de Venda.

Retaguarda

Sistema de gestão responsável pela manutenção dos cadastros. Exemplo: Saurus V4 - saiba mais.

Sangria

Transferência de valores que estão em excesso no caixa.

Suprimento

Adição de dinheiro ao caixa.

TEF

Transferência eletrônica de fundos.

SOAP e WSDL

A comunicação com o Service Envios é realizada através do protocolo SOAP, especificado pela W3C - World Wide Web Consortium. As requisições podem ser feitas com as versões 1.1 e 1.2 do Simple Object Access Protocol, que são detalhadas oficialmente aqui.

Confira um exemplo:

POST /v001/serviceRecepcao.asmx HTTP/1.1
Host: wsenvios.saurus.net.br
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://saurus.net.br/envArqIntegracao"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <envArqIntegracao xmlns="http://saurus.net.br/">
      <xBytesParametros>base64Binary</xBytesParametros>
      <xSenha>string</xSenha>
    </envArqIntegracao>
  </soap:Body>
</soap:Envelope>

As funcionalidades do Web Service são descritas com o WSDL - Web Service Description Language, que basicamente é um contrato entre o cliente e o servidor. Os métodos, parâmetros de entrada e saída são definidos com essa linguagem. Para mais informações, consulte a documentação do SoapUI.

O detalhamento do serviço pode ser acessado pela seguinte URL:

Arquivos de Envio e Retorno

A comunicação com a Retaguarda é estabelecida a partir dos métodos disponíveis no Web Service - todos eles trabalham com o recebimento de arquivos XML. Para o envio desses arquivos na requisição, eles devem ser compactados em GZip, de modo que os dados informados sejam processados e posteriormente devolvidos na resposta com o mesmo formato.

Por exemplo, considere o XML abaixo:

<xmlIntegracao>
    <Dominio>dev08</Dominio>
    <IdLoja>1</IdLoja>
    <IdCaixa>1</IdCaixa>
    <NumCaixa>1</NumCaixa>
    <IdReg>8bf18368-efce-4ac8-b930-b609f8f61af9</IdReg>
    <ChaveTerminal>38e358ee-3553-4622-81f8-fd9c323f45b4</ChaveTerminal>
    <TpLanc>0</TpLanc>
    <TpArqXml>20</TpArqXml>
</xmlIntegracao>

O procedimento a seguir deve ser feito com o arquivo antes de seu envio, utilizando a linguagem de programação C#:

XElement xArquivo = new XElement("xmlIntegracao");
xArquivo.Add(new XElement("Dominio", xDominio));
xArquivo.Add(new XElement("IdLoja", xIdLoja));
xArquivo.Add(new XElement("IdCaixa", xIdCaixa));
xArquivo.Add(new XElement("NumCaixa", xNumCaixa));
xArquivo.Add(new XElement("IdReg", xIdReg));
xArquivo.Add(new XElement("ChaveTerminal", xChaveTerminal));
xArquivo.Add(new XElement("TpLanc", xTpLanc));
xArquivo.Add(new XElement("TpArqXml", xTpArqXml));
byte[] xArquivoEnvio = Zip.ComprimirArquivo(Encoding.UTF8.GetBytes(xArquivo.ToString(SaveOptions.DisableFormatting)));

Fique tranquilo, pois os arquivos completos que precisam ser enviados, e os que são retornados, estão documentados nas próximas seções.

Autenticação nos métodos

Os métodos do Web Service exigem o envio de um elemento denominado xSenha, que permite a requisição SOAP ser feita com sucesso. Para obter essa senha criptografada, você deve primeiramente nos contatar.

Caso esteja interessado, clique aqui e envie sua mensagem.

Respostas padronizadas

Os métodos do Service Envios devolvem elementos padronizados em suas respostas:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <envArqIntegracaoResponse xmlns="http://saurus.net.br/">
      <envArqIntegracaoResult>base64Binary</envArqIntegracaoResult>
      <xRetNumero>int</xRetNumero>
      <xRetTexto>string</xRetTexto>
    </envArqIntegracaoResponse>
  </soap:Body>
</soap:Envelope>

No caso, o método envArqIntegracao foi usado de exemplo, logo os elementos Response e Result carregam o seu nome. Em contrapartida, xRetNumero e xRetTexto estão igualmente identificados em todas as respostas.

Elemento

Descrição

[nome do método]Response

Elemento raiz dentro do corpo da mensagem.

[nome do método]Result

Arquivo XML retornado do método.

xRetNumero

Retorna 0 em sucesso, e 1 em erro.

xRetTexto

Descrição da resposta do método.

Last updated