Ir para o conteúdo

Web service Portolog: Informação de Documento de Origem

Serviço web que efetua o processamento da importação do documento de origem(DOT), que é o documento que possui as informações da carga e do transporte nos processos logísticos de Exportação, Entrada de Carga e Cabotagem de Origem. Esse documento posteriormente será associado ao respectivo documento logístico(DL-e) através do encaminhamento de requisição para o Web service de Ligação de DL-e com Documento de Origem.

Atores que podem utilizar o Serviço:

  • Operador Portuário
  • Terminal Portuário
  • Ponto de Controle

Endpoint do Serviço:

POST url_base/psp-portolog-rest/api/dot/novo/identificador_unico (ver observações abaixo)

Observações:

1. No final do caminho do serviço deverá ser informado um identificador único(Números e/ou letras a critério do usuário) para identificação do arquivo a ser associado ao DL-e. O identificador único irá compor o nome do arquivo que deverá ser utilizado posteriormente no preenchimento do campo específico do arquivo de ligação de DL-e com Documento de Origem para o sistema saber qual documento deve ser associado ao DL-e. O nome completo será encaminhado no retorno da requisição de importação do documento de origem, e terá o seguinte formato: "DOT_identificador_unico.xml". Segue abaixo um exemplo de requisição:

POST <url_base>/psp-portolog-rest/api/dot/novo/MeuDOT_26062020

2. Preencher esse identificador único sem utilizar o separador "."

3. Caso o documento de origem importado seja uma Nota Fiscal Eletrônica(NF-e), deve ser informado como identificador único o valor "NFe" seguido do número da chave de acesso dessa nota. Isto se faz necessário pois no momento da associação ao DL-e do CT-e ou MDF-e que possua a informação dessa nota fiscal, o sistema automaticamente procura na base de dados o arquivo da nota fiscal que possua um nome com o mesmo valor da chave de acesso desse nota, informada dentro do CT-e ou MDF-e, antecedida pela palavra "NFe", para então relacionar essa nota ao seu respectivo CT-e ou MDF-e dentro do DL-e. Segue abaixo o exemplo de como ficaria a chamada do serviço de importação quando se tratar de uma NF-e:

POST <url_base>/psp-portolog-rest/api/dot/novo/NFe57888226970258539243316355387504235274376092

4. O nome do arquivo que será exibido no retorno do processamento de importação do documento de origem terá sempre a extensão .xml, mesmo quando o documento importado for no formato JSON. Isso ocorre porque o sistema sempre transforma os arquivos em xml antes de salvar na base de dados.

Versões de Documentos de Origem Atualmente Suportadas pelo Serviço:

  • Nota Fiscal Não Eletrônica(NF-ne): Versão 1.02
  • Nota Fiscal Eletrônica(NF-e): Versões 2.00 e 3.10
  • Conhecimento de Transporte Eletrônico(CT-e): Versões 1.04 e 2.00
  • Manifesto de Documento Fiscal Eletrônico(MDF-e): Versão 1.00

Content-Type:

application/xml ou application/json

Atenção:

Somente a Nota Fiscal Não Eletrônica(NF-ne) poderá ser encaminhada tanto em formato XML quanto em formato JSON. Os demais documentos de origem só serão aceitos em formato XML.

Parâmetros da Requisição de Importação de Documento de Origem:

Observação:

Disponibilizamos somente o XSD da Nota Fiscal Não Eletrônica(NF-ne) pois trata-se do único documento de origem cujo responsável pela elaboração é o próprio Portolog. Os demais documentos de origem são de responsabilidade da Receita Federal e são mantidos pelo sistema SPED.

Dados Gerais(NF-ne):

Nome Descrição Tipo Tamanho Local Observações
versao versão do arquivo de Nota Fiscal Não Eletrônica String(Obrigatório) 4 body Versão Atual: 1.02
numero Número da Nota Fiscal Numeric(Obrigatório) 9 body
dataEmissao Data de Emissão da Nota Data(Obrigatório) 10 body Formato: AAAA-MM-DD
cpfEmissor CPF do Emissor da Nota String(Opcional(*)) 11 body (*)Será obrigatório a informação de um dos campos "CNPJ do Emissor" ou "CPF do Emissor", mas nunca ambos.
cnpjEmissor CNPJ do Emissor da Nota String(Opcional(*)) 14 body (*)Será obrigatório a informação de um dos campos "CNPJ do Emissor" ou "CPF do Emissor", mas nunca ambos.
ufEmissao UF de Emissão da Nota Fiscal String(Obrigatório) 2 body
placaVeiculo Placa do Veículo String(Obrigatório) 7 body
nomeMotorista Nome do Motorista String(Obrigatório) 60 body
cpfMotorista CPF do Motorista String(Obrigatório) 11 body
tipoCarga Tipo da Carga Transportada String(Obrigatório) 20 body Domínio: CONTEINER, CONTEINER_VAZIO, GRANEL,CARGA_SOLTA ou VEICULO.
pesoBruto Peso Bruto Transportado em Kg Numeric(Opcional) (15,3) body

Lista de Contêineres(Obrigatório quando o tipo de carga for contêiner):

Nome Descrição Tipo Tamanho Local Observações
identificaoEletronicaConteiner Código EPC do Contêiner String(Opcional) 24 body
numeroConteiner Número do contêiner String(Obrigatório) 11 body

Lista de Produtos(Obrigatório para todos os tipos de carga):

Nome Descrição Tipo Tamanho Local Observações
codigoNCM Código NCM do Produto String(Obrigatório) 8 body
unidade Unidade comercial do produto String(Obrigatório) 6 body
descricao Descrição do produto ou serviço String(Obrigatório) 120 body
quantidade Quantidade Comercial do produto Numeric(Obrigatório) (15,4) body
chassi Chassi do Veículo String(*) 17 body (*) Campo obrigatório caso o tipo de carga seja veículo.
codigoCor Cor do veículo (código de cada montadora) String(Opcional) 4 body
descricaoCor Descrição da cor do veículo String(Opcional) 40 body
codigoModelo Código Marca Modelo (utilizar tabela RENAVAM) String(Opcional) 6 body

 

Resposta da Requisição:

Dados Gerais:

Nome Descrição Tipo Observação
versao Versão do Arquivo de Retorno de Processamento de Importação do Documento de Origem String(Obrigatório) Versão Atual: 1.00
dataProcessamento Data/Hora do Registro de Processamento de Importação do Documento de Origem Data/Hora(Obrigatório)
nomeArquivo Nome do arquivo do documento de origem importado pelo sistema String(Obrigatório) (*) O conteúdo desse campo deverá ser informado posteriormente no arquivo de ligação de DL-e com DOT.
mensagem Mensagem de erro ou sucesso no processamento da requisição de importação do Documento de Origem String(Obrigatório)

 

Exemplos de Arquivos XML/JSON:

 

Exemplo de JSON do arquivo de importação de documento de origem:

        {
            "versao":"1.02",
            "numero":"123456787",
            "dataEmissao":"2019-11-01",
            "cpfEmissor":"74208690062",
            "ufEmissao":"SC",
            "placaVeiculo":"TES1234",
            "nomeMotorista":"João da Silva",
            "cpfMotorista":"55224114063",
            "tipoCarga":"CONTEINER",
            "pesoBruto":"1500.000",
            "listaConteiner":
                {
                    "conteiner": 
                        [
                            {
                                "identificaoEletronicaConteiner":"1112",
                                "numeroConteiner":"99998"
                            },
                            {
                                "identificaoEletronicaConteiner":"1112",
                                "numeroConteiner":"99997"
                            }
                        ]
                },
            "listaProduto":
                {
                    "produto":
                        [
                            {
                                "codigoNCM":"12345678",
                                "unidade":"caixa",
                                "descricao":"TV LCD",
                                "quantidade":"200"
                            }
                        ]
                }
}

Exemplo de retorno de JSON com a resposta da requisição:

        {
            "dataProcessamento" : "2019-11-28T17:35:22.939-03:00",
            "nomeArquivo" : "DOT_Teste.xml",
            "mensagem" : [ "[IN0168] Arquivo Importado com sucesso" ],
            "versao" : "1.00"
        }

Exemplo de retorno de JSON com resposta de erro:

       {
            "dataProcessamento" : "2019-11-28T17:36:48.491-03:00",
            "nomeArquivo" : "DOT_OutroTeste.xml",
            "mensagem" : [ "[ER0183] Não foi possível processar o arquivo. Erro encontrado: O arquivo XML está mal formado: cvc-complex-type.2.4.a: Invalid content was found starting with element 'pesoBruto'. One of '\"http://www.portosempapel.gov.br/nfne\":tipoCarga' is expected. Line 10." ],
            "versao" : "1.00"
       }

Exemplo de XML do arquivo de importação de documento de origem:

    <?xml version="1.0" encoding="UTF-8"?>
        <nfne versao="1.02" xmlns="http://www.portosempapel.gov.br/nfne" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.portosempapel.gov.br/nfne NFnaoEletronica_v1.02.xsd ">
            <numero>188654645</numero>
            <dataEmissao>2019-11-25</dataEmissao>
            <cnpjEmissor>99819935000161</cnpjEmissor>
            <ufEmissao>SC</ufEmissao>
            <placaVeiculo>AUT1515</placaVeiculo>
            <nomeMotorista>Nome do Motorista</nomeMotorista>
            <cpfMotorista>43665986044</cpfMotorista>
            <tipoCarga>VEICULO</tipoCarga>
            <pesoBruto>1000.000</pesoBruto>
            <listaProduto>
                <produto>
                <codigoNCM>20452015</codigoNCM>
                <unidade>veiculo</unidade>
                <descricao>Veiculo SUV</descricao>
                <quantidade>1</quantidade>
                <chassi>9BG116GW04C400001</chassi>
    </produto>
  </listaProduto>
</nfne>

Exemplo de retorno de XML com a resposta da requisição:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <retornoDocumentoOrigemTransporte xmlns="http://www.portosempapel.gov.br/dot" versao="1.00">
            <dataProcessamento>2019-11-28T17:41:52.700-03:00</dataProcessamento>
            <nomeArquivo>DOT_Teste.xml</nomeArquivo>
            <mensagem>[IN0168] Arquivo Importado com sucesso</mensagem>
        </retornoDocumentoOrigemTransporte>

Exemplo de retorno de XML com resposta de erro:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <retornoDocumentoOrigemTransporte xmlns="http://www.portosempapel.gov.br/dot" versao="1.00">
            <dataProcessamento>2019-11-28T17:43:00.862-03:00</dataProcessamento>
            <nomeArquivo>DOT_OutroTeste.xml</nomeArquivo>
            <mensagem>[ER0183] Não foi possível processar o arquivo. Erro encontrado: O arquivo XML está mal formado: cvc-complex-type.2.4.a: Invalid content was found starting with element 'dataEmissao'. One of '"http://www.portosempapel.gov.br/nfne":numero' is expected. Line 3.</mensagem>
        </retornoDocumentoOrigemTransporte>