Conheças as soluções Webmania® para o seu negócio. Aproveite 30 dias grátis para testar nossas soluções*
Conversar no WhatsApp*Teste grátis para novos clientes. Consulte condições e serviços disponíveis para teste grátis.
Utilize a REST API da Webmania®, para emissão de CT-e. Deseja emitir outros modelos? Ver documentação
Todas as solicitações na API devem ser realizadas em ambiente criptografado HTTPS através da URL https://api.webmaniabr.com
. O prefixo /2/ indica que atualmente nós estamos utilizando a versão 2.0 da API.
URL | HTTP Verb | CT-e | CT-e OS | Função |
---|---|---|---|---|
/2/cte/emissao | POST | Disponível | Disponível | Emissão de CT-e |
/2/cte/emissao/simplificada | POST | Disponível | Ainda não Disponível | Emissão de CT-e Simplificada |
/2/cte/entrega | POST | Disponível | Não utilizado | Incluir evento de entrega do CT-e |
/2/cte/correcao | POST | Disponível | Disponível | Incluir carta de correção para o CT-e |
/2/cte/consulta | GET | Disponível | Disponível | Consulta de CT-e |
/2/cte/cancelar | PUT | Disponível | Disponível | Cancelar CT-e |
/2/cte/entrega/cancelar | PUT | Disponível | Não utilizado | Cancelar evento de entrega do CT-e |
Todas as respostas são no formato objeto JSON.
Uma requisição bem sucedida é indicada através do status HTTP, o status 2xx indica sucesso. Quando ocorrer uma falha na requisição, o corpo da resposta [body] continua no formato JSON, mas sempre contém o campo error
. Por exemplo, caso a sua autenticação não seja bem sucedida irá retornar a seguinte mensagem:
{
"msg": "Acesso restrito."
}
Realize a emissão com apenas um clique na sua Loja Virtual através dos módulos da Webmania® ou realize a integração para os diversos tipos de linguagens de programação.
Para as solicitações o corpo da requisição [body] deve ser enviado no formato JSON com os headers Content-Type
e Accept
definido para application/json
.
A autenticação é realizada através do cabeçalho HTTP (HTTP headers). É necessário o envio do header Authorization Bearer Token
com o Access-Token da API 2.0, que é encontrado no painel Webmania®.
Mantenha as credenciais de acesso em segurança. Nunca publique as credenciais de acesso no código fonte do site, aplicativo ou software onde o usuário possa ter fácil acesso.
Para aplicativos mobile iOS e Android recomendamos que o processo de emissão seja realizado no servidor (back-end). No código fonte do aplicativo deve possuir somente a solicitação de emissão, enquanto o processo deve ser realizado em seu servidor.
Para que a sua plataforma se mantenha sempre atualizada a Webmania disponibiliza as notificações automáticas para todos os status do CT-e.
Cada CT-e possui um identificador único chamado de UUID, este identificador deve ser utilizado para recepcionar e identificar o CT-e para atualizar as informações no seu banco de dados.
No momento que realizado a emissão do CT-e, caso tenha informado o parâmetro url_notificacao
, será enviado o retorno no formato POST para a URL especificada contendo no corpo os parâmetros uuid
, chave
, serie
, numero
, status
, motivo
, epec
, xml
, dacte
e log
.
Parâmetro | Tipo | Descrição |
---|---|---|
uuid | string | Identificador único do CT-eDeve ser utilizado o UUID para recepcionar o retorno da notificação. |
chave | string | Chave de identificação do CT-e na Sefaz |
serie | número | Série de emissão |
numero | número | Número do CT-e Gerenciado automaticamente pelo emissor. |
status | string | Status do CT-eaprovado |
motivo | string | Motivo do statusEx.: Autorizado o uso do CT-e |
epec | boolean | Indicador de emissão em EPEC Saiba mais |
xml | string | URL do XML do CT-e |
dacte | string | URL do DACTE |
log | array | Log de retorno da Sefaz |
A requisição via POST é realizada no formato application/json
:
-X POST \
-header "Content-type: application/json" \
Segue exemplo do retorno via POST:
{
"uuid": "00000000-0000-0000-0000-000000000000",
"chave": "00000000000000000000000000000000000000000000",
"serie": 1,
"numero": 123,
"status": "aprovado",
"motivo": "Autorizado o uso do CT-e",
"epec": false,
"xml": "https://api.webmaniabr.com/xmlcte/[chave]",
"dacte": "https://api.webmaniabr.com/dacte/[chave]",
"log": { ... }
}
Para emitir um Conhecimento de Transporte Eletrônico, envie a requisição no método POST para a URL /2/cte/emissao
contendo no corpo da requisição os objetos no formato JSON.
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"ambiente": 1,
"modelo": "cte",
"modalidade": 1,
...
}' \
https://api.webmaniabr.com/2/cte/emissao
Segue abaixo exemplo de como Emitir CT-e:
{
"ambiente": 2,
"natureza_operacao": "Prestação de serviço de transporte - interestadual",
"modalidade": "1",
"modelo": "cte",
"local_inicio_prestacao": {
"cidade": "Curitiba",
"uf": "PR"
},
"local_termino_prestacao": {
"cidade": "São Paulo",
"uf": "SP"
},
"contribuicao_tomador": "9",
"indicador_tomador": "0",
"entrega": {
"data_inicial": "2023-10-27 09:21:22"
},
"impostos": {
"cfop": "0000",
"classificacao_tributaria": "00"
},
"remetente": {
"nome_razao": "Remetente Carga",
"cnpj": "00000000000000",
"nome_fantasia": "Rementente",
"telefone": "11999999999",
"endereco": "Rua Exemplo",
"numero": "321",
"complemento": "Edifício",
"bairro": "Jardim",
"cep": "82400000",
"cidade": "Curitiba",
"uf": "PR"
},
"destinatario": {
"nome_razao": "Destinatario Carga",
"cnpj": "00000000000000",
"telefone": "11999999999",
"endereco": "Rua Exemplo",
"numero": "123",
"bairro": "Jardim",
"cidade": "São Paulo",
"cep": "01153000",
"uf": "SP"
},
"valores_servico": {
"valor_total": 100,
"valor_recebido": 100
},
"carga": {
"valor_total": 100,
"produto_predominante": "Chocolate",
"quantidades": [
{
"unidade_medida": "1",
"tipo_medida": "LITROS",
"quantidade": 2
}
]
},
"documentos_fiscais": [
{
"tipo": "1",
"chave": "00000000000000000000000000000000000000000000"
}
],
"rodoviario": {
"rntrc": "0000000"
}
}
A resposta do corpo da mensagem será no formato objeto JSON, contendo os campos uuid
, chave
, serie
, numero
, status
, motivo
, modelo
, epec
, xml
, dacte
e log
:
{
"uuid": "00000000-0000-0000-0000-000000000000", // Número único de identificação
"chave": "00000000000000000000000000000000000000000000", // Chave de identificação na Sefaz
"serie": 1, // Série do CT-e
"numero": 123, // Número do CT-e
"status": "aprovado", // aprovado, reprovado, cancelado, encerrado, processando ou contingencia
"motivo": "Autorizado o uso do CT-e", // Motivo do status
"modelo": "cte", // Modelo do documento
"epec": false, // Indicador da emissão do evento EPEC
"xml": "https://api.webmaniabr.com/xmlcte/[chave]",
"dacte": "https://api.webmaniabr.com/dacte/[chave]",
"log": "{...}" // Log de retorno da Sefaz
}
No momento que realizado a emissão da Nota Fiscal, caso tenha informado o parâmetro url_notificacao
, será enviado o retorno no formato POST para a URL especificada. Saiba mais
O Conhecimento de Transporte Eletrônico possui seis modalidades diferentes dependendo do tipo de transporte da carga, sendo elas Rodoviário, Aéreo, Aquaviário, Ferroviário, Dutoviário e Multimodal. Cada modalidade possui um grupo de campos específicos que são identificados pelos parâmetros: rodoviario
, aereo
, aquaviario
, ferroviario
, dutoviario
e multimodal
.
Preencha os campos conforme finalidade da sua emissão, alguns parâmetros possuem informações adicionais que podem ser acessadas ao clicar em seu nome. A tabela abaixo possui os campos necessários para a emissão de um CT-e nos formatos Padrão e Simplificado.
A API de CT-e da Webmania disponibiliza duas formas de emissão do documento, sendo elas Padrão e Simplificada, onde na emissão Padrão é necessário que todas as informações do documento sejam enviadas por completo, por outro lado, na emissão simplificada é possível reutilizar as informações de uma NF-e já emitida, através do envio do XML desse documento no parâmetro nfe_xml
, que recebe uma string do XML da NF-e codificado em base64
. As informações que serão reutilizadas da NF-e irão variar de acordo com os campos que foram utilizados na emissão do documento, informações como remetente, destinatário, valor de carga, locais de início e término do serviço, e outras informações que estão documentadas na tabela a seguir.
Parâmetro | Padrão | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
ambiente | Obrigatório | Obrigatório | integer | 1 | Identificação do Ambiente da Sefaz 1 - Produção |
url_notificacao | Opcional | Opcional | string | - - - | URL de notificação para todas as atualizações de status do CT-e |
nfe_xml | Somente emissão simplificada | Obrigatório | string | - - - | XML da NF-e que será importada codificado em base64 |
modelo | Obrigatório | Obrigatório modelo cte | string | - - - | Modelo do documento de emissão, deverá ser informado cte |
modalidade | Obrigatório | Obrigatório | integer | 1 | Modalidade de emissão do documento 1 - Rodoviário |
finalidade | Obrigatório | Obrigatório | integer | 1 | Tipo do CT-e0 - Normal |
cte_referenciado | Obrigatório quando finalidade for 1 ou 3. | Obrigatório quando finalidade for 1 ou 3. | string | 44 | Chave do CT-e que irá ser substituído ou complementado |
contribuicao_tomador | Obrigatório | Obrigatório | integer | 1 | Tipo de contribuinte para o tomador na prestação do serviço 1 - Contribuinte ICMS |
indicador_tomador | Obrigatório | Obrigatório | integer | 1 | Papel do tomador no CTe 0 - Remetente |
servico | Obrigatório | Obrigatório | objeto | - - - | Informações do serviço prestado |
carga | Obrigatório | Obrigatório caso a NF-e não possua os dados de volume/peso da mercadoria. | objeto | - - - | Informações da carga que está sendo transportada |
documentos_fiscais | Obrigatório | Opcional, será utilizada a NFe importada | array | - - - | Array contendo as informações dos documentos transportados |
local_inicio_prestacao | Obrigatório | Opcional, será utilizado o endereço do Remetene ou Expedidor caso informado na NF-e | objeto | - - - | Local de início da prestação do serviço |
local_termino_prestacao | Obrigatório | Opcional, será utilizado o destinatário da NF-e | objeto | - - - | Local de término da prestação do serviço |
remetente | Obrigatório | Opcional, o remetente é obtido da NF-e | objeto | - - - | Remetente da carga |
destinatario | Obrigatório | Opcional, o destinatário é obtido da NF-e | objeto | - - - | Destinatário da carga |
tomador | Obrigatório quando indicador_tomador for igual a 4 | Obrigatório quando indicador_tomador for igual a 4 | objeto | - - - | Tomador do serviço É obrigatório quando o parâmetro indicador_tomador for igual a 4 |
expedidor | Opcional | Opcional | objeto | - - - | Expedidor da carga |
recebedor | Opcional | Opcional | objeto | - - - | Recebedor da carga |
entrega | Opcional | Opcional | objeto | - - - | Informações de data e hora da previsão de entrega |
observacoes_contribuinte | Opcional | Opcional | array | - - - | Observações adicionais do contribuinte de uso livre |
observacoes_fisco | Opcional | Opcional | array | - - - | Observações adicionais para o fisco de uso livre |
detalhes_retirada | Opcional | Opcional | string | 1-160 | Informações adicionais a respeito da retirada da carga |
caracteristica_transporte | Opcional | Opcional | string | 1-15 | Característica adicional do transporte. Exemplos: REENTREGA, DEVOLUÇÃO e REFATURAMENTO |
caracteristica_servico | Opcional | Opcional | string | 1-30 | Característica adicional do serviço. Exemplos: ENTREGA EXPRESSA, LOGÍSTICA REVERSA, CONVENCIONAL e EMERGENCIAL |
observacoes_gerais | Opcional | Opcional | string | 1-2000 | Informações complementares do documento |
As informações sobre o Serviço Prestado são enviados através de um objeto no parâmetro servico
.
Parâmetro | Padrão | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
valor_total | Obrigatório | Obrigatório | numeric | 13v2 | Valor total do serviço0.00 |
valor_recebido | Obrigatório | Obrigatório | numeric | 13v2 | Valor recebido pelo serviço0.00 |
tipo | Opcional | Opcional | integer | 1 | Tipo do serviço que está sendo prestado. 0 - Normal (Padrão) |
componentes | Opcional | Opcional | objeto | --- | Componentes do valor de prestação do serviço Deverá ser informado um objeto onde o atributo equivale ao nome do campo e o seu valor equivale ao valor de prestação |
Segue abaixo exemplo de como informar o carregamento ao emitir uma CT-e:
{
...
"servico": {
"valor_total": 12000,
"valor_recebido": 9500,
"componentes": {
"FRETE PESO": 8000
}
},
...
}
As informações sobre a Carga são enviadas através do objeto carga
, onde seus campos seguem as regras da tabela abaixo.
Parâmetro | Padrão | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
valor_total | Obrigatório | Opcional, será utilizado valor da NF-e | numerico | 13v2 | Valor total da carga |
produto_predomintante | Obrigatório | Opcional, será usado o produto de maior volume na NF-e | string | 1-60 | Descrição do produto predominante na carga |
valor_averbacao | Opcional | Opcional | numerico | 13v2 | Valor de averbação da carga |
caracteristicas | Opcional | Opcional | string | 1-30 | Caracteristica adicional da carga Exemplos: Fria, Granel ou Refrigerada |
quantidades | Obrigatório | Opcional, serão utilizadas as quantidades de produtos da NF-e. | array | 1-n | Informações das quantidades da carga transportada |
fluxo | Obrigatório quando for modal aéreo | Obrigatório quando for modal aéreo | array | 1-n | Previsão do fluxo da carga |
Segue abaixo exemplo de como informar a carga transportada para o CT-e:
{
"carga": {
"valor_total": 100,
"produto_predominante": "Chocolate",
"quantidades": [
{
"unidade_medida": "1",
"tipo_medida": "LITROS",
"quantidade": 2
}
]
},
}
As informações sobre as quantidades dos itens carregados são informados no array quantidades
, onde cada item é um objeto.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
quantidade | Obrigatório | Será utilizado a informação da NF-e, caso disponível. | numerico | 1 | Quantidade do item da carga. |
unidade_medida | Obrigatório | Será utilizado a informação da NF-e, caso disponível. | numerico | 1 | Tipo da medida do item da carga.0 - M3 |
tipo_medida | Obrigatório | Será utilizado a informação da NF-e, caso disponível. | string | 1-20 | Unidade de medida do item da carga.Exemplos: PESO BRUTO, PESO DECLARADO, LITRAGEM, CAIXAS e etc. |
Segue abaixo exemplo de como informar as quantidades da carga para o CT-e:
{
...
"carga": {
...
"quantidades": [
{
"unidade_medida": "1",
"tipo_medida": "LITROS",
"quantidade": 2
}
],
},
...
}
As informações sobre a previsão do fluxo da carga são informadas no objeto fluxo
.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
origem | Obrigatório para modal Aéreo | Obrigatório para modal Aéreo | string | 1-60 | Sigla ou código interno da Filial/Porto/Estação/Aeroporto de Origem. |
passagens | Obrigatório para modal Aéreo | Obrigatório para modal Aéreo | array | 1-n | Array de strings contento a Sigla ou código interno da Filial/Porto/Estação/Aeroporto de Passagem |
destino | Obrigatório para modal Aéreo | Obrigatório para modal Aéreo | string | 1-60 | Sigla ou código interno da Filial/Porto/Estação/Aeroporto de Destino |
rota | Opcional | Opcional | string | 1-10 | Código da Rota de Entrega |
As informações dos locais de Início e Fim da prestação do serviço de transporte podem ser informadas nos objetos local_inicio_prestacao
e local_termino_prestacao
seguindo a regra de campos descrita abaixo.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
cidade | Obrigatório | Opcional, será utilizado o endereço da NF-e | string | - - - | Nome da cidade |
uf | Obrigatório | Opcional, será utilizado o endereço da NF-e | string | 2 | Sigla do estado |
Segue abaixo exemplo de como informar a os locais de início e término da prestação para o CT-e:
{
...
"local_inicio_prestacao": {
"cidade": "Curitiba",
"uf": "PR"
},
"local_termino_prestacao": {
"cidade": "Rio de Janeiro",
"uf": "RJ"
},
...
}
Os atores do CT-e são as pessoas Físicas ou Jurídicas que exercem alguma função ou papel no documento, os atores podem ser o Remetente, Destinatário, Expedidor, Recebedor ou Tomador, e podem ser informados nos objetos remetente
, destinatário
, expedidor
, recebedor
e tomador
, respectivamente, seguindo as regras abaixo.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
cnpj | Obrigatório no caso de Pessoa Jurídica | Obrigatório no caso de Pessoa Jurídica | string | 14 | Número de CNPJ |
cpf | Obrigatório no caso de Pessoa Física | Obrigatório no caso de Pessoa Física | string | 11 | Número de CPF |
nome_razao | Obrigatório | Obrigatório | string | 2-60 | Nome ou Razão Social |
nome_fantasia | Opcional | Opcional | string | 2-60 | Nome fantasia da empresa |
ie | Opcional | Opcional | string | 0-14 | Nùmero de Inscrição Estadual |
email | Opcional | Opcional | string | - - - | Endereço de e-mail |
telefone | Opcional | Opcional | string | 6-14 | Número de telefone |
endereco | Obrigatório | Obrigatório | string | 2-255 | Logradouro do endereço |
numero | Obrigatório | Obrigatório | string | 1-60 | Número do endereço |
complemento | Opcional | Opcional | string | 1-60 | Complemento do endereço |
bairro | Obrigatório | Obrigatório | string | 2-60 | Bairro do endereço |
cep | Obrigatório para endereço nacional | Obrigatório para endereço nacional | string | 8 | Código postal (CEP) do endereço |
cidade | Será utilizada a informação correspondente do CEP | Será utilizada a informação correspondente do CEP | string | 2-255 | Nome da cidade |
uf | Será utilizada a informação correspondente do CEP | Será utilizada a informação correspondente do CEP | string | 2 | Sigla do estado |
codigo_pais | Opcional | Opcional | string | 1-4 | Código do país seguinto a lista do BACEN Exemplo: Brasil = 1058 |
Segue abaixo exemplo de como informar algum ator do CT-e:
{
...
"destinatario": {
"nome_razao": "Destinatário Carga",
"cpf": "00000000000",
"telefone": "47999999999",
"endereco": "Rua Naftali Reiss",
"numero": "415",
"complemento": "Residência",
"bairro": "Bacacheri",
"cep": "80035040",
"cidade": "Curitiba",
"uf": "PR"
},
...
}
A entrega do CT-e contém as informações referentes à previsão de entrega. A entrega pode incluir a data, a data inicial e/ou a data final, que podem ser informadas nos objetos data
, data_inicial
e data_final
, respectivamente, seguindo as regras abaixo.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
data | Opcional | Opcional | string | 10-20 | Data da entrega para entrega na data no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
data_inicial | Opcional | Opcional | string | 10-20 | Data inicial da entrega no formato data ou data/hora.Y-m-d ou Y-m-d H:i:s |
data_final | Opcional | Opcional | string | 10-20 | Data final da entrega no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
Segue abaixo um exemplo de como informar a data de entrega definida do CT-e:
{
...
"entrega": {
"data": "2023-10-27"
},
...
}
Segue abaixo um exemplo de como informar a data de entrega em um período do CT-e:
{
...
"entrega": {
"data_inicial": "2024-02-02",
"data_final": "2024-03-03 15:14:25"
},
...
}
A observação do contribuinte no CT-e é de uso livre para o contribuinte adicionar informações sobre qualquer campo. Essa observação pode incluir a identificação e descrição, que devem ser informadas nos objetos identificacao
e descricao
, respectivamente, seguindo as regras abaixo.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
identificacao | Opcional | Opcional | string | 1-20 | Identificação do campo para a observação do contribuinte |
descricao | Opcional | Opcional | string | 1-160 | Descrição do contribuinte para o campo especificado |
Segue abaixo um exemplo de como informar as observações do contribuinte no CT-e:
{
...
"observacoes_contribuinte": [
{
"identificacao": "LEI DA TRANSPARENCIA",
"descricao": "O valor aproximado de tributos incidentes sobre o preço deste serviço é de R$ 152,00"
},
{
"identificacao": "ContatoEntrega",
"descricao": "João Pedro da Silva"
}
],
...
}
A observação do contribuinte do fisco no CT-e é de uso livre para o contribuinte adicionar informações sobre qualquer campo. Essa observação pode incluir a identificação e descrição, que devem ser informadas nos objetos identificacao
e descricao
, respectivamente, seguindo as regras abaixo.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
identificacao | Opcional | Opcional | string | 1-20 | Identificação do campo para a observação do contribuinte |
descricao | Opcional | Opcional | string | 1-60 | Descrição do contribuinte para o campo especificado |
Segue abaixo um exemplo de como informar as observações do contribuinte do fisco no CT-e:
{
...
"observacoes_fisco": [
{
"identificacao": "RegimeEspecial",
"descricao": "123456"
}
],
...
}
As informações sobre os Documentos Fiscais são montados dentro do array documentos_fiscais
, onde cada elemento do array corresponde à um Documento Fiscal no formato de objeto.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
tipo | Obrigatório | integer | 1 | Tipo do documento que será vinculado1 - NFe |
chave | Obrigatório para NF-e | string | 44 | Chave de acesso |
serie | Obrigatório para NF | string | 1-3 | Série de emissão do documento |
numero | Obrigatório para NF | string | 1-20 | Número do documento |
data_emissao | Obrigatório para NF | string | 10-20 | Data de emissão no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
modelo | Obrigatório para NF | string | 1-4 | Modelo do documento |
base_calculo | Obrigatório para NF | numerico | 13v2 | Base de cálculo do documento |
base_calculo_st | Obrigatório para NF | numerico | 13v2 | Base de cálculo ST do documento |
icms | Obrigatório para NF | numerico | 13v2 | Valor ICMS do documento |
icms_st | Obrigatório para NF | numerico | 13v2 | Valor ICMS ST do documento |
valor_produtos | Obrigatório para NF | numerico | 13v2 | Valor dos produtos da NF |
CFOP | Obrigatório para NF | string | 4 | Código Fiscal de Operações e de Prestações |
valor_total | Opcional | numerico | 13v2 | Valor total do documento |
pin | Opcional | string | 2-9 | PIN SUFRAMA |
previsao_entrega | Obrigatório para NF | string | 10-20 | Data de previsão de entrega no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
peso | Opcional | numerico | 12v3 | Peso dos itens da nota |
numero_romaneio | Opcional | string | 1-20 | Número de romaneio |
numero_pedido | Opcional | string | 1-20 | Número do pedido |
unidades_transporte | Opcional | string | 1-20 | Unidades de transporte da mercadoria |
Segue abaixo exemplo de como informar um Documento Fiscal:
{
...
"documentos_fiscais": [
{
"chave": "00000000000000000000000000000000000000000000"
},
{
"chave": "00000000000000000000000000000000000000000000"
},
{
"chave": "00000000000000000000000000000000000000000000"
}
],
...
}
As informações sobre as Unidades de Transporte são montados dentro do array unidade_transporte
, onde cada elemento do array corresponde à uma Unidade de Transporte.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
tipo | Obrigatório | Obrigatório | número | 1 | Tipo da Unidade de Transporte 1 - Rodoviário Tração |
identificacao | Obrigatório | Obrigatório | string | 1-20 | Identificação da Unidade de Transporte Informar a identificação conforme o tipo de unidade de transporte. Por exemplo, para rodoviário tração ou reboque deverá informar a placa do veículo. |
lacres | Opcional | Opcional | array (string 1-20) | 0-n | Lacres das Unidades de Transporte |
quantidade_rateada | Opcional | Opcional | numerico | 3v3 | Quantidade rateada (Peso,Volume) |
unidades_carga | Opcional | Opcional | array | 0-n | Informações das Unidades de Carga (Containeres/ULD/Outros) |
Segue abaixo exemplo de como informar uma Unidade de Transporte:
{
...
"unidade_transporte": [
{
"tipo": 1,
"identificacao": "Placa ABCXXXX",
"lacres": [
"00000000", "00000000"
],
"unidade_carga": [...]
}
],
...
}
As informações sobre as Unidades de Carga são montados dentro do array unidade_carga
, onde cada elemento do array corresponde à uma Unidade de Carga.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
tipo | Obrigatório | Obrigatório | número | 1 | Tipo da Unidade de Carga 1 - Container |
identificacao | Obrigatório | Obrigatório | string | 1-20 | Identificação da Unidade de Carga Informar a identificação da unidade de carga, por exemplo: número do container. |
lacres | Opcional | Opcional | array (string) | 0-n | Lacres das Unidades de Carga |
quantidade_rateada | Opcional | Opcional | numerico | 3v3 | Quantidade rateada (Peso,Volume) |
Segue abaixo exemplo de como informar uma Unidade de Carga:
{
...
"unidade_carga": [
{
"tipo": 1,
"identificacao": "Container 00000",
"lacres": [
"00000000", "00000000"
]
}
],
...
}
Os documentos anteriores podem ser vinculados ao CT-e através do array documentos_anteriores
.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
emissor | Obrigatório | objeto | --- | Informações do emissor dos documentos |
documentos | Obrigatório | array | --- | Identificação dos documentos anteriores do emissor informado |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
nome_razao | Obrigatório | string | 1-60 | Nome ou Razão Social do emissor |
cnpj | Obrigatório para Pessoa Jurídica | string | 14 | Número do CNPJ00.000.000/0000-00 |
cpf | Obrigatório para Pessoa Física | string | 11 | Número do CPF000.000.000-00 |
ie | Opcional | string | 14 | Número da Inscrição Estadual |
uf | Opcional | string | 2 | Estado do endereço do emissor |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
chave | Obrigatório para documento eletrônico | string | 44 | Chave do documento |
tipo | Obrigatório para documento em papel | integer | 1 | Tipo do documento7 - ATRE |
serie | Obrigatório para documento em papel | string | 1-3 | Série de emissão do documento |
numero | Obrigatório para documento em papel | string | 1-30 | Número do documento |
data_emissao | Obrigatório para documento em papel | string | 10-20 | Data de emissão no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
Segue abaixo exemplo de como informar os documentos anteriores
{
...
"documentos_anteriores": [
{
"emissor": {
"cnpj": "00.000.000/0000-00",
"nome_razao": "Empresa Emissora"
},
"documentos": [
{
"chave": "00000000000000000000000000000000000000000000"
}
]
}
],
...
}
Nos casos de transporte de veículos novos, as informações específicas devem ser informadas no array veiculos_novos
.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
chassi | Obrigatório | string | 17 | Número de chassi do veículo |
cor | Obrigatório | string | 1-4 | Código da cor do veículo |
cor_descricao | Obrigatório | string | 1-40 | Nome/Descrição da cor do veículo |
marca_modelo | Obrigatório | string | 1-6 | Marca/Modelo do veículo |
valor_unitario | Obrigatório | numerico | 13v2 | Valor unitário do veículo |
valor_frete_unitario | Obrigatório | numerico | 13v2 | Valor de frete do veículo |
As informações de cobrança são montadas dentro do objeto cobranca
.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
fatura | Opcional | Opcional | objeto | --- | Fatura de cobrança |
duplicatas | Opcional | Opcional | array | 1-n | Duplicatas de cobrança |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
numero | Opcional | Opcional | string | 1-60 | Número da fatura |
valor_original | Opcional | Opcional | numerico | 13v2 | Valor original da fatura |
valor_desconto | Opcional | Opcional | numerico | 13v2 | Valor de desconto da fatura |
valor_liquido | Opcional | Opcional | numerico | 13v2 | Valor liquido da fatura |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
numero | Opcional | Opcional | string | 1-60 | Número da duplicata |
data_vencimento | Opcional | Opcional | string | 10-20 | Data de vencimentoY-m-d |
valor | Opcional | Opcional | numerico | 13v2 | Valor da duplicata |
As informações de impostos são montadas dentro do objeto impostos
.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
cfop | Obrigatório | Obrigatório | string | 4 | Código Fiscal de Operações e de Prestações |
classificacao_tributaria | Obrigatório | Obrigatório | string | 1-n | Código da Situação Tributária00 - Tributação Normal do ICMS |
beneficio_fiscal | Opcional | Opcional | string | 1-10 | Código de benefício fiscal na UF |
icms | Opcional, será aplicada a alíquota automática | Opcional, será aplicada a alíquota automática | string | 1-n | Valores e alíquotas de ICMS |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
aliquota | Opcional | Opcional | numerico | 3v2 | Alíquota do ICMS |
percentual_reducao | Opcional | Opcional | numerico | 3v2 | Percentual de redução da base de cálculo |
bc_st_retido | Opcional | Opcional | numerico | 13v2 | Base de cálculo com substituição tributária |
aliquota_st_retido | Opcional | Opcional | numerico | 3v2 | Alíquota com substituição tributária |
credito_outorgado | Opcional | Opcional | numerico | 13v2 | Valor de crédito outorgado |
devido_origem | Opcional | Opcional | boolean | 1 | Indicador do imposto devido na origem |
partilha | Opcional | Opcional | objeto | - - - | Grupo a ser informado nas prestações interestaduais para consumidor final, não contribuinte do ICMS |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
base_calculo | Obrigatório | Obrigatório | numerico | 13v2 | Base de cálculo para UF de destino |
aliquota_fcp_uf_destino | Obrigatório | Obrigatório | numerico | 3v2 | Alíquota de FCP na UF de destino |
aliquota_icms_uf_destino | Obrigatório | Obrigatório | numerico | 3v2 | Alíquota de ICMS na UF de destino |
aliquota_icms_uf_origem | Obrigatório | Obrigatório | numerico | 3v2 | Alíquota de ICMS na UF de origem |
aliquota_icms_interestadual | Obrigatório | Obrigatório | numerico | 3v2 | Alíquota de ICMS interestadual |
valor_icms_uf_remetente | Obrigatório | Obrigatório | numerico | 3v2 | Alíquota de ICMS interestadual |
As informações sobre a modalidade Rodoviário são montados dentro do array rodoviario
, a tabela abaixo lista os parâmetros que podem ser informados.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
rntrc | Obrigatório | Obrigatório | string | 8 | Registro Nacional de Transportadores Rodoviários de Carga |
ordens_coleta | Opcional | Opcional | array | 0-10 | Ordens de coleta |
As informações das ordens de coleta do transporte são informadas no array ordens_coleta
.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
numero | Obrigatório | Obrigatório | string | 1-6 | Número da ordem de coleta |
data_emissao | Obrigatório | Obrigatório | string | 10-20 | Data de emissão no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
serie | Opcional | Opcional | string | 10-20 | Data de emissão no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
emissor | Obrigatório | Obrigatório | objeto | - - - | Emissor da ordem de coleta |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
cnpj | Obrigatório | Obrigatório | string | 14 | Número do CNPJ00.000.000/0000-00 |
ie | Obrigatório | Obrigatório | string | 14 | Número da Inscrição Estadual |
uf | Obrigatório | Obrigatório | string | 2 | Estado do endereço do emissor |
telefone | Opcional | Opcional | string | 6-14 | Contato de telefone do emissor |
Segue abaixo exemplo de como informar a modalidade Rodoviário
{
"rodoviario": {
"rntrc": "0000000",
"ordens_coleta": [
{
"numero": "10",
"data_emissao": "2023-10-20",
"emissor": {
"cnpj": "00.000.000/0000-00",
"ie": "00000000000000",
"uf": "PR"
}
}
]
}
}
As informações sobre a modalidade Aéreo são montados dentro do objeto aereo
, a tabela abaixo lista os parâmetros que podem ser informados.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
previsao_entrega | Obrigatório | Obrigatório | string | 10 | Data prevista de entrega Y-m-d |
numero_minuta | Opcional | Opcional | string | 9 | Número da minuta |
numero_oca | Opcional | Opcional | string | 11 | Número Operacional do Conhecimento Aéreo |
tarifa | Obrigatório | Obrigatório | objeto | - - - | Informações de tarifa |
natureza_carga | Opcional | Opcional | objeto | - - - | Natureza da carga |
produtos_perigosos | Opcional | Opcional | array | 0-n | Informações de produtos classificados como perigosos |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
classe | Obrigatório | Obrigatório | string | 1 | Classe da tarifaM - Tarifa Minima |
valor | Obrigatório | Obrigatório | numerico | 13v2 | Valor da tarifa |
codigo | Opcional | Opcional | string | 1-4 | Código da tarifa |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
dimensoes | Opcional | Opcional | string | 5-14 | Dimensões Formato: 1234X1234X1234 (cm) |
informacoes_manuseio | Opcional | Opcional | array(string) | 0-n | Informações de manuseio 1 - certificado do expedidor para embarque de animal vivo |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
numero_onu | Obrigatório | Obrigatório | string | 4 | Número de classificação da ONU para o produto perigoso |
descricao_volumes | Obrigatório | Obrigatório | string | 1-20 | Descrição do volume |
quantidade_total | Obrigatório | Obrigatório | numerico | 11v4 | Quantidade do item perigoso |
unidade_medida | Opcional | Opcional | integer | 1 | Unidade de medida do item1 - KG |
Segue abaixo exemplo de como informar a modalidade Aéreo
{
...
"aereo": {
"previsao_entrega": "2023-11-02",
"tarifa": {
"classe": "M",
"código": "AAAA",
"valor": 1000
}
}
...
}
As informações sobre a modalidade Aquaviário são montados dentro do array aquaviario
, a tabela abaixo lista os parâmetros que podem ser informados.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
irin_navio | Obrigatório | Obrigatório | string | 1-10 | Irin do navio |
identificacao_navio | Obrigatório | Obrigatório | string | 1-60 | Identificação do navio |
valor_prestacao | Obrigatório | Obrigatório | numerico | 13v2 | Valor de prestação |
adicional_frete | Obrigatório | Obrigatório | numerico | 13v2 | Valor adicional de frete |
numero_viagem | Opcional | Opcional | string | 1-10 | Código númerico da viagem |
direcao | Opcional | Opcional | string | 1 | Direção para o destino N - Norte |
tipo_navegacao | Opcional | Opcional | integer | 1 | Tipo da navegação 0 - Interior |
balsas | Opcional | Opcional | array(string 1-60) | 0-3 | Identificação de balsas |
containers | Opcional | Opcional | array | 0-n | Identificação dos containers transportados |
As informações dos containers utilizados para o transporte da carga são informadas no array containers
.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
identificação | Obrigatório | Obrigatório | string | 1-20 | Identificador do container |
lacres | Opcional | Opcional | array (string 1-20) | 0-3 | Identificação do navio |
documentos | Obrigatório | Obrigatório | array | 0-n | Documentos das mercadorias transportadas no container |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
chave | Obrigatório para documento eletrônico | Obrigatório para documento eletrônico | string | 44 | Chave de acesso do documento |
serie | Obrigatório para documento eletrônico | Obrigatório para documento eletrônico | string | 1-3 | Serie de emissão do documento |
numero | Obrigatório para documento eletrônico | Obrigatório para documento eletrônico | string | 1-20 | Número do documento |
medida_rateada | Opcional | Opcional | numerico | 2v3 | Unidade de medida rateada |
Segue abaixo exemplo de como informar a modalidade Aquaviário
{
...
"aquaviario": {
"valor_prestacao": 1000,
"adicional_frete": 0,
"identificacao_navio": "AABBBCCC",
"irin_navio": "0000000000",
"containers": [
{
"identificacao": "AAAAA"
}
]
}
...
}
As informações sobre a modalidade Ferroviário são montados dentro do objeto ferroviario
, a tabela abaixo lista os parâmetros que podem ser informados.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
tipo_trafego | Obrigatório | Obrigatório | integer | 1 | Tipo do tráfego executado0 - Próprio |
fluxo | Obrigatório | Obrigatório | string | 1-10 | Fluxo ferroviárioTrata-se de um número identificador do contrato firmado com o cliente |
responsavel_faturamento | Obrigatório | Obrigatório | integer | 1 | Responsável pelo faturamento1 - Ferrovia de origem |
responsavel_emissao | Obrigatório | Obrigatório | integer | 1 | Responsável pela emissão1 - Ferrovia de origem |
valor_frete | Obrigatório | Obrigatório | numerico | 13v2 | Valor do frete |
cte_origem | Opcional | Opcional | string | 44 | Chave de acesso do CT-e emitido pela ferrovia de origem |
ferrovias | Opcional | Opcional | array | 0-n | Idenficação das ferrovias de passagem |
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
cnpj | Obrigatório | Obrigatório | string | 14 | Número do CNPJ00.000.000/0000-00 |
nome_razao | Obrigatório | Obrigatório | string | 2-60 | Nome ou Razão Social |
ie | Opcional | Opcional | string | 14 | Número de Inscrição Estadual |
endereco | Obrigatório | Obrigatório | string | 2-255 | Nome ou Razão Social |
cidade | Obrigatório | Obrigatório | string | 2-60 | Cidade da Ferrovia |
uf | Opcional | Opcional | string | 2 | Estado do endereço da Ferrovia |
numero | Opcional | Opcional | string | 1-60 | Número do endereço da Ferrovia |
complemento | Opcional | Opcional | string | 1-60 | Complemento do endereço da Ferrovia |
bairro | Opcional | Opcional | string | 1-60 | Bairro do endereço da Ferrovia |
cep | Opcional | Opcional | string | 8 | CEP do endereço da Ferrovia |
Segue abaixo exemplo de como informar a modalidade Ferroviário
{
...
"ferroviario": {
"tipo_trafego": "1",
"fluxo": "000000",
"responsavel_faturamento": "1",
"responsavel_emissao": "1",
"valor_frete": 1000,
"ferrovias": [
{
"cnpj": "00.000.000/0000-00",
"nome_razao": "Ferrovia Passagem",
"endereco": "Rua Principal",
"cidade": "Curitiba",
"uf": "PR"
}
]
},
...
}
As informações sobre a modalidade Dutoviário são montados dentro do objeto dutoviario
, a tabela abaixo lista os parâmetros que podem ser informados.
Parâmetro | Normal | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
data_inicio_prestacao | Obrigatório | Obrigatório | string | 10-20 | Data de início da prestação do serviçoY-m-d ou Y-m-d H:i:s |
data_termino_prestacao | Obrigatório | Obrigatório | string | 10-20 | Data de término da prestação do serviçoY-m-d ou Y-m-d H:i:s |
valor_tarifa | Opcional | Opcional | numerico | 9v6 | Valor da tarifa |
Segue abaixo exemplo de como informar a modalidade Dutoviário
{
...
"dutoviario": {
"data_inicio_prestacao": "2023-10-30",
"data_termino_prestacao": "2023-11-20",
"valor_tarifa": 100.5121
},
...
}
As informações sobre a modalidade Multimodal são montados dentro do objeto multimodal
, a tabela abaixo lista os parâmetros que podem ser informados.
Parâmetro | Normal | Tipo | Tam. | Descrição |
---|---|---|---|---|
cotm | Obrigatório | string | 1-20 | Número do Certificado do Operador de Transporte Multimodal |
negociavel | Obrigatório | boolean | 1 | Indicador Negociável |
seguro | Opcional | objeto | - - - | Informações do seguro |
Parâmetro | Normal | Tipo | Tam. | Descrição |
---|---|---|---|---|
cnpj_seguradora | Obrigatório | string | 14 | Número do CNPJ00.000.000/0000-00 |
nome_razao_seguradora | Obrigatório | string | 2-30 | Nome ou Razão Social |
numero_apolice | Obrigatório | string | 1-20 | Número da apolice |
numero_averbacao | Obrigatório | string | 1-20 | Número de averbação |
Segue abaixo exemplo de como informar a modalidade Multimodal
{
...
"multimodal": {
"cotm": "0000000000",
"negociavel": false,
"seguro": {
"cnpj_seguradora": "00.000.000/0000-00",
"nome_razao_seguradora": "Seguradora",
"numero_apolice": "000000000",
"numero_averbacao": "00000000"
}
}
...
}
Para emitir um Conhecimento de Transporte Eletrônico para Outros Serviços, envie a requisição no método POST para a URL /2/cte/emissao
contendo no corpo da requisição os objetos no formato JSON.
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"ambiente": 1,
"modelo": "cte_os",
"modalidade": 1,
...
}' \
https://api.webmaniabr.com/2/cte/emissao
Segue abaixo exemplo de como Emitir CT-e:
{
"ambiente": 2,
"natureza_operacao": "Prestação de serviço de transporte - interestadual",
"modalidade": "1",
"modelo": "cte_os",
"local_inicio_prestacao": {
"cidade": "Curitiba",
"uf": "PR"
},
"local_termino_prestacao": {
"cidade": "São Paulo",
"uf": "SP"
},
"contribuicao_tomador": "9",
"indicador_tomador": "0",
"tomador": [],
"impostos": {
"cfop": "0000",
"classificacao_tributaria": "00"
},
"remetente": {
"nome_razao": "Remetente Carga",
"cnpj": "00000000000000",
"nome_fantasia": "Rementente",
"telefone": "11999999999",
"endereco": "Rua Exemplo",
"numero": "321",
"complemento": "Edifício",
"bairro": "Jardim",
"cep": "82400000",
"cidade": "Curitiba",
"uf": "PR"
},
"destinatario": {
"nome_razao": "Destinatario Carga",
"cnpj": "00000000000000",
"telefone": "11999999999",
"endereco": "Rua Exemplo",
"numero": "123",
"bairro": "Jardim",
"cidade": "São Paulo",
"cep": "01153000",
"uf": "SP"
},
"valores_servico": {
"valor_total": 100,
"valor_recebido": 100
},
"carga": {
"valor_total": 100,
"produto_predominante": "Chocolate",
"quantidades": [
{
"unidade_medida": "1",
"tipo_medida": "LITROS",
"quantidade": 2
}
]
},
"documentos_fiscais": [
{
"tipo": "1",
"chave": "00000000000000000000000000000000000000000000"
}
],
"rodoviario": {
"rntrc": "12345678"
}
}
A resposta do corpo da mensagem será no formato objeto JSON, contendo os campos uuid
, chave
, serie
, numero
, status
, motivo
, epec
, xml
, dacte
e log
:
{
"uuid": "00000000-0000-0000-0000-000000000000", // Número único de identificação
"chave": "00000000000000000000000000000000000000000000", // Chave de identificação na Sefaz
"serie": 1, // Série do CT-e OS
"numero": 123, // Número do CT-e OS
"status": "aprovado", // aprovado, reprovado, cancelado, encerrado, processando ou contingencia
"motivo": "Autorizado o uso do CT-e", // Motivo do status
"epec": false, // Indicador de emissão em EPEC
"xml": "https://api.webmaniabr.com/xmlcte/[chave]",
"dacte": "https://api.webmaniabr.com/dacte/[chave]",
"log": "{...}" // Log de retorno da Sefaz
}
No momento que realizado a emissão da Nota Fiscal, caso tenha informado o parâmetro url_notificacao
, será enviado o retorno no formato POST para a URL especificada. Saiba mais
O Conhecimento de Transporte Eletrônico por Outros Serviços é utilizado para a declaração do transporte de pessoas, valores ou bagagens. Siga os passos a baixo que orientam a emissão de um CT-e OS na modalidade rodoviária.
Preencha os campos conforme finalidade da sua emissão, alguns parâmetros possuem informações adicionais que podem ser acessadas ao clicar em seu nome. A tabela abaixo possui os campos necessários para a emissão de um CT-e OS.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
ambiente | Obrigatório | integer | 1 | Identificação do Ambiente da Sefaz 1 - Produção |
url_notificacao | Opcional | string | - - - | URL de notificação para todas as atualizações de status do CT-e |
modelo | Obrigatório modelo cte_os | string | - - - | Modelo do documento de emissão, deverá ser informado cte_os |
modalidade | Obrigatório | integer | 1 | Modalidade de emissão do documento 1 - Rodoviário |
finalidade | Opcional, padrão 0 | integer | 1 | Tipo do CT-e0 - Normal |
contribuicao_tomador | Obrigatório | integer | 1 | Tipo de contribuinte para o tomador na prestação do serviço 1 - Contribuinte ICMS |
servico | Obrigatório | objeto | - - - | Informações do serviço prestado |
carga | Obrigatório | objeto | - - - | Informações da carga que está sendo transportada |
documentos_fiscais | Obrigatório | array | - - - | Identificação dos documentos transportados |
local_inicio_prestacao | Obrigatório | objeto | - - - | Local de início da prestação do serviço |
local_termino_prestacao | Obrigatório | objeto | - - - | Local de término da prestação do serviço |
tomador | Obrigatório | objeto | - - - | Tomador do serviço |
rodoviario | Obrigatório | objeto | - - - | Informações da modalidade de transporte |
observacoes_contribuinte | Opcional | array | - - - | Observações adicionais do contribuinte de uso livre |
observacoes_fisco | Opcional | array | - - - | Observações adicionais para o fisco de uso livre |
detalhes_retirada | Opcional | string | 1-160 | Informações adicionais a respeito da retirada da carga |
caracteristica_transporte | Opcional | string | 1-15 | Característica adicional do transporte. Exemplos: REENTREGA, DEVOLUÇÃO e REFATURAMENTO |
caracteristica_servico | Opcional | string | 1-30 | Característica adicional do serviço. Exemplos: ENTREGA EXPRESSA, LOGÍSTICA REVERSA, CONVENCIONAL e EMERGENCIAL |
observacoes_gerais | Opcional | string | 1-2000 | Informações complementares do documento |
As informações sobre o Serviço Prestado são enviados através de um objeto no parâmetro servico
.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
valor_total | Obrigatório | numeric | 13v2 | Valor total do serviço0.00 |
valor_recebido | Obrigatório | numeric | 13v2 | Valor recebido pelo serviço0.00 |
tipo | Obrigatório | integer | 1 | Tipo do serviço que está sendo prestado. 6 - Transporte de Pessoas |
descricao | Obrigatório | string | 1-30 | Descrição do serviço |
componentes | Opcional | objeto | --- | Componentes do valor de prestação do serviço Deverá ser informado um objeto onde o atributo equivale ao nome do campo e o seu valor equivale ao valor de prestação |
Segue abaixo exemplo de como informar o carregamento ao emitir uma CT-e OS:
{
...
"servico": {
"valor_total": 12000,
"valor_recebido": 9.500,
"componentes": {
"FRETE PESO": 8000
}
},
...
}
As informações sobre a carga transportada são enviadas através do array carga
, onde podem ser informadas as quantidades transportadas e também dados do seguro da carga..
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
quantidades | Obrigatório | array | 1-n | Informações das quantidades da carga transportada |
seguro | Opcional | array | 1-n | Informações do seguro e da seguradora |
Segue abaixo exemplo de como informar a carga transportada para o CT-e OS:
{
"carga": {
"quantidades": [
{
"quantidade": 20
}
]
},
}
As informações sobre as quantidades dos itens carregados são informados no array quantidades
, onde cada item é um objeto.
Parâmetro | Normal | CT-e OS | Simplificada | Tipo | Tam. | Descrição |
---|---|---|---|---|---|---|
quantidade | Obrigatório | Obrigatório | Será utilizado a informação da NF-e, caso disponível. | numerico | 1 | Quantidade do item da carga. |
unidade_medida | Obrigatório | Não usado no CT-e OS | Será utilizado a informação da NF-e, caso disponível. | numerico | 1 | Tipo da medida do item da carga.0 - M3 |
tipo_medida | Obrigatório | Não usado no CT-e OS | Será utilizado a informação da NF-e, caso disponível. | string | 1-20 | Unidade de medida do item da carga.Exemplos: PESO BRUTO, PESO DECLARADO, LITRAGEM, CAIXAS e etc. |
As informações sobre o seguro e a seguradora da carga são informadas no objeto seguro
.
Parâmetro | CT-e OS | Tipo | Tam. | Descrição |
---|---|---|---|---|
responsavel | Obrigatório | integer | 1 | Resposável pelo seguro 4 - Emitente do CT-e |
nome_razao_seguradora | Opcional | string | 1-30 | Nome ou Razão Social da Seguradora |
numero_apolice | Opcional | string | 1-20 | Número da apolice do seguro |
As informações dos locais de Início e Fim da prestação do serviço de transporte podem ser informadas nos objetos local_inicio_prestacao
e local_termino_prestacao
seguindo a regra de campos descrita abaixo.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
cidade | Obrigatório | string | - - - | Nome da cidade |
uf | Obrigatório | string | 2 | Sigla do estado |
Segue abaixo exemplo de como informar a carga transportada para o CT-e OS:
{
...
"local_inicio_prestacao": {
"cidade": "Curitiba",
"uf": "PR"
},
"local_termino_prestacao": {
"cidade": "Rio de Janeiro",
"uf": "RJ"
},
...
}
O Tomador do CT-e OS é a pessoa Física ou Jurídica que irá receber a prestação do serviço de transporte, o tomador pode ser informado no objeto tomador
seguindo as regras abaixo.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
cnpj | Obrigatório no caso de Pessoa Jurídica | string | 14 | Número de CNPJ |
cpf | Obrigatório no caso de Pessoa Física | string | 11 | Número de CPF |
nome_razao | Obrigatório | string | 2-60 | Nome ou Razão Social |
nome_fantasia | Opcional | string | 2-60 | Nome fantasia da empresa |
ie | Opcional | string | 0-14 | Nùmero de Inscrição Estadual |
email | Opcional | string | - - - | Endereço de e-mail |
telefone | Opcional | string | 6-14 | Número de telefone |
endereco | Obrigatório | string | 2-255 | Logradouro do endereço |
numero | Obrigatório | string | 1-60 | Número do endereço |
complemento | Opcional | string | 1-60 | Complemento do endereço |
bairro | Obrigatório | string | 2-60 | Bairro do endereço |
cep | Obrigatório para endereço nacional | string | 8 | Código postal (CEP) do endereço |
cidade | Será utilizada a informação correspondente do CEP | string | 2-255 | Nome da cidade |
uf | Será utilizada a informação correspondente do CEP | string | 2 | Sigla do estado |
codigo_pais | Opcional | string | 1-4 | Código do país seguinto a lista do BACEN Exemplo: Brasil = 1058 |
Segue abaixo exemplo de como informar o tomador do CT-e OS:
{
...
"tomador": {
"nome_razao": "Tomador do Serviço",
"cpf": "00000000000",
"telefone": "47999999999",
"endereco": "Rua Naftali Reiss",
"numero": "415",
"complemento": "tal",
"bairro": "Bacacheri",
"cep": "80035040",
"cidade": "Curitiba",
"uf": "PR"
},
...
}
As informações sobre os Documentos Fiscais são montados dentro do array documentos_fiscais
, onde cada elemento do array corresponde à um Documento Fiscal no formato de objeto.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
chave | Obrigatório para BP-e | string | 44 | Chave de acesso do BP-e |
data_emissao | Obrigatório quando não houver chave | string | 10-20 | Data de emissão no formato Y-m-d |
numero | Obrigatório quando não houver chave | string | 1-20 | Número do documento |
serie | Opcional | string | 1-3 | Série de emissão do documento |
subserie | Opcional | string | 1-3 | Subérie de emissão do documento |
valor_total | Opcional | numerico | 13v2 | Valor total do documento |
Segue abaixo exemplo de como informar um Documento Fiscal:
{
...
"documentos_fiscais": [
{
"chave": "00000000000000000000000000000000000000000000"
},
{
"numero": "12345"
"chave": "2023-12-10"
}
],
...
}
As informações de cobrança são montadas dentro do objeto cobranca
.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
fatura | Opcional | objeto | --- | Fatura de cobrança |
duplicatas | Opcional | array | 1-n | Duplicatas de cobrança |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
numero | Opcional | string | 1-60 | Número da fatura |
valor_original | Opcional | numerico | 13v2 | Valor original da fatura |
valor_desconto | Opcional | numerico | 13v2 | Valor de desconto da fatura |
valor_liquido | Opcional | numerico | 13v2 | Valor liquido da fatura |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
numero | Opcional | string | 1-60 | Número da duplicata |
data_vencimento | Opcional | string | 10-20 | Data de vencimentoY-m-d |
valor | Opcional | numerico | 13v2 | Valor da duplicata |
As informações de impostos são montadas dentro do objeto impostos
.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
cfop | Obrigatório | string | 4 | Código Fiscal de Operações e de Prestações |
classificacao_tributaria | Obrigatório | string | 1-n | Código da Situação Tributária00 - Tributação Normal do ICMS |
beneficio_fiscal | Opcional | string | 1-10 | Código de benefício fiscal na UF |
icms | Opcional, será aplicada a alíquota automática | string | 1-n | Valores e alíquotas de ICMS |
pis | Opcional | numeric | 3v2 | Alíquota do PIS |
cofins | Opcional | numeric | 3v2 | Alíquota do COFINS |
ir | Opcional | numeric | 3v2 | Alíquota do IR |
inss | Opcional | numeric | 3v2 | Alíquota do INSS |
csll | Opcional | numeric | 3v2 | Alíquota do CSLL |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
aliquota | Opcional | numerico | 3v2 | Alíquota do ICMS |
percentual_reducao | Opcional | numerico | 3v2 | Percentual de redução da base de cálculo |
bc_st_retido | Opcional | numerico | 13v2 | Base de cálculo com substituição tributária |
aliquota_st_retido | Opcional | numerico | 3v2 | Alíquota com substituição tributária |
credito_outorgado | Opcional | numerico | 13v2 | Valor de crédito outorgado |
devido_origem | Opcional | boolean | 1 | Indicador do imposto devido na origem |
partilha | Opcional | objeto | - - - | Grupo a ser informado nas prestações interestaduais para consumidor final, não contribuinte do ICMS |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
base_calculo | Obrigatório | numerico | 13v2 | Base de cálculo para UF de destino |
aliquota_fcp_uf_destino | Obrigatório | numerico | 3v2 | Alíquota de FCP na UF de destino |
aliquota_icms_uf_destino | Obrigatório | numerico | 3v2 | Alíquota de ICMS na UF de destino |
aliquota_icms_uf_origem | Obrigatório | numerico | 3v2 | Alíquota de ICMS na UF de origem |
aliquota_icms_interestadual | Obrigatório | numerico | 3v2 | Alíquota de ICMS interestadual |
valor_icms_uf_remetente | Obrigatório | numerico | 3v2 | Alíquota de ICMS interestadual |
As informações sobre a modalidade Rodoviário são montados dentro do array rodoviario
, a tabela abaixo lista os parâmetros que podem ser informados.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
tipo_fretamento | Obrigatório para transporte de pessoas. | integer | 1 | Tipo de fretamento que está sendo executado1 - Eventual |
data_viagem | Obrigatório para fretamento eventual. | string | 10-20 | Data da viagem no formato data ou data/horaY-m-d ou Y-m-d H:i:s |
veiculo | Opcional | objeto | - - - | Veículo de transporte |
As informações sobre o veículo de transporte no CT-e OS são informados no objeto veiculo
.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
placa | Obrigatório | string | 7 | Placa do veículo |
renavam | Opcional | string | 9-11 | Registro do RENAVAM |
uf_licenciamento | Opcional | string | 2 | Estado de licenciamento do veículo |
proprietario | Obrigatório caso o veículo não pertença a empresa emissora do CT-e. | objeto | - - - | Proprietário do veículo |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
nome_razao | Obrigatório | string | 2-60 | Nome ou Razão Social do emissor |
cnpj | Obrigatório para Pessoa Jurídica | string | 14 | Número do CNPJ00.000.000/0000-00 |
cpf | Obrigatório para Pessoa Física | string | 11 | Número do CPF000.000.000-00 |
ie | Obrigatório | string | 14 | Número da Inscrição Estadual |
uf | Obrigatório | string | 2 | Estado do endereço do emissor |
taf | Obrigatório | string | 12 | Termo de Autorização de Fretamento |
registro_estadual | Obrigatório | string | 2-25 | Termo de Autorização de Fretamento |
tipo | Obrigatório | integer | 1 | Tipo da empresa proprietária0 - TAC Agregado |
Segue abaixo exemplo de como informar a modalidade Rodoviário
{
"rodoviario": {
"tipo_fretamento": "1",
"data_viagem": "2023-12-10",
"veiculo": {
"placa": "ABC0000"
}
}
}
A observação do contribuinte no CT-e OS é de uso livre para o contribuinte adicionar informações sobre qualquer campo. Essa observação pode incluir a identificação e descrição, que devem ser informadas nos objetos identificacao
e descricao
, respectivamente, seguindo as regras abaixo.
Parâmetro | Normal | Tipo | Tam. | Descrição |
---|---|---|---|---|
identificacao | Opcional | string | 1-20 | Identificação do campo para a observação do contribuinte |
descricao | Opcional | string | 1-160 | Descrição do contribuinte para o campo especificado |
Segue abaixo um exemplo de como informar as observações do contribuinte no CT-e OS:
{
...
"observacoes_contribuinte": [
{
"identificacao": "LEI DA TRANSPARENCIA",
"descricao": "O valor aproximado de tributos incidentes sobre o preço deste serviço é de R$ 152,00"
},
{
"identificacao": "ContatoEntrega",
"descricao": "João Pedro da Silva"
}
],
...
}
A observação do contribuinte do fisco no CT-e OS é de uso livre para o contribuinte adicionar informações sobre qualquer campo. Essa observação pode incluir a identificação e descrição, que devem ser informadas nos objetos identificacao
e descricao
, respectivamente, seguindo as regras abaixo.
Parâmetro | Normal | Tipo | Tam. | Descrição |
---|---|---|---|---|
identificacao | Opcional | string | 1-20 | Identificação do campo para a observação do contribuinte |
descricao | Opcional | string | 1-60 | Descrição do contribuinte para o campo especificado |
Segue abaixo um exemplo de como informar as observações do contribuinte do fisco no CT-e OS:
{
...
"observacoes_fisco": [
{
"identificacao": "RegimeEspecial",
"descricao": "123456"
}
],
...
}
Na Webmania, a segurança da informação é nossa prioridade máxima. Por esse motivo, aplicamos restrições de acesso aos arquivos XML e PDF para garantir a segurança dos documentos fiscais.
O documento fiscal é criptografado com senha, e só pode ser visualizado após a confirmação do CPF/CNPJ do tomador da nota fiscal ou conforme formas de autenticação através do IP emissor
, Credenciais de acesso
, Token
ou Conectado no painel Webmania®
.
Segue abaixo as condições de acesso disponibilizados, após as restrições serem aplicadas:
Autenticação | Acesso autorizado | Exige senha? | Descrição |
---|---|---|---|
Credenciais de acesso | ✅ | Não | Ao enviar as credenciais de acesso da empresa na HEADER da requisição, podem ser acessados todos os documentos fiscais emitidos pela empresa. Authorization: Bearer SEU_ACCESS_TOKEN |
Token | ✅ | Não | Ao enviar o token criptografado na URL, o documento fiscal pode ser acessado pelo período de 24 horas sem o uso de senha. Ideal para disponibilizar link para compartilhamento.?token=[TOKEN] Token não está disponível para documentos fiscais sem tomador. |
IP emissor | ✅ | Não | Ao emitir uma nota fiscal o IP do computador/servidor é registrado como autorizado de forma permanente, onde pode acessar todos os documentos fiscais emitidos pelas empresas às quais possui acesso. IPs autorizados automaticamente |
Painel Webmania® | ✅ | Não | Ao realizar o login no painel Webmania® é permitido o acesso para todos os documentos fiscais emitidos pelas empresas da sua conta. O acesso é vinculado ao período que está conectado no painel Webmania®.Acesso enquanto estiver conectado |
Sem autenticação | ❌ | Sim | Ao acessar a URL de forma pública sem autenticação, os documentos fiscais são criptografados com senha. Para acessá-los é necessário informar o CPF/CNPJ do tomador da nota fiscal (somente números).PDF = Arquivo PDF com senha Acesso sem autenticação não está disponível para documentos fiscais sem tomador. |
Ao enviar as credenciais de acesso da empresa na HEADER da requisição, podem ser acessados todos os documentos fiscais emitidos pela empresa. Segue abaixo exemplo de como visualizar o PDF, utilizando as credenciais de acesso:
curl -X GET \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
https://api.webmaniabr.com/dacte/00000000000000000000000000000000000000000000
A resposta do corpo da mensagem será no formato application/pdf
ou text/xml
, contendo no corpo da requisição o arquivo.
Para disponibilizar o link do PDF e XML com segurança e eliminar a exigência da senha, é necessário a geração do token de forma criptografada utilizando a camada de segurança AES-256-CBC. Após gerar o token, deve ser enviado na URL do arquivo. Segue abaixo exemplo:
https://api.webmaniabr.com/dacte/00000000000000000000000000000000000000000000?token=[TOKEN]
Pare gerar o token criptografado, verifique o passo a passo disponibilizado no Github da Webmania juntamente com as funções nas linguagens em PHP, Python, Java, C# e Ruby: https://github.com/webmaniabr/DFeToken.
Para consultar o status de emissão do CT-e, envie a requisição no método GET para URL /2/cte/consulta/
contendo na URL da requisição o UUID ou Chave de Acesso do CT-e.
Segue abaixo exemplo da consulta de uma CT-e:
curl -X GET \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
}' \
https://api.webmaniabr.com/2/cte/consulta/00000000000000000000000000000000000000000000
A resposta do corpo da mensagem será no formato objeto JSON, contendo os campos uuid
, chave
, status
, motivo
, serie
, numero
, xml
, dacte
, log
:
{
"uuid": "00000000-0000-0000-0000-000000000000", // Número único de identificação
"chave": "00000000000000000000000000000000000000000000", // Chave de identificação na Sefaz
"status": "aprovado", // aprovado, reprovado, cancelado, encerrado, processando ou contingencia
"motivo": "Autorizado o uso do CT-e", // Motivo do status
"serie": 1, // Série do CT-e
"numero": 123, // Número do CT-e
"xml": "https://api.webmaniabr.com/xmlcte/[chave]",
"dacte": "https://api.webmaniabr.com/dacte/[chave]",
"log": "{...}" // Log de retorno da Sefaz
}
Para cancelar uma CT-e, envie a requisição no método PUT para URL /2/cte/cancelar/
contendo na requisição os parâmetros uuid
ou chave
do CT-e e justificativa
do cancelamento.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
uuid | chave | Obrigatório | string | 36 | 44 | UUID ou Chave do CT-e |
justificativa | Obrigatório | string | 15-255 | Motivo do cancelamento |
Segue abaixo exemplo de cancelamento do CT-e:
curl -X PUT \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"chave": "00000000000000000000000000000000000000000000",
"justificativa": "Cancelado por motivos administrativos."
}' \
https://api.webmaniabr.com/2/cte/cancelar/
A resposta do corpo da mensagem será no formato objeto JSON:
{
"uuid": "00000000-0000-0000-0000-000000000000", // Número único de identificação
"chave": "00000000000000000000000000000000000000000000", // Chave de identificação na Sefaz
"status": "cancelado",
"motivo": "Cancelado por motivos administrativos.", // Motivo do status
"serie": 1, // Série do CT-e
"numero": 123, // Número do CT-e
"xml": "https://api.webmaniabr.com/xmlcte/[chave]",
"dacte": "https://api.webmaniabr.com/dacte/[chave]",
"log": "{...}" // Log de retorno da Sefaz
}
Para incluir uma nova confirmação de entrega para o CT-e, envie a requisição no método POST para URL /2/cte/entrega
contendo na requisição os parâmetros documentados abaixo.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
uuid | chave | Obrigatório | string | 36 | 44 | UUID ou Chave do CT-e |
comprovante | Obrigatório | string | - - - | Imagem do comprovante de entrega no codificado em base64 |
nome_recebedor | Será utilizado o nome do destinatário | string | 2-60 | Nome da pessoa ou empresa que recebeu a entrega |
documento_recebedor | Será utilizado o documento do destinatário | string | 2-60 | Número do documento da pessoa ou empresa que recebeu a entrega |
notas_fiscais | Serão utilizadas as NF-e vinculadas ao CT-e | array (string 44) | 0-2000 | Notas fiscais das mercadorias que foram entregues |
data_hora | Opcional, será utilizado a data/hora atual | string | 19 | Data/Hora da entrega Y-m-d H:i:s |
informacoes | Opcional | string | 1-2000 | Informações complementares da entrega realizada |
longitude | Opcional | string | - - - | Longitude do local de entrega no formato decimal |
latitude | Opcional | string | - - - | Latitude do local de entrega no formato decimal |
Segue abaixo exemplo de confirmação de entrega no CT-e:
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"chave": "00000000000000000000000000000000000000000000",
"latitude": "2.123456",
"longitude": "2.123456",
"comprovante": "data:image/png;base64,...ElFTkSuQmCC"
}' \
https://api.webmaniabr.com/2/cte/entrega
A resposta do corpo da mensagem será no formato objeto JSON:
{
"status": "aprovado",
"motivo": "Aprovada a Confirmação de Entrega",
"xml": "https://api.webmaniabr.com/xmlcte/00000000000000000000000000000000000000000000",
"log": {...}
}
Para cancelar confirmação de entrega para o CT-e, envie a requisição no método PUT para URL /2/cte/entrega/cancelar
contendo na requisição os parâmetros documentados abaixo.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
uuid | chave | Obrigatório | string | 36 | 44 | UUID ou Chave do CT-e |
sequencia | protocolo | Obrigatório | string | - - - | Sequência ou número de protocolo do evento de confirmação de entrega |
Segue abaixo exemplo de confirmação de entrega no CT-e:
curl -X PUT \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"chave": "00000000000000000000000000000000000000000000",
"sequencia": "1"
}' \
https://api.webmaniabr.com/2/cte/entrega/cancela
A resposta do corpo da mensagem será no formato objeto JSON:
{
"status": "cancelado",
"motivo": "Cancelamento de comprovante de entrega aprovado",
"xml": "https://api.webmaniabr.com/xmlcte/00000000000000000000000000000000000000000000",
"log": {...}
}
A Carta de Correção Eletrônica (CC-e) é um evento legal e tem por objetivo corrigir algumas informações do CT-e que já foi emitida. Para emitir a Carta de Correção, envie a requisição no método POST para a URL /2/cte/correcao/
seguindo o modelo abaixo.
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
uuid | chave | Obrigatório | string | 36 | 44 | UUID ou Chave do CT-e |
alteracoes | Obrigatório | array | 1-n | Alterações que serão vinculadas a CC-e. |
ambiente | Obrigatório caso o documento original não foi emitido em nossas soluções | integer | 1 | Ambiente de emissão do CT-e1 - Produção |
sequencia | Obrigatório caso o documento original não foi emitido em nossas soluções | integer | 1 | Sequência do evento a ser criado |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
grupo | Obrigatório | string | - - - | Grupo de alteraçãoExemplos: rem, enderReme, dest, enderDest |
campo | Obrigatório | string | - - - | Campo que será alteradoExemplos: xFant, fone, xCpl, email |
valor | Obrigatório | string | - - - | Valor que será corrigido |
item | Obrigatório caso o grupo seja uma lista | integer | - - - | Quando o grupo do campo for uma lista, deverá ser informado o índice da liste que será alterado |
Segue abaixo exemplo de carta de correção no CT-e:
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"chave": "00000000000000000000000000000000000000000000",
"alteracoes": [
{
"grupo": "rem",
"campo": "xFant",
"valor": "Nome fantasia"
}
]
}' \
https://api.webmaniabr.com/2/cte/correcao
A resposta do corpo da mensagem será no formato objeto JSON:
{
"uuid": "00000000-0000-0000-0000-000000000000",
"chave": "00000000000000000000000000000000000000000000",
"evento": 1,
"status": "aprovado",
"motivo": "Evento registrado e vinculado a CT-e",
"xml": "https://api.webmaniabr.com/xmlcce/00000000000000000000000000000000000000000000",
"log": {...}
}
A Webmania® desenvolveu uma tecnologia exclusiva que trabalha com o ambiente de contingência do Sefaz automaticamente, assim que identificado que as operações do Sefaz se encontram offline.
Em casos onde não está sendo possível comunicar o CT-e para a SEFAZ, as notas são colocadas em uma fila de processamento, na qual serão processadas assim que a comunicação com a SEFAZ for reestabelecida.
No momento que realizado a emissão da Nota Fiscal, caso tenha informado o parâmetro url_notificacao
, será enviado o retorno no formato POST para a URL especificada. Saiba mais
O EPEC é o Evento Prévio de Emissão em Contingência, que funciona como uma modalidade de emissão para o CT-e quando não é possível estabelecer a comunicação com o ambiente autorizador da SEFAZ. Na emissão EPEC, é gerada uma pré autorização de uso do CT-e, onde o número de protocolo do evento é vinculado ao documento, e assim que a comunicação com o ambiente autorizador é reestabelecida o documento é emitido automaticamente. Mais informações a respeito do modo de funcionamento da emissão via EPEC estão disponíveis aqui.
O servidores da Webmania estão localizados na Amazon AWS, líder global em cloud computing, na região us-east-1 (Leste dos EUA) com ponto de presença em sa-east-1 (São Paulo). Manter a sua estrutura perto de algumas das duas localidades, garante um menor tempo de resposta nas requisições na API.
Utilizamos uma infraestrutura na Amazon AWS anycast de alta disponibilidade, o que significa que ao se comunicar com API da Webmania a requisição será redirecionada para o servidor mais próximo da sua localidade. As requisições dos endpoints são gerenciados através de IPs estáticos, caso necessite autorize no firewall a comunicação com os IPs abaixo.
IPs estáticos de entrada:API da Webmania® é protegida por um firewall que identifica de forma automática os acessos indevidos, suspeitos, credenciais incorretas e a localização da requisição, onde também pode limitar solicitações por segundo e o total de requisições para evitar o mal uso da API e a sobrecarga dos servidores. O uso indevido da API pode gerar mensagens de erro 503 ou 403 no retorno do cabeçalho da requisição. Segue abaixo especificações para uma correta integração:
https://webmaniabr.com/api/
ou https://api.webmaniabr.com
retorne 403 Erro Forbidden por engano, por favor, entre em contato para liberarmos o IP do seu servidor.