Biblioteca Delphi para uso da API da Nuvem Fiscal. É importante também consultar a documentação da Nuvem Fiscal.
Para utilizar a biblioteca, basta adicionar o caminho completo da pasta Source ao Library Path
da IDE do Delphi (ou ao Search Path
do seu projeto).
Para uso do client, você precisa adicionar as units NuvemFiscalClient
e NuvemFiscalDTOs
à clausula uses
da sua unit. Caso queira usar a interface de geração de token, você também precisa adicionar a unit OpenApiRest
:
uses
NuvemFiscalClient, NuvemFiscalDTOs, OpenApiRest;
O processo de autenticação da Nuvem Fiscal envolve dois passos:
- Obtenção das credenciais (Client ID e Client Secret)
- Geração do token de acesso usando as credenciais obtidas.
O primeiro passo deve ser feito no console da Nuvem Fiscal, enquanto o segundo você deve fazer manualmente. O SDK do Delphi oferece uma forma fácil de obter esse token a partir das credenciais, da seguinte forma:
var
TokenProvider: IClientCredencialsTokenProvider;
TokenData: ITokenData;
AccessToken: string;
DataExpiracao: TDateTime;
begin
TokenProvider := TClientCredentialsTokenProvider.Create;
TokenProvider.TokenEndpoint := 'https://auth.nuvemfiscal.com.br/oauth/token';
TokenProvider.ClientId := '<seu client id>';
TokenProvider.ClientSecret := '<seu client secret>';
TokenProvider.Scope := 'empresa cep cnpj nfe nfse nfce cte mdfe';
TokenData := TokenProvider.RetrieveToken;
AccessToken := TokenData.AccessToken;
DataExpiracao := TokenData.ExpirationTime;
...
Com um token de acesso em mãos, você pode instanciar e configurar o client:
var
Client: INuvemFiscalClient;
{...}
Client := TNuvemFiscalClient.Create;
Client.Config.AccessToken := '<seu access token>';
Todos os endpoints da API da Nuvem Fiscal estão disponíveis no client, agrupadas por interfaces de acordo com o serviço. Por exemplo, o client disponibiliza interfaces nas propriedades Nfse
(métodos para emissão de Nfse e outras operações relacionadas), Nfe
(operações relacionados a NFe), Cep
(operações para consulta de CEP), e assim por diante.
O exemplo a seguir faz uma consulta de dados de um CNPJ:
var
Empresa: TCnpjEmpresa;
Endereco: TCnpjEndereco;
begin
Empresa := Client.Cnpj.ConsultarCnpj('08421842000190');
try
// Dados do CNPJ estão disponíveis na variável Empresa, por exemplo:
// Empresa.RazaoSocial
// Empresa.Endereco.Logradouro
// Empresa.Endereco.Municipio
// Empresa.Endereco.Uf
finally
Empresa.Free;
end;
end;
Todos os objetos criados e passados como parâmetros, bem como os objetos recebidos como retorno de função, precisam ser destruídos pelo usuário, caso contrário isso gerará um vazamento de memória.
Você pode usar o code completion do Delphi para verificar os serviços, métodos, propriedades e classes disponíveis.
Visite os links da Nuvem Fiscal para saber mais: