Autenticação

A autenticação no IntegraNFe é feita através da utilização de uma chave de API. Esta chave serve para que o IntegraNFe identifique a sua conta, e conceda permissões para que o seu sistema se comunique com o Integra em nome da conta em questão.

Há duas maneiras de se autenticar, sendo a primeira utilizando HTTP Basic Auth.
A outra maneira é enviar um token em Base64 como parâmetro no header da requisição, este parâmetro deverá ter o nome de "Authorization".

Para definir o tipo de ambiente, homologação ou produção, o parâmetro é passado no objeto "json", enviado na requisição de emissão de nota fiscal eletrônica de produto ou serviço.

Criando suas chaves de API (API Tokens)

❗️

Trate suas chaves de API como senhas

Não inclua sua chave de API publicamente em nenhum lugar do seu site ou javascript. Lembre-se que esta chave dá acesso total ao seus dados no IntegraNFe.

HTTP Basic Auth

Para gerar o header de autenticação HTTP básico deve-se seguir os seguintes passos:

Utilizar em nome de usuário seu email registrado no IntegraNFe, e adicionar a senha para este usuário, com este dois valores deve-se gerar uma string em Base64, observe o exemplo abaixo.

$http.defaults.headers.common['Authorization'] = "Basic " + btoa(usuario + ":" + senha);

❗️

Importante

O Header da requisição tem que conter o atributo "Authorization" e seu valor deve conter a palavra "Basic " concatenada com a string em Base64:
Authorization = Basic eFyaW9AZW1haWwuY29tIiwKICAgICJwYXNzd29yZCI6InN1YXNlbmhhIgp9

A string em Base64 é um mero exemplo.

📘

HTTP Basic Auth

Você pode aprender mais sobre HTTP Basic Auth em https://en.wikipedia.org/wiki/Basic_access_authentication

🚧

Boas práticas

Como boa prática é interessante não misturar o que são de fato parâmetros da requisição com a autenticação da mesma. Portanto, recomendamos a utilização de HTTP Basic Auth.

HTTP Bearer Token

Os usuários da API deverão gerar um token de autorização quando fizerem requisições, cada requisição deve conter no Header o atributo "Authorization" acompanhado de Bearer mais a credencial, isto será detalhado abaixo.

Primeiramente o usuário da API deverá se cadastrar no site do IntegraNFe, após sua regularização, o mesmo deverá acessar o site, ir na página meu perfil, clicar na aba Integração API, nesta página será possível gerar a credencial (token). Após basta copiá-la e usá-la nas requisições. Abaixo temos as telas a serem acessadas.

📘

Informação

Na primeira imagem abaixo, que é a Home, onde está escrito usuário aparecerá o seu nome de usuário clique nele para abrir um modal onde aparecerá um botão com os dizeres "Meu Perfil" clique nele para ser direcionado a tela do seu perfil.

Na segunda imagem clique na aba "Integração API".

Na aba "Integração API" será exibido um pequeno texto e um botão com os dizeres "Obter Credencial", clique nele e será exibido sua credencial, o status, e a data de expiração, a credencial terá validade de um dia.

Quando o status da credencial estiver "Expirado", será possível atualizá-la clicando em "Atualizar Credencial" como pode na última figura.

1132 1131 1099 1105
eyJhbGciOiJIUzUxMiJ9eyJzdWIiOiJzZXVlbWFpbEBlbWFpbC5jb20iLCJqdGkiOiIxNSIsImV4cCI6MTYxNjAwNDg1NywiaWF0IjoxNjE1OTE4NDU3LCJpc3MiOiJJbnRlZ3JhTkZlIn0=

📘

Nota

No cabeçalho de cada requisição deverá conter o atributo "Authorization" como no exemplo abaixo:

Authorization = Bearer eyJhbGciOiJIUzUxMiJ9eyJzdWIiOiJzZXVlbWFpbEBlbWFpbC5jb20iLCJqdGkiOiIxNSIsImV4cCI6MTYxNjAwNDg1NywiaWF0IjoxNjE1OTE4NDU3LCJpc3MiOiJJbnRlZ3JhTkZlIn0=

Importante ressaltar que após a palavra "Bearer" deve conter um espaço antes da credencial.
O valor mostrado aqui é um mero exemplo;

$http.defaults.headers.common['Authorization'] = "Bearer " + "eyJhbGciOiJIUzUxMiJ9eyJzdWIiOiJzZXVlbWFpbEBlbWFpbC5jb20iLCJqdGkiOiIxNSIsImV4cCI6MTYxNjAwNDg1NywiaWF0IjoxNjE1OTE4NDU3LCJpc3MiOiJJbnRlZ3JhTkZlIn0="