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 Nota Fiscal de Serviço disponível em 2.080 municípios. 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 | Função |
---|---|---|
/2/nfse/emissao | POST | Emissão de Nota Fiscal |
/2/nfse/emissao/simplificada | POST | Emissão Simplificada (MEI) |
/2/nfse/substituir | POST | Substituição de Nota Fiscal |
/2/nfse/manifestar | POST | Manifestar participação (Padrão Nacional) |
/2/nfse/consulta | GET | Consulta de Nota Fiscal |
/2/nfse/status | GET | Consulta status e recursos do provedor do município |
/2/nfse/cancelar | PUT | Cancelar Nota Fiscal | Agendamento |
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 uma requisição ocorre falha 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.
A disponibilidade de recursos e funções na emissão da NFS-e depende das regras do provedor de cada município. Para obter todos os recursos disponíveis do provedor, envie a requisição no método GET para a URL /2/nfse/status
.
curl -X GET \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
https://api.webmaniabr.com/2/nfse/status
A resposta do corpo da mensagem será no formato objeto JSON, contendo os campos status
, modelo
, versao
, ambientes
, autenticacao
, emissao
, funcoes
e parametros_disponiveis
:
Parâmetro | Tipo | Descrição |
---|---|---|
status | boolean | Informa se o município se encontra homologado na Webmania®Novos ambientes são homologados conforme requisições. |
modelo | string | Modelo do provedor do município |
versao | string | Versão do XML do provedorParâmetros na API podem mudar conforme versão do XML. |
ambientes | array | Ambientes disponíveis conforme regras do provedor1 - Produção Atenção: Alguns provedores não fornecem ambiente de homologação. |
autenticacao | array | Autenticação disponível conforme regras do provedor certificado_a1 O método de autenticação deve ser configurado na empresa através da API ou Painel Webmania®. Saiba mais |
emissao | array | Modelos disponíveis conforme regras do provedorlote_rps Atenção: O tipo de emissão e o retorno variam para cada modelo. Saiba mais |
funcoes | array | Funções disponíveis conforme regras do provedorconsultar |
codigo_servico | array | Código de serviços disponíveis para empresa com base no CNAE e as alíquotas sugeridas para os impostos. |
parametros_disponiveis | objeto | Parâmetros disponíveis para o modelo utilizado pelo município e a sua obrigatoriedade. obrigatorio - Obrigatório Atenção: O parâmetro será retornado apenas para São Paulo - SP e Rio de Janeiro - RJ, em breve os outros modelos serão incluídos. |
{
"status": true, // Ambiente homologado
"modelo": "abrasf", // Provedor do município
"versao": "2.02", // Versão homologada
"ambientes": [ 1, 2 ], // Ambientes disponíveis para emissão
"autenticacao": [ "certificado_a1" ], // Formato de autenticação
"emissao": [ "lote_rps", "nfse" ], // Modelos disponíveis para emissão
"funcoes": [ "consultar", "cancelar", "substituir" ] // Funções disponíveis
"codigo_servico": [
{
"codigo": "0000", // Código do serviço
"descricao": "Serviço 1", // Descrição do serviço
"codigo_tributacao": "000000000", // Código de tributação do serviço no município, caso esteja disponível
"aliquota_sugerida": {
"iss": 5 // Alíquota Sugerida do ISS
}
},
{
"codigo": "0000", // Código do serviço
"descricao": "Serviço 2", // Descrição do serviço
"aliquota_sugerida": {
"iss": 2 // Alíquota Sugerida do ISS
}
},
...
],
"parametros_disponiveis": {
"empresa.cnpj": "obrigatorio_pj", // Para pessoa jurídica, obrigatório preencher o CNPJ nas configurações da empresa
"servico.valor_servicos": "obrigatorio", // Obrigatório informar o valor dos serviços
"tomador.cpf": "obrigatorio_pf", // Para pessoa física, obrigatório informar o CPF do tomador
"tomador.email": "opcional", // Informar o e-mail do tomador é opcional
...
}
}
Ao emitir uma Nota Fiscal de Serviço é retornado o Lote RPS ou a NFS-e emitida. O tratamento depende do provedor de cada município, onde a Webmania sempre prioriza a emissão de forma síncrona, em tempo real, para proporcionar uma melhor experiência.
Ao realizar a integração é essencial recepcionar o retorno dos modelos lote_rps
e nfse
. Segue abaixo:
Modelo | Envio | Descrição |
---|---|---|
lote_rps | assíncrono | O retorno do Lote RPS pode ser gerado ao emitir notas fiscais em massa ou caso o município processe as notas fiscais no modo assíncrono, ou seja, a nota é primeiro recepcionada para somente depois ser processada.Envio em massa: Limite 50 notas (quando disponível) |
nfse | síncrono | O retorno da NFS-e ocorre quando solicitado uma única emissão e quando o município permite o envio no formato síncrono, ou seja, em tempo real. |
Para que a sua plataforma se mantenha sempre atualizada a Webmania disponibiliza as notificações automáticas para todos os status da Nota Fiscal e para todas as atualizações relacionadas ao DANFS-e.
Cada Nota Fiscal possui um número único de identificação chamado de UUID, este número deve ser utilizado para recepcionar e identificar a Nota Fiscal para atualizar as informações no seu banco de dados.
Será enviado o retorno no formato POST para a URL especificada contendo no corpo os parâmetros uuid
, modelo
, status
, motivo
, numero_lote
, serie_lote
, quantidade_rps
, protocolo
, info_nfse
, log
e atualizado_em
.
Parâmetro | Tipo | Descrição |
---|---|---|
uuid | string | Número único de identificação do Lote RPSDeve ser utilizado a UUID para recepcionar o retorno da notificação. |
modelo | string | Modelo do retornolote_rps |
status | string | Status do Lote RPSprocessando |
motivo | string | Motivo do status do Lote RPSEx.: Lote processado com sucesso |
numero_lote | string | Número do Lote RPS |
serie_lote | string | Série do Lote RPS |
quantidade_rps | string | Quantidade de NFS-e no Lote RPS |
protocolo | string | Protocolo do Lote RPS |
info_nfse | array | Listagem e retorno de todas as notas fiscais do Lote RPSOs parâmetros são os mesmos do retorno da NFS-e. Saiba mais |
log | objeto | Log de retorno da prefeitura |
atualizado_em | data e hora | Data e Hora da última atualização |
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",
"modelo": "lote_rps",
"status": "processado",
"motivo": "Lote processado com sucesso",
"numero_lote": "0000",
"serie_lote": "A0",
"quantidade_rps": 2,
"protocolo": "000000000000000",
"info_nfse": [
{
"uuid": "00000000-0000-0000-0000-000000000000",
"modelo": "nfse",
"status": "aprovado",
"motivo": "Autorizado o uso da NFS-e",
"numero": "00",
"codigo_verificacao": "000000000",
"xml": "http://api.webmaniabr.com/xmlnfse/[uuid]",
"pdf_nfse": "https://api.webmaniabr.com/nfse/[uuid]",
"pdf_nfse_status": "processado",
"pdf_rps": "http://api.webmaniabr.com/darps/[uuid]"
},
{
"uuid": "00000000-0000-0000-0000-000000000000",
"modelo": "nfse",
"status": "aprovado",
"motivo": "Autorizado o uso da NFS-e",
"numero": "00",
"codigo_verificacao": "000000000",
"xml": "http://api.webmaniabr.com/xmlnfse/[uuid]",
"pdf_nfse": "https://api.webmaniabr.com/nfse/[uuid]",
"pdf_nfse_status": "processando",
"pdf_rps": "http://api.webmaniabr.com/darps/[uuid]"
}
],
"log": { ... },
"atualizado_em": "2024-01-01T12:00:00-03:00"
}
Será enviado o retorno no formato POST para a URL especificada contendo no corpo os parâmetros uuid
, modelo
, status
, motivo
, numero
, codigo_verificacao
, serie_rps
, numero_rps
, xml
, pdf_nfse
, pdf_nfse_status
, pdf_rps
, log
e atualizado_em
.
Parâmetro | Tipo | Descrição |
---|---|---|
uuid | string | Número único de identificação da Nota FiscalDeve ser utilizado a UUID para recepcionar o retorno da notificação. |
modelo | string | Modelo do retornonfse |
status | string | Status da Nota Fiscalprocessando |
motivo | string | Motivo do status da Nota FiscalEx.: Autorizado o uso da NFS-e |
numero | string | Número da Nota FiscalGerenciado automaticamente pela prefeitura do município. |
codigo_verificacao | string | Código de verificação da Nota Fiscal |
serie_rps | string | Série do RPS |
numero_rps | string | Número do RPS |
xml | string | URL do XML da Nota Fiscal |
pdf_nfse | string | URL do PDF da Nota Fiscalquando disponibilizado pela prefeitura |
pdf_nfse_status | string | Status do PDF da Nota Fiscalquando disponibilizado pela prefeitura |
pdf_rps | string | URL do PDF do Recibo Provisório (RPS) da Nota Fiscal |
log | objeto | Log de retorno da prefeitura |
atualizado_em | data e hora | Data e Hora da última atualização |
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",
"modelo": "nfse",
"status": "aprovado",
"motivo": "Autorizado o uso da NFS-e",
"numero": "00",
"codigo_verificacao": "000000000",
"serie_rps": "A0",
"numero_rps": 00,
"xml": "http://api.webmaniabr.com/xmlnfse/[uuid]",
"pdf_nfse": "https://api.webmaniabr.com/nfse/[uuid]",
"pdf_nfse_status": "indisponivel",
"pdf_rps": "http://api.webmaniabr.com/darps/[uuid]",
"log": { ... },
"atualizado_em": "2024-01-01T12:00:00-03:00"
}
Para emitir uma Nota Fiscal de Serviço, envie a requisição no método POST para a URL /2/nfse/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,
"rps": [...]
}' \
https://api.webmaniabr.com/2/nfse/emissao
Segue abaixo exemplo de como Emitir Nota Fiscal de Serviço de modo simplificado com classe de imposto:
{
"ambiente": 2,
"url_notificacao": "http://meudominio.com/retorno.php",
"rps": [
{
"servico": {
"valor_servicos": "15.00",
"discriminacao": "Prestação de Serviço referente ao mês X",
"classe_imposto": "REF000000"
},
"tomador": {
"cpf": "000.000.000-00",
"nome_completo": "Nome do tomador"
}
}
]
}
A resposta do corpo da mensagem será no formato objeto JSON, podendo ser retornado os modelos lote_rps
ou nfse
. Em caso de dúvidas, clique aqui para saber mais sobre Lote RPS e NFS-e.
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 URL especificada. Saiba mais
As Informações da Nota Fiscal possuem todos os campos necessários para a emissão de uma Nota Fiscal de Serviço.
Preencha os campos conforme finalidade da sua emissão, alguns parâmetros possuem informações adicionais que podem ser acessadas ao clicar em cima.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
ID | string | 1-15 | Número do pedido de compra ou ID de processamento Controle das solicitações de emissão por pedido ou ID de processamento. Saiba mais | |
ambiente | número | 1 | Identificação do Ambiente da Nota Fiscal1 - Produção A disponibilidade do ambiente de homologação depende do provedor de cada município. Consulte o status para validação. | |
rps | array | 1-50 | Informações do serviço e tomador de cada Nota Fiscal, limitado a 50 NFS-e por requisição. Somente municípios com suporte ao lote_rps permitem envio em massa. Consulte o status para validação. | |
url_notificacao | string | --- | URL de notificação para todas as atualizações de status da Nota Fiscal | |
data_agendamento | data e hora | --- | Permite especificar a Data e Hora para agendar a emissão da Nota Fiscal. Cancelar Agendamento Formato americano: |
Segue abaixo exemplo do retorno do Lote RPS contendo os campos uuid
, modelo
, status
, motivo
, numero_lote
, quantidade_rps
, protocolo
, info_nfse
e log
.
Parâmetro | Tipo | Descrição |
---|---|---|
uuid | string | Número único de identificação do Lote RPSDeve ser utilizado a UUID para recepcionar o retorno da notificação. |
modelo | string | Modelo do retornolote_rps |
status | string | Status do Lote RPSprocessando |
motivo | string | Motivo do status do Lote RPSEx.: Lote processado com sucesso |
numero_lote | string | Número do Lote RPS |
serie_lote | string | Série do Lote RPS |
quantidade_rps | string | Quantidade de NFS-e no Lote RPS |
protocolo | string | Protocolo do Lote RPS |
info_nfse | array | Listagem e retorno de todas as notas fiscais do Lote RPSOs parâmetros são os mesmos do retorno da NFS-e. Saiba mais |
log | objeto | Log de retorno da prefeitura |
Segue exemplo do retorno no formato JSON:
{
"uuid": "00000000-0000-0000-0000-000000000000", // Número único de identificação
"modelo": "lote_rps", // Modelo do Lote RPS (nfse, lote_rps)
"status": "processado", // processando, processado, agendado, reprovado, cancelado, contingencia
"motivo": "Lote processado com sucesso", // Motivo do status
"numero_lote": "0000", // Número do Lote RPS
"serie_lote": "A0", // Série do Lote RPS
"quantidade_rps": 2, // Quantidade de NFS-e no Lote RPS
"protocolo": "000000000000000", // Protocolo do Lote RPS
"info_nfse": [
{
"uuid": "00000000-0000-0000-0000-000000000000", // UUID da NFS-e
"modelo": "nfse", // Modelo da NFS-e
"status": "aprovado", // Status da NFS-e
"motivo": "Autorizado o uso da NFS-e", // Motivo da NFS-e
"numero": "00", // Número da NFS-e
"codigo_verificacao": "000000000", // Código de verificação da NFS-e
"xml": "http://api.webmaniabr.com/xmlnfse/[uuid]", // XML da NFS-e
"pdf_nfse": "https://api.webmaniabr.com/nfse/[uuid]", // PDF da prefeitura da NFS-e (quando disponível)
"pdf_nfse_status": "processado", // Status do PDF da prefeitura da NFS-e (quando disponível)
"pdf_rps": "http://api.webmaniabr.com/xmlnfse/[uuid]", // PDF do RPS da NFS-e
}
],
"log": "{...}" // Log de retorno da prefeitura
}
No momento que realizado a emissão da Nota Fiscal de Serviço (NFS-e), caso tenha informado o parâmetro url_notificacao
, será enviado o retorno no formato POST para a URL especificada com o retorno no modelo lote_rps
. Saiba mais
Segue abaixo exemplo do retorno da NFS-e contendo os campos uuid
, modelo
, status
, motivo
, numero
, codigo_verificacao
, serie_rps
, numero_rps
, xml
, pdf_nfse
, pdf_nfse_status
, pdf_rps
e log
.
Parâmetro | Tipo | Descrição |
---|---|---|
uuid | string | Número único de identificação da Nota FiscalDeve ser utilizado a UUID para recepcionar o retorno da notificação. |
modelo | string | Modelo do retornonfse |
status | string | Status da Nota Fiscalprocessando |
motivo | string | Motivo do status da Nota FiscalEx.: Autorizado o uso da NFS-e |
numero | string | Número da Nota FiscalGerenciado automaticamente pela prefeitura do município. |
codigo_verificacao | string | Código de verificação da Nota Fiscal |
serie_rps | string | Série do RPS |
numero_rps | string | Número do RPS |
xml | string | URL do XML da Nota Fiscal |
pdf_nfse | string | URL do PDF da Nota Fiscalquando disponibilizado pela prefeitura |
pdf_nfse_status | string | Status do PDF da Nota Fiscalquando disponibilizado pela prefeitura |
pdf_rps | string | URL do PDF do Recibo Provisório (RPS) da Nota Fiscal |
log | objeto | Log de retorno da prefeitura |
Segue exemplo do retorno no formato JSON:
{
"uuid": "00000000-0000-0000-0000-000000000000", // UUID da NFS-e
"modelo": "nfse", // Modelo da NFS-e
"status": "aprovado", // processando, aprovado, agendado, reprovado, cancelado, contingencia
"motivo": "Autorizado o uso da NFS-e", // Motivo da NFS-e
"numero": "00", // Número da NFS-e
"codigo_verificacao": "000000000", // Código de verificação da NFS-e
"serie_rps": "A0", // Série do Lote RPS da NFS-e
"numero_rps": 00, // Número do Lote RPS da NFS-e
"xml": "http://api.webmaniabr.com/xmlnfse/[uuid]", // XML da NFS-e
"pdf_nfse": "https://api.webmaniabr.com/nfse/[uuid]", // PDF da prefeitura da NFS-e (quando disponível)
"pdf_nfse_status": "processado", // Status do PDF da prefeitura da NFS-e (quando disponível)
"pdf_rps": "http://api.webmaniabr.com/xmlnfse/[uuid]", // PDF do RPS da NFS-e
"log": "{...}" // Log de retorno da prefeitura
}
No momento que realizado a emissão da Nota Fiscal de Serviço (NFS-e), caso tenha informado o parâmetro url_notificacao
, será enviado o retorno no formato POST para a URL especificada com o retorno no modelo nfse
. Saiba mais
O RPS (Recibo Provisório de Serviço) contém todas as informações de uma prestação de serviços montados dentro da array rps
, conforme mostrado na tabela Informações da Nota Fiscal.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
servico | objeto | --- | Informações do Serviço | |
tomador | objeto | --- | Informações do Tomador | |
construcao_civil | objeto | --- | Informações Construção Civil |
Segue abaixo exemplo de como informar o RPS para emissão em massa:
{
...
"rps": [
{
"servico": {
"valor_servicos": "15.00",
"discriminacao": "Prestação de Serviço referente ao mês X",
"classe_imposto": "REF000000"
},
"tomador": {
"cpf": "000.000.000-00",
"nome_completo": "Nome do tomador"
}
},
{
"servico": {
"valor_servicos": "25.00",
"discriminacao": "Prestação de Serviço referente ao mês Y",
"classe_imposto": "REF000000"
},
"tomador": {
"cpf": "000.000.000-00",
"nome_completo": "Nome do tomador"
}
}
]
}
As informações do serviço são montados dentro do objeto servico
, conforme mostrado na tabela Informações do RPS.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
discriminacao | string | 1-2000 | Discriminação do serviço | |
valor_servicos | string | 15v2 | Valor total dos serviços prestados0.00 | |
classe_imposto | objeto | --- | Definição automática de impostos, informe a referência da classe de imposto cadastrado no painel Webmania®REF0000 | |
impostos | objeto | --- | Definição de impostos na API, para operações que demande maior flexibilidade | |
iss_retido | número | 1 | *Obrigatório caso não informado a Classe de Imposto Responsável pela retenção do ISS 1 - Sim | |
responsavel_retencao_iss | número | 1 | *Obrigatório caso possua ISS Retido Responsável pela retenção do ISS 1 - Tomador | |
deducoes | string | 15v2 | Valor da dedução da Base de Cálculo0.00 | |
desconto_incondicionado | string | 15v2 | Valor do desconto incondicionado0.00 | |
desconto_condicionado | string | 15v2 | Valor do desconto condicionado0.00 | |
outras_retencoes | string | 15v2 | Valor das outras retenções0.00 | |
numero_processo | string | 1-30 | Número do processo judicial ou administrativo de suspensão da exigibilidade do ISS | |
intermediario | objeto | --- | Informações do Intermediário do Serviço |
Segue abaixo exemplo para informar os serviços sem classe de imposto:
As informações dos impostos são montados dentro do objeto impostos
, conforme mostrado na tabela serviço.
Aproveite o cálculo automático de impostos, ao utilizar a classe de imposto configurado no Painel Webmania®. Nesse caso, deverá ser informado somente o parâmetro classe_imposto
com a referência (REF) da classe de imposto configurada.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
classe_imposto | string | --- | Definição automática de impostos, informe a referência da classe de imposto cadastrado no painel Webmania® REF0000 | |
iss | string | 3v2 | Alíquota do ISS0.00 | |
cst_pis_cofins | string | 2 | Código de Situação Tributária do PIS/COFINS (CST) Obs.: Disponível apenas para o Padrão Nacional 00 - Nenhum | |
pis | string | 3v2 | Alíquota do PIS0.00 | |
cofins | string | 3v2 | Alíquota do COFINS0.00 | |
inss | string | 3v2 | Alíquota do INSS0.00 | |
ir | string | 3v2 | Alíquota do IR0.00 | |
csll | string | 3v2 | Alíquota do CSLL0.00 | |
cp | string | 3v2 | Alíquota do CP (Contribuição Patronal) Obs.: Disponível apenas para o Padrão Nacional 0.00 |
As informações do intermediário do serviço são montados dentro do objeto intermediario
conforme mostrado na tabela Informações do Serviço.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
cpf Pessoa Física | string | 11 | Número do CPF000.000.000-00 | |
nome_completo Pessoa Física | string | 2-150 | Nome completo | |
cnpj Pessoa Jurídica | string | 14 | Número do CNPJ00.000.000/0000-00 | |
razao_social Pessoa Jurídica | string | 2-150 | Razão social | |
im | string | 1-15 | Inscrição municipal | |
cidade | string | 1-40 | Cidade do Intermediário. Obrigatório para o modelo Abrasf versão 2.04 | |
uf | string | 2 | UF do Intermediário. Obrigatório para o modelo Abrasf versão 2.04 |
As informações do tomador do serviço são montados dentro do objeto tomador
conforme mostrado na tabela Informações do RPS.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
cpf Pessoa Física | string | 11 | Número do CPF000.000.000-00 | |
nome_completo Pessoa Física | string | 2-150 | Nome completo | |
cnpj Pessoa Jurídica | string | 14 | Número do CNPJ00.000.000/0000-00 | |
razao_social Pessoa Jurídica | string | 2-150 | Razão social | |
im | string | 1-15 | Inscrição municipal | |
nif | string | 1-40 | Número de Identificação Fiscal | |
endereco | string | 1-40 | *Obrigatório Pessoa Jurídica Endereço do tomador | |
numero | string | 1-40 | *Obrigatório Pessoa Jurídica Número do endereço do tomador | |
complemento | string | 1-40 | Complemento do endereço do tomador | |
bairro | string | 1-40 | *Obrigatório Pessoa Jurídica Bairro do endereço do tomador | |
cidade | string | 1-40 | *Obrigatório Pessoa Jurídica Cidade do endereço do tomador | |
uf | string | 1-40 | *Obrigatório Pessoa Jurídica Estado do endereço do tomador | |
cep | string | 1-40 | *Obrigatório Pessoa Jurídica CEP do endereço do tomador | |
email | string | 1-40 | E-mail do tomador para envio da NFS-e | |
telefone | string | 1-40 | Telefone do tomador |
Para as Notas Fiscais de Serviço onde o tomador reside fora do país, é necessário informar os dados do tomador estrangeiro. As informações são montadas dentro do objeto tomador
conforme mostrado na tabela Informações do RPS.
Obs.: O tomador estrangeiro só está disponível para o modelo Abrasf versão 2.04
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
nome_estrangeiro | string | 2-150 | Nome Completo | |
id_estrangeiro | string | 1-20 | Número de Identificação (Passaporte ou outro documento legal) | |
endereco_completo | string | 1-255 | Endereço Completo | |
nome_pais | string | 1-40 | Nome do País | |
codigo_pais | string | 4 | Código do País (padrão BACEN) Ex: Estados Unidos = 2496 | |
email | string | 1-40 | E-mail do tomador para envio da NFS-e |
As informações de construção civil devem ser informadas caso o serviço prestado esteja relacionado à obras de construção civil. As informações são montadas dentro do objeto construcao_civil
conforme mostrado na tabela Informações do RPS. Os parâmetros podem variar conforme o padrão adotado pelo provedor que atende o município, abaixo estão listados os parâmetros para o modelo Abrasf e para o Padrão Nacional.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_obra | string | 1-15 | Código da obra | |
art | string | 1-15 | Código da Anotação de Responsabilidade Técnica |
Para o Padrão Nacional é obrigatório informar um dos três parâmetros: inscricao_imobiliaria_fiscal
, codigo_obra
ou os campos do endereço da obra. Quando um é informado, os outros dois não podem ser informados.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
inscricao_imobiliaria_fiscal | string | 1-30 | Inscrição imobiliária fiscalCódigo fornecido pela Prefeitura Municipal para a identificação da obra ou para fins de recolhimento do IPTU | |
codigo_obra | string | 1-30 | Número de identificação da obraCadastro Nacional de Obras (CNO) ou Cadastro Específico do INSS (CEI) | |
endereco | string | 1-255 | Logradouro do endereço da obra | |
numero | string | 1-60 | Número do endereço da obra | |
complemento | string | 1-156 | Complemento do endereço da obra | |
bairro | string | 1-60 | Bairro do endereço da obra | |
cep | string | 8 | CEP do endereço da obra |
As informações relativas a atividades em eventos devem ser informadas caso o serviço prestado pertença ao item 12 da lista de serviços, ou seja, o código de serviço seja 12.XX.XX
. As informações são montadas dentro do objeto atividades_evento
e estão disponíveis somente para o Padrão Nacional.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
descricao_evento | string | 1-255 | Nome e descrição do evento Artístico, Cultural, Esportivo, etc. | |
data_inicio | string | 10 | Data de início da atividade de eventoFormato: YYYY-MM-DD | |
data_final | string | 10 | Data do fim da atividade de eventoFormato: YYYY-MM-DD | |
identificacao | string | 1-30 | Identificação da Atividade de Evento. Obrigatório caso não seja informado o endereço do local da atividade de evento. Código identificador de evento determinado pela Administração Tributária Municipal | |
endereco | string | 1-255 | Logradouro do endereço do local da atividade de evento | |
numero | string | 1-60 | Número do endereço do local da atividade de evento | |
complemento | string | 1-156 | Complemento do endereço do local da atividade de evento | |
bairro | string | 1-60 | Bairro do endereço do local da atividade de evento | |
cep | string | 8 | CEP do endereço do local da atividade de evento |
Conforme estipulado por cada provedor, campos adicionais podem ser solicitados dentro do objeto servico
, conforme mostrado na tabela Informações do RPS. Verifique o provedor do seu município ao consultar o status e verifique os campos adicionais disponíveis e/ou obrigatórios.
O modelo de XML da Abrasf é o mais utilizado pelos municípios em emissões de Nota Fiscal de Serviço, o modelo está disponível nas versões 1.00
, 2.00
, 2.01
, 2.02
, 2.03
e 2.04
. Os campos específicos para cada versão desse modelo estão listados na tabela abaixo:
Parâmetro | Obrigatório | Versão | Tipo | Tam. | Descrição |
---|---|---|---|---|---|
codigo_servico | Todas as versões | string | 5 | Código de serviço00.00 | |
codigo_cnae | Todas as versões | string | 7 | Código CNAE | |
codigo_tributacao_municipio | Todas as versões | string | 1-20 | Código de Tributação no município | |
uf_local_prestacao | Todas as versões | string | 2 | UF do local de prestação do serviço | |
cidade_local_prestacao | Todas as versões | string | 1-20 | Cidade do local de prestação do serviço | |
natureza_operacao | 1.00 | número | 1 | Código de natureza da operação 1 - Tributação no município | |
exigibilidade_iss | 2.00 ou superior | número | 1 | Exigibilidade do ISS 1 - Exigível | |
data_competencia | 2.00 ou superior | string | 10 | Data da competência Formato: YYYY-MM-DD | |
numero_processo | 2.00 ou superior | string | 1-30 | Número do processo judicial ou administrativo de suspensão da exigibilidade do ISS | |
local_incidencia | 2.00 ou superior | número | 1 | Local de incidência do imposto 1 - Município do prestador | |
codigo_nbs | 2.03 | string | 1-9 | Código da Nomenclatura Brasileira de Serviços | |
informacoes_complementares | 2.04 | string | 1-2000 | Informações complementares relacionadas ao serviço prestado. | |
itens | 2.04 | array | --- | Itens dos serviços disponíveis apenas para Uberlândia, MG |
As informações dos itens são montadas dentro do objeto itens
conforme mostrado na tabela do provedor Abrasf.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
descricao | string | 1-255 | Descrição do item | |
quantidade | string | 13v2 | Quantidade de item00.00 | |
valor_unitario | string | 13v2 | Valor unitário do item00.00 | |
item_tributavel | string | 1 | Se o item é tributável ou não 1 - Sim |
Os campos específicos para emissão de Nota Fiscal de Serviço para os municípios atendidos pelo provedor Cecam estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_cnae | string | 7 | Código CNAE | |
codigo_servico | string | 5 | Código de serviço0000 | |
local_prestacao | string | 1 | Local de prestação do serviço 1 - Sede do prestador | |
cep_local_prestacao | string | 9 | CEP do local de prestação do serviçoDeve ser utilizado quando a prestação do serviço é realizada fora do município. |
Os campos específicos para emissão de Nota Fiscal de Serviço nos municípios atendidos pelo provedor DSF estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_cnae | string | 9 | Código CNAE | |
tipo_operacao | string | 1 | Tipo da Operação A - Sem dedução | |
tipo_tributacao | string | 1 | Tipo de Tributação C - Isenta de ISS |
Os campos específicos para emissão de Nota Fiscal de Serviço para o provedor Equiplano estão listados nas tabelas abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Parâmetro Pai | Descrição |
---|---|---|---|---|---|
codigo_servico | string | 4-6 | servico | Código de serviço"00.00" | |
justificativa_deducoes | string | 1-255 | servico | Descrição de justificativa do valor das deduções. É obrigatório quando for informado um valor de dedução no documento. | |
descricao_impostos | string | 1-500 | impostos | Descrição dos valores de impostos aplicados no documento. | |
ie | string | 1-20 | tomador | Inscrição Estadual do Tomador. |
Parâmetro | Obrigatório | Tipo | Tam. | Parâmetro Pai | Descrição |
---|---|---|---|---|---|
documento_estrangeiro | string | 0-30 | tomador | Código do documento estrangeiro | |
cidade_estrangeira | string | 0-30 | tomador | Nome da cidade de residência do estrangeiro. | |
pais | string | 1-500 | tomador | Nome do país de residência do estrangeiro. |
Os campos específicos para emissão de Nota Fiscal de Serviço no município de Florianópolis estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
cfps | string | 4 | Código Fiscal de Prestação de Serviços | |
id_cnae | string | 4-5 | Código Identificador do Serviço Prestado Obs.: O ID CNAE não é o mesmo que o código CNAE. Consulte a tabela disponibilizada pelo município para encontrar o ID CNAE correspondente ao serviço prestado. | |
situacao_tributaria | string | 2 | Código de Situação Tributária 0 - Tributada integralmente |
Os campos específicos para emissão de Nota Fiscal de Serviço para os municípios atendidos pelo provedor Governa estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_cnae | string | 7-9 | Código de serviço0000000 | |
regime_recolhimento | string | 2 | Código do Regime de Recolhimento 00 - Movimento | |
forma_recolhimento | string | 2 | Código da Forma de Recolhimento 00 - Normal |
Os campos específicos para emissão de Nota Fiscal de Serviço para os municípios atendidos pelo provedor IPM estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_servico | string | 5 | Código de serviço00.00 | |
situacao_tributaria | string | 2 | Código de Situação Tributária 0 - Tributada integralmente | |
natureza_operacao | string | 1 | Código da Natureza de Operação 1 - Tributado no município do prestador |
Os campos específicos para emissão de Nota Fiscal de Serviço para o município de Osasco estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_servico | string | 5 | Código de serviço00.00 | |
endereco_local_prestacao | string | 9 | Endereço do local de prestação do serviçoDeve ser preenchido para prestação de serviços de construção civil. | |
cep_local_prestacao | string | 9 | CEP do local de prestação do serviçoDeve ser preenchido para prestação de serviços de construção civil. | |
cidade_local_prestacao | string | 9 | Cidade do local de prestação do serviçoDeve ser preenchido para prestação de serviços de construção civil. | |
uf_local_prestacao | string | 9 | UF do local de prestação do serviçoDeve ser preenchido para prestação de serviços de construção civil. |
Os campos específicos para emissão de Nota Fiscal de Serviço para os municípios conveniados ao Padrão Nacional estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_servico | string | 6 | Código de serviço00.00.00 | |
codigo_tributacao_municipio | string | 3 | Código de Tributação no município000 | |
tributacao_iss | numero | 1 | Tributação do ISSQN sobre o serviço prestado 1 - Operação tributável | |
tipo_imunidade | numero | 1 | Identificação da Imunidade do ISSQN – somente para o caso de Imunidade 0 - Imunidade (tipo não informado na nota de origem) | |
pis_cofins_retido | numero | 1 | Retenção dos impostos PIS/COFINS 1 - Retido | |
data_competencia | string | 10 | Data da competência Formato: YYYY-MM-DD | |
codigo_nbs | string | 9 | Código da Nomenclatura Brasileira de Serviços | |
codigo_interno | string | 1-20 | Código interno do contribuinte | |
informacoes_complementares | string | 1-2000 | Informações complementares relacionadas ao serviço prestado. |
Os campos específicos para emissão de Nota Fiscal de Serviço para os municípios atendidos pelo provedor Pública estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_servico | string | 5 | Código de serviço00.00 | |
natureza_operacao | string | 1 | Código de natureza da operação 1 - Tributação no município | |
notas_deducao | array | 0-n | Notas para dedução do ISS Contrução Civil. | |
parcelas | array | 0-n | Parcelas vinculadas à condição de pagamento. |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
numero | string | --- | Número da NFS-e< | |
valor | string | --- | Valor da NFS-e0.00 | |
chave | string | --- | Chave de validação da NFS-e. |
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
condicao | string | 1 | Condição de pagamento da parcela 1 - Á vista | |
valor | string | --- | Valor da parcela0.00 | |
data_vencimento | string | 10 | Data de vencimento da parcela.Formato: AAAA-MM-DD |
Os campos específicos para emissão de Nota Fiscal de Serviço para os municípios atendidos pelo provedor Prescon estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Parâmetro Pai | Descrição |
---|---|---|---|---|---|
codigo_servico | string | 4-6 | servico | Código de serviço"0000" | |
municipio_incidencia | string | 9 | servico | Código IBGE do município de incidência do imposto. | |
endereco | objeto | --- | servico | Informações do endereço do local de prestação do serviço. |
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
endereco | string | 1-40 | Endereço do local | |
numero | string | 1-40 | Número do endereço | |
complemento | string | 1-40 | Complemento do endereço | |
bairro | string | 1-40 | Bairro do endereço | |
cidade | string | 1-40 | Cidade do endereço | |
uf | string | 2 | UF do endereço | |
cep | string | 1-40 | CEP do endereço |
Os campos específicos para emissão de Nota Fiscal de Serviço para o município de São Paulo estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_servico | string | 5 | Código de serviço00.00 | |
valor_recebido | string | 13v2 | Total do valor recebido em R$ pelo serviço prestado0.00 |
Os campos específicos para emissão de Nota Fiscal de Serviço para o provedor SIGISS estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_servico | string | 3-4 | Código de serviço0000 | |
tributacao | número | 1 | Tipo de tributação 1 - Tributada no prestador |
Os campos específicos para emissão de Nota Fiscal de Serviço para o provedor Thema estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_servico | string | 5 | Código de serviço00.00 | |
codigo_cnae | string | 7 | Código CNAE | |
codigo_tributacao_municipio | string | 1-20 | Código de Tributação no município | |
uf_local_prestacao | string | 2 | UF do local de prestação do serviço | |
cidade_local_prestacao | string | 1-20 | Cidade do local de prestação do serviço | |
natureza_operacao | número | 1 | Código de natureza da operação Prestação de Serviços no Município: |
A emissão simplificada permite realizar a emissão da Nota Fiscal de Serviço para MEI (microempreendedor individual), sem a necessidade de Certificado Digital A1 e informando apenas 3 campos: cpf_tomador
/cnpj_tomador
, classe_imposto
e valor_servicos
Para realizar a emissão, envie a requisição no método POST para URL /2/nfse/emissao/simplificada
. Os parâmetros disponíveis estão listados na tabela abaixo:
Parâmetro | Obrigatório | Tipo | Tam. | Descrição |
---|---|---|---|---|
ID | string | 1-15 | Número do pedido de compra ou ID de processamento Controle das solicitações de emissão por pedido ou ID de processamento. | |
url_notificacao | string | --- | URL de notificação para todas as atualizações de status da Nota Fiscal | |
cpf_tomador Pessoa Física | string | 11 | Número do CPF000.000.000-00 | |
cnpj_tomador Pessoa Jurídica | string | 14 | Número do CNPJ00.000.000/0000-00 | |
valor_servicos | número | 15v2 | Valor total dos serviços prestados0.00 | |
classe_imposto | string | --- | Definição automática de impostos, informe a referência da classe de imposto no Padrão Nacional (simplificado). Saiba maisREF0000 | |
construcao_civil | objeto | --- | Informações Construção Civil |
Segue abaixo exemplo de uma emissão simplificada:
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cnpj_tomador": "00.000.000/0000-00",
"valor_servicos": "15.00",
"classe_imposto": "REF000000"
}' \
https://api.webmaniabr.com/2/nfse/emissao/simplificada
A resposta do corpo da mensagem será no formato objeto JSON, contendo os campos uuid
, modelo
, status
e motivo
:
{
"uuid": "43eace5c-8008-4f6c-b830-b6d52d7ff90c", // Número único de identificação
"modelo": "nfse", // Modelo
"status": "processando", // Status
"motivo": "NFS-e enviada para processamento" // Motivo do status
}
As informações de construção civil devem ser informadas caso o serviço prestado esteja relacionado a obras de construção civil. As informações são montadas dentro do objeto construcao_civil
conforme mostrado na tabela Emissão Simplificada (MEI). Deve-se informar o codigo_obra
e codigo_municipio
ou o endereço completo da obra caso não tenha o codigo_obra
.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
codigo_obra | string | 1-30 | Número de identificação da obraCadastro Nacional de Obras (CNO) ou Cadastro Específico do INSS (CEI) | |
cep | string | 8 | CEP do endereçoSe o CEP for informado, as informações serão buscadas por ele quando os valores dos campos não estiverem definidos. | |
codigo_municipio | string | 7 | Código IBGE do Município | |
bairro | string | 1-60 | Bairro do endereçoInformar somente quando não existir o código da obra. | |
endereco | string | 1-255 | Endereço do localInformar somente quando não existir o código da obra. | |
numero | string | 1-60 | Número do endereçoInformar somente quando não existir o código da obra. | |
complemento | string | 1-155 | Complemento do endereçoInformar somente quando não existir o código da obra. |
Segue abaixo exemplo de emissão com Construção Civil:
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cnpj_tomador": "00.000.000/0000-00",
"valor_servicos": "15.00",
"classe_imposto": "REF000000",
"codigo_obra": "000000",
"cep": "00000-00"
}' \
https://api.webmaniabr.com/2/nfse/emissao/simplificada
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cnpj_tomador": "00.000.000/0000-00",
"valor_servicos": "15.00",
"classe_imposto": "REF000000",
"cep": "00000-00",
"bairro": "Vista Alegre",
"endereco": "Av tiradentes",
"numero": "123",
"complemento": "Casa"
}' \
https://api.webmaniabr.com/2/nfse/emissao/simplificada
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/nfse/00000000-0000-0000-0000-000000000000
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/nfse/00000000-0000-0000-0000-000000000000?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 da Nota Fiscal de Serviço, envie a requisição no método GET para URL /2/nfse/consulta
contendo na URL o uuid
da Nota Fiscal.
Segue abaixo exemplo da consulta de uma Nota Fiscal:
curl -X GET \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
https://api.webmaniabr.com/2/nfse/consulta/43eace5c-8008-4f6c-b830-b6d52d7ff90c
A resposta do corpo da mensagem será no formato objeto JSON, contendo os campos uuid
, status
, motivo
, numero
, codigo_verificacao
, serie_rps
, numero_rps
, pdf_rps
, pdf_nfse
, pdf_nfse_status
, xml
e log
:
{
"uuid": "43eace5c-8008-4f6c-b830-b6d52d7ff90c", // Número único de identificação
"modelo": "nfse", // Modelo da Nota Fiscal (nfse, lote_rps)
"status": "aprovado", // aprovado, reprovado, cancelado, processamento ou contingencia
"motivo": "Autorizado o uso da NFS-e", // Motivo do status
"numero": "25000", // Número da NF-e
"codigo_verificacao": "SFH-046", // Número de série
"serie_rps": "A1", // Série do RPS
"numero_rps": "2000", // Número do RPS
"pdf_rps": "http://api.webmaniabr.com/darps/[uuid]",
"pdf_nfse": "http://api.webmaniabr.com/nfse/[uuid]", // PDF da prefeitura da NFS-e (quando disponível)
"pdf_nfse_status": "processado", // processado, processando, indisponivel (quando disponível)
"xml": "http://api.webmaniabr.com/xmlnfse/[uuid]",
"log": "{...}", // Log de retorno da prefeitura
"atualizado_em": "2024-01-01T12:00:00-03:00" // Momento em que ocorreu a última alteração do status
}
Para cancelar uma Nota Fiscal de Serviço ou um agendamento, envie a requisição no método PUT para URL /2/nfse/cancelar
contendo na requisição os parâmetros uuid
e motivo
da Nota Fiscal.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
uuid | string | 36 | UUID da NFS-e | |
motivo | número | 1 | Motivo do cancelamento 1 - Erro na emissão |
Segue abaixo exemplo de cancelamento da Nota Fiscal:
curl -X PUT \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"uuid": "43eace5c-8008-4f6c-b830-b6d52d7ff90c",
"motivo": 1
}' \
https://api.webmaniabr.com/2/nfse/cancelar
A resposta do corpo da mensagem será no formato objeto JSON:
{
"uuid": "43eace5c-8008-4f6c-b830-b6d52d7ff90c", // Número único de identificação
"status": "cancelado",
"xml": "https://api.webmaniabr.com/xmlnfse/[uuid]",
"log": "{...}" // Log de retorno da prefeitura
}
Para substituir uma Nota Fiscal de Serviço, envie a requisição no método POST para URL /2/nfse/substituir
contendo na requisição os parâmetros uuid
e motivo
da Nota Fiscal.
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
ambiente | número | 1 | Ambiente de emissão da substituição. 1 - Produção | |
codigo_verificacao | string | --- | Código de verificação da Nota Fiscal a ser substituída | |
motivo | número | 1 | Motivo da substituição 1 - Erro na emissão | |
rps | objeto | 1 | RPS que será convertido em Nota Fiscal de Serviço e irá substituir a nota informada. |
Segue abaixo exemplo de substituição de uma Nota Fiscal:
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"ambiente": 1,
"codigo_verificacao": "XXX-XXX",
"motivo": 1,
"rps": {
...
}
}' \
https://api.webmaniabr.com/2/nfse/substituir
A resposta do corpo da mensagem será no formato objeto JSON:
{
"uuid": "43eace5c-8008-4f6c-b830-b6d52d7ff90c", // Número único de identificação
"status": "aprovado",
"numero": "340",
"codigo_verificacao": "XXX-XXX",
"serie_rps": "A2",
"numero_rps": "99",
"nfse_substituida": {
"uuid": "8f54e040-4344-4169-a9e7-daacd35bcfb1",
"numero": "95",
"codigo_verificacao": "XXX-XXX",
},
"xml": "https://api.webmaniabr.com/xmlnfse/[uuid]",
"log": "{...}" // Log de retorno da prefeitura
}
A manifestação da participação na Nota Fiscal de Serviço, disponível somente para o Padrão Nacional, permite ao tomador ou intermediário confirmar ou rejeitar uma nota emitida contra ele.
Para realizar a manifestação, envie a requisição no método POST para URL /2/nfse/manifestar
contendo na requisição os parâmetros conforme a tabela abaixo:
Parâmetro | NFS-e | Tipo | Tam. | Descrição |
---|---|---|---|---|
ambiente | número | 1 | Ambiente de emissão da NFS-e. 1 - Produção | |
chave|uuid | string | 50|36 | Chave ou UUID da NFS-e em que será manifestada a participação | |
manifestador | numero | 1 | Participação do manifestador na NFS-e 1 - Tomador | |
evento | numero | 1 | Tipo do Evento de Manifestação 1 - Confirmação | |
motivo_rejeicao | número | 1 | Motivo da rejeição da participação na NFS-e. Obrigatório para o evento de rejeição. 1 - NFS-e em duplicidade | |
justificativa_rejeicao | string | 15-255 | Justificativa da rejeição da participação na NFS-e. Obrigatório caso o motivo da rejeição seja 9 - Outros. |
Segue abaixo exemplo de manifestação de uma Nota Fiscal:
curl -X POST \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"ambiente": 1,
"chave": "00000000000000000000000000000000000000000000000000",
"manifestador": 1, // Tomador
"evento": 1 // Confirmação,
}' \
https://api.webmaniabr.com/2/nfse/manifestar
A resposta do corpo da mensagem será no formato objeto JSON:
{
"uuid": "43eace5c-8008-4f6c-b830-b6d52d7ff90c", // Número único de identificação
"modelo": "manifestacao_nfse",
"status": "aprovado",
"motivo": "Manifestação aprovada com sucesso.",
"chave": "00000000000000000000000000000000000000000000000000",
"xml": "https://api.webmaniabr.com/xmlnfse/[uuid]",
"log": "{...}" // Log de retorno
}
A Nota Fiscal de Serviço (NFS-e) pode ser emitida de forma síncrona ou assíncrona, dependendo da disponibilidade de cada provedor do município, exceto quando é feito um envio de vários RPS, nesse caso a emissão sempre será assíncrona podendo variar de segundos a minutos, e nestes casos o status da Nota Fiscal é definida inicialmente como processando
. É necessário aguardar o retorno da prefeitura antes de solicitar a emissão de uma nova Nota Fiscal.
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 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.