andersondanilo / CnabPHP

Projeto para criar arquivos de remessas e processar arquivos de retorno no formato CNAB, utilizado nos bancos geralmente para boleto bancário.
MIT License
328 stars 201 forks source link

ERROR - 42 - Código para Baixa/Devolução Inválido #150

Open joaotorresmarques opened 5 years ago

joaotorresmarques commented 5 years ago

Fala pessoal! estou usando o tradutor de arquivo retorno CAIXA. no teste da remessa ele passa tranquilo. Más o arquivo de retorno ta dando este erro conforme na imagem abaixo. Alguem sabe o que seria? obrigado pessoal!

erro.jpg
joaotorresmarques commented 5 years ago

Atualizando: Alterei o codigo com informações e a remessa esta ok no simulador, más esta vindo com REMESSA REJEITADA.

erro.jpg
joaotorresmarques commented 5 years ago

`<?php

include 'vendor/autoload.php';

$codigo_banco = Cnab\Banco::CEF; $arquivo = new Cnab\Remessa\Cnab240\Arquivo($codigo_banco,'sigcb'); $arquivo->configure(array( 'data_geracao' => new DateTime(), 'data_gravacao' => new DateTime(), 'nome_fantasia' => 'NOME DA EMPRESA', // seu nome de empresa 'razao_social' => 'NOME DA EMPRESA', // sua razão social 'cnpj' => 1111111111111, // seu cnpj completo 'banco' => $codigo_banco, //código do banco 'logradouro' => 'Av Getulio vargas', 'numero' => 15, 'bairro' => 'Novo', 'cidade' => 'Carpina', 'uf' => 'PE', 'cep' => 55810000, 'agencia' => 1242, 'conta' => 2080, // número da conta 'conta_dac' => 0, // digito da conta 'codigo_cedente' => 367336, 'codigo_cedente_dv' => 0, 'agencia_dv' => 0, 'operacao' => 012, 'numero_sequencial_arquivo' => 1, ));

$arquivo->insertDetalhe(array( 'codigo_ocorrencia' => 1, // 1 = Entrada de título, futuramente poderemos ter uma constante 'nosso_numero' => '241111110011160', 'numero_documento' => 6084, 'carteira' => 109, 'modalidade_carteira' => 14, //tava 21 'especie' => Cnab\Especie::CEF_DUPLICATA_DE_PRESTACAO_DE_SERVICOS, // Você pode consultar as especies Cnab\Especie 'aceite' => 'N', // "S" ou "N" 'registrado' => 1, //TAVA FALSE 'valor' => 1.00, // Valor do boleto 'instrucao1' => 1, // 1 = Protestar com (Prazo) dias, 2 = Devolver após (Prazo) dias, futuramente poderemos ter uma constante 'instrucao2' => 0, // preenchido com zeros 'sacado_nome' => 'Joao marcos', // O Sacado é o cliente, preste atenção nos campos abaixo 'sacado_tipo' => 'cpf', //campo fixo, escreva 'cpf' (sim as letras cpf) se for pessoa fisica, cnpj se for pessoa juridica 'sacado_cpf' => 10189969403, 'sacado_logradouro' => 'Residencial novo do muro', 'sacado_bairro' => 'Novo', 'sacado_cep' => '55810000', // sem hífem 'sacado_cidade' => 'Carpina', 'sacado_uf' => 'PE', 'data_vencimento' => new DateTime('2018-11-15'), 'data_cadastro' => new DateTime('2018-11-11'), 'juros_de_um_dia' => 0.10, // Valor do juros de 1 dia' 'data_desconto' => new DateTime('2018-11-14'), 'valor_desconto' => 10.0, // Valor do desconto 'prazo' => 0, // prazo de dias para o cliente pagar após o vencimento 'taxa_de_permanencia' => '0', //00 = Acata Comissão por Dia (recomendável), 51 Acata Condições de Cadastramento na CAIXA 'mensagem' => 'Descrição do boleto', 'data_multa' => new DateTime('2018-12-10'), // data da multa 'valor_multa' => 10.0, // valor da multa 'identificacao_distribuicao' => 0, 'baixar_apos_dias' => 30 ));

// para salvar $arquivo->save('meunomedearquivo3.txt');

`

joaotorresmarques commented 5 years ago

Registro Tipo 1

Registro tipo P

Registro Q

Alguem me ajuda :(

gaba-morais commented 4 years ago

Você teria que alterar o arquivo raiz do boleto.net chamado Banco_Caixa, no meu caso sicoob deu o mesmo problema, eu só mudei o lenght das variáveis detalhes de acordo com a posição dentro do metodo GerarDetalheSegmentoPRemessa.

joaotorresmarques commented 3 years ago

Preenchi tudo manualmente nas configurações do cnab. Minha remessa não foi validada pela equipe da caixa, más até hoje o cliente ta usando numba boa. rsrs