Jump to content
cjulio

Utilizar Webservices da AT

Recommended Posts

abrito
1 minuto atrás, trs80 disse:

Correto, mas se a chain estiver lá não faz mal... e o PFX de teste sempre incluiu, estou a considerar na próxima renovação incluir também - mal não fará...

Mal não faz, apenas vais ter que atualizar o certificado duas vezes uma quando alterar o teu e outra quando alterar o das finanças.

Share this post


Link to post
Share on other sites
Cu5co
19 minutos atrás, Carlos M F Matos disse:

Olá a todos.

Hoje de manhã os meus sócios comunicaram-me que os clientes se estavam a queixar que não conseguiam comunicar documentos/guias desde sexta feira passada ao fim do dia. A minha resposta foi de imediato dizer que não iria implementar nada até que a AT dissesse o que foi alterado para além do certificado de acesso deles ao portal deles e que os clientes iriam ter que esperar que a AT resolvesse o problema. Sim, claro que fui pressionado pelos clientes e pelos meus sócios porque fui eu que implementei a comunicação aos WebServices da AT e portanto, sou eu que tenho que resolver os problemas relacionados com este assunto quando estes surgem.

E não é que devo ser bruxo. Tinha 99% de certeza que o problema deveria ser da AT. Caramba, era mesmo. Não sei a forma de comunicarmos está correta ou não, mas o que é certo é que sempre funcionou e se alguma coisa eles pretendam alterar, terão que avisar antecipadamente e documentar muito bem.

Deixo um conselho a todos e que não terão que seguir, caso o não pretendam, como é lógico: da próxima vez queixem-se à AT, mas em massa, como eu fiz, para eles resolverem o problema ou que digam o que é necessário alterar da parte dos produtores de software.

Bom trabalho.

Desculpem, este post é meu. Coloquei-o aqui, inadvertidamente, com outro utilizador.

Share this post


Link to post
Share on other sites
trs80
9 minutes ago, abrito said:

Mal não faz, apenas vais ter que atualizar o certificado duas vezes uma quando alterar o teu e outra quando alterar o das finanças.

LOL Bem visto

DUH para mim!!!

EDIT: ou nao... teria apenas de mudar quando o "issuer" (A DGITA) mudasse...

Edited by trs80

Share this post


Link to post
Share on other sites
jmta_92

Boa tarde, estou a utilizar o php para comunicar guias e está-me a dar o erro "Could not connect to host", alguém tem este erro? Atenção que já comunicou depois da AT ter alterado o certificado, o que no meu caso nem é relevante.

Cumprimentos

Share this post


Link to post
Share on other sites
Nuno Bagulho Marques
7 horas atrás, abrito disse:

Isso não quer dizer que estava tudo bem, pelo contrario a comunicação sempre esteve mal. desde o inicio que isto deveria ser obrigatório para garantir a autenticação fidedigna.

portanto acho que se deveriam se preparar e tentar entender como se faz, para poderem contornar este tipo de situações facilmente.

O que eu acho é que foi uma tentativa de alterar um erro que desde o inicio esteve presente, sem que lhes sejam atribuídas culpas no cartório.

Olá abito

Estou de acordo. Mas, nesse caso, era dever da AT, informar dessa alteração. é mesmo assim, alteramos os nossos softwares, informamos os clientes. é um procedimento básico e de respeito, sublinho respeito, por quem trabalha. Houve aqui muita gente que passou o fim de semana a queimar os miolos.

Share this post


Link to post
Share on other sites
pnnr
1 hora atrás, abrito disse:

Mal não faz, apenas vais ter que atualizar o certificado duas vezes uma quando alterar o teu e outra quando alterar o das finanças.

Foi exatamente o que pensei. Nao me parece fazer sentido...embora seja possivel

Share this post


Link to post
Share on other sites
jncevcosta
2 horas atrás, jncevcosta disse:

Bem eu ainda não consegui colocar a comunicar. No meu caso estou a usar a versão de testes dos webservices.

Não alterei o código, a única coisa que fiz foi ir ao site das finanças e descarregar os certificados mais actuais e corri os seguintes comandos:

 


				* Extrair TestesWebServices.pfx para .pem (Chave + Certificado)
                *
                *       - Extrair a chave privada para PEM  ( Password: TESTEwebservice )
                *
                *       Código :
                *               openssl pkcs12 -in TestesWebServices.pfx -nocerts -out pfxKey.pem
                *
                *
                *
                *       -Extrair o certificado
                *
                * 		Código :
                *               openssl pkcs12 -in TestesWebServices.pfx -clcerts -nokeys -out pfxcert.pem

 

E tenho o seguinte código para o curl


curl_setopt($curl, CURLOPT_FRESH_CONNECT, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'Content-Type:text/xml;Charset=UTF-8',
    'Accept: text/xml',
    'Cache-Control: no-cache',
    'SoapAction=' . $SoapAction
));
curl_setopt($curl, CURLOPT_URL, trim($Action));
curl_setopt($curl, CURLOPT_VERBOSE, false); // para ver o que se passa...
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $xxxml);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_SSLCERT, $cert_pem); // o certificado em formato PEM (.pem)
curl_setopt($curl, CURLOPT_SSLCERTTYPE, 'PEM');
curl_setopt($curl, CURLOPT_SSLCERTPASSWD, $pass_cert);
curl_setopt($curl, CURLOPT_SSLKEY, $key_pem);
curl_setopt($curl, CURLOPT_SSLKEYPASSWD, $pass_cert);
curl_setopt($curl, CURLOPT_SSLKEYTYPE, 'PEM');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

 

Agora tenho este erro:


unable to set private key file: '/home/dcweb/faturacao/node/at/certificados/desenvolvimento/pfxKey.pem

 

Alguém que tenha passado pelo mesmo que me possa ajudar ?

 

Alguém consegue dar uma ajuda?

Share this post


Link to post
Share on other sites
bioshock
12 minutes ago, jncevcosta said:

Alguém consegue dar uma ajuda?

Sim, não precisas destas três linhas no teu código:

curl_setopt($curl, CURLOPT_SSLKEY, $key_pem);
curl_setopt($curl, CURLOPT_SSLKEYPASSWD, $pass_cert);
curl_setopt($curl, CURLOPT_SSLKEYTYPE, 'PEM');

 

Share this post


Link to post
Share on other sites
jncevcosta
3 minutos atrás, bioshock disse:

Sim, não precisas destas três linhas no teu código:


curl_setopt($curl, CURLOPT_SSLKEY, $key_pem);
curl_setopt($curl, CURLOPT_SSLKEYPASSWD, $pass_cert);
curl_setopt($curl, CURLOPT_SSLKEYTYPE, 'PEM');

 

É preciso retirar essas 3 linhas devido a alguma alteração recente ? É que até o certificado anterior ter expirado conseguia comunicar sem problema.

Retirando essas linhas realmente avança mais um pouco, mas depois empanca assim 

 

Citação

Unknown SSL protocol error in connection to servicos.portaldasfinancas.gov.pt:701

 

Share this post


Link to post
Share on other sites
salves

Já estou a conseguir comunicar guias sem ter mexido em nada. O problema foi mesmo da AT

Share this post


Link to post
Share on other sites
desconfiado

Alguém está a receber o erro "Código 20 - Chave de pedido não preenchida"?

Share this post


Link to post
Share on other sites
bubbu78

Boa tarde,

Existe alguma funcionalidade na AT que permita agora via ficheiro comunicar os produtos para as guias comunicadas via telefone?

Share this post


Link to post
Share on other sites
jmta_92

Já consegui comunicar em produção, mas continua a dar aquele erro em testes. Alguém sabe o porquê? mudou alguma coisa? o url por exemplo? Estou a utilizar este "https://servicos.portaldasfinancas.gov.pt:701/sgdtws/documentosTransporte"

Share this post


Link to post
Share on other sites
jncevcosta
2 minutos atrás, jmta_92 disse:

Já consegui comunicar em produção, mas continua a dar aquele erro em testes. Alguém sabe o porquê? mudou alguma coisa? o url por exemplo? Estou a utilizar este "https://servicos.portaldasfinancas.gov.pt:701/sgdtws/documentosTransporte"

O erro que tenho agora é este:

*   Trying 213.13.158.240...
* Connected to servicos.portaldasfinancas.gov.pt (213.13.158.240) port 701 (#0)
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
* Unknown SSL protocol error in connection to servicos.portaldasfinancas.gov.pt:701
* Closing connection 0

 

Em ambiente de testes ainda não consegui colocar tudo a funcionar.

Share this post


Link to post
Share on other sites
CCoutinho
2 minutos atrás, jmta_92 disse:

Já consegui comunicar em produção, mas continua a dar aquele erro em testes. Alguém sabe o porquê? mudou alguma coisa? o url por exemplo? Estou a utilizar este "https://servicos.portaldasfinancas.gov.pt:701/sgdtws/documentosTransporte"

Uma das coisas que referi num dos telefonemas para a AT foi que o Testar Webservice na parte dos Produtores de Software no e-fatura dava erro. Foi-me dito que há 15 dias que este Testar Webservice dá erro. Pode ter a ver com isso.

Share this post


Link to post
Share on other sites
rukako

Se eu comunicar uma GT que ja tinha sido comunicada nao esta a dar erro apenas responde como o mesmo codigo.

Isto esta acontecer com mais alguem?

Share this post


Link to post
Share on other sites
bioshock
26 minutes ago, jncevcosta said:

É preciso retirar essas 3 linhas devido a alguma alteração recente ? É que até o certificado anterior ter expirado conseguia comunicar sem problema.

Retirando essas linhas realmente avança mais um pouco, mas depois empanca assim 

Dá uma vista de olhos no meu post https://www.portugal-a-programar.pt/forums/topic/57734-utilizar-webservices-da-at/?do=findComment&comment=615478

Share this post


Link to post
Share on other sites
Cu5co
2 horas atrás, trs80 disse:

Correto, mas se a chain estiver lá não faz mal... e o PFX de teste sempre incluiu, estou a considerar na próxima renovação incluir também - mal não fará...

Então porque é que o endereço de testes continua a dar erro ?

Share this post


Link to post
Share on other sites
jncevcosta
15 minutos atrás, jmta_92 disse:

Já consegui comunicar em produção, mas continua a dar aquele erro em testes. Alguém sabe o porquê? mudou alguma coisa? o url por exemplo? Estou a utilizar este "https://servicos.portaldasfinancas.gov.pt:701/sgdtws/documentosTransporte"

Bom liguei agora para a AT e o servidor dos ws de testes quer das faturas quer dos documentos de transporte, quer da parte agricola está desligado.

Daí não se conseguir comunicar. A senhora com quem falei não me soube foi dizer quando estará operacional o servidor.

 

EDIT: @Cu5co olha o que escrevi em cima.

Edited by jncevcosta
  • Vote 1

Share this post


Link to post
Share on other sites
Nuno Bagulho Marques
5 horas atrás, jncevcosta disse:

Alguém consegue dar uma ajuda?

Parece que o site de testes não funcina corretamente

Share this post


Link to post
Share on other sites
pedrocerqueira22
2 hours ago, Sergio. said:

Bem colocado a questão,

A resposta é que o servidor não exige autenticação do utilizador/site que está a comunicar a guia.

E eles depois da atualização do certificado, só se esqueceram de desactivar isso....

Faz sentido. Muito obrigado a todos pela ajuda e pelo esclarecimento.

Share this post


Link to post
Share on other sites
virgilio baldaia
Em 20/07/2019 às 14:55, Sergio. disse:

Boa Tarde,

 

Finalmente resolvi o assunto.

Só lamento a falta de suporte/informação por parte da AT

A verdade seja dita que o ficheiro PublicChainCA2.p7b já era enviado juntamente com o pedido de novo certificado, mas também é verdade que nunca o usei até hoje.

Eu trabalho em ambiente Linux e tive que converter para formato PEM (DGITA_Issuing_CA2.pem), Aqui estão as 2 versões

No Curl simplesmente adicionei :

--cacert DGITA_Issuing_CA2.pem

Passou a funcionar.

Boa tarde,

Muito obrigado, funciona.

Share this post


Link to post
Share on other sites
CrominhO
2 horas atrás, Carlos M F Matos disse:

(...)E não é que devo ser bruxo. Tinha 99% de certeza que o problema deveria ser da AT. Caramba, era mesmo. Não sei a forma de comunicarmos está correta ou não, mas o que é certo é que sempre funcionou e se alguma coisa eles pretendam alterar, terão que avisar antecipadamente e documentar muito bem.

Deixo um conselho a todos e que não terão que seguir, caso o não pretendam, como é lógico: da próxima vez queixem-se à AT, mas em massa, como eu fiz, para eles resolverem o problema ou que digam o que é necessário alterar da parte dos produtores de software.

Bom trabalho.

Não adianta @Cu5co

Tenho a funcionar normalmente !!!!

Na Sexta-feira à noite já tinha toneladas de Posts do P@P no email, revi parte do código e desde então fiz 3 Posts. 

1º onde questionava um comando, 

2º nem me lembro

3º a Reforçar que o @marcolopes tinha razão, e para o pessoal enviar Email ou abrir questão no E-Balcão em vez de andar a fazer Copy e Paste de chaves 😐 

300 Mensagens do P@P no email depois, continuam a "bater no Ceguinho" que têm razão, e ainda se queixam que tiveram o fim de semana a trabalhar 😐 ... Desculpem mas a isto chama-se MASOQUISMO. Se toda a gente tivesse enviado Email ou reportado no E-balcão, antes de estarem a fazer isto tudo, provavelmente até os tipos que estão de Prevenção tinham lá ido ver o que se passava na AT... Assim não, e agora queixam-se 😐 

Surreal

Edited by CrominhO
  • Vote 1

As mentes humanas são realmente um local estranho!

Share this post


Link to post
Share on other sites
CrominhO
14 horas atrás, CrominhO disse:

@Nuno Silva (@si27645) em primeiro lugar não é amanhã, é hoje, porque alguns de nós têm clientes que trabalham ao Fim de semana, 

em 2º lugar, eu sei que o @marcolopes é rígido, mas ele tem razão. Podes dar as voltas que quiseres, ele tem razão

Andamos TODOS a fazer Corte e Costura,  quando é a AT que está mal. Mais, com este corte e costura, grande parte de nós tem o sistema a funcionar e não fez o mais importante, reclamar junto da AT que a cadeia não está a funcionar, então como irão eles arranjar ??? 

A menos que aches normal andar a fazer Copy Paste de chaves e certificados que nem sequer aparece no manual técnico???  

Era bom que para a próxima, 

pelo menos uma vez, o pessoal se juntasse e enviasse Email à AT, em vez de andar de andar a queimar neurónios e a inventar 😕 

  • Vote 2

As mentes humanas são realmente um local estranho!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.