Jump to content

Utilizar Webservices da AT


cjulio
Go to solution Solved by thoga31,

Recommended Posts

Em 07/12/2022 às 02:45, paulogama disse:

Boa noite

Posso fazer o registo dos documentos manualmente no site da AT ou e-factura?

Alguém sabe a onde posso fazer manualmente o registos das series para obter o código de validação?????

help.....

Obrigado

 

Boas Paulo, 

Sim podes, 

entra aqui, https://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/Faturacao/Comunicacao_Series_ATCUD/Paginas/default.aspx

depois clicas em Comunicação de Séries Documentais no Portal das Finanças e ele pede os dados. No fim, além de registares e obteres os códigos, podes tirar um XLS com os códigos todos por série e documento para fazer Copy and Paste 👍

As mentes humanas são realmente um local estranho!

Link to comment
Share on other sites

Em 07/12/2022 às 03:57, CrominhO disse:

Boas Paulo, 

Sim podes, 

entra aqui, https://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/Faturacao/Comunicacao_Series_ATCUD/Paginas/default.aspx

depois clicas em Comunicação de Séries Documentais no Portal das Finanças e ele pede os dados. No fim, além de registares e obteres os códigos, podes tirar um XLS com os códigos todos por série e documento para fazer Copy and Paste 👍

Muito obrigado pela ajuda.

 

Link to comment
Share on other sites

Em 07/12/2022 às 10:42, josalm disse:

Bom dia,
Tenho clientes a comunicar com sucesso documentos de transporte em produção sem subutilizador.
Não era suposto dar para comunicar com os webservices apenas com subutilizador?

Cumps

 

Bom Dia

 

O subutilizador só é necessário para não se dar acesso a todas as funções no Site da AT ( permite selecionar apenas as opções pretendidas )

 

Mas se dono da Empresa colocar o seu acesso de Administrador ( o Username aqui é o NIF sem levar os habituais "/1 , /2,  /3,  etc ) ) tem acesso a todas as funções sem exceção sem precisar de as ativar ( como é o caso dos Webservices ) 

 

Link to comment
Share on other sites

Em 07/12/2022 às 12:06, Vitor Pereira disse:

 

Bom Dia

 

O subutilizador só é necessário para não se dar acesso a todas as funções no Site da AT ( permite selecionar apenas as opções pretendidas )

 

Mas se dono da Empresa colocar o seu acesso de Administrador ( o Username aqui é o NIF sem levar os habituais "/1 , /2,  /3,  etc ) ) tem acesso a todas as funções sem exceção sem precisar de as ativar ( como é o caso dos Webservices ) 

 

Devia ser assim.

No entanto, estou a desenvolver o Webservice de entrega de DMR (Declarações Mensais de Remunerações) através do novo Webservice de entrega de Obrigações Acessórias e, além de ainda não existir a hipótese de dar permissão a um subutilizador usar esse serviço, o utilizador principal também está a receber a mensagem de não ter permissão.

Resumindo, o Webservice de DMR não está funcional.

  • Vote 1
Link to comment
Share on other sites

Em 06/12/2022 às 14:42, josalm disse:

Outra questão relativamente à comunicação de séries em produção.
Uma empresa pode comunicar uma série para efeito de testes em produção sem haver problema legal para a mesma?
Podemos registar e anular séries à vontade?

Podes, mas como foi dito, "queimas" esse nome de série para esse tipo de documento.
Ou seja, para fazer esse teste, usa um nome que nunca usarias na vida real, tipo "TESTE202212070941"

 

Em 06/12/2022 às 17:01, Luis Cozinheiro disse:

Mas agora na comunicação preciso da minha Chave Pública, ou seja um ficheiro .pem, qual o comando openssl que uso e quais os ficheiros acima mencionados que preciso usar?

Podes converter o ficheiro de ChavePublica que a AT fornece com extensão .cer em extensão .pem com este comando:

openssl x509 -inform pem -in ChavePublicaAT.cer -pubkey -noout > ChavePublicaAT.pem

 

 

 

 

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Link to comment
Share on other sites

Em 07/12/2022 às 12:35, americob disse:

Devia ser assim.

No entanto, estou a desenvolver o Webservice de entrega de DMR (Declarações Mensais de Remunerações) através do novo Webservice de entrega de Obrigações Acessórias e, além de ainda não existir a hipótese de dar permissão a um subutilizador usar esse serviço, o utilizador principal também está a receber a mensagem de não ter permissão.

Resumindo, o Webservice de DMR não está funcional

Também estou a desenvolver o envio de DMR por webservice e hoje consegui efetuar envios, tanto no ambiente teste como produção. 

Depois de fazer o envio em produção fui pelo portal e o envio estava registado.

 

Qual o erro que te dá?

Link to comment
Share on other sites

On 12/8/2022 at 2:45 PM, virgilio baldaia said:

Boa tarde,

Existe um novo campo no MANUAL DE INTEGRAÇÃO DE SOFTWARE Comunicação dos Documentos de Transporte à AT "ATCUD",

pelo que vejo e obrigatório, mas a partir de quando pergunto eu ?

Obrigado.

https://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/Documents/Comunicacao_Dados_Documentos_Transporte.pdf

Quote

07-12-2022

• Adicionado novo campo ATCUD nos pedidos e respostas das operações.

• Adicionados os códigos de resposta -22 a -27, -20005 a -10009 e - 20000, referentes ao ATCUD, às secções 4.2 “Documentos de transporte - Resposta ao pedido SOAP”; “Comunicação Prévia de Guia Global de Aquisição de Produtos de Produtores Agrícolas – Resposta ao pedido SOAP” e “Comunicação Posterior de Guias de Aquisição de Produtos de Produtores Agrícolas – Resposta ao pedido SOAP”

• Adicionado código de resposta -20 à secção 4.2 “Documentos de transporte - Resposta ao pedido SOAP

• Adicionado código de resposta -19 à secção “Comunicação Prévia de Guia Global de Aquisição de Produtos de Produtores Agrícolas - Resposta ao pedido SOAP”

Eu acho inaceitável a AT efectuar alterações deste tipo sem ter a DECÊNCIA de enviar um email às software houses! (como se não tivessem os contactos de cada um dos produtores) 😐😕

EDIT: Uma coisa vos posso dizer... a implementação da AT (em testes pelo menos) NÃO aceita o novo formato (que na prática tem duas alterações... o campo ATCUD e um novo tamanho máximo no Addressdetail)

Edited by marcolopes
  • Vote 1

The simplest explanation is usually the correct one

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

Link to comment
Share on other sites

Em 08/12/2022 às 14:55, marcolopes disse:

https://info.portaldasfinancas.gov.pt/pt/apoio_contribuinte/Documents/Comunicacao_Dados_Documentos_Transporte.pdf

Eu acho inaceitável a AT efectuar alterações deste tipo sem ter a DECÊNCIA de enviar um email às software houses! (como se não tivessem os contactos de cada um dos produtores) 😐😕

EDIT: Uma coisa vos posso dizer... a implementação da AT (em testes pelo menos) NÃO aceita o novo formato (que na prática tem duas alterações... o campo ATCUD e um novo tamanho máximo no Addressdetail)

Enquanto não estiver implementado na pagina de testes dos Webservices ( https://faturas.portaldasfinancas.gov.pt/testarLigacaoWebService.action ) é porque ainda não está implementado do lado deles.

Estranho é que mantiveram o mesmo serviço e porta de acesso: https://servicos.portaldasfinancas.gov.pt:401/sgdtws/documentosTransporte .

Quererá dizer que, sendo o ATCUD campo obrigatório (conforme as intruções), não vão coixistir dois serviços em paralelo durante algum tempo, como fizeram para as faturas?

A ser assim, parece-me que vai dar asneira, mesmo que definissem uma data e hora muito precisa em que o param o serviço antigo (não pode ter ATCUD) e iniciam o novo serviço (tem de ter ATCUD).

Link to comment
Share on other sites

Em 07/12/2022 às 20:30, s0me0ne disse:

Também estou a desenvolver o envio de DMR por webservice e hoje consegui efetuar envios, tanto no ambiente teste como produção. 

Depois de fazer o envio em produção fui pelo portal e o envio estava registado.

 

Qual o erro que te dá?

Em testes dá isto:

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
        <ns0:validarDeclaracaoResponse xmlns:ns0="https://servicos.portaldasfinancas.gov.pt/oaatws/GestaoDeclarativaOAWebService/2021">
            <codigo>-103</codigo>
            <mensagem>O ator SPA autenticado no Security Header n&#227;o tem permiss&#245;es para aceder a uma determinada opera&#231;&#227;o.</mensagem>
        </ns0:validarDeclaracaoResponse>
    </env:Body>
</env:Envelope>

Exatamente o mesmo pedido, em produção dá isto:

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
        <ns0:validarDeclaracaoResponse xmlns:ns0="https://servicos.portaldasfinancas.gov.pt/oaatws/GestaoDeclarativaOAWebService/2021">
            <codigo>0</codigo>
            <mensagem>Declara&#231;&#227;o validada com sucesso.</mensagem>
        </ns0:validarDeclaracaoResponse>
    </env:Body>
</env:Envelope>

O pedido foi este:

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Header>
        <wss:Security xmlns:at="http://at.pt/wsp/auth" xmlns:wss="http://schemas.xmlsoap.org/ws/2002/12/secext" S:Actor="http://at.pt/actor/SPA" at:Version="2">
            <wss:UsernameToken>
                <wss:Username>504512153</wss:Username>
                <wss:Password Digest="K3rD0...rZm1ZFRD+I=">SzPA...j8OTw==</wss:Password>
                <wss:Nonce>OjpD6rIh/iepImDmje...0W90OU9T8Bhx9duxBw==</wss:Nonce>
                <wss:Created>2022-12-07T16:28:33Z</wss:Created>
            </wss:UsernameToken>
        </wss:Security>
    </S:Header>
    <S:Body>
        <ns1:validarDeclaracaoRequest xmlns:ns1="https://servicos.portaldasfinancas.gov.pt/oaatws/GestaoDeclarativaOAWebService/2021" xmlns:ns0="https://servicos.portaldasfinancas.gov.pt/GestaoDeclarativaWebService/2021/beans">
            <versaoDeclaracao>2021.0</versaoDeclaracao>
            <declaracao>UEsDBBQAAAAIAJGDh1XgwQ...AAAAAEAAQA/AAAAJQEAAAAA</declaracao>
            <modelo>DMR</modelo>
        </ns1:validarDeclaracaoRequest>
    </S:Body>
</S:Envelope>

 

Link to comment
Share on other sites

On 12/8/2022 at 5:51 PM, americob said:

Enquanto não estiver implementado na pagina de testes dos Webservices ( https://faturas.portaldasfinancas.gov.pt/testarLigacaoWebService.action ) é porque ainda não está implementado do lado deles.

Estranho é que mantiveram o mesmo serviço e porta de acesso: https://servicos.portaldasfinancas.gov.pt:401/sgdtws/documentosTransporte .

Quererá dizer que, sendo o ATCUD campo obrigatório (conforme as instruções), não vão coexistir dois serviços em paralelo durante algum tempo, como fizeram para as faturas?

A ser assim, parece-me que vai dar asneira, mesmo que definissem uma data e hora muito precisa em que o param o serviço antigo (não pode ter ATCUD) e iniciam o novo serviço (tem de ter ATCUD).

Não me parece ser necessário 2 serviços quando foi adicionado um parâmetro novo (ATCUD). O novo serviço de comunicação de documentos é um bicho diferente, basicamente, mudou tudo... tem diversas operações, o request é diferente, o processo de mudança de estado é totalmente diferente... não seria compatível

Neste caso (documentos de TRANSPORTE) o serviço do lado da AT só tem de definir o campo ATCUD como facultativo até 31/12 (a partir daí, os documentos começam a bater no tecto caso o ATCUD não seja definido, ou não seja válido, etc). E a coisa vai fiar fino!

Quote

-22 - Código ATCUD inválido. ATCUD não preenchido ou formato inválido.
-23 - Código ATCUD inválido. ATCUD não corresponde a série válida.
-24 - Código ATCUD inválido. ATCUD já se encontra associado a um documento de transporte.
-25 - Código ATCUD inválido. Não foi possível verificar se o ATCUD corresponde a uma série válida.
-26 - Código ATCUD inválido. ATCUD indicado não pertence ao documento.
-27 - Código ATCUD inválido. Código pertence a uma série interna e reservada da aplicação SGDT

Quote

-20005 - Par NIF/Código de Validação inválido para Classe/Tipo de Documento
-20006 - Conjunto NIF/Código de Validação/Classe/Tipo de Documento existente, mas não vigente à data do Documento
-20007 - Par Série/Código de Validação inválido
-20008 - Sequência do nº de Documento e do ATCUD diferentes
-20009 - Sequência do nº de Documento inválida para o intervalo comunicado
-20000 - Erro não esperado inespecífico

Deduzo que este "controle" ao ATCUD nos documentos de transporte seja adiado (porque já veio tarde). Neste caso deve ser adiado uns meses... Mas a comunicação das séries não... tanto mais porque se adiarem, a "malta" relaxa novamente e daqui a 3 meses pedem novo adiamento!

Edited by marcolopes

The simplest explanation is usually the correct one

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

Link to comment
Share on other sites

Em 09/12/2022 às 03:30, marcolopes disse:

Neste caso (documentos de TRANSPORTE) o serviço do lado da AT só tem de definir o campo ATCUD como facultativo até 31/12 (a partir daí, os documentos começam a bater no tecto caso o ATCUD não seja definido, ou não seja válido, etc). E a coisa vai fiar fino!

O chato neste caso é realmente não podermos preparar já as nossas aplicações para quando a AT passar a requerer com carater de obrigatoriedade o ATCUD. Uma opção será algum tipo de parâmetro que indique uma data a partir da qual esse elemento seja preenchido, assumindo por ex. o início de 2023 por omissão.

Link to comment
Share on other sites

Em 09/12/2022 às 10:14, albertosilva disse:

O chato neste caso é realmente não podermos preparar já as nossas aplicações para quando a AT passar a requerer com carater de obrigatoriedade o ATCUD. Uma opção será algum tipo de parâmetro que indique uma data a partir da qual esse elemento seja preenchido, assumindo por ex. o início de 2023 por omissão.

Conheço software que está a fazer mesmo isso. Se a data do documento for igual ou superior a 2023-01-01, só emite se tiver condições de acrescentar o ATCUD.

"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Link to comment
Share on other sites

Em 09/12/2022 às 11:08, nunopicado disse:

Conheço software que está a fazer mesmo isso. Se a data do documento for igual ou superior a 2023-01-01, só emite se tiver condições de acrescentar o ATCUD.

O problema é mesmo se a AT adia para depois de 2023-01-01 a alteração aos serviços de comunicação de Documentos de Transporte, e ao incluir o ATCUD no pedido este seja rejeitado, como está a acontecer à data de hoje:

particle 2.1: in element {https://servicos.portaldasfinancas.gov.pt/sgdtws/documentosTransporte/}envioDocumentoTransporteRequestElem of type {https://servicos.portaldasfinancas.gov.pt/sgdtws/documentosTransporte/}StockMovement, found <ATCUD> (in default namespace), but next item should be MovementStatus

No nosso caso, a data em causa por omissão para passar a incluir o ATCUD nos pedidos de comunicação dos DT é 2023-01-01 mas com a possibilidade de por parametrização adiar essa data, sem ter que andar a atualizar os terminais móveis dos clientes à pressa.

Em relação ao ATCUD na criação de documentos em si, esquecendo esta parte dos documentos de transporte, temos como dizes, é condição ter a série registada para emitir documentos a partir de 2023, e opcional até lá.

Edited by albertosilva
  • Vote 1
Link to comment
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.