Ir para conteúdo
  • Cadastre-se

valterpatrick

Consultores
  • Total de ítens

    2.511
  • Registro em

  • Última visita

  • Days Won

    13

Tudo que valterpatrick postou

  1. Se procurar na legislação sobre pulo de sequência da numeração, vai ver que dentro de um mesmo mês você pode usar a sequência que foi pulada sem problema algum, mas nos demais não, então se você for utilizar esta estratégia, que seja para um pulo de numeração não muito grande e que na virada do mês, você inutilize as numerações que ficaram sem ser utilizadas e depois comece de novo, mas isto vai ser muiiiiiiiiiiiiiiiito trabalhoso e tende a dar muiiiiiiiiiiiiiiitos problemas, então a melhor solução para isto e que não há problema algum na legislação, pelo menos até onde eu vi, é utilizar duas séries. Para o pc a série 001, para o app a série 002 ou se você utilizar API, enviar por requisição os dados e deixar o seu servidor gerenciar a numeração da nota fiscal.
  2. Você vai encontrar o demo no seguinte caminho: "\\ACBr\Exemplos\ACBrDFe\ACBrNFe". A emissão de NFe e NFCe é feita pelo mesmo componente, que é o ACBrNFe. Os Schemas XML estão no seguinte caminho: "\\ACBr\Exemplos\ACBrDFe\Schemas\NFe". Na base de conhecimento do ACBr você encontra alguns tópicos que podem te ajudar: https://www.projetoacbr.com.br/forum/forum/73-nf-enfc-e/ Em requisitos fiscais vai ter algumas coisas que tem de ficar atento quanto a emissão de NFCe em alguns estados: https://www.projetoacbr.com.br/forum/forum/89-requisitos-fiscais-por-uf/ Se você se tornar ACBr PRO, vai ter disponivel alguns cursos que podem te ajudar como "Dominando a Emissão da NFCe". https://acbr.nutror.com/curso/f34eee461b52b3f3c8192e42924b0fb03a195a94 Tendo qualquer dúvida, pesquisa no fórum, se não achar, faça uma postagem.
  3. De nada, espero ter ajudado. Mudou um pouco o site do Google, mas não deve ser problema para você.
  4. Te recomendo utilizar este serviço. Embora esteja em inglês, é de um SAAS de brasileiro. Eu já utilizei o AWS SES para envio de email marketing e é ótimo, funciona bem, é barato (10 centavos de dolar por 1000 emails), mas o suporte é ruim se vc fizer envios onde pode cair no spam, ser bloqueado e etc. Já o serviço que te recomendei é ótimo, está funcionando bem, a plataforma é boa, também é barato (20 centavos de dolar por 1000 emails) e a melhor parte, o suporte. Quando precisar e precisará, estarão a disposição. Faça um teste, são 10mil emails gratuitos por mês. Qualquer coisa chama no chat. Link: https://jsxmail.org/
  5. Mesmo usando a api oficial do whatsapp vc pode ser bloqueado. O bloqueio do whatsapp é independente de ferramenta, ele leva em consideração o padrão do usuário, assim como outras coisas. Vou listar algumas coisas que pode fazer para não ser bloqueado: Quem recebe sua mensagem ter você como contato; Quem recebe sua mensagem interagir com sua mensagem; Enviar mensagens para números que estão na sua lista de contatos; Não enviar mensagens repetidas, ou seja, onde o texto é praticamente igual para várias das quais você enviou. Varie algumas coisas como saudações (oi, bom dia, boa tarde, olá, como vai,...); Interagir no whatsapp como se fosse um usuário comum: interagir com mensagens (curtir, responder), stories, grupos; Esquentar o número se for novo, que nada mais é que fazer o envio de mensagens e interações de forma gradativa, ou seja, hoje vc envia x mensagens, entra em alguns grupos, interage nos grupos, stories e etc. No dia seguinte, a mesma coisa, mas aumentando a frequência aos poucos e não esquecer que o outro usuário precisa interagir com você; Vou compartilhar uma experiência que já tive aqui: Compramos um número novo para um vendedor e ele começou a enviar algumas mensagens direto do celular, não usou nenhuma ferramenta, nem o whatsapp web e foi bloqueado no mesmo dia. Isto por que o whatsapp pensou que fosse algum spam, já que estava enviando mensagens parecidas para números que não estavam na lista de contatos, nem na lista de contatos de quem estava recebendo e nem foi tantas assim, acho que se for 20 contatos diferente é muito. A melhor opção de fato é a api oficial, que está mais fácil hoje, mas ainda sim é burocrática. As outras ferramentas que emulam o whatsapp web, seja empresas contratadas que já oferecem o serviço via api ou aplicação, até mesmo componentes como o TInject, WPP4Delphi, Evolution e muitos outros vão te entregar um resultado igual a api oficial, não vou dizer melhor por que algumas coisas não funcionam bem nestas ferramentas como é o caso dos botões. O que vai importar ai é como você usa a ferramenta, então pesquise sobre o assunto e veja técnicas para não ser bloqueado.
  6. Pode ser o caso de você colocar para ler o certificado como arquivo ou salvar ele no banco de dados, ao invés de usar ele instalado no windows. Pode ter alguma configuração do windows que barra e etc, dificil de prever e configurar.
  7. Espero que ele ajude vc. Eu fiz a pedido de um cliente meu, acabou que nem foi para frente. É foda esta situação, vc desenvolve um recurso novo, gasta tempo ali que poderia ser usado em outras coisas e a pessoa não usa. Boa sorte ai.
  8. Lembrando que o componente FCI que eu desenvolvi, ele é parecido com o Sintegra/Sped, onde é gerado um arquivo txt com os dados dos produtos para serem validados no programa validador da receita federal. Não tem nada relacionado a api, digo isto pois fui procurado recentemente no privado para tirar dúvidas deste componente. Caso queiram saber mais e ver se é algo útil a você, veja o link abaixo do site da receita paulista que fala a respeito, assim como dá o link para a documentação e também o download do programa validador. https://portal.fazenda.sp.gov.br/servicos/fci
  9. Você deve preencher no Cedente os dados do convênio, que no caso seria o CNPJ da empresa, nome, endereço, a conta e a agência do banco inter. Não precisa preencher nada em modalidade e convenio, mas na carteira seria 112, já que o 110 tem de ter alguma liberação no banco inter. Vou te dar alguns exemplos de dados a serem preenchidos também: ACBrBoleto1.Cedente.TipoCarteira := tctSimples; ACBrBoleto1.Cedente.IdentDistribuicao := tbClienteDistribui; ACBrBoleto1.Cedente.ResponEmissao := tbCliEmite; ACBrBoleto1.Cedente.CaracTitulo := tcSimples; ACBrBoleto1.Configuracoes.WebService.UseCertificateHTTP := True; ACBrBoleto1.Configuracoes.WebService.TimeOut := 30000; // 30 segundos padrão ACBrBoleto1.Cedente.CedenteWS.IndicadorPix := True; ACBrBoleto1.Cedente.PIX.TipoChavePIX := tchCNPJ; ACBrBoleto1.Cedente.PIX.Chave := ''; Veja estes posts também:
  10. Pessoal, algumas SEFAZ disponibilizam periodicamente arquivos txt/csv contendo a lista dos contribuintes. Nesta lista tem o CNPJ, a Inscrição Estadual e outros campos. Isto é ótimo por que podemos importar estes dados e cruzar com uma base de CNPJ para ter a inscrição estadual ali fácil. Desta forma não precisamos utilizar a pesquisa de contribuintes na SEFAZ onde há uma limitação de pesquisa não conhecida ainda. Sem falar que dependendo da informação que estiver ali, podemos utilizar para fins de marketing, como é o caso do cadastro de produtores rurais. Até o momento consegui acesso a algumas bases, gostaria de saber se vocês conseguiram através do site das SEFAZ de outros estados o link para baixar os dados contendo inscrição estadual ou até outra informação que pode ser relevante. * Links: https://portalsped.fazenda.mg.gov.br/spedmg/nfce/Consulta-Cadastro-de-Contribuintes/ https://www.fazenda.mg.gov.br/utilidades/download.html * Arquivo contendo o CNPJ e inscrição estadual das empresas mineiras. * Links: https://www.fazenda.pr.gov.br/Pagina/CAD/ICMS https://www.fazenda.pr.gov.br/Pagina/CADPRO * Arquivos contendo os dados das empresas do estado de PR. * Observação: para baixar os arquivos, tem de colocar uma barra no final do link. Exemplo: No site está assim: http://processos.fazenda.pr.gov.br/arquivos/ativos Para conseguir baixar tem de ficar assim: http://processos.fazenda.pr.gov.br/arquivos/ativos/ * Links: https://www.sefaz.pb.gov.br/info/cadastro Observação: clicar em Arquivos Para Download
  11. Eu declarei a uses ACBrNotasFiscais e consigo declarar a variável do tipo NotaFiscal, contudo eu não declarei ela dentro de uma função da classe, mas sim da unit. Vou te dar um exemplo: Type TENotaFiscal = class end; procedure AlimentarNFe(NumDFe: String); implementation { TENotaFiscal } procedure TENotaFiscal.AlimentarNFe(NumDFe: String); var Ok: Boolean; // NotaF :NotaFiscal; begin end
  12. Uma outra solução seria você utilizar o Consulta Cadastro do componente ACBrNFe. Segue Exemplo de código abaixo: NFe.WebServices.ConsultaCadastro.UF := FUF; if Length(FCPF_CNPJ) > 11 then NFe.WebServices.ConsultaCadastro.CNPJ := FCPF_CNPJ else NFe.WebServices.ConsultaCadastro.CPF := FCPF_CNPJ; NFe.WebServices.ConsultaCadastro.Executar; Config := TIniFile.Create(ExtractFileDir(Application.ExeName) + '\Config.ini'); try Config.EraseSection('CONSULTA_CADASTRO_SEFAZ'); Config.WriteBool('CONSULTA_CADASTRO_SEFAZ', 'Usado', True); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cStat', NFe.WebServices.ConsultaCadastro.cStat); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xMotivo', NFe.WebServices.ConsultaCadastro.xMotivo); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'UF', NFe.WebServices.ConsultaCadastro.UF); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cUF', NFe.WebServices.ConsultaCadastro.cUF); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CNPJ', NFe.WebServices.ConsultaCadastro.CNPJ); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CPF', NFe.WebServices.ConsultaCadastro.CPF); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IE', IfThen(NFe.WebServices.ConsultaCadastro.IE.Trim = '', NFe.WebServices.ConsultaCadastro.RetConsCad.IE, NFe.WebServices.ConsultaCadastro.IE)); Config.WriteDateTime('CONSULTA_CADASTRO_SEFAZ', 'dhCons', NFe.WebServices.ConsultaCadastro.dhCons); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'QuantCadEst', NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad.Count); for I := 0 to NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad.Count - 1 do begin Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IE_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].IE); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CNPJ_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CNPJ); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CPF_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CPF); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'UF_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].UF); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cSit_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].cSit); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'indCredNFe_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].indCredNFe); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'indCredCTe_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].indCredCTe); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xNome_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xNome); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xFant_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xFant); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xRegApur_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xRegApur); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'CNAE_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CNAE); Config.WriteDate('CONSULTA_CADASTRO_SEFAZ', 'dIniAtiv_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].dIniAtiv); Config.WriteDate('CONSULTA_CADASTRO_SEFAZ', 'dUltSit_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].dUltSit); Config.WriteDate('CONSULTA_CADASTRO_SEFAZ', 'dBaixa_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].dBaixa); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IEUnica_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].IEUnica); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IEAtual_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].IEAtual); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xLgr_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xLgr); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'nro_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].nro); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xCpl_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xCpl); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xBairro_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xBairro); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cMun_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].cMun); Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xMun_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xMun); Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'CEP_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CEP); end; finally Config.Free; end;
  13. Não. O componente lê o arquivo da DI e importa os dados para o componente onde você pode pegar estes dados e inserir no seu sistema ou gerar um arquivo xml padrão da NFe, mas não é algo automático, você tem de fazer isto a partir do código feito por vc. O componente abstrai a complexidade da DI, isto já é muito trabalho. Dá uma lida no componente, ele fica na pasta "\\ACBr\Fontes\ACBrDFe\ACBrDI".
  14. É bom saber que 200 chamadas por minuto passaram. Eu quero poder implementar algo do tipo para atualizar minha base de dados também, ter uma noção do limite ajudaria. Fique atento se ao fazer estas requisições neste webservice com um certificado digital especifico, não vai atrapalhar as demais requisições nos outros webservices da receita federal como emissão de nota fiscal, cancelamento, consulta status webservice e etc. Até onde sei o limite é por webservice, mas não temos muitas informações a respeito.
  15. É uma boa pergunta. Se for ver, o Ean Pictures é um site onde disponibiliza sua base de dados para outras pessoas utilizarem e creio que os dados do código de barras são de domínio público igual é o CNPJ e o CEP onde tem vários provedores fornecendo API para consumir estes dados. Se for isto mesmo, então não teria problema, contudo é bom verificar se não teria problema com o GS1.
  16. Super compensa você assinar o PRO, sou assinante a quase 1 ano e membro do ACBr desde 2015. No caso do ACBrLib, você vai ter as libs já compiladas e atualizadas sempre, sem a necessidade de fazer a compilação. Em relação ao Suporte, suas dúvidas serão resolvidas bem mais rápido, não só pela comunidade, mas pelo pessoal do ACBr que fica de prontidão para responder toda e qualquer dúvida que tenha e etc. Tem ainda os cursos do ACBr relacionados aos componentes que vão te ajudar também. Faz um teste, tenho certeza que não vai se arrepender.
  17. Pessoal, o ACBr tem o componente ACBrGtin para pesquisar os produtos no CCG-Cadastro Centralizado de GTIN, mas para isto é necessário ter o certificado digital. Eu utilizo o ACBrGtin nos meus sistemas e tem ajudado muito, mas em alguns casos onde o usuário não tem certificado digital por qualquer motivo ou queira obter a imagem do produto, uma solução é utilizar o site http://www.eanpictures.com.br/ do SACFiscal & Automação que inclusive é parceiro do ACBr, o Marco Polo sempre está participando ativamente. Eu fiz um código bem simples para consultar os produtos utilizando a api do eanpictures e gostaria de compartilhar com vocês. Espero que ajude alguém, sequiserem melhorar fiquem a disposição. Link Github: https://github.com/valterpatrick/EanPictures
  18. Por que vc não quer salvar em disco? Mesmo que seja em uma pasta temporária e um arquivo temporário? Geralmente os navegadores abrem arquivos salvos no disco, mas abrir sem salvar no disco seria algo complicado, mas uma alternativa que eu posso te dar é você criar um TTrvwNFe e exibir.
  19. A receita geralmente tem um limite de requisição, tem de ver se acha em alguma NT. Na NT 2014.002 informa sobre o consumo indevido a respeito da distribuição dfe. No site da Focusnfe informa de um limite de 600 consultas num período de 5min por certificado digital, mas não sei se isto serve para todos os serviços. Pegando com exemplo alguns serviços de emissão de nota fiscal, a nuvem fiscal tem um limite de 360 requisições GET por minuto, se eles tem este limite é por que o limite da receita federal é igual ou maior. No MOC no site da Sefaz de PR informa que não há limite especificado por que depende de cada UF, então é dificil ter uma resposta certa. Eu aconselho vc a fazer testes, coloca para consulta 60 cadastros em uma hora, depois aumenta e por ai vai, até saber qual é de fato o limite. Assim que souber, por favor compartilhe com nós aqui do ACBr. Links referência: https://www.nfe.fazenda.gov.br/portal/informe.aspx?ehCTG=false&Informe=0cu/yBLKrCs=#:~:text=Observação: Em quaisquer dos três,contagem reiniciará até completar 1hora. https://focusnfe.com.br/blog/rejeicao-656/#:~:text=a rejeição 656?-,O que é Consumo Indevido na Nota Fiscal Eletrônica?,minutos para um mesmo certificado. https://dev.nuvemfiscal.com.br/docs/limites/#:~:text=Limites dos endpoints&text=Obtenção de token de acesso: 10 requisições por minuto. http://moc.sped.fazenda.pr.gov.br/NFeConsultaCadastro.html http://moc.sped.fazenda.pr.gov.br/RegrasDeValidação.html#1.Regras de Validação Gerais
  20. Eu tenho a mesma dúvida sua e creio que outras pessoas do ACBr. Quando obtiver um retorno a respeito disto, por favor coloque aqui no grupo.
  21. O ACBr já está suportando o oAuth. Neste tutorial no PDF eu mostro como configurar o oAuth: https://ctec.com.br/downloads/Envio_de_Email_pelo_GMAIL.pdf Nos posts abaixo vai encontrar mais sobre o assunto:
  22. Tem os arquivos .fr3 do FastReport por exemplo com o nome DANFeNFCeA4.fr3 onde você pode definir no componente. Exemplo: TACBrNFeDANFEFR(NFe1.DANFE).FastFile := ExtractFileDir(Application.ExeName) + '\Reports\DFe\DANFeNFCe.fr3' TACBrNFeDANFEFR(NFe1.DANFE).FastFile := ExtractFileDir(Application.ExeName) + '\Reports\DFe\DANFeNFCeA4.fr3'; TACBrNFeDANFEFR(NFe1.DANFE).TipoDANFE := tiNFCe;
  23. Já aconteceu com alguns clientes meus de eu alterar o DNS do computador e voltar a funcionar.
  24. Tem chance de estar relacionado sim, mas outra coisa que eu vi em relação ao CE e tbm ao MFe/SAT é alguns poderiam emitir NFCe devido ao valor de faturamento e etc. Não lembro bem como está esta regra agora, se é todos ou não.
  25. Alguns bancos tem regras próprias, como é o caso do banco inter onde o máximo de tempo é 60 dias e em outros bancos a configuração fica padrão do banco. Sugiro você preencher os campos DataLimitePagto e DataBaixa com a data que este boleto deve ficar válido após vencimento. Exemplo: Vence em 01/01/2025 e o prazo é de 30 dias o limite de recebimento, então os campos DataLimitePagto e DataBaixa serão enviados com a data 31/01/2025. Faça o teste e caso não dê certo, consulte o banco para ver se há alguma configuração interna a respeito disto.
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.