Árvore de páginas

Versões comparadas

Chave

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

...

  • PDVSync OmniShop instalado.
  • Configuração de variáveis de ambiente DOTNET_ENVIRONMENT e ASPNETCORE_ENVIRONMENT. Elas servem :
    • Função para definir qual é o ambiente
    para
    • o
    qual o
    • Client irá apontar (Produção = Production, Homologação = Quality, ou Desenvolvimento = Development):
      •  DOTNET_ENVIRONMENT
      • ASPNETCORE_ENVIRONMENT
    • Definição das credenciais necessárias para gravar o log centralizado:
      •  LOGCENTRAL_LOGIN
      •  LOGCENTRAL_SENHA
      • LOGCENTRAL_URL
  • Node.Js -
    • Fazer o download do instalador do Node.Js em https://nodejs.org/en/download/.
    • Instalar a versão 16.0 ou superior. Seguir os passos da instalação até a conclusão.
  • .NET -
  • Conhecimento básico da ferramenta do Postman.
  • Solicitar para o suporte do Winthor via ticket:
    • Credenciais para viabilizar as criações dos dados iniciais do PDVSync. Conforme template:
      • Nome do cliente
      • CNPJ
      • E-mail administrativo para cadastro do tenant
    • Serviços clients do PDVSync para a instalação na maquina do PDV.

...

Onde deverá conter as informações de loja, inquilino, parâmetros, etc.

Cadastrados cadastrados e configurados corretamente para realizar a troca de informações com o Client, segue abaixo os passos para configuração do ambiente no Server:

1° - Criação Inquilino

O inquilino é criado normalmente no início de um contrato com uma retaguarda através da API de controle conforme exemplo abaixo:

URL: https://pdvsync-core-controle-qa-aadivv24nq-ue.a.run.app/api/pdvsyncserver/inquilinos

Post

pela equipe do PDVSync pelo email: [email protected], com as seguintes informações:

  • Nome Fantasia da Empresa
  • CNPJ da Empresa

Será retornado o IdInquilino e o token authorization para inclusão no pdvsync e nas api's dos passos seguintes.


2º - Cadastrar os parâmetros, conforme exemplo:

Incluir Authorization OAuth2.0 conforme retornado no email.

endpoint: https://pdvsync.varejo.totvs.com.br/controle/api/pdvsyncserver/parametros

Post

[{
    "idIdentificacaoExternaidInquilino": "IdDoInquilino01-01", → Identificação do inquilino>/*O código do IdInquilino conforme retornado no email.*/
    "nometipoProcesso": " ", → <Nome do inquilino>1,/* OnLine = 0, Descida = 1, Subida = 2*/
    "situacaoquantidadeRegistros": " ", → Podem seguir os seguintes status "1000,
    "tempoChamada": 2000,
    "tempoExpurgoLogs": 365,Inativo(0)", "Ativo(1)", "Pendente(2)"
    "envioDadoTipotipoDado": "0", → tipo de envio do dado para a retaguarda em caso de retornos{
      "envioDadocodigoTipo": "", → dependendo do tipo de envio preencher a informação relevante.
1,
      "connectionStringdescricaoTipo": "Loja", → está relacionado com a informação anterior.
      "lotetipoUtilizador": "0" → não utilizado ainda, utilizar 0 por enquanto.
}

 

O código do IdInquilino é fornecido automaticamente pelo Totvs RAC após o envio do serviço.

...

{
    "success": true,
    "message": "",
    "data": {
        "idIdentificacaoExterna": "Tupan",
        "nome": "Tupan",
        "situacao": 1,
        "envioDadoTipo": 0,
        "envioDado": "",
        "connectionString": "",
        "clientId": null,
        "clientSecret": null,
        "usuario": null,
        "senha": null,
        "tokenUrl": null,
        "id": "4rlMuI3YwrWO8NKtvE8V", → código gerado pelo TOTVS RAC
        "idInquilino": null,
        "dataAtualizacao": "2022-10-04T14:50:25.2424018Z",
        "dataCadastro": "2022-10-04T14:50:25.2424462Z",
        "_expandables": []
    }
}

2º - Cadastrar os parâmetros.

Post

{
    "idInquilino": "LAxcSC2vkgynDwGtWreo",
    "QuantidadeRegistros": 100,
    "TempoChamada": 2,
    "TempoExpurgoLogs": 130000,
    "TipoDado": {
        "CodigoTipo": 14,
        "DescricaoTipo": "Estoque",
        "TipoUtilizador": 1
    },
    "TipoProcesso": 1
}

Lista de Parâmetros:

 

...

codigoTipo

...

descricaoTipo

...

tipoUtilizador

...

tipo

...

47

...

AlteracaoNcm

...

1

...

Down

...

9

...

PisCofins

...

1

...

Down

...

23

...

VendaCustodiaXml

...

2

...

Online

...

0

...

Cliente

...

0

...

Online

...

20

...

Caixa

...

2

...

Up

...

40

...

AlteracaoCliente

...

1

...

Down

...

13

...

Preco

...

1

...

Down

...

1

...

Loja

...

1

...

Down

...

8

...

Ncm

...

1

...

Down

...

3

...

Perfil

...

1

...

Down

...

16

...

DadoComplementar

...

1

...

Down

...

14

...

Estoque

...

1

...

Down

...

18

...

FormaPagto

...

1

...

Down

...

19

...

Venda

...

2

...

Up

...

15

...

Operadora

...

1

...

Down

...

2

...

Motivo

...

1

...

Down

...

6

...

Compartilhamento

...

1

...

Down

...

4

...

Usuario

...

1

...

Down

...

22

...

Troca

...

2

...

Up

...

25

...

Cliente

...

2

...

Up

0,/*ClienteDown = 0, Server = 1, ClienteUp = 2, ClienteOnLine = 3 */
      "tipoProcesso": 0 /*Criacao = 0, Atualizacao = 1, Interno = 2*/
    }
  }]


Lista de Parâmetros:

 

codigoTipo

descricaoTipo

tipoProcesso

0ClienteDown
1LojaDown
2MotivoDown
3PerfilDown
4UsuarioDown
6CompartilhamentoDown
7ImpostoDown
8NcmDown
9PisCofinsDown
12ProdutoDown
13PrecoDown
14EstoqueDown
15OperadoraDown
16DadoComplementarDown
17CondicaoPagtoDown
18FormaPagtoDown
19VendaUp
20CaixaUp
22TrocaUp
23VendaCustodiaXmlUp
25ClienteUp
26PreVendaUp
54AlteracaoEstoqueDown
55PreVendaDown

 

3º - Abrir Lote com Parâmetro 01 - Loja

Incluir Authorization OAuth2.0 conforme retornado no email.

endpoint: https://pdvsync.varejo.totvs.com.br/controle/api/retaguarda/inquilinolotesexternos

Post
{
    "status": "InicioEnvio",
    "tipoLote

Exemplo response:

{
    "success": true,
    "message": "",
    "data": [
        { 1
    ],
        "tipoProcesso": 1,idInquilino": "" /*O código do IdInquilino conforme retornado no email.*/
}

Response:

{
    "success": true,
    "message": "",
    "data": {

            "quantidadeRegistros": 10000,
            "tempoChamadaloteOrigem": 2.0"20221004175001554",
            "tempoExpurgoLogsmensagem": 130000.0null,
            "tipoDadostatus": {0,
                "idtipoLote": null,[
                "codigoTipo": 14,6
        ],
        "descricaoTipoid": "AlteracaoNcmDLoi3SX5HDoPOcDlyf0m",
                "tipoUtilizadoridInquilino": 1"",
                "tipoProcesso": 0,
                "_expandables": []
            },            "id": "6eYL6pa5dsvQsKbKwIXy",
            "idInquilino": "YchOUFQPn2i7plLpsay9",
            "dataAtualizacao": "2022-08-05T15:10:21.604886Z",
    "dataAtualizacao": "2022-10-04T17:50:01.6441804Z",
        "dataCadastro": "2022-0810-05T1504T17:1050:2101.604888Z6442468Z",
            "_expandables": []
    }
}

 

3º - Abrir Lote com Parâmetro 06 - Compartilhamento

4º - Cadastro de uma Loja

**Os dados de cadastros devem ser enviados nas propriedades do json abaixo.

endpoint: https://pdvsync-core-dadosbasicos-prd-q6yz66olca-rj.a.run.app/api/retaguarda/lojas

Post

[
  Post
{
    "statusrazaoSocial": 0,
    " tipoLote ": [
        6
    ],
    "idInquilinonomeFantasia": " 4rlMuI3YwrWO8NKtvE8V ",
}

Response:

{
    "successcnpj": true," ", /*obrigatório e valido - 14 caracteres*/
    "messageinscricaoEstadual": " ", /*obrigatório - 2 e 14 caracteres*/
    "datainscricaoMunicipal": {" ", /*obrigatório - até 15 caracteres*/
        "loteOrigemendereco": " 20221004175001554 ",
        "mensagemnumero": null" ",
        "statuscomplemento": 0" ",
        "tipoLotebairro": [
            6
        ]" ",
        "idcidade": " DLoi3SX5HDoPOcDlyf0m ",
        "idInquilinoestado": " 4rlMuI3YwrWO8NKtvE8V ",
        "dataAtualizacaosiglaUf": " 2022-10-04T17:50:01.6441804Z ",
        "dataCadastrocodigoUFIBGE": " 2022-10-04T17:50:01.6442468Z ", /*obrigatório - 2 caracteres*/
        "_expandables": []
    }
}

4º - Criar Compartilhamento

Post

[
    {
        "IdRetaguardaLojacodigoMunicipioIbge": " ", /*obrigatório - 7 caracteres*/
    "cep": "", /*obrigatorio*/
        "IdRetaguardatelefone": "32796d0b-8399-490e-b972-1db212c514fa",
    ", /*obrigatório - 6 e 14 caracteres*/
    "IdProprietariocodigoIdentificacaoLoja": "32796d0b-8399-490e-b972-1db212c514fa",
    "modeloFiscal": 0,
    "IdInquilinoregimeTributario": "4rlMuI3YwrWO8NKtvE8V"1,
        "NomeCompartilhamentorede": "PDV Lupan Master", /*obrigatório*/
        "NivelnumeroLoja": "0",
        "IdRetaguardaPaiidRetaguardaRede": "",
        "codigoMaster"loteOrigem": " 20221004175001554 "
    },
    {
        "IdRetaguardaLoja"nomeMaster": " 3f054f05-ee67-407b-935d-9db0fc5e7c58 ",
        "IdRetaguardasituacao": "3f054f05-ee67-407b-935d-9db0fc5e7c58"1,
        "IdProprietarioidInquilino": " 3f054f05-ee67-407b-935d-9db0fc5e7c58 ", /*Gerado no passo 1*/
        "IdInquilinoidRetaguarda": "4rlMuI3YwrWO8NKtvE8V3 ",
  /*código da loja na retaguarda*/
      "NomeCompartilhamentoidProprietario": " PDV Lupan Loja ", /*compartilhamento da loja*/
        "NivelloteOrigem": 1,
        " IdRetaguardaPai": "32796d0b-8399-490e-b972-1db212c514fa",
        "loteOrigem": "20221004175001554"
  " /*Gerado no passo 3*/
  }
]Response:

 

5º - Fechar lote de loja

endpoint: https://pdvsync-core-controle-prd-q6yz66olca-rj.a.run.app/api/retaguarda/inquilinolotesexternos/{idInquilino}/{loteOrigem}

metodo: PUT
{idInquilino} - Gerado no passo 01
{loteOrigem} - Gerado no passo 03


6º - Abrir Lote com Parâmetro 06 - Compartilhamento

Incluir Authorization OAuth2.0 conforme retornado no email.

endpoint: https://pdvsync.varejo.totvs.com.br/controle/api/retaguarda/inquilinolotesexternos

Post
{
    "status": "InicioEnvio",
    "tipoLote": [
        6
    ],
    "idInquilino": "" /*O código do IdInquilino conforme retornado no email.*/
}

Response:

{
    "success": true,
    "message": "",
    "data": {
        "loteOrigem": "20221004175001554",
        "mensagem": null,
        "status": 0,
        "tipoLote": [
            6
        ],
        "id": "DLoi3SX5HDoPOcDlyf0m",
        "idInquilino": "",
        "dataAtualizacao": "2022-10-04T17:50:01.6441804Z",
        "dataCadastro": "2022-10-04T17:50:01.6442468Z",
        "_expandables": []
    }
}

7º - Criar Compartilhamento

endpoint: https://pdvsync-core-controle-prd-q6yz66olca-rj.a.run.app/api/retaguarda/compartilhamentos

Post

[
    {
        "IdRetaguardaLoja": "",
        "IdRetaguarda": "32796d0b-8399-490e-b972-1db212c514fa",
        "IdProprietario": "32796d0b-8399-490e-b972-1db212c514fa",
        "IdInquilino": "",
        "NomeCompartilhamento": "PDV Master",
        "Nivel": 0,
        "IdRetaguardaPai": "",
        "loteOrigem": "20221004175001554"
    },
    {
        "IdRetaguardaLoja": {
    "success": true,
    "message": "compartilhamento inserido com sucesso: [{\"IdRetaguarda\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"IdProprietario\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"NomeCompartilhamento\":\"PDV Lupan Master\",\"Nivel\":0,\"IdRetaguardaPai\":\"\",\"LoteOrigem\":\"20221004175001554\",\"Lote\":null,\"IdRetaguardaLoja\":\"\",\"Id\":null,\"IdInquilino\":\"4rlMuI3YwrWO8NKtvE8V\",\"DataAtualizacao\":\"0001-01-01T00:00:00\",\"DataCadastro\":\"0001-01-01T00:00:00\",\"_expandables\":[]},{\"IdRetaguarda\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"IdProprietario\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"NomeCompartilhamento\":\"PDV Lupan Loja\",\"Nivel\":1,\"IdRetaguardaPai\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"LoteOrigem\":\"20221004175001554\",\"Lote\":null,\"IdRetaguardaLoja\":\ "3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"Id\":null,\"IdInquilino\":\"4rlMuI3YwrWO8NKtvE8V\",\"DataAtualizacao\":\"0001-01-01T00:00:00\",\"DataCadastro\":\"0001-01-01T00:00:00\",\"_expandables\":[]}].",
    "data": null
}

 

5º - Fechar o Lote 

https://pdvsync-core-controle-qa-aadivv24nq-ue.a.run.app/api/retaguarda/inquilinolotesexternos/{idInquilino}/{loteOrigem}

...


        "IdRetaguarda": "3f054f05-ee67-407b-935d-9db0fc5e7c58",
        "IdProprietario": "3f054f05-ee67-407b-935d-9db0fc5e7c58",
        "IdInquilino": "",
        "NomeCompartilhamento": "PDV Loja",
        "Nivel": 1,
        "IdRetaguardaPai": "",
        "loteOrigem": "20221004175001554"
    }
]


Response:

{
    "success": true,
    "message": "compartilhamento inserido com sucesso: [{\"IdRetaguarda\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"IdProprietario\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"NomeCompartilhamento\":\"PDV Master\",\"Nivel\":0,\"IdRetaguardaPai\":\"\",\"LoteOrigem\":\"20221004175001554\",\"Lote\":null,\"IdRetaguardaLoja\":\"\",\"Id\":null,\"IdInquilino\":\"\",\"DataAtualizacao\":\"0001-01-01T00:00:00\",\"DataCadastro\":\"0001-01-01T00:00:00\",\"_expandables\":[]},{\"IdRetaguarda\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"IdProprietario\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"NomeCompartilhamento\":\"PDV Loja\",\"Nivel\":1,\"IdRetaguardaPai\":\"32796d0b-8399-490e-b972-1db212c514fa\",\"LoteOrigem\":\"20221004175001554\",\"Lote\":null,\"IdRetaguardaLoja\":\"3f054f05-ee67-407b-935d-9db0fc5e7c58\",\"Id\":null,\"IdInquilino\":\"\",\"DataAtualizacao\":\"0001-01-01T00:00:00\",\"DataCadastro\":\"0001-01-01T00:00:00\",\"_expandables\":[]}].",
    "data": null
}

 

8º - Fechar o Lote 

endpoint:

 

6º - Abrir lote com Parâmetro 01 - Loja

Post

{
    "status": 0,
    "tipoLote": [
        1
    ],
    "idInquilino": "4rlMuI3YwrWO8NKtvE8V",
}

 

7º - Cadastro de uma Loja

Post

[
  {
    "razaoSocial": " ",
    "nomeFantasia": " ",
    "cnpj": " ",
    "inscricaoEstadual": " ", --
    "inscricaoMunicipal": " ",
    "endereco": " ",
    "numero": " ",
    "complemento": " ",
    "bairro": " ",
    "cidade": " ",
    "estado": " ",
    "siglaUf": " ",
    "codigoUFIBGE": " ",
    "codigoMunicipioIbge": " ",
    "cep": "",
    "telefone": "",
    "codigoIdentificacaoLoja": "",
    "modeloFiscal": "",
    "regimeTributario": "",
    "rede": "",
    "numeroLoja": "0",
    "idRetaguardaRede": "",
    "codigoMaster": " ",
    "nomeMaster": " ",
    "situacao": 1,
    "idInquilino": " ", - Gerado no passo 1
    "idRetaguarda": "3 ", - Gerado no passo 4
    "idProprietario": " ",- Gerado no passo 4
    "loteOrigem": " " - Gerado no passo 6
  }
]

 

8º - Fechar lote de loja

https://pdvsync-core-controle-qaprd-aadivv24nqq6yz66olca-uerj.a.run.app/api/retaguarda/inquilinolotesexternos/{idInquilino}/{loteOrigem}

metodo: PUT

{idInquilino} - Gerado no passo 01
{loteOrigem} - Gerado no passo 06anterior

 

9º - Cadastrar os parâmetros comerciais para a consulta de operações de vendas e caixa

URL: https://pdvsync-core-comercial-qa-aadivv24nq-ue.a.run.app.varejo.totvs.com.br/comercial/api/pdvsyncserver/parametros

Post

[
  {
    "idInquilino": "vAh0y1bKvHMfwsZxDKfW", - /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 1,
    "tipo": 1,
    "valor": "10"
  },
  {
    "idInquilino": "vAh0y1bKvHMfwsZxDKfW",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 2,
    "tipo": 2,
    "valor": "10"
  },
  {
    "idInquilino": "vAh0y1bKvHMfwsZxDKfW",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 3,
    "tipo": 3,
    "valor": "10"
  },
  {
    "idInquilino": "vAh0y1bKvHMfwsZxDKfW",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 4,
    "tipo": 4,
    "valor": "10"
  },
  {
    "idInquilino": "vAh0y1bKvHMfwsZxDKfW",
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 5,
    "tipo": 0,
    "valor": "https://pdvsync-core-fila-qa-aadivv24nq-ue.a.run.app/api/stub/historicovenda"
  }

Serviços Clients

...

  •  API – Responsável pela comunicação entre o PDV e os Serviços de UP e Down.
  • Controle – Responsável por informar aos Serviços de DOWN que existe informações novas para serem baixadas no PDV.
  • Up – Serviço responsável pela subida de informações do PDV para o Server.
  • Down – Serviço responsável pela baixa de informações do Server para o PDV.

 Instalação dos Serviços UP, DOWN, CONTROLE e API:

  • Criar a pasta C:\PDVSync e executar a instalação dos serviços disponibilizados pelo time do suporte.
  • Acessar a pasta C:\PDVSync descompactar o arquivo baixado acima e executar o arquivo "servicos.bat" como Administrador.
  • Após os passos acima os serviços Api, Up, Down e Controle serão instalados e iniciados.

  Desinstalação dos Serviços UP, DOWN, CONTROLE e API:

...

",
    "codigo": 4,
    "tipo": 4,
    "valor": "10"
  },
  {
    "idInquilino": "",  /*Gerado no passo 01*/
    "dataAtualizacao": "2022-10-07T18:59:54.530Z",
    "dataCadastro": "2022-10-07T18:59:54.530Z",
    "codigo": 5,
    "tipo": 0,
    "valor": "https://pdvsync-core-fila-prd-q6yz66olca-rj.a.run.app/api/stub/historicovenda"
  }

]

10º Baixar Serviços Clients

  •  Processoresponsável pela leitura dessas informações cadastradas no server e fará a troca das informações entre o PDV e o Server. Ele é dividido basicamente em 4 serviços que devem ser instalados no PDV:
    •  API – Responsável pela comunicação entre o PDV e os Serviços de UP e Down.
    • Controle – Responsável por informar aos Serviços de DOWN que existe informações novas para serem baixadas no PDV.
    • Up – Serviço responsável pela subida de informações do PDV para o Server.
    • Down – Serviço responsável pela baixa de informações do Server para o PDV.

 Instalação dos Serviços UP, DOWN, CONTROLE e API:

  • Criar a pasta C:\PDVSync e executar a instalação dos serviços disponibilizados pelo time do suporte.
  • Acessar a pasta C:\PDVSync descompactar o arquivo baixado acima e executar o arquivo "servicos.bat" como Administrador.
  • Após os passos acima os serviços PDVSync.Client.Api.WebApi, PDVSync.Client.Servico.Up, PDVSync.Client.Servico.Down e PDVSync.Client.Servico.Controle serão instalados e iniciados.

  Desinstalação dos Serviços UP, DOWN, CONTROLE e API:

  •  Para desinstalar os serviços acima basta acessar a pasta C:\PDVSync executar o arquivo “servicos-delete.bat”.

18. Documentação APIs

18.1. Configuração do PDV Sync Server para a loja via Postman

Para realizar as configurações para a utilização do PDV Sync no PDV Omnishop, é necessário realizar os cadastros abaixo através das APIs de Parâmetros.

O passo a passo do Postman se encontra no Google Drive no caminho: https://drive.google.com/drive/folders/1KriEZNs0ofg2uBF8u3TLniozko3IA063

Lá se encontra o arquivo com as Collections montadas para a configuração e com as variáveis para a utilização da criação de parâmetros.

1º - Criação do Inquilino

Para a criação do inquilino, utilizar o request 01. Criar Inquilino, informar os valores de acordo com as informações do cliente, realizar a autenticação e em seguida realizar o POST.

Image Added

Após a criação, utilizar o valor do campo IdInquilino na variável para a configuração dos próximos passos.

Image Added

2º - Criação dos Parâmetros Controle

Para a criação dos parâmetros do controle, basta apenas realizar a autenticação e realizar o POST.

Image Added

3º - Criação dos Parâmetros Comercial

Para a criação dos parâmetros comerciais, basta apenas realizar a autenticação e realizar o POST.

Image Added

4º -  Criação do Parâmetro para a subida de Clientes

Para a criação do parâmetro de subida de cliente, basta apenas realizar a autenticação e realizar o POST.

Image Added


Obs.: Para realizar esses procedimentos nos ambientes de desenvolvimento e homologação, seguir os mesmos passos acima, mas utilizar sua respectiva pasta (Passo a Passo - Homologação e Passo a Passo - Desenvolvimento).