Jump to content
cjulio

Utilizar Webservices da AT

Recommended Posts

sandokas

Confirmo que além da AT mudar o certificado SSL do site (que passou a ter uma nova cadeia de certificação), passou a ser necessário validar a cadeia de certificação do certificado de cliente (aquele que vocês já tinham pedido anteriormente). Porque razão este segundo passo passou a ser necessário desconheço.

Quanto ao acesso ao site de Teste, aparentemente o certificado de testes é emitido por uma outra cadeia de certificação, que não é incluída nos certificados fornecidos. (pelo menos não encontrei), pelo que deixei de conseguir fazer testes para a porta 701.

Edited by sandokas

Share this post


Link to post
Share on other sites
Sergio.
35 minutos atrás, CrominhO disse:

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 😕 

Concordo,

Para começar qual é o email? E-Balcao ou ASI, melhor mesmo é ambos.

sobre

"em vez de andar de andar a queimar neurónios e a inventar" não deixas de ter razão, mas a verdade é que os clientes não vão parar até a AT resolver o assunto.

Há podem usar o telefone, errado, no meu caso a maioria tem os escritórios encerrados e o processo é automático e não são os srs camionistas que têm os acessos das finanças,

Mas concordo, o ideal seria fazer isso..

No entanto aqui deixo uma "fagulha" para a fogueira ...

Quem representa os produtores de software?

Obrigado.

Share this post


Link to post
Share on other sites
snake8856
26 minutos atrás, Sergio. disse:

Concordo,

Para começar qual é o email? E-Balcao ou ASI, melhor mesmo é ambos.

sobre

"em vez de andar de andar a queimar neurónios e a inventar" não deixas de ter razão, mas a verdade é que os clientes não vão parar até a AT resolver o assunto.

Há podem usar o telefone, errado, no meu caso a maioria tem os escritórios encerrados e o processo é automático e não são os srs camionistas que têm os acessos das finanças,

Mas concordo, o ideal seria fazer isso..

No entanto aqui deixo uma "fagulha" para a fogueira ...

Quem representa os produtores de software?

Obrigado.

Quem representa os produtores não deveria ser a ASSOFT?

Pelo site são a Associação Portuguesa de Software.

Share this post


Link to post
Share on other sites
Smig
1 hora atrás, CrominhO disse:

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 😕 

Uma coisa não exclui a outra. É possível que muito pessoal tenha feito as duas, especialmente depois de algumas respostas recebidas durante este período que não adiantaram muito.

Share this post


Link to post
Share on other sites
josevcosta
9 minutos atrás, snake8856 disse:

Quem representa os produtores não deveria ser a ASSOFT?

Pelo site são a Associação Portuguesa de Software.

Sim, a ASSOFT é a associação que conheço e que representa empresas produtoras de software, suas associadas, mas nunca a vi a publicitar qualquer tipo de reclamação, por situações como esta, junto da AT.

Share this post


Link to post
Share on other sites
CrominhO
1 hora atrás, Sergio. disse:

(...)

No entanto aqui deixo uma "fagulha" para a fogueira ...

Quem representa os produtores de software?

Obrigado.

Sérgio quando comecei com os softwares de Facturação e Gestão Comercial, não havia mais de 50 em Portugal, hoje quantos estão registados na AT? 2 mil? 3 mil? 

Podemos ficar à espera que a ASSOFT resolva, tal como resolveu no passado, ou podemos partir a cabeça a criar engenhocas para meter as coisas a funcionar, 

ou podemos mandar um Email, a quem de direito (AT) para ver que alterações foram feitas e porque os sistemas deixaram de funcionar. 

Já disse, recebi mais de 400 mensagens do P@P, imagino que cada pessoa aqui tenha pelo menos 1 número de Certificação, e aposto que nem 10 Emails chegaram À AT. 

E já não é a primeira vez, o pessoal que não fique "unido" e não use a sua "força" e os meios adequados, e depois queixem-se. 

Edited by CrominhO
  • Vote 1

As mentes humanas são realmente um local estranho!

Share this post


Link to post
Share on other sites
marcolopes

 

5 hours ago, ccorreia said:

Aqui também já funciona corretamente, sem efetuarmos qualquer alteração.

Pelo que sei, a AT vai desfazer a salgalhada que criou na semana passada...

Já temos o software a funcionar sem problemas... sem alterações.

Não sei se já desfizeram alguma coisa ou não... mas a verdade é que os problemas só aconteceram de manhã.

Edited by marcolopes

The simplest explanation is usually the correct one

JAVA Utilities: https://github.com/marcolopes/dma

Share this post


Link to post
Share on other sites
figueiredorj

Viva,

do nosso lado temos novamente os serviços a funcionar.
Contudo chamo a atenção se não terá sido de forma provisória que a AT colocou os serviços como estavam de forma a dar tempo para atualizar os software/certificados.

O que fizemos (além das experiencias) foi:

  • ficheiro PublicChainCA2.p7b
    • converter para .pem
      openssl pkcs7 -print_certs -in PublicChainCA2.p7b -out PublicChainCA.pem
  • Adicionar ao já existente (necessario criar pfx) pfx os certificados que existem no novo pem criado
    para o efeito usei um software keystore explorer
    • Adicionar root certificate
    • adicionar o outro certificado
  • Gravar novo pfx
  • Vote 1

Share this post


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

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.

Obrigado 

Share this post


Link to post
Share on other sites
Cu5co
16 horas atrás, figueiredorj disse:

Viva,

do nosso lado temos novamente os serviços a funcionar.
Contudo chamo a atenção se não terá sido de forma provisória que a AT colocou os serviços como estavam de forma a dar tempo para atualizar os software/certificados.

O que fizemos (além das experiencias) foi:

  • ficheiro PublicChainCA2.p7b
    • converter para .pem
      openssl pkcs7 -print_certs -in PublicChainCA2.p7b -out PublicChainCA.pem
  • Adicionar ao já existente (necessario criar pfx) pfx os certificados que existem no novo pem criado
    para o efeito usei um software keystore explorer
    • Adicionar root certificate
    • adicionar o outro certificado
  • Gravar novo pfx

Podes explicar o 2º passo um pouco melhor, por favor? Onde dizes:

"Adicionar ao já existente (necessario criar pfx) pfx os certificados que existem no novo pem criado
para o efeito usei um software keystore explorer

Adicionar root certificate

adicionar o outro certificado"

Quais as opçoes do keystore que usaste?

Edited by Cu5co

Share this post


Link to post
Share on other sites
Vitor Pereira
5 horas atrás, Cu5co disse:

Podes explicar o 2º passo um pouco melhor, por favor? Onde dizes:

"Adicionar ao já existente (necessario criar pfx) pfx os certificados que existem no novo pem criado
para o efeito usei um software keystore explorer

Adicionar root certificate

adicionar o outro certificado"

Quais as opçoes do keystore que usaste?

 

Pessoal, não vale a pena fazerem alterações por causa do Webservice.

Existiu um problema por parte da AT ( afinal também parecem ser humanos como nós … rs ), problema já assumido ( a custo, mas assumido ).

A SAGE, Primavera, PHC, etc, também ficaram paradas como todos nós, pelo que a alteração deste Certificado pela AT nunca obriga a alteração alguma da nossa parte ( aliás, é a própria AT a mencionar isso nos mais que nos enviou )

 

Share this post


Link to post
Share on other sites
Vitor Pereira
22 horas atrás, CrominhO disse:

Sérgio quando comecei com os softwares de Facturação e Gestão Comercial, não havia mais de 50 em Portugal, hoje quantos estão registados na AT? 2 mil? 3 mil? 

Podemos ficar à espera que a ASSOFT resolva, tal como resolveu no passado, ou podemos partir a cabeça a criar engenhocas para meter as coisas a funcionar, 

ou podemos mandar um Email, a quem de direito (AT) para ver que alterações foram feitas e porque os sistemas deixaram de funcionar. 

Já disse, recebi mais de 400 mensagens do P@P, imagino que cada pessoa aqui tenha pelo menos 1 número de Certificação, e aposto que nem 10 Emails chegaram À AT. 

E já não é a primeira vez, o pessoal que não fique "unido" e não use a sua "força" e os meios adequados, e depois queixem-se. 

Certíssimo !!!

  • Vote 1

Share this post


Link to post
Share on other sites
marcolopes
44 minutes ago, Vitor Pereira said:

Pessoal, não vale a pena fazerem alterações por causa do Webservice.

Existiu um problema por parte da AT ( afinal também parecem ser humanos como nós … rs ), problema já assumido ( a custo, mas assumido ).

A SAGE, Primavera, PHC, etc, também ficaram paradas como todos nós, pelo que a alteração deste Certificado pela AT nunca obriga a alteração alguma da nossa parte ( aliás, é a própria AT a mencionar isso nos mais que nos enviou )

 

Já tinha dito o mesmo aqui, porque me foi transmitido informalmente, mas gostava de ver um EMAIL da AT a esclarecer toda esta situação...


The simplest explanation is usually the correct one

JAVA Utilities: https://github.com/marcolopes/dma

Share this post


Link to post
Share on other sites
figueiredorj

Pois.. gostava de acreditar que era tudo preto e branco.

Mas o que aconteceu foi eles passaram a forçar a utilização do certificado de segurança para as comunicações. Entretanto voltaram atrás.. tudo o que for dito por palavra sobre assumir erros vale 0 - o que quer dizer que de acordo com o prosseguimento das operações que estiveram fazer, não quer dizer que não voltem a forçar a utilização do certificado de segurança.

Apenas gostava que estes processos fossem planeados e não em cima do joelho, com comunicações efectuadas de forma atempada e explícitas.

 

@Cu5co

abres o pfx e o programa vai-te pedir a password;
arrastas o pem que entretanto geraste para a janela da aplicação - vai-te aparecer os dois certicados de forma hierarquica; adicionas o que esta no root primeiro (import) e depois o outro.

Mal não faz e actualizei os certicados assim.

Share this post


Link to post
Share on other sites
Cu5co
46 minutos atrás, figueiredorj disse:

Pois.. gostava de acreditar que era tudo preto e branco.

Mas o que aconteceu foi eles passaram a forçar a utilização do certificado de segurança para as comunicações. Entretanto voltaram atrás.. tudo o que for dito por palavra sobre assumir erros vale 0 - o que quer dizer que de acordo com o prosseguimento das operações que estiveram fazer, não quer dizer que não voltem a forçar a utilização do certificado de segurança.

Apenas gostava que estes processos fossem planeados e não em cima do joelho, com comunicações efectuadas de forma atempada e explícitas.

 

@Cu5co

abres o pfx e o programa vai-te pedir a password;
arrastas o pem que entretanto geraste para a janela da aplicação - vai-te aparecer os dois certicados de forma hierarquica; adicionas o que esta no root primeiro (import) e depois o outro.

Mal não faz e actualizei os certicados assim.

Obrigado

Share this post


Link to post
Share on other sites
trs80
On 7/23/2019 at 10:53 AM, Cu5co said:

Podes explicar o 2º passo um pouco melhor, por favor? Onde dizes:

"Adicionar ao já existente (necessario criar pfx) pfx os certificados que existem no novo pem criado
para o efeito usei um software keystore explorer

Adicionar root certificate

adicionar o outro certificado"

Quais as opçoes do keystore que usaste?

vejam o meu post de 2ª por volta do 12h

em suma, na posse dos ficheiros recebidos recebidos da entidade certificadora

NIFNIFNIF.cer

e

PublicChainCA2.p7b    deste segundo extraiem o certificado "DGITA Issuing CA2", penso que basta este

e depois junto com a vossas Private Key

openssl pkcs12 -export -in NIFNIFNIF.cer -inkey NIFNIFNIF.key -certfile DGITA_Issuing_CA2.cer -out NIFNIFNIF.pfx

Desta forma obtem o PFX com os dois certificados e a chave privada

No meu caso penso que funcionou embora o meu teste tenha sido feito minutos antes de aqui dizerem que ja tudo funcionava por isso nao posso ter a certeza que isto resolveu...

 

Share this post


Link to post
Share on other sites
123xyz

Boa tarde.

Considerando a comunicação de DTs em qualidade, o novo certificado TesteWebServices que expira a 04/12/2019 foi emitido pela "DGITA Issuing CA1".

No meu caso, o certificado que tinha desta CA expirou em 2015... E não me foi enviado qualquer outro e não encontro email ou página web que permita o download 

do mesmo...

Alguém tem ou consegue disponibilizar um certificado válido desta entidade (ou uma ligação para download)?

Obrigado.

Share this post


Link to post
Share on other sites
RikFonseca
1 hora atrás, 123xyz disse:

Boa tarde.

Considerando a comunicação de DTs em qualidade, o novo certificado TesteWebServices que expira a 04/12/2019 foi emitido pela "DGITA Issuing CA1".

No meu caso, o certificado que tinha desta CA expirou em 2015... E não me foi enviado qualquer outro e não encontro email ou página web que permita o download 

do mesmo...

Alguém tem ou consegue disponibilizar um certificado válido desta entidade (ou uma ligação para download)?

Obrigado.

Os certificados de teste estão sempre aqui:

https://faturas.portaldasfinancas.gov.pt/testarLigacaoWebService.action

No fundo da página...

Share this post


Link to post
Share on other sites
123xyz
17 horas atrás, RikFonseca disse:

Os certificados de teste estão sempre aqui:

https://faturas.portaldasfinancas.gov.pt/testarLigacaoWebService.action

No fundo da página...

Estava-me a referir aos certificados necessários para validar a cadeia de certificação.

No zip em questão apenas são enviados certificados relativos à chave pública da AT e ao certificado "TesteWebServices ", que como disse já tenho e expira somente a 12/2019.

O que pretendo é obter o certificado relativo à entidade emissora do certificado "TesteWebServices ", à CA "DGITA Issuing CA1", cujo certificado que aqui tenho já é muito antigo e expirou em 2015...

Share this post


Link to post
Share on other sites
Álvaro Borges

Boa tarde a todos...confirma-se que o servidor dos ws de testes quer das faturas quer dos documentos de transporte, continua desligado?

Não consigo fazer testes nenhuns pois o retorno é sempre:

"responseStatus": [
     {
       "returnCode": 52,
       "returnMessage": "Não foi possível verificar se o utilizador tem permissões para aceder a esta operação."
     }

Obrigado e abraço

Share this post


Link to post
Share on other sites
jncevcosta
13 minutos atrás, Álvaro Borges disse:

Boa tarde a todos...confirma-se que o servidor dos ws de testes quer das faturas quer dos documentos de transporte, continua desligado?

Não consigo fazer testes nenhuns pois o retorno é sempre:

"responseStatus": [
     {
       "returnCode": 52,
       "returnMessage": "Não foi possível verificar se o utilizador tem permissões para aceder a esta operação."
     }

Obrigado e abraço

Também continuo sem conseguir usar o servidor de testes. Liguei para lá e supostamente já está tudo como deve ser.

Contudo continuo sem conseguir comunicar para o WS de teste.

Sugestão dada é para enviar um ticket para o ebalcão com um printscreen do erro que estamos a ter na comunicação.

Este é o erro que tenho no curl

*   Trying 213.13.158.240...
0|dcweb    | * TCP_NODELAY set
0|dcweb    | * Connected to servicos.portaldasfinancas.gov.pt (213.13.158.240) port 701 (#0)
0|dcweb    | * ALPN, offering http/1.1
0|dcweb    | * successfully set certificate verify locations:
0|dcweb    | *   CAfile: /etc/pki/tls/certs/ca-bundle.crt
0|dcweb    |   CApath: none
0|dcweb    | * OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to servicos.portaldasfinancas.gov.pt:701
0|dcweb    | * Closing connection 0

 

Edited by jncevcosta

Share this post


Link to post
Share on other sites
Raul Macedo
8 horas atrás, jncevcosta disse:

Também continuo sem conseguir usar o servidor de testes. Liguei para lá e supostamente já está tudo como deve ser.

Contudo continuo sem conseguir comunicar para o WS de teste.

Sugestão dada é para enviar um ticket para o ebalcão com um printscreen do erro que estamos a ter na comunicação.

Este é o erro que tenho no curl


*   Trying 213.13.158.240...
0|dcweb    | * TCP_NODELAY set
0|dcweb    | * Connected to servicos.portaldasfinancas.gov.pt (213.13.158.240) port 701 (#0)
0|dcweb    | * ALPN, offering http/1.1
0|dcweb    | * successfully set certificate verify locations:
0|dcweb    | *   CAfile: /etc/pki/tls/certs/ca-bundle.crt
0|dcweb    |   CApath: none
0|dcweb    | * OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to servicos.portaldasfinancas.gov.pt:701
0|dcweb    | * Closing connection 0

 

Sim, confirma-se que o servidor de testes da AT não está a funcionar. Depois de obter vezes sem conta o erro 52, contactei a AT e confirmaram-me que o ambiente de testes não está a funcionar e não adiantam prazo para resolução. Pena que não deem essa informação de forma clara no site... perdemos imenso tempo a despistar o erro quanto afinal o servidor está inoperacional... enfim...

Share this post


Link to post
Share on other sites
marcolopes
12 hours ago, jncevcosta said:

Também continuo sem conseguir usar o servidor de testes. Liguei para lá e supostamente já está tudo como deve ser.

Contudo continuo sem conseguir comunicar para o WS de teste.

Sugestão dada é para enviar um ticket para o ebalcão com um printscreen do erro que estamos a ter na comunicação.

Por aqui está tudo a funcionar (ambiente TESTES).


The simplest explanation is usually the correct one

JAVA Utilities: https://github.com/marcolopes/dma

Share this post


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

Por aqui está tudo a funcionar (ambiente TESTES).

Entrentato comecei a tentar construir pedidos SOAP e realmente já tenho respostas.

Agora tenho o erro 20: Chave do pedido não preenchida. O XML é o seguinte:

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:tns="https://servicos.portaldasfinancas.gov.pt/sgdtws/documentosTransporte/">
    <soap:Header>
        <wss:Security xmlns:wss="http://schemas.xmlsoap.org/ws/2002/12/secext" 
            xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext">
            <wss:usernameToken>
                <wss:Username>599999993/37</wss:Username>
                <wss:Password> YT6bHPkLgsdhm8qkBbCaqg==</wss:Password>     						<wss:Nonce>FT5zpawHydSsf/ecL/paNnB+7msiQ+4rCO7ksp35x2ypfwMzu1oTCzRwK8stTpJ0/ng+y7Bqlpp07EhV2IlFSYfafannMinasO18DoMghnBlDSUI0OQ0nz/xBa+AJTG+EGJNG4nQD56xxNq3ya9Fu9B+mjhZ1IWairUzNsbaSt6SS4wXJ1Gfz5hy+2jB6gYrmrrVbl3Ji+sKxtaF78Oq4DmgrQbvKyiOQOtZ25feTg9b3dAQhFmhm1MJIisB0fuWd+Q8QzeNrwqvFhCPJOM3P/Lx03k2zXqAK1ZpSyn3fTwORtjx1uHOblijigPXO/c/wc5MTM21SyjMLT4m438Vlg==</wss:Nonce>
                <wss:Created>rsN56WTykhMr80blbwkFAGN9qNOwsg8J8IPzOwFhrfo=</wss:Created>
            </wss:usernameToken>
        </wss:Security>
    </soap:Header>
    <soap:Body>
        <tns:envioDocumentoTransporteRequestElem>
            <TaxRegistrationNumber>599999993</TaxRegistrationNumber>
            <CompanyName>*</CompanyName>
            <CompanyAddress>
                <Addressdetail>*</Addressdetail>
                <City>*</City>
                <PostalCode>*</PostalCode>
                <Country>PT</Country>
            </CompanyAddress>
            <DocumentNumber>GT 20191/1</DocumentNumber>
            <MovementStatus>T</MovementStatus>
            <MovementDate>2019-07-17</MovementDate>
            <MovementType>GT</MovementType>
            <CustomerTaxID>507501888</CustomerTaxID>
            <CustomerName>*</CustomerName>
            <AddressTo>
                <Addressdetail>*</Addressdetail>
                <City>*</City>
                <PostalCode>*</PostalCode>
                <Country>PT</Country>
            </AddressTo>
            <AddressFrom>
                <Addressdetail>*</Addressdetail>
                <City>*</City>
                <PostalCode>*</PostalCode>
                <Country>PT</Country>
            </AddressFrom>
            <MovementStartTime>2019-07-17T15:04:00</MovementStartTime>
            <Line>
                <ProductDescription>Raquete Badminton Adulto Preto Azul</ProductDescription>
                <Quantity>1</Quantity>
                <UnitOfMeasure>UN</UnitOfMeasure>
                <UnitPrice>8.1300813</UnitPrice>
            </Line>
        </tns:envioDocumentoTransporteRequestElem>
    </soap:Body>
</soap:Envelope>

Alguém que tem alguma ideia porque é que dá o erro?

Alguém que use NodeJS pode dar umas luzes de como fez? O script em PHP que tinha deixou de funcionar e estou a tentar arranjar uma alternativa. 

 

Estou a usar o package node-soap e tenho o seguinte código

var options = {
        endpoint: 'https://servicos.portaldasfinancas.gov.pt:701/sgdtws/documentosTransporte',
        wsdl_options: {
            forever: true,
            rejectUnauthorized: false,
            strictSSL: false,
            pfx: fs.readFileSync('at/certificados/desenvolvimento/TestesWebServices.pfx'),
            passphrase: 'TESTEwebservice'
        }
    };
    soap.createClient('/at/documentosTransporte.wsdl', options, function (err, client) {
        client.setSecurity(new soap.ClientSSLSecurityPFX('at/certificados/desenvolvimento/TestesWebServices.pfx', 'TESTEwebservice'));
        client.addHttpHeader('Content-Type', 'text/xml;charset=UTF-8');
        client.addHttpHeader('Accept', 'text/xml');
        client.addHttpHeader('Cache-Control', 'no-cache');
        client.addHttpHeader('SoapAction', 'https://servicos.portaldasfinancas.gov.pt/sgdtws/documentosTransporte/');

        var soapHeader = {
            'Security': {
                'usernameToken': {
                    'Username': '599999993/37',
                    'Password': 'YT6bHPkLgsdhm8qkBbCaqg==',
                    'Nonce': 'FT5zpawHydSsf/ecL/paNnB+7msiQ+4rCO7ksp35x2ypfwMzu1oTCzRwK8stTpJ0/ng+y7Bqlpp07EhV2IlFSYfafannMinasO18DoMghnBlDSUI0OQ0nz/xBa+AJTG+EGJNG4nQD56xxNq3ya9Fu9B+mjhZ1IWairUzNsbaSt6SS4wXJ1Gfz5hy+2jB6gYrmrrVbl3Ji+sKxtaF78Oq4DmgrQbvKyiOQOtZ25feTg9b3dAQhFmhm1MJIisB0fuWd+Q8QzeNrwqvFhCPJOM3P/Lx03k2zXqAK1ZpSyn3fTwORtjx1uHOblijigPXO/c/wc5MTM21SyjMLT4m438Vlg==',
                    'Created': 'rsN56WTykhMr80blbwkFAGN9qNOwsg8J8IPzOwFhrfo='
                }
            }
        };
        client.addSoapHeader(soapHeader, 'Security', 'wss', 'http://schemas.xmlsoap.org/ws/2002/12/secext');

A parte do cabeçalho assim como o xml seguinte está fixo só para testes.

Edited by jncevcosta

Share this post


Link to post
Share on other sites
jose.cordeiro

@jncevcosta

boas em nodejs fiz assim:
 

....

var https = require('https');
var parseString = require('xml2js').parseString;
...

var financasOptions = 
{
  hostname: "servicos.portaldasfinancas.gov.pt",
  port: 401,  //PRODUCAO
  path: "/sgdtws/documentosTransporte",
  method: "POST",
  pfx: fs.readFileSync('/opt/FinancasCert/' + GTData.taxRegistrationNumber + '.pfx'),
  cert: fs.readFileSync('/opt/FinancasCert/ChaveCifraPublicaAT_Prod.cer'),	
  passphrase: 'password ou passphrase',
  agent: false,
  rejectUnauthorized: false,
  /*secureProtocol: 'SSLv3_method',*/
  headers: 
  {
    "Accept": "text/xml",
    "Content-length": message.length,
    "Content-Type": "text/xml;charset=UTF-8",
    "SOAPAction": "https://servicos.portaldasfinancas.gov.pt/sgdtws/documentosTransporte/"
  }
};

var requestCode = https.request(financasOptions, function(requestCode)
{
  requestCode.on('data', function (chunk) 
  {
	parseString(chunk, function (err, result)
    {
	//tratas da resposta das finanças	
....
	
	});
  }).on('error', function(e)
  {
  	console.log("ReqError: " + e);
  }
});
requestCode.end(message); //o message é o XML (a guia de transporte)

na parte do ENVELOPE a password, nonce e created gero em Java simplesmente porque nao consigo fazer o mesmo algoritmo em JS 🤨

Espero que ajude.

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.