NFSeCarioca

NFSeCarioca Carioca é uma gem que visa facilitar a comunicação com a API do notacarioca, através de um cliente ruby.

:warning: Essa lib ainda está em desenvolvimento. :warning:

Instalação

Adicione esta linha ao seu ao Gemfile da sua aplicação:

:warning: A gem ainda não foi publicada, para instalar use. :warning:

  gem 'nfse-carioca', github: "luzvc/nfse-carioca"

Rode o bundle:

$ bundle

Como usar?

Configurando os certificados

Crie um arquivo config/initializers/nfse_carioca.rb e adicione:

NFSeCarioca.configure do |config|
  config.test_mode = true # Defines to use on test mode.

  config.cert_pem_path         = "/your/string/path/to/certicate.pem"
  config.ca_cert_pem_path      = "/your/string/path/to/ca/certicate.pem"
  config.cert_key_pem_path     = "/your/string/path/to/certicate/key.pem"
  config.ssl_cert_key_password = "very-secure-encrypted-password"
end

Criando uma NFSeCarioca

# valores a serem usados na NFSeCarioca a ser gerada
infos = {
  identification_number: "01",
  description: "Venda do Serviço XYZ.",
  total_price: 12.0,
  provider: {
    cnpj: "11199990000111",
    inscricao_municipal: "04807995"
  },
  customer: {
    kind: "Cnpj",
    code: "22220099000111",
    full_name: "XPTO Tecnologia Ltda.",
    phone_number: "2222-2222", #opcional
    email: "[email protected]", #opcional
    address: {
      street: "Rua qualquer nome",
      number: "33",
      complement: "Sala 1",
      neighborhood: "Seu bairro",
      city_ibge_code: "3550308",
      state_code: "SP",
      zipcode: "22255777"
    }
  }
}

invoice =  Invoice.new(infos)

gerador = NFSeCarioca::GerarNFSe.new(invoice)

# Conecta na API do Nota Carioca para gerar a NFSeCarioca
response = gerador.execute!

Versões

NFSeCarioca segue o versionamento semântico(Semantic Versioning).

Issues

Se você encontrar um bug, por favor crie um Github Issue.

Contributing

Para maiores detalhes veja CONTRIBUTING.md.