Validar Documento

Serviço destinado a transmitir a confirmação ou rejeição de uma factura ou documento equivalente em que o solicitante é indicado como adquirente e definir a percentagem IVA Dedutível a considerar sempre que aplicável.

Características do Serviço

Endereço de homologação

POST https://sifphml.minfin.gov.ao/sigt/fe/v1/validarDocumento

Endereço de produção

POST https://sifp.minfin.gov.ao/sigt/fe/v1/validarDocumento

Payload de entrada para solicitar criação de série

 {
    "schemaVersion": "1.2",
    "submissionTimeStamp": "2025-10-28T18:51:10.178Z",
    "taxRegistrationNumber": "5001636863",
    "softwareInfo": {
    "softwareInfoDetail": {
            "productId": "Meu ERP CERTO",
            "productVersion": "1.0.1",
            "softwareValidationNumber": "C_134"
        },
        "jwsSoftwareSignature": "eyJ0eXAiOiJKT1NFIiwiYWxnIjoiUlMyNTYifQ.eyJwcm9kdWN0SWQiOiJNZXUgRVJQIENFUlRPIiwicHJvZHVjdFZlcnNpb24iOiIxLjAuMSIsInNvZnR3YXJlVmFsaWRhdGlvbk51bWJlciI6IkNfMTM0In0.VE3zkvOJOpqBfz4wpx4KCgcwOGgzGUP3MSMbaHCDnHhwOaeA6jlccBW9HjgQvg2tYCVVq0imrU_z0grEHNthhG4xD3afSOD1_RzvHs8Tc45dvztHJzB4gF0CAX-yIDwi7XcHiMRY0vkXOETBeHKewg0ktWSnZ7SLf4GxGzE7ry2u_pmhqhCPhxpa0oGQ_rBJUYkEAFg1OwaqjwvzCFgdT11r-XsHmnkcfJX_ktj59RWR_zgbytiCRtwCK9LNUflveS5GzUaCXbPn2deQ3F2hPldLECEa_ahwoapoK1LhkgOAVyPLJf6M1Cm09Le7rkdSaWQSW5BI_sPx5YaUaXkeqg"
  },
  "jwsSignature": "string",
  "documentNo": "FT FT6325S2C/7",
  "action": "C",
  "deductibleVATPercentage": "72.5",
  "nonDeductibleAmount": "200.00"
 }
Payload assinatura Validar Documento
 {
    "taxRegistrationNumber": "...",
    "documentNo": "FT FT6325S2C/7",
    "action": "C",
    "deductibleVATPercentage": "72.5",
    "nonDeductibleAmount": "200.00"
 }

Parâmetros de entrada

Campo Tipo (JSON) Atributos Obrigatório Descrição

schemaVersion

string

N/A

Sim

Versão do schema do serviço, exemplo “1.0”.

taxRegistrationNumber

string

“maxlength”: 15

Sim

Número fiscal de contribuinte emissor da factura.

submissionTimeStamp

string

N/A

Sim

Timestamp de submissão do pedido no formato ISO 8601. Exemplos:

  • "2025-05-27T14:30:00Z" (em UTC);

  • "2025-05-27T14:30:00-03:00" (com informação de timezone).

softwareInfo

object

N/A

Sim

Objecto com os dados do Software de Facturação

(ver formato em 5.1.2.1)

jwsSignature

string

Tamanho variável em Base64URL (dependendo do tamanho da chave usada)

Sim

Assinatura digital da solicitação usando a chave privada do emissor através do algoritmo RS256 (RSA + SHA-256). Os campos a serem utilizados na assinatura são:

  • taxRegistrationNumber - NIF do contribuinte adquirente que pretende validar a factura (só esse NIF terá essa possibilidade junta da AGT)

  • documentNo.

O resultado é codificado em Base64URL, sendo que o tamanho final da string varia conforme o tamanho da chave usada (2048, 3072 ou 4096 bits).

documentNo

string

“maxlength”: 60

Sim

Identificador do documento de facturação que se pretende confirmar/rejeitar.

action

string

“minlength” : 1

“maxlength”: 1

Sim

Acção que o adquirente pretende aplicar ao documento de facturação emitido, com os seguintes valores possíveis e significados:

  • C – Confirmação do documento

  • R – Rejeição do documento

deductibleVATPercentage

number

“minimum”: 0

“maximum”: 100

Não

Percentagem de IVA dedutível a considerar para o documento em análise sendo utilizado quando action for “C” (confirmação do documento) e o tipo de documento não for considerado recibo nem nota de crédito. Caso este campo não esteja preenchido será considerado que o contribuinte não tem direito a dedução.

Só um dos campos deductibleVATPercentage e nonDeductibleAmount poderá estar preenchido.

nonDeductibleAmount

number

“minimum”: 0

Não

Valor do documento que não é sujeito a dedução de IVA. Este campo deve ser preenchido sempre que parte do montante da fatura não possa ser deduzido pelo contribuinte (ex.: despesas não dedutíveis fiscalmente, limites legais ou situações específicas previstas na legislação). Caso este campo não seja preenchido, será considerado que a totalidade do valor do documento é dedutível.

Só um dos campos deductibleVATPercentage e nonDeductibleAmount poderá estar preenchido.

Parâmetros de Saída

HTTP code Tipo (JSON) Descrição

200

object

confirmRejectResult

Registo de pedido efectuado com sucesso sendo devolvido um object do tipo statusFEResult com os dados da factura pesquisada.

422

Object errorEntry

Chamada ocorreu com erro, sendo enviado uma mensagem (código e descrição) correspondente ao erro “E94” - “erro na chamada, nif diferente”

400

Object errorEntry

Chamada ocorreu com erro, sendo enviado uma mensagem (código e descrição) correspondente ao erro “E96” - “solicitação mal efectuada – erro de estrutura”

Composição (properties) do object confirmRejectResult

Campo Tipo (JSON) Atributos Obrigatório Descrição

actionResultCode

string

“minlength” : 4

“maxlength”: 5

Sim

Código de resultado da solicitação, com os seguintes valores possíveis e significados:

  • C_OK – Confirmação do documento com sucesso

  • R_OK – Rejeição do documento com sucesso

  • C_NOK – Confirmação do documento não possível

  • R_NOK – Rejeição do documento não possível

documentStatusCode

string

“minlength” : 3

“maxlength”: 4

Sim

Código de estado em que o documento a actualizar foi encontrado antes de tentada a realização desta acção, com os seguintes valores possíveis e significados:

  • S_A – Anulado

  • S_C – Confirmado

  • S_I – Inválido

  • S_RG – Registado

  • S_RJ – Rejeitado

  • S_V – Válido

errorList

array

N/A

Não

Array com os erros encontrados que impediram a execução com sucesso da acção solicitada (confirmação ou rejeição do documento) sobre o documento de facturação identificado no campo documentNo, sendo obrigatório quando actionResultCode for “C_NOK” ou “R_NOK”.

Terá uma linha para cada erro encontrado.

Composições (itens) do array errorList e (properties) do object errorEntry

Campo Tipo (JSON) Atributos Obrigatório Descrição

errorCode

string

“minlength”: 3

“maxlength”: 3

Sim

Código de erro

errorDescription

string

“maxlength”: 100

Sim

Descrição do erro

Códigos e mensagens de erro no retorno do Serviço

Tendo em conta as regras de negócio, são propostos adicionalmente os seguintes erros de validação:

Regra de negócio Código de erro Descrição de erro

FE-RNG-033

E44

O estado do documento de facturação não permite a acção de confirmação do documento pelo adquirente.

FE-RNG-034

E45

O estado do documento de facturação não permite a acção de rejeição do documento pelo adquirente.

FE-RNG-077

E47

O campo “deductibleVATPercentage” (<valor do parâmetro>) não pode estar especificado simultaneamente com o campo “nonDeductibleAmount” (<valor do parâmetro>).