-
-
Notifications
You must be signed in to change notification settings - Fork 239
Arquivos Remessa
Os arquivos remessa disponíveis são:
- Banco do Brasil (CNAB240);
- Caixa Econômica Federal (CNAB240);
- Itaú (CNAB400);
- Bradesco (CNAB400).
Obs: os arquivos não foram homologados (enviados para teste) pelos bancos correspondentes, mas foram implementados de acordo com a documentação dos mesmos.
Para utilizá-los, crie uma nova instância do banco desejado (exe. Brcobranca::Remessa::Cnab400::Itau.new
), podendo passar um hash as informações.
Para cada arquivo remessa, é necessário ao menos um objeto Brcobranca::Remessa::Pagamento
(que deve ser incluído no atributo pagamentos
da instância). Este objeto guarda as informações do título (boleto) como o valor, a data de vencimento e as informações do sacado (veja mais sobre).
Um arquivo remessa pode ter quantos pagamentos forem necessários.
Para gerar o arquivo remessa, chame o método gera_arquivo
da instância. O método retornará uma String
com os registros (header, trailer, etc) e as quebras de linha.
# criação de um pagamento válido
pagamento = Brcobranca::Remessa::Pagamento.new(valor: 199.9,
data_vencimento: Date.today,
nosso_numero: 123,
documento_sacado: '12345678901',
nome_sacado: 'nome',
endereco_sacado: 'endereco',
bairro_sacado: 'bairro',
cep_sacado: '12345678',
cidade_sacado: 'cidade',
uf_sacado: 'SP')
# criação da instância
bradesco = Brcobranca::Remessa::Cnab400::Bradesco.new(carteira: '01',
agencia: '12345',
conta_corrente: '1234567',
digito_conta: '1',
empresa_mae: 'asd',
sequencial_remessa: '1',
codigo_empresa: '123',
pagamentos: [pagamento])
# criação da remessa
remessa = bradesco.gera_arquivo
Após criar a remessa, em um controller, você pode disponibilizar o download ao usuário:
send_data bradesco.gera_arquivo, :content_type => 'text/plain',
:filename => "remessa.txt"
Ou então, salvar como um arquivo:
File.open('caminho/para/o/arquivo', "w+") do |f|
f.write(bradesco.gera_arquivo)
end