Card |
---|
id | 1.1 |
---|
label | Envio de CadastrosIntegração |
---|
title | Envio de Cadastros |
---|
| 1- Serviços PSH Âncora |
---|
| 1- Serviços da Integração |
---|
| 1- Serviços da Integração |
---|
|
Dica |
---|
| Antes de qualquer coisa ação é de extrema importancia realizar as seguintes analises: Exemplo: Cadastrei um Produto, e o mesmo não foi integrado com o PDVOMNI. Verifique se todos os serviços do PSH verificar se os Serviços da integração estão ativos e em plena execução, sendo eles - RMIPUBLICA
- RMIDISTRIB
- RMIENVIA
- RMIBUSCA
- RMICONTROL
Verifique se o dado cadastrado atende os filtros estabelecidos no cadastro de Processos.Verifique no cadastro do assinantes se o processo está ativo.Após realizar as análises acima, provavelmente no seu monitor de status de integração está apresentando uma falha na integração do registro. Na tabela abaixo temos algumas falhas mapeadas e suas correções. |
| Processo | Falha/Problema ou Mensagem | Solução |
---|
N/A | Mensagem apresentada no console e logloja: - Onde posso verificar se os serviços estão ativos?
- Primeiro lugar para verificar é no AppServer.ini, veja se os serviços acima estão configurados corretamente de acordo com o Serviços da integração.
- Após a analise acima, o segundo lugar onde devemos verificar é no console.log ou no console em tempo de execução, para identificar se os serviços estão executando normalmente.
- Migrei meu ambiente e dentifiquei que os serviços não estão sendo executados e esta apresentando a mensagem:
|
- O serviço não pode ser iniciado devido a uma mudança em seu ambiente. Na imagem abaixo mostra como é apresentado no console.
Expandir |
---|
| Image Added |
- Para solucionar o bloqueio acesse: Configuração Smart Hub
- Serviços do PDV OMNI
Corrigiu os serviços e mesmo assim ainda não integrou os cadastros com o PDV OMNI? Verifique o item Serviços do PDVSYNC |
2- Serviços do PDVSYNC Âncora |
---|
| Serviços PDVSYNC |
---|
| Serviços PDVSYNC |
---|
|
Dica |
---|
| Todos os Serviços do PSH estão ativos? Vamos verificar agora se os serviços do PDVSYNC estão ativos. - No servidor onde esta o seu PDV acesse o Serviços do Windows e verifique se os serviços abaixo estão em execução
- PDVSync Client API
- PDVSync Client Down
- PDVSync Client Servico.Controle
- PDVSync Client Up
Os serviços estão ativos? Então vamos para o proximo passo Processos ativos |
3- Verificando os processos ativos Âncora |
---|
| Processos ativos |
---|
| Processos ativos |
---|
|
Dica |
---|
| Após analisar os itens acima, é de extrema importância verificar se os processos estão ativos no assinante. Antes disso é bom saber o que é um Processo e Assinante: - O que é um Processo?
- O processo, é o tipo de dado que vamos integrar. Quando nos referimos a processo na nossa integração, basicamente estamos falando das tabelas do Protheus. Conforme o exemplo abaixo:
- Processo Cliente = tabela SA1;
- Processo Produto = tabela SB1
- O que é um Assinante?
- O assinante é o sistema que o Protheus vai integrar os processos/dados.
- Agora que você já sabe o que é um processo e assinante, precisamos verificar se no assinante PDVSYNC o processo esta ativo.
- Acesse o modulo Controle de Lojas/ Atualizações/ Smart Hub/ Cadastros/ Assinantes.
- Verifique no Assinate PDVSYNC se o processo que esta tentando integrar esta ativo.
Todos os processos estão ativos? vamos analisar os Filtros para integração |
4- Filtros para integração Âncora |
---|
| Filtros para integração |
---|
| Filtros para integração |
---|
|
Dica |
---|
| - Para que serve o filtro na integração?
O filtro na integração serve para definir regras específicas para os cadastros que serão integrados. Por exemplo, se você quer integrar apenas produtos que têm o campo B1_XYZ preenchido com "A", o filtro permitirá que apenas esses produtos sejam integrados. Assim, você pode determinar apenas os dados que atendem a determinados critérios, evitando que informações irrelevantes ou desnecessárias sejam incluídas na integração. - Aonde fica os filtros?
- Os filtros para integração fica em: Modulo Controle de Lojas/ Smart Hub/ Cadastros/ Processos.
- Verfique se em seu processo tem algum filtro, caso tenha verifque se em seu cadastro de produto atende o filtro em questão.
- Posso criar um Filtro?
- Pode sim, selecione o Processo de deseja incluir o filtro e clique em Alterar.
- No campo filtro preencha com uma instrução SQL, como mostra o GIF abaixo:
Expandir |
---|
| Image Added |
|
5- Ocorrrências no envio de cadastros Dica |
---|
| Se no seu PDV apresentar alguma das mensagens abaixo: - Produto não encontrado
- Produto sem preço
- Produto não possui saldo disponível em estoque
Você já realizou os procedimentos 1- Serviços da integração, 2- Serviços PDVSYNC, 3- Processos ativos, 4- Filtros para integração ? Se sim, esses são alguns cenários que vamos te ajudar a resolver. Abaixo temos algumas ocorrências que são apresentadas no monitor de integração e a solução para corrigi-los. Para acessa-lo siga o caminho: modulo Controle de Lojas/ Atualizações/ Smart Hub/ Monitoramento/ Status Integração. Obs: No campo Palavra Chave você pode informar o código do produto que deseja realizar a analise. |
Integração de: | Mensagem apresentada no Monitor PSH | Motivo | Solução |
---|
Todos | Erro ao gerar layout de envio - Processo [NOME_PROCESSO], Assinante PDVSYNC | Essa falha pode ocorrer por inconsistências no Layout de envio do cadastro em questão, por exemplo, quebra no json, customização incorreta, função de usuário, entre outros. | 1- Visualize o Layout do processo que foi apresentado o erro e em seguida realize a comparação do mesmo com a ultima versão do Layout no Github. 2- Em caso de incompatibilidade, atualize o Layout de acordo com o Layout do Github. 3- Reenvie o dado e se caso aprensentar a mesma falha, realize a abertura de uma issue para o time de Integrações Magazines, seguindo as orientaçãoes. | Todos | Motivo: 400 BadRequest | Caso seja na integração de Produto, Preço, Saldo Estoque ou Cliente, seja apresentado essa falha, significa que alguma informação importante para o Produto não foi preenchida/enviada. | Geralmente a mensagem completa será apresentada da seguinte forma: Motivo: 400 BadRequest - [Endpoint_da_AP] {"code":"Zvpebfbsg.NfcArgPber.Zip.GasPbagebyyre+Reebe.2","message":"Erro ao salvar 'Produto'","detailedMessage":"AspNetCoreOnPostError | .Quando esta mensagem é exibida, possivelmente foi realizada a alteração de IP, Porta e/ou Ambiente na configuração dos serviços (RMIBUSCA, RMIPUBLICA, RMIENVIA, etc...). Ficando assim divergente entre o appserver.ini e os dados inicialmente cadastrados pelo Wizard de configuração de integração ou automaticamente na inicialização do serviço. 1- Para solucionar o bloqueio acesse: Configuração Smart Hub Preço | Preço sem Produto Cadastrado | Na tentativa de integrar o preço no PDV, foi apresentado essa falha, pois o Produto não esta integrado na base do PDV. 1- Verifique o status da integração do produto vinculado ao preço no monitor de Status de Integração. 2- Caso seja apresentado falha na integração do produto identifique o motivo e envie novamente. 3- O reenvio de saldo estoque sera realizado de acordo com a configuração determinada no processo saldo estoque no cadastro do assinante, campo Configuração tag qtdereenvio, para mais detalhes: Configuração reenvio automático | Cliente | 400 BadRequest - [https://pdvsync-core-cliente-qa-ywc7q7nxya-uc.a.run.app/api/retaguarda/clientes] {"code":"","message":"","detailedMessage":"","helpUrl":"","details":[{"guid":" | eb3ca2a8290d4440aebf97c76aaaefd7b4218a15963d","code":"CQIFlap.Pber. | PyvragrPyvragrPyvragrf17O campo cliente IdRetaguarda: 18062024 | Produto precisa de um | CPF/CNPJ não 14 40 caracteres.","detailedMessage":" | ClienteShouldHaveCpfCnpjProdutoShouldHaveCodigoAlternativo"}]} |
No Protheus o campo A1_CGC do cadastro do cliente que foi enviado esta vazio, e no PdvSync o campo CPF/CNPJ é obrigatório Observe que na tag message foi informado com o motivo da falha na integração, para analise deve ser verificado no Layout de envio de produto qual o campo que esta preenchendo a tag codigoAlternativo. Para isso acesse: Layouts, em seguida clique em Envio e selecione o arquivo envia_produto. Através do Layout conseguimos identificar que a codigoAlternativo esta pegando o conteudo do compo B1_CODBAR. Altere o adastro do produto em questão se preencha o campo Código de Barras. Após isso o seu produto será integrado corretamente. | Todos | 401 Unauthorized - [ENDPOINT_DA_API] | Foi retornado essa mensagem ao realizar o envio de Produto ou algum outro dado? Essa mensagem ocorre devido à falha na autenticação da API do PDVSYNC no momento em que o Protheus realizou o envio do dado. | Vamos precisar abrir apoio ao time de Integrações Redes e Franquias. Mas antes disso, é necessário acessar o cadastro de assinante para pegar os dados de autenticação, para o time responsável analisar, para isso siga o passo a passo abaixo: 1- Acesse o modulo Controle de Lojas Atualizações/ Smart Hub/ Cadastros/ Assinantes. Selecione o assinante PDVSYNC e copie os dados do campo Configuração. Realize a abertura de apoio para o time de Integrações Redes e Franquias. Informando a falha e os dados de autenticação. | Todos | Ops! Nao foi possivel efetuar a autenticacao, verifique as configuracoes do assinante: [ LJRAC - Called -> GETTOKEN] -> Erro ao tentar autenticar: invalid_grant http code: 400 BadRequest | Essa falha pode ocorre quando os dados para autenticação do RAC estiverem errado. Estes dados são apresentados no cadastro do assinante na tabela MHO no campo MHO_CONFIG | Deve ser alterada as informações nas TAGs "user" e "password" no campo MHO_CONFIG no cadastro do assinante. Caso seja necessário acesse o RAC para redefinir a senha e faça o processo de "esqueci senha" no endereço: https://{seu tenant}.rac.totvs.app | 1- Realize a alteração no cadastro do cliente e aguarde a execução de todos os serviços do PSH até que o cliente seja integrado no PDV. | Produto | Produto sem informacoes de NCM | A situação pode ter sido causada por dois motivos : 1 - O campo B1_POSIPI do cadastro de Produto não foi preenchido; ou 2 - O campo B1_POSIPI está preenchido, porém o cadastro de NCM não foi enviado para o | sync.Para as situações acima : PDV OMNI | verifique se o produto possui NCM válido e se o NCM foi enviado corretamente para o PDV. Realize a atualização de NCM através da rotina FISA092. Veja mais em: Cadastro IBPT Após isso altere o Produto para que o mesmo seja enviado novamente ao PDV. | Produto | Produto sem informacoes de imposto | O motivo dessa falha é que possivelmente o produto foi enviado antes do IMPOSTO/ICMS ser integrado no PDV. | 1- | Para corrigir esse problema Verifique na tabela MIL se o Produto em questão esta vinculado à algum código de imposto. Tendo o vinculo, para corrigir essa falha realize uma alteração no Produto para que o mesmo seja enviado novamente ao PDV. | Saldo Estoque | Estoque sem id produto | Na tentativa de integrar O motivo dessa falha é que possivelmente o Saldo Estoque | no PDV, foi apresentado essa falha pois o produto não esta integrado na base do PDVdo produto foi enviado antes do próprio produto ser integrado no PDV. Isso ocorre por que ainda não temos controle de precedencia na integração. | 1- Verifique | o atráves do monitor de status da integração | do vinculado ao estoquereferente ao saldo apresenta alguma falha ou esta pendente de integração. 2- Caso seja apresentado falha na integração do produto identifique o motivo e envie novamente. 3- O reenvio de saldo estoque sera realizado de acordo com a configuração determinada no processo saldo estoque no cadastro do assinante, campo Configuração tag qtdereenvio, para mais detalhes: Configuração reenvio automático |
Todos | Erro ao gerar layout de envio - Processo [NOME_PROCESSO], Assinante PDVSYNC | Esse erro pode ocorrer para qualquer processo, e geralmente ocorre por algum erro contido no Layout de envio do processo. 1- Visualize o Layout do processo que foi apresentado o erro e em seguida realize a comparação do mesmo com a ultima versão do Layout no Github. 2- Em caso de incompatibilidade, atualize o Layout de acordo com o Layout do Github. 3- Reenvie o dado e se caso aprensentar a mesma falha, realize a abertura de uma issue para o time de Integrações Magazines, seguindo as orientaçãoes. Todos | 401 Unauthorized - [ENDPOINT_DA_API] | Esse problema ocorre devido à falha na autenticação da API do PDVSYNC, realize a abertura de um apoio ao time de Integrações Redes e Franquias. | Card |
---|
| Saldo Estoque | Não possui saldo disponível em estoque | Esse cenário pode ocorrer devido a falta de saldo do Produto no PDV ou o Protheus não consguiu integrar o saldo atualizado | 1- Verifique no Protheus o saldo em estoque do Produto. 2- Caso no Protheus tenha saldo em estoque para ao produto, verifique no monitor de integrações se o saldo em estoque do produto apresentou algum erro. Acesse Controle de Lojas/ Atualizações/ Smart Hub/ Monitoramento/ Status Integração.
| Preço | Preço sem Produto Cadastrado | Na tentativa de integrar o preço no PDV, foi apresentado essa falha, pois o Produto não esta integrado no PDV. | 1- Verifique o status da integração do produto vinculado ao preço no monitor de Status de Integração. 2- Caso seja apresentado falha na integração do produto identifique o motivo e envie novamente. 3- O reenvio de saldo estoque sera realizado de acordo com a configuração determinada no processo saldo estoque no cadastro do assinante, campo Configuração tag qtdereenvio, para mais detalhes: Configuração reenvio automático | Preço | Preço não foi integrado no PDV | Existem alguns motivos para que o preço não seja integrado no PDV. Algumas analises precisam ser realizadas. | 1- Seu preço é via tabela de Preços (DA0, DA1) ou pelo próprio cadastro de produto na tabela (SB0)? Para isso verifique MV_LJCNVDA. Com isso verifique se o preço esta cadastrado corretamente na tabela utilizada para o cenário de venda.
2- Verifique atráves do monitor de status de integração: Controle de Lojas/ Atualizações/ Smart Hub/ Monitoramento/ Status Integração se o preço em questão foi enviado para o PDVOMNI. Caso o mesmo foi enviado e esta pendente de integração, verifique os Serviços PDVSYNC, estão ativos? Caso estejam ativos e o Preço ainda não integrou, será necessário realizar a abertura do ticket para o time de Integrações Franquias e Redes. |
|
6- Ocorrrências na integração de Vendas Âncora |
---|
| Ocorrências na integração de Vendas |
---|
| Ocorrências na integração de Vendas |
---|
|
Dica |
---|
| - Meus cupons não integraram na retaguarda
- Vendas não subiram para o Protheus
- Minha venda não consta na retagarda
São esses acionamentos que temos quando por algum motivo a venda realizada no PDV OMNI não foi integrada ao Protheus. Quando for identificado a falta de integração de uma venda, devemos realizar a analise de Serviços da integração. Todos os serviços estão certos e em plena execução? Verifique atráves do monitor do PDV se sua venda foi integrada na retaguarda, para isso acesse a maquina onde esta seu PDV e em seguida no Browser acesse: http://localhost:9000 Expandir |
---|
| Image Added |
A segunda analise possivel acessando o monitor de status de integrações em: Controle de Lojas/ Atualizações/ Smart Hub/ Monitoramento/ Status Integração. Abaixo um GIF explicativo onde mostra a pesquina de um cupom, informando no campo Venda o código do cupom Expandir |
---|
| Image Added | Dica |
---|
| Antes de qualquer coisa é de extrema importancia realizar as seguintes analises: Exemplo: Realizei uma venda no PDV e ainda não integrou no Protheus. Verifique se todos os serviços do PSH estão ativos e em plena execução- RMIPUBLICA
- RMIDISTRIB
- RMIENVIA
- RMIBUSCA
- RMICONTROL
Verifique se o processo Venda esta ativo.Verifique se os servios do PDVSYNC estão ativos.PDVSync Client APIPDVSync Client DownPDVSync Client Servico.ControlePDVSync Client Up |
Realizou as analises acima e mesmo assim a venda não foi integrada? Na tabela abaixo temos algumas falhas mapeadas e suas correções. | Processo | Falha/Problema ou Mensagem
---|
Integração de: | Mensagem apresentada no monitor | Motivo | Solução |
---|
Venda | Administradora Financeira não localizada! Por favor, verifique as tabelas SAE e MDE do Protheus e certifique-se que na mensagem da venda, ao menos uma das seguintes tags estão preenchidas : 'VendaPagamentoTefs','PagamentoOperadora' ou 'PagamentoCondicao' | Essa falha ocorre, pois, a integração não conseguiu localizar a Administradora Financeira (SAE) adequada para o pagamento TEF |
, para | Para resolver esse item acesse: |
integrsação integração da venda ocorre quando a venda foi realizada no PDV por um usuário administrador sem qualquer vinculo com operador de loja ou vendedor. | Para correção dessa falha deve ser aberto um ticket/issue de apoio ao time do PDV OMNI, solicitando a correção dessa venda. | Venda | Encontrada diferença nos dados enviados do XML-SEFAZ e o Livro Protheus: | Essa falha na integração da venda ocorre quando tem divergencia nos valores de tributo entre o XML enviado para a Sefaz e os valores que seriam gravados no Protheus. Para evitar problemas nos livros fiscais do Protheus existe uma trava que impede que essa venda seja prcessada com sucesso, para evitar maiores transtornos. |
No momento em que for |
realizado identificado essa falha deve ser realizado uma abertura de ticket/issue para o time de Integrações Magazines, seguindo as orientaçãoes. | Venda | Houve uma diferença entre os tributos que seriam calculados pelo Protheus(MATXFIS) e o transmitido pelo PDV OMNI, porém a venda foi gravada/escriturada com sucesso no Protheus | Apesar de não se tratar de uma falha, essa mensagem é um alerta para evitar possiveis problemas posteriores. Basicamente houve divergencias entre os valores de impostos simulados pela MATXFIS e os valores de impostos do XML da venda enviado para Sefaz. Porém gravamos exatamente os valores do XML nos livros fiscais do Protheus e assim a venda integrada com sucesso. | Uma dica para evitar esse tipo de alerta é, verificar o cadastro/configuração fiscal do Produto no Protheus e os tributos que o PDV OMNI calculou na venda. Verifique se houve alguma mudança no tributo do protheus, caso sim altere o seu produto para que seja realizado um novo cadastro dos impostos de para o produto na tabela MIH e um novo vinculo do Produto com o novo imposto na tabela MIL. | Venda | Cliente com cpf\cnpj [CPF_CLIENTE] não localizado na tabela de clientes(SA1). Verifique se a integração de clientes esta ativa e se o cliente já foi integrado corretamente. De/Para(MHM) não encontrado para a busca realizada. | Essa falha ocorre quando o cliente identificado na venda não foi encontrado no Protheus. É preciso analisar os seguintes pontos: | 1- Verifique se o processo Cliente esta ativo no assinante PDVSYNC 2- Verifique através do Monitoramento do Status de Integração se o cliente apresentou alguma falha na integração. 3- Caso apresente algum problema na integração do cliente realize a correção e em seguide reprocesse a venda |
.
7- Consultas online Dica |
---|
| O que é o fluxo online na integração? Fluxo online basicamente são consultas em tempo real realizadas entre o PDVOMNI e Protheus via API REST. Um exemplo de Fluxo online é da consulta de estoque, onde o PDVOMNI consulta o Protheus para saber o saldo em estoque em tempo real de determinado produto. Essa é a diferença, pois em um fluxo normal até que seja integrado um estoque atualizado ao PDVOMNI, pode levar alguns minutos, já com a consulta online esse detalhe não ocorre.
O que podemos consultar online? - Consulta de Cupons na retaguarda
- Troca/Devolução
- Consulta de estoque
- Consulta de Crédito de Cliente
O que preciso para realizar consultas online no Protheus? O Protheus deve estar com o serviço REST configurado e em plena execução: Configurando REST no Protheus
Ao realizar consultas online, podem ocorrer alguma inconsistência. Abaixo temos algumas ocorrências que já foram identificadas na integração. |
Fluxo | Mensagem apresentada no PDV | Motivo | Solução |
---|
Troca/Devolução | Consultar nota de saída: Não foi possivel consultrar a nota de saída - Retaguarda retornou o erro: Não foram encontrados registros com os dados informados, verifique. | O Protheus retorna essa mensagem pois não encontrou nenhuma venda na tabela SF2 com os dados da venda informada no filtro do PDV. | 1- Verifique atráves do monitor do PDV se a venda que deseja realizar a troca foi integrada na retaguarda, para isso acesse a maquina onde esta seu PDV e em seguida no Browser acesse: http://localhost:9000 Expandir |
---|
| Image Added |
2- Verifique no monitor do PSH em: Controle de Lojas/ Atualizações/ Smart Hub/ Monitoramento/ Status Integração. Abaixo um GIF explicativo onde mostra a pesquina de um cupom, informando no campo Venda o código do cupom Expandir |
---|
| Image Added |
3- A venda esta com falha? Neste caso será necessário realizar a correção da falha apresentada para que a venda seja integrada com sucesso no Protheus. Para que em seguida seja realizada a troca no PDV.
4- Caso tenha alguma falha na integração da venda verifique na Ocorrências na integração de vendas se a falha apresentada consta na tabela de ocorrências e aplique a solução proposta. | Estoque online | Erro ao adquirir estoque online | Um dos pincipais motivos, é o serviço REST estar parado no Protheus. | 1- Verifique através do appserver.ini se o serviço responsável pelo REST esta ativo e em plena execução 2- Caso não esteja, ative o serviço e reinicie o Appserver do Protheus. | Todos | HTTP StatusCode 401 Unauthorized | Quando exibido essa mensagem na tela do PDV, pode ser dois motivos:
1- Falha na autenticação do PDV OMNI com o TOTVS RAC. OU 2- Falha na autenticação do PDVSYNC com o serviço REST do Protheus | 1- No PDV OMNI, verifique se os parametros de autenticação com o TOTVS RAC estão devidamente preenchidos e corretos.
2- Verifique no PDVSYNC se o inquilino utilizado na integração esta preenchido com os dados de autenticação do serviço REST do Protheus. |
8- Status da Integração Dica |
---|
Abaixo temos informações sobre o monitor de status da itnegração, onde você poderá, visualizar o status dos serviços do PDVSYNC e também Protheus, Status dos cadastros integrados e Status das vendas. |
8.1- Aba Resumo:Na aba Resumo, podemos visualizar o status dos serviços do PDVSYNC e Protheus. Para visualizar o Status dos serviços, clique no icone AtualizarImage Added, será listado os serviços e seus status. Caso apresente o help PSHGETSTATUS, informando a mensagem: "Propriedade 'URL_STATUS' vazia ou inexistente no json de configuração do assinante", acesse a rotina RMICADASSI em Atualizações/ Smart Hub/ Cadastros/ Assinantes. Posione sobre o assinante PDVSYNC e clique em alterar, adiocione após a tag urlPostStatus a seguinte linha: "url_status": "https://pdvsync.varejo.totvs.com.br/controleprocesso/api/retaguarda/v2/statusservico", ficando da seguinte forma: Bloco de código |
---|
| "url_lote": "https://pdvsync.varejo.totvs.com.br/controleprocesso/api/retaguarda/inquilinolotesexternos",
"inquilino": "XXXX",
"url_consultalote": "https://pdvsync.varejo.totvs.com.br/controleprocesso/api/retaguarda/v2/lojalotes",
"url_lojaloteretornos": "https://pdvsync.varejo.totvs.com.br/controleprocesso/api/retaguarda/v2/LojaLoteRetornos",
"urlPostStatus": "https://pdvsync.varejo.totvs.com.br/controleprocesso/api/retaguarda/v2/statusservico",
"url_status": "https://pdvsync.varejo.totvs.com.br/controleprocesso/api/retaguarda/v2/statusservico", |
Gravação da Venda Dica |
---|
Abaixo segue documentação que demonstra a definição da gravação dos campos de orçamento (SIGALOJA) e Notas Fiscais (Faturamento): |
Incluir Página |
---|
| SIGALOJA 0450 Gravação da venda |
---|
| SIGALOJA 0450 Gravação da venda |
---|
|
| Venda | Venda | Venda | Card |
---|