GithubHelp home page GithubHelp logo

nuvemfiscal-sdk-php's Introduction

Nuvem Fiscal: SDK para PHP

Biblioteca para uso da API da Nuvem Fiscal com PHP. Consultar também a documentação oficial da Nuvem Fiscal.

Instalação e uso

Requisitos

PHP 7.4 ou posterior.

Composer

Para instalar os bindings via Composer, adicione o seguinte ao composer.json:

{
  "repositories": [
    {
      "type": "vcs",
      "url": "https://github.com/nuvem-fiscal/nuvemfiscal-sdk-php.git"
    }
  ],
  "require": {
    "nuvem-fiscal/nuvemfiscal-sdk-php": "*@dev"
  }
}

Então execute composer install

Instalação manual

Baixe os arquivos e inclue o autoload.php:

<?php
require_once('/path/to/NuvemFiscal/vendor/autoload.php');

Guia rápido

Siga os passos para instalação e então execute o seguinte:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

// Obter token a partir das credenciais
$token = get_oauth2_token(
    'https://auth.nuvemfiscal.com.br/oauth/token', 
    getenv('NUVEMFISCAL_CLIENTID'),
    getenv('NUVEMFISCAL_CLIENTSECRET'),
    'cep cnpj' // defina o scope a ser usado
);

// Configurar access token OAuth2 para autorização: oauth2
$config = NuvemFiscal\Configuration::getDefaultConfiguration()->setAccessToken($token->access_token);

// Configurações gerais
$config->setBooleanFormatForQueryString(Configuration::BOOLEAN_FORMAT_STRING);

// Efetuar a chamada ao endpoint
$apiInstance = new NuvemFiscal\Api\CepApi(
    // Se quiser usar um client http customizado, passe um client que implemente `GuzzleHttp\ClientInterface`.
    // Isso é opcional, `GuzzleHttp\Client` será usado por padrão.
    new GuzzleHttp\Client(),
    $config
);
$cep = '80030030'; // string | CEP sem máscara.

try {
    $result = $apiInstance->consultarCep($cep);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling CepApi->consultarCep: ', $e->getMessage(), PHP_EOL;
}

A função get_oauth2_token é uma função genérica para buscar o token OAuth2 a partir das credenciais. Isso não é definido pela Nuvem Fiscal, mas sim pelo padrão OAuth2. A seguir apresentamos uma sugestão básica de uso, mas essa função fica sob sua responsabilidade:

function get_oauth2_token($auth_url, $client_id, $client_secret, $scope) {
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $auth_url);
    curl_setopt($curl, CURLOPT_POST, TRUE);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query(array(        
        'grant_type' => 'client_credentials', 
        'scope' => $scope,  
    )));

    $headers[] = "Authorization: Basic " . base64_encode($client_id . ":" . $client_secret);
    $headers[] = "Content-Type: application/x-www-form-urlencoded";
    curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

    $response = curl_exec($curl);
    $err = curl_error($curl);

    curl_close($curl);
    if ($err) {
        echo "cURL Error #:" . $err;
    } else {
        return json_decode($response);
    }
}

Endpoints da API

Todas as URIs são relativas a https://api.nuvemfiscal.com.br

Classe Método Endpoint Descrição
CepApi consultarCep GET /cep/{Cep} Consultar endereço através do CEP
CnpjApi consultarCnpj GET /cnpj/{Cnpj} Consultar dados do CNPJ
CnpjApi listarCnpj GET /cnpj Listar estabelecimentos ativos a partir da base de CNPJ
ContaApi consultarCotaConta GET /conta/cotas/{nome} Consultar o limite de uso e o consumo de uma cota específica.
ContaApi listarCotasConta GET /conta/cotas Consultar os limites de uso e consumo de todas as cotas existentes.
CteApi baixarPdfCancelamentoCte GET /cte/{id}/cancelamento/pdf Baixar PDF do cancelamento
CteApi baixarPdfCartaCorrecaoCte GET /cte/{id}/carta-correcao/pdf Baixar PDF da carta de correção
CteApi baixarPdfCte GET /cte/{id}/pdf Baixar PDF do DACTE
CteApi baixarPdfEventoCte GET /cte/eventos/{id}/pdf Baixar PDF do evento
CteApi baixarXmlCancelamentoCte GET /cte/{id}/cancelamento/xml Baixar XML do cancelamento
CteApi baixarXmlCartaCorrecaoCte GET /cte/{id}/carta-correcao/xml Baixar XML da carta de correção
CteApi baixarXmlCte GET /cte/{id}/xml Baixar XML do CT-e processado
CteApi baixarXmlCteConhecimento GET /cte/{id}/xml/conhecimento Baixar XML do CT-e
CteApi baixarXmlCteProtocolo GET /cte/{id}/xml/protocolo Baixar XML do Protocolo da SEFAZ
CteApi baixarXmlEventoCte GET /cte/eventos/{id}/xml Baixar XML do evento
CteApi cancelarCte POST /cte/{id}/cancelamento Cancelar um CT-e autorizado
CteApi consultarCancelamentoCte GET /cte/{id}/cancelamento Consultar o cancelamento do CT-e
CteApi consultarCartaCorrecaoCte GET /cte/{id}/carta-correcao Consultar a solicitação de correção do CT-e
CteApi consultarCte GET /cte/{id} Consultar CT-e
CteApi consultarEventoCte GET /cte/eventos/{id} Consultar evento
CteApi consultarStatusSefazCte GET /cte/sefaz/status Consulta do Status do Serviço na SEFAZ Autorizadora
CteApi criarCartaCorrecaoCte POST /cte/{id}/carta-correcao Solicitar correção do CT-e
CteApi emitirCte POST /cte Emitir CT-e
CteApi listarCte GET /cte Listar CT-e
CteApi sincronizarCte POST /cte/{id}/sincronizar Sincroniza dados no CT-e a partir da SEFAZ
EmpresaApi alterarConfigCte PUT /empresas/{cpf_cnpj}/cte Alterar configuração de CT-e
EmpresaApi alterarConfigMdfe PUT /empresas/{cpf_cnpj}/mdfe Alterar configuração de MDF-e
EmpresaApi alterarConfigNfce PUT /empresas/{cpf_cnpj}/nfce Alterar configuração de NFC-e
EmpresaApi alterarConfigNfcom PUT /empresas/{cpf_cnpj}/nfcom Alterar configuração de NFCom
EmpresaApi alterarConfigNfe PUT /empresas/{cpf_cnpj}/nfe Alterar configuração de NF-e
EmpresaApi alterarConfigNfse PUT /empresas/{cpf_cnpj}/nfse Alterar configuração de NFS-e
EmpresaApi atualizarEmpresa PUT /empresas/{cpf_cnpj} Alterar empresa
EmpresaApi baixarLogotipoEmpresa GET /empresas/{cpf_cnpj}/logotipo Baixar logotipo
EmpresaApi cadastrarCertificadoEmpresa PUT /empresas/{cpf_cnpj}/certificado Cadastrar certificado
EmpresaApi consultarCertificadoEmpresa GET /empresas/{cpf_cnpj}/certificado Consultar certificado
EmpresaApi consultarConfigCte GET /empresas/{cpf_cnpj}/cte Consultar configuração de CT-e
EmpresaApi consultarConfigMdfe GET /empresas/{cpf_cnpj}/mdfe Consultar configuração de MDF-e
EmpresaApi consultarConfigNfce GET /empresas/{cpf_cnpj}/nfce Consultar configuração de NFC-e
EmpresaApi consultarConfigNfcom GET /empresas/{cpf_cnpj}/nfcom Consultar configuração de NFCom
EmpresaApi consultarConfigNfe GET /empresas/{cpf_cnpj}/nfe Consultar configuração de NF-e
EmpresaApi consultarConfigNfse GET /empresas/{cpf_cnpj}/nfse Consultar configuração de NFS-e
EmpresaApi consultarEmpresa GET /empresas/{cpf_cnpj} Consultar empresa
EmpresaApi criarEmpresa POST /empresas Cadastrar empresa
EmpresaApi enviarCertificadoEmpresa PUT /empresas/{cpf_cnpj}/certificado/upload Upload de certificado
EmpresaApi enviarLogotipoEmpresa PUT /empresas/{cpf_cnpj}/logotipo Enviar logotipo
EmpresaApi excluirCertificadoEmpresa DELETE /empresas/{cpf_cnpj}/certificado Deletar certificado
EmpresaApi excluirEmpresa DELETE /empresas/{cpf_cnpj} Deletar empresa
EmpresaApi excluirLogotipoEmpresa DELETE /empresas/{cpf_cnpj}/logotipo Deletar logotipo
EmpresaApi listarEmpresas GET /empresas Listar empresas
MdfeApi baixarPdfCancelamentoMdfe GET /mdfe/{id}/cancelamento/pdf Baixar PDF do cancelamento
MdfeApi baixarPdfEncerramentoMdfe GET /mdfe/{id}/encerramento/pdf Baixar PDF do encerramento
MdfeApi baixarPdfEventoMdfe GET /mdfe/eventos/{id}/pdf Baixar PDF do evento
MdfeApi baixarPdfMdfe GET /mdfe/{id}/pdf Baixar PDF do DAMDFE
MdfeApi baixarXmlCancelamentoMdfe GET /mdfe/{id}/cancelamento/xml Baixar XML do cancelamento
MdfeApi baixarXmlEncerramentoMdfe GET /mdfe/{id}/encerramento/xml Baixar XML do encerramento
MdfeApi baixarXmlEventoMdfe GET /mdfe/eventos/{id}/xml Baixar XML do evento
MdfeApi baixarXmlMdfe GET /mdfe/{id}/xml Baixar XML do MDF-e processado
MdfeApi baixarXmlMdfeManifesto GET /mdfe/{id}/xml/manifesto Baixar XML do MDF-e
MdfeApi baixarXmlMdfeProtocolo GET /mdfe/{id}/xml/protocolo Baixar XML do Protocolo da SEFAZ
MdfeApi cancelarMdfe POST /mdfe/{id}/cancelamento Cancelar um MDF-e autorizado
MdfeApi consultarCancelamentoMdfe GET /mdfe/{id}/cancelamento Consultar o cancelamento do MDF-e
MdfeApi consultarEncerramentoMdfe GET /mdfe/{id}/encerramento Consultar encerramento do MDF-e
MdfeApi consultarEventoMdfe GET /mdfe/eventos/{id} Consultar evento do MDF-e
MdfeApi consultarLoteMdfe GET /mdfe/lotes/{id} Consultar lote de MDF-e
MdfeApi consultarMdfe GET /mdfe/{id} Consultar manifesto
MdfeApi consultarMdfeNaoEncerrados GET /mdfe/nao-encerrados Consulta MDF-e não encerrados
MdfeApi consultarStatusSefazMdfe GET /mdfe/sefaz/status Consulta do Status do Serviço na SEFAZ Autorizadora
MdfeApi emitirLoteMdfe POST /mdfe/lotes Emitir lote de MDF-e
MdfeApi emitirMdfe POST /mdfe Emitir MDF-e
MdfeApi encerrarMdfe POST /mdfe/{id}/encerramento Encerrar um MDF-e autorizado
MdfeApi incluirCondutorMdfe POST /mdfe/{id}/inclusao-condutor Incluir um condutor em um MDF-e autorizado
MdfeApi incluirDfeMdfe POST /mdfe/{id}/inclusao-dfe Incluir um DF-e em um MDF-e autorizado
MdfeApi listarLotesMdfe GET /mdfe/lotes Listar lotes de MDF-e
MdfeApi listarMdfe GET /mdfe Listar MDF-e
MdfeApi sincronizarMdfe POST /mdfe/{id}/sincronizar Sincroniza dados no MDF-e a partir da SEFAZ
NfceApi baixarEscPosNfce GET /nfce/{id}/escpos Comandos ESC/POS para impressão do DANFCE
NfceApi baixarPdfCancelamentoNfce GET /nfce/{id}/cancelamento/pdf Baixar PDF do cancelamento
NfceApi baixarPdfEventoNfce GET /nfce/eventos/{id}/pdf Baixar PDF do evento
NfceApi baixarPdfInutilizacaoNfce GET /nfce/inutilizacoes/{id}/pdf Baixar PDF da inutilização
NfceApi baixarPdfNfce GET /nfce/{id}/pdf Baixar PDF do DANFCE
NfceApi baixarPreviaPdfNfce POST /nfce/previa/pdf Prévia do PDF do DANFCE
NfceApi baixarPreviaXmlNfce POST /nfce/previa/xml Prévia do XML da NFC-e
NfceApi baixarXmlCancelamentoNfce GET /nfce/{id}/cancelamento/xml Baixar XML do cancelamento
NfceApi baixarXmlEventoNfce GET /nfce/eventos/{id}/xml Baixar XML do evento
NfceApi baixarXmlInutilizacaoNfce GET /nfce/inutilizacoes/{id}/xml Baixar XML da inutilização
NfceApi baixarXmlNfce GET /nfce/{id}/xml Baixar XML da NFC-e processada
NfceApi baixarXmlNfceNota GET /nfce/{id}/xml/nota Baixar XML da NFC-e
NfceApi baixarXmlNfceProtocolo GET /nfce/{id}/xml/protocolo Baixar XML do Protocolo da SEFAZ
NfceApi cancelarNfce POST /nfce/{id}/cancelamento Cancelar uma NFC-e autorizada
NfceApi consultarCancelamentoNfce GET /nfce/{id}/cancelamento Consultar o cancelamento da NFC-e
NfceApi consultarEventoNfce GET /nfce/eventos/{id} Consultar evento
NfceApi consultarInutilizacaoNfce GET /nfce/inutilizacoes/{id} Consultar a inutilização de sequência de numeração
NfceApi consultarLoteNfce GET /nfce/lotes/{id} Consultar lote de NFC-e
NfceApi consultarNfce GET /nfce/{id} Consultar NFC-e
NfceApi consultarStatusSefazNfce GET /nfce/sefaz/status Consulta do Status do Serviço na SEFAZ Autorizadora
NfceApi emitirLoteNfce POST /nfce/lotes Emitir lote de NFC-e
NfceApi emitirNfce POST /nfce Emitir NFC-e
NfceApi inutilizarNumeracaoNfce POST /nfce/inutilizacoes Inutilizar uma sequência de numeração de NFC-e
NfceApi listarEventosNfce GET /nfce/eventos Listar eventos
NfceApi listarLotesNfce GET /nfce/lotes Listar lotes de NFC-e
NfceApi listarNfce GET /nfce Listar NFC-e
NfceApi sincronizarNfce POST /nfce/{id}/sincronizar Sincroniza dados na NFC-e a partir da SEFAZ
NfcomApi baixarXmlCancelamentoNfcom GET /nfcom/{id}/cancelamento/xml Baixar XML do cancelamento
NfcomApi baixarXmlNfcom GET /nfcom/{id}/xml Baixar XML da NFCom processada
NfcomApi baixarXmlNfcomNota GET /nfcom/{id}/xml/nota Baixar XML da NFCom
NfcomApi baixarXmlNfcomProtocolo GET /nfcom/{id}/xml/protocolo Baixar XML do Protocolo da SEFAZ
NfcomApi cancelarNfcom POST /nfcom/{id}/cancelamento Cancelar uma NFCom autorizada
NfcomApi consultarCancelamentoNfcom GET /nfcom/{id}/cancelamento Consultar o cancelamento da NFCom
NfcomApi consultarNfcom GET /nfcom/{id} Consultar NFCom
NfcomApi consultarStatusSefazNfcom GET /nfcom/sefaz/status Consulta do Status do Serviço na SEFAZ Autorizadora
NfcomApi emitirNfcom POST /nfcom Emitir NFCom
NfcomApi listarNfcom GET /nfcom Listar NFCom
NfeApi baixarPdfCancelamentoNfe GET /nfe/{id}/cancelamento/pdf Baixar PDF do cancelamento
NfeApi baixarPdfCartaCorrecaoNfe GET /nfe/{id}/carta-correcao/pdf Baixar PDF da carta de correção
NfeApi baixarPdfEventoNfe GET /nfe/eventos/{id}/pdf Baixar PDF do evento
NfeApi baixarPdfInutilizacaoNfe GET /nfe/inutilizacoes/{id}/pdf Baixar PDF da inutilização
NfeApi baixarPdfNfe GET /nfe/{id}/pdf Baixar PDF do DANFE
NfeApi baixarPreviaPdfNfe POST /nfe/previa/pdf Prévia do PDF do DANFE
NfeApi baixarPreviaXmlNfe POST /nfe/previa/xml Prévia do XML da NF-e
NfeApi baixarXmlCancelamentoNfe GET /nfe/{id}/cancelamento/xml Baixar XML do cancelamento
NfeApi baixarXmlCartaCorrecaoNfe GET /nfe/{id}/carta-correcao/xml Baixar XML da carta de correção
NfeApi baixarXmlEventoNfe GET /nfe/eventos/{id}/xml Baixar XML do evento
NfeApi baixarXmlInutilizacaoNfe GET /nfe/inutilizacoes/{id}/xml Baixar XML da inutilização
NfeApi baixarXmlNfe GET /nfe/{id}/xml Baixar XML da NF-e processada
NfeApi baixarXmlNfeNota GET /nfe/{id}/xml/nota Baixar XML da NF-e
NfeApi baixarXmlNfeProtocolo GET /nfe/{id}/xml/protocolo Baixar XML do Protocolo da SEFAZ
NfeApi cancelarNfe POST /nfe/{id}/cancelamento Cancelar uma NF-e autorizada
NfeApi consultarCancelamentoNfe GET /nfe/{id}/cancelamento Consultar o cancelamento da NF-e
NfeApi consultarCartaCorrecaoNfe GET /nfe/{id}/carta-correcao Consultar a solicitação de correção da NF-e
NfeApi consultarEventoNfe GET /nfe/eventos/{id} Consultar evento
NfeApi consultarInutilizacaoNfe GET /nfe/inutilizacoes/{id} Consultar a inutilização de sequência de numeração
NfeApi consultarLoteNfe GET /nfe/lotes/{id} Consultar lote de NF-e
NfeApi consultarNfe GET /nfe/{id} Consultar NF-e
NfeApi consultarStatusSefazNfe GET /nfe/sefaz/status Consulta do Status do Serviço na SEFAZ Autorizadora
NfeApi criarCartaCorrecaoNfe POST /nfe/{id}/carta-correcao Solicitar correção da NF-e
NfeApi emitirLoteNfe POST /nfe/lotes Emitir lote de NF-e
NfeApi emitirNfe POST /nfe Emitir NF-e
NfeApi inutilizarNumeracaoNfe POST /nfe/inutilizacoes Inutilizar uma sequência de numeração de NF-e
NfeApi listarEventosNfe GET /nfe/eventos Listar eventos
NfeApi listarLotesNfe GET /nfe/lotes Listar lotes de NF-e
NfeApi listarNfe GET /nfe Listar NF-e
NfeApi sincronizarNfe POST /nfe/{id}/sincronizar Sincroniza dados na NF-e a partir da SEFAZ
NfseApi baixarPdfNfse GET /nfse/{id}/pdf Baixar PDF do DANFSE
NfseApi baixarXmlCancelamentoNfse GET /nfse/{Id}/cancelamento/xml Baixar XML do evento de cancelamento
NfseApi baixarXmlDps GET /nfse/{id}/xml/dps Baixar XML da DPS
NfseApi baixarXmlNfse GET /nfse/{id}/xml Baixar XML da NFS-e processada
NfseApi cancelarNfse POST /nfse/{id}/cancelamento Cancelar uma NFS-e autorizada
NfseApi cidadesAtendidas GET /nfse/cidades Cidades atendidas
NfseApi consultarCancelamentoNfse GET /nfse/{id}/cancelamento Consultar o cancelamento da NFS-e
NfseApi consultarLoteNfse GET /nfse/lotes/{id} Consultar lote de NFS-e
NfseApi consultarMetadados GET /nfse/cidades/{codigo_ibge} Consultar metadados
NfseApi consultarNfse GET /nfse/{id} Consultar NFS-e
NfseApi emitirLoteNfse POST /nfse/lotes Emitir lote de NFS-e
NfseApi emitirLoteNfseDps POST /nfse/dps/lotes Emitir lote de NFS-e
NfseApi emitirNfse POST /nfse Emitir NFS-e
NfseApi emitirNfseDps POST /nfse/dps Emitir NFS-e
NfseApi listarLotesNfse GET /nfse/lotes Listar lotes de NFS-e
NfseApi listarNfse GET /nfse Listar NFS-e
NfseApi sincronizarNfse POST /nfse/{id}/sincronizar Sincroniza dados na NFS-e a partir da Prefeitura

Documentação dos DTOs

Autorização

jwt

  • Type: API key
  • API key parameter name: Authorization
  • Location: HTTP header

oauth2

  • Tipo: OAuth
  • Flow: application
  • URL de autorização: https://auth.nuvemfiscal.com.br/oauth/token
  • Scopes:
    • conta:
    • empresa:
    • cep:
    • cnpj:
    • mdfe:
    • cte:
    • nfse:
    • nfe:

Sobre este package

  • Versão da API: 2.32.0
    • Versão do package: 2.28.0
  • Build package: org.openapitools.codegen.languages.PhpClientCodegen

nuvemfiscal-sdk-php's People

Contributors

wlandgraf avatar

Stargazers

André Luis avatar Daniel Batistão avatar Luka Sabino avatar  avatar Nilton Gonçalves Medeiros avatar Carlos Matias avatar Mark Fazolin avatar Fabiano Morais avatar Rodolfo Cupertino avatar

Watchers

Arimateia Jr avatar  avatar Rogério Poças avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.