br_boleto 2.2.0 → 2.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.markdown +23 -17
  4. data/lib/br_boleto.rb +2 -0
  5. data/lib/br_boleto/boleto/banco_brasil.rb +24 -15
  6. data/lib/br_boleto/boleto/santander.rb +8 -2
  7. data/lib/br_boleto/conta/banco_brasil.rb +254 -56
  8. data/lib/br_boleto/conta/bradesco.rb +229 -27
  9. data/lib/br_boleto/conta/caixa.rb +208 -4
  10. data/lib/br_boleto/conta/cecred.rb +29 -0
  11. data/lib/br_boleto/conta/itau.rb +482 -87
  12. data/lib/br_boleto/conta/santander.rb +224 -97
  13. data/lib/br_boleto/conta/sicoob.rb +39 -24
  14. data/lib/br_boleto/conta/sicredi.rb +169 -64
  15. data/lib/br_boleto/conta/unicred.rb +16 -13
  16. data/lib/br_boleto/helper/default_codes.rb +2123 -54
  17. data/lib/br_boleto/remessa/cnab240/banco_brasil.rb +12 -6
  18. data/lib/br_boleto/remessa/cnab240/bradesco.rb +1 -1
  19. data/lib/br_boleto/remessa/cnab240/helper/segmento_p.rb +1 -1
  20. data/lib/br_boleto/remessa/cnab240/itau.rb +20 -3
  21. data/lib/br_boleto/remessa/cnab240/santander.rb +25 -24
  22. data/lib/br_boleto/remessa/cnab400/caixa.rb +197 -0
  23. data/lib/br_boleto/remessa/cnab400/santander.rb +32 -27
  24. data/lib/br_boleto/retorno/base.rb +24 -0
  25. data/lib/br_boleto/retorno/cnab240/base.rb +6 -2
  26. data/lib/br_boleto/retorno/cnab240/santander.rb +5 -1
  27. data/lib/br_boleto/retorno/cnab400/banco_brasil.rb +3 -1
  28. data/lib/br_boleto/retorno/cnab400/base.rb +2 -1
  29. data/lib/br_boleto/retorno/cnab400/bradesco.rb +6 -0
  30. data/lib/br_boleto/retorno/cnab400/caixa.rb +49 -0
  31. data/lib/br_boleto/retorno/cnab400/itau.rb +5 -1
  32. data/lib/br_boleto/retorno/cnab400/santander.rb +5 -1
  33. data/lib/br_boleto/retorno/cnab400/sicoob.rb +1 -0
  34. data/lib/br_boleto/retorno/cnab400/sicredi.rb +6 -0
  35. data/lib/br_boleto/retorno/pagamento.rb +50 -4
  36. data/lib/br_boleto/version.rb +1 -1
  37. data/test/br_boleto/boleto/santander_test.rb +1 -1
  38. data/test/br_boleto/boleto/sicredi_test.rb +1 -0
  39. data/test/br_boleto/conta/banco_brasil_test.rb +157 -0
  40. data/test/br_boleto/conta/base_test.rb +8 -8
  41. data/test/br_boleto/conta/bradesco_test.rb +165 -0
  42. data/test/br_boleto/conta/caixa_test.rb +159 -1
  43. data/test/br_boleto/conta/cecred_test.rb +22 -0
  44. data/test/br_boleto/conta/itau_test.rb +346 -3
  45. data/test/br_boleto/conta/santantader_test.rb +123 -10
  46. data/test/br_boleto/conta/sicoob_test.rb +8 -0
  47. data/test/br_boleto/conta/sicredi_test.rb +79 -0
  48. data/test/br_boleto/conta/unicred_test.rb +7 -7
  49. data/test/br_boleto/remessa/cnab240/itau_test.rb +1 -1
  50. data/test/br_boleto/remessa/cnab400/caixa_test.rb +184 -0
  51. data/test/br_boleto/remessa/cnab400/santander_test.rb +30 -17
  52. data/test/br_boleto/retorno/cnab240/banco_brasil_test.rb +30 -6
  53. data/test/br_boleto/retorno/cnab240/base_test.rb +25 -5
  54. data/test/br_boleto/retorno/cnab240/bradesco_test.rb +25 -5
  55. data/test/br_boleto/retorno/cnab240/caixa_test.rb +25 -5
  56. data/test/br_boleto/retorno/cnab240/cecred_test.rb +15 -3
  57. data/test/br_boleto/retorno/cnab240/itau_test.rb +25 -5
  58. data/test/br_boleto/retorno/cnab240/santander_test.rb +30 -6
  59. data/test/br_boleto/retorno/cnab240/sicoob_test.rb +25 -5
  60. data/test/br_boleto/retorno/cnab240/sicredi_test.rb +25 -5
  61. data/test/br_boleto/retorno/cnab240/unicred_test.rb +25 -5
  62. data/test/br_boleto/retorno/cnab400/bradesco_test.rb +30 -6
  63. data/test/br_boleto/retorno/cnab400/caixa_test.rb +7 -0
  64. data/test/br_boleto/retorno/cnab400/itau_test.rb +14 -4
  65. data/test/br_boleto/retorno/cnab400/sicoob_test.rb +25 -5
  66. data/test/br_boleto/retorno/cnab400/sicredi_test.rb +10 -2
  67. data/test/br_boleto/retorno/cnab400/unicred.rb +30 -6
  68. data/test/br_boleto/retorno/pagamento_test.rb +49 -1
  69. data/test/factories/remessa/cnab400/caixa.rb +8 -0
  70. data/test/fixtures/retorno/cnab240/santander.ret +1 -1
  71. metadata +10 -2
@@ -62,6 +62,35 @@ module BrBoleto
62
62
  "#{agencia}-#{agencia_dv} / #{conta_corrente}-#{conta_corrente_dv}"
63
63
  end
64
64
 
65
+ # Código de Movimento Retorno
66
+ def equivalent_codigo_movimento_retorno_240
67
+ super.merge(
68
+ {
69
+ '76' => '76', # Liquidação de boleto cooperativa emite e expede
70
+ '77' => '77', # Liquidação de boleto após baixa ou não registrado cooperativa emite e expede
71
+ '91' => '91', # Título em aberto não enviado ao pagador
72
+ '92' => '92', # Inconsistência Negativação Serasa
73
+ '93' => '93', # Inclusão Negativação via Serasa
74
+ '94' => '94', # Exclusão Negativação Serasa
75
+ })
76
+ end
77
+
78
+ # Código do Motivo da ocorrência :
79
+ def codigos_movimento_retorno_para_ocorrencia_D_240
80
+ %w[91 93 94]
81
+ end
82
+ def equivalent_codigo_motivo_ocorrencia_D_240 codigo_movimento_gem
83
+ # Código Padrão para
84
+ {# do Banco a Gem
85
+ 'P1' => 'A114', # Enviado Cooperativa Emite e Expede
86
+ 'S1' => 'D02', # Sempre que a solicitação (inclusão ou exclusão) for efetuada com sucesso
87
+ 'S2' => 'D03', # Sempre que a solicitação for integrada na Serasa com sucesso
88
+ 'S3' => 'D04', # Sempre que vier retorno da Serasa por decurso de prazo
89
+ 'S4' => 'D05', # Sempre que o documento for integrado na Serasa com sucesso, quando o UF for de São Paulo
90
+ 'S5' => 'D06', # Sempre quando houver ação judicial, restringindo a negativação do boleto.
91
+ }
92
+ end
93
+
65
94
  end
66
95
  end
67
96
  end
@@ -63,7 +63,7 @@ module BrBoleto
63
63
  end
64
64
 
65
65
  def nome_banco
66
- @nome_banco ||= 'ITAU'
66
+ @nome_banco ||= 'BANCO ITAU SA'
67
67
  end
68
68
 
69
69
  def versao_layout_arquivo_cnab_240
@@ -107,98 +107,493 @@ module BrBoleto
107
107
  %w(126 131 146 150 168)
108
108
  end
109
109
 
110
- # Espécie do Título
111
- def equivalent_especie_titulo_240
112
- super.merge(
113
- # Padrão Código para
114
- {# da GEM o Banco
115
- '02' => '01' , # DUPLICATA MERCANTIL
116
- '12' => '02' , # NOTA PROMISSÓRIA
117
- '16' => '03' , # NOTA DE SEGURO
118
- '21' => '04' , # MENSALIDADE ESCOLAR
119
- '17' => '05' , # RECIBO
120
- '66' => '06' , # CONTRATO
121
- '77' => '07' , # COSSEGUROS
122
- '04' => '08' , # DUPLICATA DE SERVIÇO
123
- '07' => '09' , # LETRA DE CÂMBIO
124
- '19' => '13' , # NOTA DE DÉBITOS
125
- '24' => '15' , # DOCUMENTO DE DÍVIDA
126
- '30' => '16' , # ENCARGOS CONDOMINIAIS
127
- '88' => '17' , # CONTA DE PRESTAÇÃO DE SERVIÇOS
128
- '32' => '18' , # BOLETO DE PROPOSTA
129
- })
130
- end
131
- def equivalent_especie_titulo_400
132
- super.merge(
133
- # Padrão Código para
134
- {# da GEM o Banco
135
- '02' => '01' , # DUPLICATA MERCANTIL
136
- '12' => '02' , # NOTA PROMISSÓRIA
137
- '16' => '03' , # NOTA DE SEGURO
138
- '21' => '04' , # MENSALIDADE ESCOLAR
139
- '17' => '05' , # RECIBO
140
- '66' => '06' , # CONTRATO
141
- '77' => '07' , # COSSEGUROS
142
- '04' => '08' , # DUPLICATA DE SERVIÇO
143
- '07' => '09' , # LETRA DE CÂMBIO
144
- '19' => '13' , # NOTA DE DÉBITOS
145
- '24' => '15' , # DOCUMENTO DE DÍVIDA
146
- '30' => '16' , # ENCARGOS CONDOMINIAIS
147
- '88' => '17' , # CONTA DE PRESTAÇÃO DE SERVIÇOS
148
- '32' => '18' , # BOLETO DE PROPOSTA
149
- })
150
- end
151
110
 
152
- # Códigos de Movimento Remessa / Identificacao Ocorrência específicos do Banco
153
- def equivalent_codigo_movimento_remessa_240
154
- super.merge(
155
- # Padrão Código para
156
- {# da GEM o Banco
157
- '10' => '18' , # SUSTAR O PROTESTO
158
- '38' => '38' , # BENEFICIÁRIO NÃO CONCORDA COM A ALEGAÇÃO DO PAGADOR CÓDIGO DA ALEGAÇÃO
159
- '41' => '41' , # EXCLUSÃO DE SACADOR AVALISTA
160
- '66' => '66' , # ENTRADA EM NEGATIVAÇÃO EXPRESSA
161
- '67' => '67' , # NÃO NEGATIVAR (INIBE ENTRADA EM NEGATIVAÇÃO EXPRESSA
162
- '68' => '68' , # EXCLUIR NEGATIVAÇÃO EXPRESSA (ATÉ 15 DIAS CORRIDOS APÓS A ENTRADA EM NEGATIVAÇÃO EXPRESSA)
163
- '69' => '69' , # CANCELAR NEGATIVAÇÃO EXPRESSA (APÓS TÍTULO TER SIDO NEGATIVADO)
164
- '93' => '93' , # DESCONTAR TÍTULOS ENCAMINHADOS NO DIA
165
- })
166
- end
111
+ ################################# DEFAULT CODES ###############################################
112
+
113
+ # Espécie do Título
114
+ def equivalent_especie_titulo_240
115
+ super.merge(
116
+ # Padrão Código para
117
+ {# da GEM o Banco
118
+ '02' => '01' , # DUPLICATA MERCANTIL
119
+ '12' => '02' , # NOTA PROMISSÓRIA
120
+ '16' => '03' , # NOTA DE SEGURO
121
+ '21' => '04' , # MENSALIDADE ESCOLAR
122
+ '17' => '05' , # RECIBO
123
+ '66' => '06' , # CONTRATO
124
+ '77' => '07' , # COSSEGUROS
125
+ '04' => '08' , # DUPLICATA DE SERVIÇO
126
+ '07' => '09' , # LETRA DE CÂMBIO
127
+ '19' => '13' , # NOTA DE DÉBITOS
128
+ '24' => '15' , # DOCUMENTO DE DÍVIDA
129
+ '30' => '16' , # ENCARGOS CONDOMINIAIS
130
+ '88' => '17' , # CONTA DE PRESTAÇÃO DE SERVIÇOS
131
+ '32' => '18' , # BOLETO DE PROPOSTA
132
+ })
133
+ end
134
+ def equivalent_especie_titulo_400
135
+ super.merge(
136
+ # Padrão Código para
137
+ {# da GEM o Banco
138
+ '02' => '01' , # DUPLICATA MERCANTIL
139
+ '12' => '02' , # NOTA PROMISSÓRIA
140
+ '16' => '03' , # NOTA DE SEGURO
141
+ '21' => '04' , # MENSALIDADE ESCOLAR
142
+ '17' => '05' , # RECIBO
143
+ '66' => '06' , # CONTRATO
144
+ '77' => '07' , # COSSEGUROS
145
+ '04' => '08' , # DUPLICATA DE SERVIÇO
146
+ '07' => '09' , # LETRA DE CÂMBIO
147
+ '19' => '13' , # NOTA DE DÉBITOS
148
+ '24' => '15' , # DOCUMENTO DE DÍVIDA
149
+ '30' => '16' , # ENCARGOS CONDOMINIAIS
150
+ '88' => '17' , # CONTA DE PRESTAÇÃO DE SERVIÇOS
151
+ '32' => '18' , # BOLETO DE PROPOSTA
152
+ })
153
+ end
154
+
155
+ # Códigos de Movimento Remessa / Identificacao Ocorrência específicos do Banco
156
+ def equivalent_codigo_movimento_remessa_240
157
+ super.merge(
158
+ # Padrão Código para
159
+ {# da GEM o Banco
160
+ '10' => '18' , # SUSTAR O PROTESTO
161
+ '38' => '38' , # BENEFICIÁRIO NÃO CONCORDA COM A ALEGAÇÃO DO PAGADOR CÓDIGO DA ALEGAÇÃO
162
+ '41' => '41' , # EXCLUSÃO DE SACADOR AVALISTA
163
+ '66' => '66' , # ENTRADA EM NEGATIVAÇÃO EXPRESSA
164
+ '67' => '67' , # NÃO NEGATIVAR (INIBE ENTRADA EM NEGATIVAÇÃO EXPRESSA
165
+ '68' => '68' , # EXCLUIR NEGATIVAÇÃO EXPRESSA (ATÉ 15 DIAS CORRIDOS APÓS A ENTRADA EM NEGATIVAÇÃO EXPRESSA)
166
+ '69' => '69' , # CANCELAR NEGATIVAÇÃO EXPRESSA (APÓS TÍTULO TER SIDO NEGATIVADO)
167
+ '93' => '93' , # DESCONTAR TÍTULOS ENCAMINHADOS NO DIA
168
+ })
169
+ end
170
+
171
+ # Código para Protesto
172
+ def equivalent_codigo_protesto_240
173
+ super.merge(
174
+ # Padrão Código para
175
+ {# da GEM o Banco
176
+ '0' => '0' , # Sem instrução
177
+ '07' => '07' , # Negativar (Dias Corridos)
178
+ })
179
+ end
180
+
181
+ # Código para Multa, que representa a isenção de juros e multa deve ser '0'
182
+ # Diferentemente do padrão da FEBRABAN que é '3'
183
+ # Ou seja, se passar o código 3 deve considerar '0'
184
+ def equivalent_codigo_multa
185
+ super.merge({ '3' => '0' }) # NÃO REGISTRA A MULTA
186
+ end
187
+ def default_codigo_multa
188
+ '0'
189
+ end
167
190
 
168
- # Código para Protesto
169
- def equivalent_codigo_protesto
170
- super.merge(
171
- # Padrão Código para
172
- {# da GEM o Banco
173
- '0' => '0' , # Sem instrução
174
- '07' => '07' , # Negativar (Dias Corridos)
191
+ # Codigo da carteira de acordo com a documentacao o Itau (Pag. 18, Nota 5)
192
+ # se a carteira nao forem as testadas (147, 150 e 191 )
193
+ # retorna 'I' que é o codigo das carteiras restantes na documentacao
194
+ def get_codigo_carteira
195
+ equivalent_codigo_carteira[carteira] || 'I'
196
+ end
197
+ def equivalent_codigo_carteira
198
+ {
199
+ '147' => 'E', # ESCRITURAL ELETRÔNICA – DÓLAR
200
+ '150' => 'U', # DIRETA ELETRÔNICA SEM EMISSÃO – DÓLAR
201
+ '191' => '1', # DUPLICATAS - TRANSFERÊNCIA DE DESCONTO
202
+ }
203
+ end
204
+
205
+ # Código de Movimento Retorno
206
+ def equivalent_codigo_movimento_retorno_240
207
+ super.merge(
208
+ # Padrão Código para
209
+ {# do Banco a GEM
210
+ '08' => '101', # LIQUIDAÇÃO EM CARTÓRIO
211
+ '10' => '210', # BAIXA POR TER SIDO LIQUIDADO
212
+ '15' => '100', # BAIXAS REJEITADAS
213
+ '16' => '26', # INSTRUÇÕES REJEITADAS
214
+ '17' => '30', # ALTERAÇÃO/EXCLUSÃO DE DADOS REJEITADA
215
+ '18' => '218', # COBRANÇA CONTRATUAL – INSTRUÇÕES/ALTERAÇÕES REJEITADAS/PENDENTES
216
+ '21' => '221', # CONFIRMAÇÃO RECEBIMENTO DE INSTRUÇÃO DE NÃO PROTESTAR
217
+ '25' => '225', # ALEGAÇÕES DO PAGADOR
218
+ '26' => '226', # TARIFA DE AVISO DE COBRANÇA
219
+ '27' => '227', # TARIFA DE EXTRATO POSIÇÃO (B40X)
220
+ '28' => '228', # TARIFA DE RELAÇÃO DAS LIQUIDAÇÕES
221
+ '29' => '107', # TARIFA DE MANUTENÇÃO DE TÍTULOS VENCIDOS
222
+ '30' => '28', # DÉBITO MENSAL DE TARIFAS (PARA ENTRADAS E BAIXAS)
223
+ '32' => '25', # BAIXA POR TER SIDO PROTESTADO
224
+ '33' => '233', # CUSTAS DE PROTESTO
225
+ '34' => '234', # CUSTAS DE SUSTAÇÃO
226
+ '35' => '235', # CUSTAS DE CARTÓRIO DISTRIBUIDOR
227
+ '36' => '236', # CUSTAS DE EDITAL
228
+ '37' => '237', # TARIFA DE EMISSÃO DE BOLETO/TARIFA DE ENVIO DE DUPLICATA
229
+ '38' => '238', # TARIFA DE INSTRUÇÃO
230
+ '39' => '239', # TARIFA DE OCORRÊNCIAS
231
+ '40' => '240', # TARIFA MENSAL DE EMISSÃO DE BOLETO/TARIFA MENSAL DE ENVIO DE DUPLICATA
232
+ '41' => '241', # DÉBITO MENSAL DE TARIFAS – EXTRATO DE POSIÇÃO (B4EP/B4OX)
233
+ '42' => '242', # DÉBITO MENSAL DE TARIFAS – OUTRAS INSTRUÇÕES
234
+ '43' => '243', # DÉBITO MENSAL DE TARIFAS – MANUTENÇÃO DE TÍTULOS VENCIDOS
235
+ '44' => '244', # DÉBITO MENSAL DE TARIFAS – OUTRAS OCORRÊNCIAS
236
+ '45' => '245', # DÉBITO MENSAL DE TARIFAS – PROTESTO
237
+ '46' => '246', # DÉBITO MENSAL DE TARIFAS – SUSTAÇÃO DE PROTESTO
238
+ '47' => '247', # BAIXA COM TRANSFERÊNCIA PARA DESCONTO
239
+ '48' => '248', # CUSTAS DE SUSTAÇÃO JUDICIAL
240
+ '51' => '251', # TARIFA MENSAL REFERENTE A ENTRADAS BANCOS CORRESPONDENTES NA CARTEIRA
241
+ '52' => '252', # TARIFA MENSAL BAIXAS NA CARTEIRA
242
+ '53' => '253', # TARIFA MENSAL BAIXAS EM BANCOS CORRESPONDENTES NA CARTEIRA
243
+ '54' => '254', # TARIFA MENSAL DE LIQUIDAÇÕES NA CARTEIRA
244
+ '55' => '255', # TARIFA MENSAL DE LIQUIDAÇÕES EM BANCOS CORRESPONDENTES NA CARTEIRA
245
+ '56' => '256', # CUSTAS DE IRREGULARIDADE
246
+ '57' => '257', # INSTRUÇÃO CANCELADA
247
+ '60' => '260', # ENTRADA REJEITADA CARNÊ
248
+ '61' => '261', # TARIFA EMISSÃO AVISO DE MOVIMENTAÇÃO DE TÍTULOS (2154)
249
+ '62' => '262', # DÉBITO MENSAL DE TARIFA – AVISO DE MOVIMENTAÇÃO DE TÍTULOS (2154)
250
+ '74' => '274', # INSTRUÇÃO DE NEGATIVAÇÃO EXPRESSA REJEITADA
251
+ '75' => '275', # CONFIRMA O RECEBIMENTO DE INSTRUÇÃO DE ENTRADA EM NEGATIVAÇÃO EXPRESSA
252
+ '77' => '277', # CONFIRMA O RECEBIMENTO DE INSTRUÇÃO DE EXCLUSÃO DE ENTRADA EM NEGATIVAÇÃO EXPRESSA
253
+ '78' => '278', # CONFIRMA O RECEBIMENTO DE INSTRUÇÃO DE CANCELAMENTO DA NEGATIVAÇÃO EXPRESSA
254
+ '79' => '279', # NEGATIVAÇÃO EXPRESSA INFORMACIONAL
255
+ '80' => '280', # CONFIRMAÇÃO DE ENTRADA EM NEGATIVAÇÃO EXPRESSA – TARIFA
256
+ '82' => '282', # CONFIRMAÇÃO O CANCELAMENTO DE NEGATIVAÇÃO EXPRESSA - TARIFA
257
+ '83' => '283', # CONFIRMAÇÃO DA EXCLUSÃO/CANCELAMENTO DA NEGATIVAÇÃO EXPRESSA POR LIQUIDAÇÃO - TARIFA
258
+ '85' => '285', # TARIFA POR BOLETO (ATÉ 03 ENVIOS) COBRANÇA ATIVA ELETRÔNICA
259
+ '86' => '286', # TARIFA EMAIL COBRANÇA ATIVA ELETRÔNICA
260
+ '87' => '287', # TARIFA SMS COBRANÇA ATIVA ELETRÔNICA
261
+ '88' => '288', # TARIFA MENSAL POR BOLETO (ATÉ 03 ENVIOS) COBRANÇA ATIVA ELETRÔNICA
262
+ '89' => '289', # TARIFA MENSAL EMAIL COBRANÇA ATIVA ELETRÔNICA
263
+ '90' => '290', # TARIFA MENSAL SMS COBRANÇA ATIVA ELETRÔNICA
264
+ '91' => '291', # TARIFA MENSAL DE EXCLUSÃO DE ENTRADA EM NEGATIVAÇÃO EXPRESSA
265
+ '92' => '292', # TARIFA MENSAL DE CANCELAMENTO DE NEGATIVAÇÃO EXPRESSA
266
+ '93' => '293', # TARIFA MENSAL DE EXCLUSÃO/CANCELAMENTO DE NEGATIVAÇÃO EXPRESSA POR LIQUIDAÇÃO
267
+ '94' => '294', # CONFIRMA RECEBIMENTO DE INSTRUÇÃO DE NÃO NEGATIVAR
268
+ })
269
+ end
270
+
271
+ # Identificações de Ocorrência / Código de ocorrência:
272
+ def equivalent_codigo_movimento_retorno_400
273
+ super.merge(
274
+ # Padrão Código para
275
+ {# do Banco a GEM
276
+ '07' => '102', # LIQUIDAÇÃO PARCIAL – COBRANÇA INTELIGENTE (B2B)
277
+ '24' => '20', # INSTRUÇÃO DE PROTESTO REJEITADA / SUSTADA / PENDENTE (NOTA 20 – TABELA 7)
278
+ '25' => '29', # ALEGAÇÕES DO PAGADOR (NOTA 20 – TABELA 6)
279
+ '59' => '259', # BAIXA POR CRÉDITO EM C/C ATRAVÉS DO SISPAG
280
+ '64' => '264', # ENTRADA CONFIRMADA COM RATEIO DE CRÉDITO
281
+ '65' => '265', # PAGAMENTO COM CHEQUE – AGUARDANDO COMPENSAÇÃO
282
+ '69' => '44', # CHEQUE DEVOLVIDO (NOTA 20 – TABELA 9)
283
+ '71' => '271', # ENTRADA REGISTRADA, AGUARDANDO AVALIAÇÃO
284
+ '72' => '272', # BAIXA POR CRÉDITO EM C/C ATRAVÉS DO SISPAG SEM TÍTULO CORRESPONDENTE
285
+ '73' => '273', # CONFIRMAÇÃO DE ENTRADA NA COBRANÇA SIMPLES – ENTRADA NÃO ACEITA NA COBRANÇA CONTRATUAL
286
+ '76' => '45', # CHEQUE COMPENSADO
287
+ })
288
+ end
289
+
290
+ # Código do Motivo da Ocorrência Retorno
291
+ def equivalent_codigo_motivo_ocorrencia_A_240 codigo_movimento_gem
292
+ case codigo_movimento_gem
293
+ when '03'
294
+ super.merge(
295
+ # Padrão Código para
296
+ {# do Banco a GEM
297
+ '03' => 'A49', # CEP INVÁLIDO OU NÃO FOI POSSÍVEL ATRIBUIR A AGÊNCIA PELO CEP
298
+ '04' => 'A52', # SIGLA DO ESTADO INVÁLIDA
299
+ '08' => 'A45', # NÃO INFORMADO OU DESLOCADO
300
+ '09' => 'A07', # AGÊNCIA ENCERRADA
301
+ '10' => 'A47', # NÃO INFORMADO OU DESLOCADO
302
+ '11' => 'A49', # CEP NÃO NUMÉRICO
303
+ '12' => 'A54', # NOME NÃO INFORMADO OU DESLOCADO (BANCOS CORRESPONDENTES)
304
+ '13' => 'A51', # CEP INCOMPATÍVEL COM A SIGLA DO ESTADO
305
+ '14' => 'A08', # NOSSO NÚMERO JÁ REGISTRADO NO CADASTRO DO BANCO OU FORA DA FAIXA
306
+ '15' => 'A09', # NOSSO NÚMERO EM DUPLICIDADE NO MESMO MOVIMENTO
307
+ '35' => 'A32', # IOF MAIOR QUE 5%
308
+ '42' => 'A08', # NOSSO NÚMERO FORA DE FAIXA
309
+ '60' => 'A33', # VALOR DO ABATIMENTO INVÁLIDO
310
+ '62' => 'A29', # VALOR DO DESCONTO MAIOR QUE O VALOR DO TÍTULO
311
+ '64' => 'A24', # DATA DE EMISSÃO DO TÍTULO INVÁLIDA (VENDOR)
312
+ '66' => 'A74', # INVALIDA/FORA DE PRAZO DE OPERAÇÃO (MÍNIMO OU MÁXIMO)
313
+ '67' => 'A20', # VALOR DO TÍTULO/QUANTIDADE DE MOEDA INVÁLIDO
314
+ '68' => 'A10', # CARTEIRA INVÁLIDA OU NÃO CADASTRADA NO INTERCÂMBIO DA COBRANÇA
315
+ })
316
+ when '26'
317
+ super.merge(
318
+ # Padrão Código para
319
+ {# do Banco a GEM
320
+ '09' => 'A53', # CNPJ/CPF DO SACADOR/AVALISTA INVÁLIDO
321
+ '15' => 'A54', # CNPJ/CPF INFORMADO SEM NOME DO SACADOR/AVALISTA
322
+ '19' => 'A34', # VALOR DO ABATIMENTO MAIOR QUE 90% DO VALOR DO TÍTULO
323
+ '20' => 'A41', # EXISTE SUSTACAO DE PROTESTO PENDENTE PARA O TITULO
324
+ '22' => 'A106', # TÍTULO BAIXADO OU LIQUIDADO
325
+ '50' => 'A24', # DATA DE EMISSÃO DO TÍTULO INVÁLIDA
326
+ })
327
+ when '30'
328
+ super.merge(
329
+ # Padrão Código para
330
+ {# do Banco a GEM
331
+ '11' => 'A48', # CEP INVÁLIDO
332
+ '12' => 'A53', # NÚMERO INSCRIÇÃO INVÁLIDO DO SACADOR AVALISTA
333
+ '13' => 'A86', # SEU NÚMERO COM O MESMO CONTEÚDO
334
+ '67' => 'A317', # NOME INVÁLIDO DO SACADOR AVALISTA
335
+ '72' => 'A318', # ENDEREÇO INVÁLIDO – SACADOR AVALISTA
336
+ '73' => 'A319', # BAIRRO INVÁLIDO – SACADOR AVALISTA
337
+ '74' => 'A320', # CIDADE INVÁLIDA – SACADOR AVALISTA
338
+ '75' => 'A321', # SIGLA ESTADO INVÁLIDO – SACADOR AVALISTA
339
+ '76' => 'A322', # CEP INVÁLIDO – SACADOR AVALISTA
340
+ })
341
+ else
342
+ super(codigo_movimento_gem)
343
+ end
344
+ end
345
+ def equivalent_codigo_motivo_ocorrencia_C_240 codigo_movimento_gem
346
+ super.merge(
347
+ # Padrão Código para
348
+ {# do Banco a GEM
349
+ 'AA' => 'C32', # CAIXA ELETRÔNICO ITAÚ
350
+ 'AC' => 'C08', # PAGAMENTO EM CARTÓRIO AUTOMATIZADO
351
+ 'AO' => 'C135', # ACERTO ONLINE
352
+ 'BC' => 'C31', # BANCOS CORRESPONDENTES
353
+ 'BF' => 'C37', # ITAÚ BANKFONE
354
+ 'BL' => 'C33', # ITAÚ BANKLINE
355
+ 'B0' => 'C136', # OUTROS BANCOS – RECEBIMENTO OFF-LINE
356
+ 'B1' => 'C137', # OUTROS BANCOS – PELO CÓDIGO DE BARRAS
357
+ 'B2' => 'C138', # OUTROS BANCOS – PELA LINHA DIGITÁVEL
358
+ 'B3' => 'C139', # OUTROS BANCOS – PELO AUTO ATENDIMENTO
359
+ 'B4' => 'C140', # OUTROS BANCOS – RECEBIMENTO EM CASA LOTÉRICA
360
+ 'B5' => 'C141', # OUTROS BANCOS – CORRESPONDENTE
361
+ 'B6' => 'C142', # OUTROS BANCOS – TELEFONE
362
+ 'B7' => 'C143', # OUTROS BANCOS – ARQUIVO ELETRÔNICO (PAGAMENTO EFETUADO POR MEIO DE TROCA DE ARQUIVOS)
363
+ 'CC' => 'C36', # AGÊNCIA ITAÚ – COM CHEQUE DE OUTRO BANCO ou (CHEQUE ITAÚ)
364
+ 'CI' => 'C144', # CORRESPONDENTE ITAÚ
365
+ 'CK' => 'C145', # SISPAG – SISTEMA DE CONTAS A PAGAR ITAÚ
366
+ 'CP' => 'C146', # AGÊNCIA ITAÚ – POR DÉBITO EM CONTA CORRENTE, CHEQUE ITAÚ* OU DINHEIRO
367
+ 'DG' => 'C147', # AGÊNCIA ITAÚ – CAPTURADO EM OFF-LINE
368
+ 'LC' => 'C148', # PAGAMENTO EM CARTÓRIO DE PROTESTO COM CHEQUE
369
+ 'EA' => 'C03', # TERMINAL DE CAIXA
370
+ 'Q0' => 'C149', # AGENDAMENTO – PAGAMENTO AGENDADO VIA BANKLINE OU OUTRO CANAL ELETRÔNICO E LIQUIDADO NA DATA INDICADA
371
+ 'RA' => 'C150', # DIGITAÇÃO – REALIMENTAÇÃO AUTOMÁTICA
372
+ 'ST' => 'C151', # PAGAMENTO VIA SELTEC
175
373
  })
176
- end
374
+ end
177
375
 
178
- # Código para Multa, que representa a isenção de juros e multa deve ser '0'
179
- # Diferentemente do padrão da FEBRABAN que é '3'
180
- # Ou seja, se passar o código 3 deve considerar '0'
181
- def equivalent_codigo_multa
182
- super.merge({ '3' => '0','0' => '0' }) # NÃO REGISTRA A MULTA
183
- end
184
- def default_codigo_multa
185
- '0'
186
- end
376
+ def codigos_movimento_retorno_para_ocorrencia_A_400
377
+ %w[02 03 26 30 100 218]
378
+ end
379
+ def equivalent_codigo_motivo_ocorrencia_A_400 codigo_movimento_gem
380
+ case codigo_movimento_gem
381
+ when '02'
382
+ super.merge(
383
+ # Padrão Código para
384
+ {# do Banco a GEM
385
+ '01' => 'A240', # CEP SEM ATENDIMENTO DE PROTESTO NO MOMENTO
386
+ '02' => 'A241', # ESTADO COM DETERMINAÇÃO LEGAL QUE IMPEDE A INSCRIÇÃO DE INADIMPLENTES
387
+ })
388
+ when '03'
389
+ super.merge(
390
+ # Padrão Código para
391
+ {# do Banco a GEM
392
+ '03' => 'A240', # CEP SEM ATENDIMENTO DE PROTESTO NO MOMENTO
393
+ '04' => 'A52', # SIGLA DO ESTADO INVÁLIDA
394
+ '05' => 'A241', # DATA VENCIMENTO COM PRAZO DA OPERAÇÃO MENOR QUE PRAZO MÍNIMO OU MAIOR QUE O MÁXIMO
395
+ '07' => 'A242', # VALOR DO TÍTULO MAIOR QUE 10.000.000,00
396
+ '08' => 'A45', # OME DO PAGADOR NÃO INFORMADO OU DESLOCADO
397
+ '09' => 'A17', # AGÊNCIA ENCERRADA
398
+ '10' => 'A47', # LOGRADOURO NÃO INFORMADO OU DESLOCADO
399
+ '11' => 'A49', # CEP NÃO NUMÉRICO OU CEP INVÁLIDO
400
+ '12' => 'A54', # SACADOR / AVALISTA NOME NÃO INFORMADO OU DESLOCADO (BANCOS CORRESPONDENTES)
401
+ '13' => 'A51', # CEP INCOMPATÍVEL COM A SIGLA DO ESTADO
402
+ '14' => 'A08', # NOSSO NÚMERO JÁ REGISTRADO NO CADASTRO DO BANCO OU FORA DA FAIXA
403
+ '15' => 'A09', # NOSSO NÚMERO EM DUPLICIDADE NO MESMO MOVIMENTO
404
+ '18' => 'A243', # DATA DE ENTRADA INVÁLIDA PARA OPERAR COM ESTA CARTEIRA
405
+ '19' => 'A244', # OCORRÊNCIA INVÁLIDA
406
+ '21' => 'A245', # CARTEIRA NÃO ACEITA DEPOSITÁRIA CORRESPONDENTE ESTADO DA AGÊNCIA DIFERENTE DO ESTADO DO PAGADOR AG. COBRADORA NÃO CONSTA NO CADASTRO OU ENCERRANDO
407
+ '22' => 'A246', # CARTEIRA NÃO PERMITIDA (NECESSÁRIO CADASTRAR FAIXA LIVRE)
408
+ '26' => 'A247', # AGÊNCIA/CONTA NÃO LIBERADA PARA OPERAR COM COBRANÇA
409
+ '27' => 'A248', # CNPJ DO BENEFICIÁRIO INAPTO DEVOLUÇÃO DE TÍTULO EM GARANTIA
410
+ '29' => 'A249', # CATEGORIA DA CONTA INVÁLIDA
411
+ '30' => 'A250', # ENTRADAS BLOQUEADAS, CONTA SUSPENSA EM COBRANÇA
412
+ '31' => 'A251', # CONTA NÃO TEM PERMISSÃO PARA PROTESTAR (CONTATE SEU GERENTE)
413
+ '35' => 'A32', # IOF MAIOR QUE 5%
414
+ '36' => 'A252', # QUANTIDADE DE MOEDA INCOMPATÍVEL COM VALOR DO TÍTULO
415
+ '37' => 'A253', # CNPJ/CPF DO PAGADOR NÃO NUMÉRICO OU IGUAL A ZEROS
416
+ '42' => 'A08', # NOSSO NÚMERO FORA DE FAIXA
417
+ '52' => 'A254', # EMPRESA NÃO ACEITA BANCO CORRESPONDENTE
418
+ '53' => 'A255', # EMPRESA NÃO ACEITA BANCO CORRESPONDENTE - COBRANÇA MENSAGEM
419
+ '54' => 'A256', # BANCO CORRESPONDENTE - TÍTULO COM VENCIMENTO INFERIOR A 15 DIAS
420
+ '55' => 'A257', # CEP NÃO PERTENCE À DEPOSITÁRIA INFORMADA
421
+ '56' => 'A258', # CORRESP VENCTO SUPERIOR A 180 DIAS DA DATA DE ENTRADA
422
+ '57' => 'A259', # CEP SÓ DEPOSITÁRIA BCO DO BRASIL COM VENCTO INFERIOR A 8 DIAS
423
+ '60' => 'A33', # VALOR DO ABATIMENTO INVÁLIDO
424
+ '61' => 'A260', # JUROS DE MORA MAIOR QUE O PERMITIDO
425
+ '62' => 'A29', # VALOR DO DESCONTO MAIOR QUE VALOR DO TÍTULO
426
+ '63' => 'A261', # DESCONTO DE ANTECIPAÇÃO, VALOR DA IMPORTÂNCIA POR DIA DE DESCONTO (IDD) NÃO PERMITIDO
427
+ '64' => 'A24', # DATA DE EMISSÃO DO TÍTULO INVÁLIDA
428
+ '65' => 'A262', # TAXA INVÁLIDA (VENDOR)
429
+ '66' => 'A74', # INVALIDA/FORA DE PRAZO DE OPERAÇÃO (MÍNIMO OU MÁXIMO)
430
+ '67' => 'A20', # VALOR DO TÍTULO/QUANTIDADE DE MOEDA INVÁLIDO
431
+ '68' => 'A10', # CARTEIRA INVÁLIDA OU NÃO CADASTRADA NO INTERCÂMBIO DA COBRANÇA
432
+ '69' => 'A263', # CARTEIRA INVÁLIDA PARA TÍTULOS COM RATEIO DE CRÉDITO
433
+ '70' => 'A264', # BENEFICIÁRIO NÃO CADASTRADO PARA FAZER RATEIO DE CRÉDITO
434
+ '78' => 'A265', # DUPLICIDADE DE AGÊNCIA/CONTA BENEFICIÁRIA DO RATEIO DE CRÉDITO
435
+ '80' => 'A266', # QUANTIDADE DE CONTAS BENEFICIÁRIAS DO RATEIO MAIOR DO QUE O PERMITIDO (MÁXIMO DE 30 CONTAS POR TÍTULO)
436
+ '81' => 'A267', # CONTA PARA RATEIO DE CRÉDITO INVÁLIDA / NÃO PERTENCE AO ITAÚ
437
+ '82' => 'A268', # DESCONTO/ABATIMENTO NÃO PERMITIDO PARA TÍTULOS COM RATEIO DE CRÉDITO
438
+ '83' => 'A269', # VALOR DO TÍTULO MENOR QUE A SOMA DOS VALORES ESTIPULADOS PARA RATEIO
439
+ '84' => 'A270', # AGÊNCIA/CONTA BENEFICIÁRIA DO RATEIO É A CENTRALIZADORA DE CRÉDITO DO BENEFICIÁRIO
440
+ '85' => 'A271', # AGÊNCIA/CONTA DO BENEFICIÁRIO É CONTRATUAL / RATEIO DE CRÉDITO NÃO PERMITIDO
441
+ '86' => 'A272', # CÓDIGO DO TIPO DE VALOR INVÁLIDO / NÃO PREVISTO PARA TÍTULOS COM RATEIO DE CRÉDITO
442
+ '87' => 'A273', # REGISTRO TIPO 4 SEM INFORMAÇÃO DE AGÊNCIAS/CONTAS BENEFICIÁRIAS DO RATEIO
443
+ '90' => 'A274', # COBRANÇA MENSAGEM - NÚMERO DA LINHA DA MENSAGEM INVÁLIDO OU QUANTIDADE DE LINHAS EXCEDIDAS
444
+ '97' => 'A275', # COBRANÇA MENSAGEM SEM MENSAGEM (SÓ DE CAMPOS FIXOS), PORÉM COM REGISTRO DO TIPO 7 OU 8
445
+ '98' => 'A276', # REGISTRO MENSAGEM SEM FLASH CADASTRADO OU FLASH INFORMADO DIFERENTE DO CADASTRADO
446
+ '99' => 'A277', # CONTA DE COBRANÇA COM FLASH CADASTRADO E SEM REGISTRO DE MENSAGEM CORRESPONDENTE
447
+ })
448
+ when '26'
449
+ super.merge(
450
+ # Padrão Código para
451
+ {# do Banco a GEM
452
+ '01' => 'A278', # INSTRUÇÃO/OCORRÊNCIA NÃO EXISTENTE
453
+ '03' => 'A251', # CONTA NÃO TEM PERMISSÃO PARA PROTESTAR (CONTATE SEU GERENTE)
454
+ '06' => 'A279', # NOSSO NÚMERO IGUAL A ZEROS
455
+ '09' => 'A53', # CNPJ/CPF DO SACADOR/AVALISTA INVÁLIDO
456
+ '10' => 'A34', # VALOR DO ABATIMENTO IGUAL OU MAIOR QUE O VALOR DO TÍTULO
457
+ '11' => 'A280', # SEGUNDA INSTRUÇÃO/OCORRÊNCIA NÃO EXISTENTE
458
+ '14' => 'A281', # REGISTRO EM DUPLICIDADE
459
+ '15' => 'A54', # CNPJ/CPF INFORMADO SEM NOME DO SACADOR/AVALISTA
460
+ '19' => 'A34', # VALOR DO ABATIMENTO MAIOR QUE 90% DO VALOR DO TÍTULO
461
+ '20' => 'A41', # EXISTE SUSTACAO DE PROTESTO PENDENTE PARA O TITULO
462
+ '21' => 'A282', # TÍTULO NÃO REGISTRADO NO SISTEMA
463
+ '22' => 'A106', # TÍTULO BAIXADO OU LIQUIDADO
464
+ '23' => 'A283', # INSTRUÇÃO NÃO ACEITA
465
+ '24' => 'A284', # INSTRUÇÃO INCOMPATÍVEL – EXISTE INSTRUÇÃO DE PROTESTO PARA O TÍTULO
466
+ '25' => 'A285', # INSTRUÇÃO INCOMPATÍVEL – NÃO EXISTE INSTRUÇÃO DE PROTESTO PARA O TÍTULO
467
+ '26' => 'A286', # INSTRUÇÃO NÃO ACEITA POR JÁ TER SIDO EMITIDA A ORDEM DE PROTESTO AO CARTÓRIO
468
+ '27' => 'A287', # INSTRUÇÃO NÃO ACEITA POR NÃO TER SIDO EMITIDA A ORDEM DE PROTESTO AO CARTÓRIO
469
+ '28' => 'A288', # JÁ EXISTE UMA MESMA INSTRUÇÃO CADASTRADA ANTERIORMENTE PARA O TÍTULO
470
+ '29' => 'A289', # VALOR LÍQUIDO + VALOR DO ABATIMENTO DIFERENTE DO VALOR DO TÍTULO REGISTRADO
471
+ '30' => 'A290', # EXISTE UMA INSTRUÇÃO DE NÃO PROTESTAR ATIVA PARA O TÍTULO
472
+ '31' => 'A291', # EXISTE UMA OCORRÊNCIA DO PAGADOR QUE BLOQUEIA A INSTRUÇÃO
473
+ '32' => 'A292', # DEPOSITÁRIA DO TÍTULO = 9999 OU CARTEIRA NÃO ACEITA PROTESTO
474
+ '33' => 'A293', # ALTERAÇÃO DE VENCIMENTO IGUAL À REGISTRADA NO SISTEMA OU QUE TORNA O TÍTULO VENCIDO
475
+ '34' => 'A294', # INSTRUÇÃO DE EMISSÃO DE AVISO DE COBRANÇA PARA TÍTULO VENCIDO ANTES DO VENCIMENTO
476
+ '35' => 'A295', # SOLICITAÇÃO DE CANCELAMENTO DE INSTRUÇÃO INEXISTENTE
477
+ '36' => 'A296', # TÍTULO SOFRENDO ALTERAÇÃO DE CONTROLE (AGÊNCIA/CONTA/CARTEIRA/NOSSO NÚMERO)
478
+ '37' => 'A297', # INSTRUÇÃO NÃO PERMITIDA PARA A CARTEIRA
479
+ '38' => 'A298', # INSTRUÇÃO NÃO PERMITIDA PARA TÍTULO COM RATEIO DE CRÉDITO
480
+ '40' => 'A299', # INSTRUÇÃO INCOMPATÍVEL – NÃO EXISTE INSTRUÇÃO DE NEGATIVAÇÃO EXPRESSA PARA O TÍTULO
481
+ '41' => 'A300', # INSTRUÇÃO NÃO PERMITIDA – TÍTULO COM ENTRADA EM NEGATIVAÇÃO EXPRESSA
482
+ '42' => 'A301', # INSTRUÇÃO NÃO PERMITIDA – TÍTULO COM NEGATIVAÇÃO EXPRESSA CONCLUÍDA
483
+ '43' => 'A302', # PRAZO INVÁLIDO PARA NEGATIVAÇÃO EXPRESSA – MÍNIMO: 02 DIAS CORRIDOS APÓS O VENCIMENTO
484
+ '45' => 'A303', # INSTRUÇÃO INCOMPATÍVEL PARA O MESMO TÍTULO NESTA DATA
485
+ '47' => 'A21', # INSTRUÇÃO NÃO PERMITIDA – ESPÉCIE INVÁLIDA
486
+ '48' => 'A46', # DADOS DO PAGADOR INVÁLIDOS ( CPF / CNPJ / NOME )
487
+ '49' => 'A47', # DADOS DO ENDEREÇO DO PAGADOR INVÁLIDOS
488
+ '50' => 'A24', # DATA DE EMISSÃO DO TÍTULO INVÁLIDA
489
+ '51' => 'A305', # INSTRUÇÃO NÃO PERMITIDA – TÍTULO COM NEGATIVAÇÃO EXPRESSA AGENDADA
187
490
 
188
- # Codigo da carteira de acordo com a documentacao o Itau (Pag. 18, Nota 5)
189
- # se a carteira nao forem as testadas (147, 150 e 191 )
190
- # retorna 'I' que é o codigo das carteiras restantes na documentacao
191
- def get_codigo_carteira
192
- equivalent_codigo_carteira[carteira] || 'I'
193
- end
194
- def equivalent_codigo_carteira
195
- {
196
- '147' => 'E', # ESCRITURAL ELETRÔNICA DÓLAR
197
- '150' => 'U', # DIRETA ELETRÔNICA SEM EMISSÃO DÓLAR
198
- '191' => '1', # DUPLICATAS - TRANSFERÊNCIA DE DESCONTO
199
- }
200
- end
491
+ })
492
+ when '30'
493
+ super.merge(
494
+ # Padrão Código para
495
+ {# do Banco a GEM
496
+ '02' => 'A61', # AGÊNCIA COBRADORA INVÁLIDA OU COM O MESMO CONTEÚDO
497
+ '04' => 'A52', # SIGLA DO ESTADO INVÁLIDA
498
+ '05' => 'A16', # DATA DE VENCIMENTO INVÁLIDA OU COM O MESMO CONTEÚDO
499
+ '06' => 'A306', # VALOR DO TÍTULO COM OUTRA ALTERAÇÃO SIMULTÂNEA
500
+ '08' => 'A45', # NOME DO PAGADOR COM O MESMO CONTEÚDO
501
+ '09' => 'A07', # AGÊNCIA/CONTA INCORRETA
502
+ '11' => 'A48', # CEP INVÁLIDO
503
+ '12' => 'A53', # NÚMERO INSCRIÇÃO INVÁLIDO DO SACADOR AVALISTA
504
+ '13' => 'A86', # SEU NÚMERO COM O MESMO CONTEÚDO
505
+ '16' => 'A307', # ABATIMENTO/ALTERAÇÃO DO VALOR DO TÍTULO OU SOLICITAÇÃO DE BAIXA BLOQUEADA
506
+ '20' => 'A21', # ESPÉCIE INVÁLIDA
507
+ '21' => 'A308', # AGÊNCIA COBRADORA NÃO CONSTA NO CADASTRO DE DEPOSITÁRIA OU EM ENCERRAMENTO
508
+ '23' => 'A24', # DATA DE EMISSÃO DO TÍTULO INVÁLIDA OU COM MESMO CONTEÚDO
509
+ '41' => 'A23', # CAMPO ACEITE INVÁLIDO OU COM MESMO CONTEÚDO
510
+ '42' => 'A309', # ALTERAÇÃO INVÁLIDA PARA TÍTULO VENCIDO
511
+ '43' => 'A310', # ALTERAÇÃO BLOQUEADA – VENCIMENTO JÁ ALTERADO
512
+ '53' => 'A311', # INSTRUÇÃO COM O MESMO CONTEÚDO
513
+ '54' => 'A312', # DATA VENCIMENTO PARA BANCOS CORRESPONDENTES INFERIOR AO ACEITO PELO BANCO
514
+ '55' => 'A313', # ALTERAÇÕES IGUAIS PARA O MESMO CONTROLE (AGÊNCIA/CONTA/CARTEIRA/NOSSO NÚMERO)
515
+ '56' => 'A06', # CNPJ/CPF INVÁLIDO NÃO NUMÉRICO OU ZERADO
516
+ '57' => 'A314', # PRAZO DE VENCIMENTO INFERIOR A 15 DIAS
517
+ '60' => 'A315', # VALOR DE IOF – ALTERAÇÃO NÃO PERMITIDA PARA CARTEIRAS DE N.S. – MOEDA VARIÁVEL
518
+ '61' => 'A104', # TÍTULO JÁ BAIXADO OU LIQUIDADO OU NÃO EXISTE TÍTULO CORRESPONDENTE NO SISTEMA
519
+ '66' => 'A316', # ALTERAÇÃO NÃO PERMITIDA PARA CARTEIRAS DE NOTAS DE SEGUROS – MOEDA VARIÁVEL
520
+ '67' => 'A317', # NOME INVÁLIDO DO SACADOR AVALISTA
521
+ '72' => 'A318', # ENDEREÇO INVÁLIDO – SACADOR AVALISTA
522
+ '73' => 'A319', # BAIRRO INVÁLIDO – SACADOR AVALISTA
523
+ '74' => 'A320', # CIDADE INVÁLIDA – SACADOR AVALISTA
524
+ '75' => 'A321', # SIGLA ESTADO INVÁLIDO – SACADOR AVALISTA
525
+ '76' => 'A322', # CEP INVÁLIDO – SACADOR AVALISTA
526
+ '81' => 'A323', # ALTERAÇÃO BLOQUEADA – TÍTULO COM NEGATIVAÇÃO EXPRESSA / PROTESTO
527
+ '87' => 'A324', # ALTERAÇÃO BLOQUEADA – TÍTULO COM RATEIO DE CRÉDITO
528
+ })
529
+ when '100'
530
+ super.merge(
531
+ # Padrão Código para
532
+ {# do Banco a GEM
533
+ '01' => 'A10', # CARTEIRA/No NÚMERO NÃO NUMÉRICO
534
+ '04' => 'A09', # NOSSO NÚMERO EM DUPLICIDADE NO MESMO MOVIMENTO
535
+ '05' => 'A325', # SOLICITAÇÃO DE BAIXA PARA TÍTULO JÁ BAIXADO OU LIQUIDADO
536
+ '06' => 'A326', # SOLICITAÇÃO DE BAIXA PARA TÍTULO NÃO REGISTRADO NO SISTEMA
537
+ '07' => 'A327', # COBRANÇA PRAZO CURTO – SOLICITAÇÃO DE BAIXA P/ TÍTULO NÃO REGISTRADO NO SISTEMA
538
+ '08' => 'A328', # SOLICITAÇÃO DE BAIXA PARA TÍTULO EM FLOATING
539
+ '10' => 'A329', # VALOR DO TITULO FAZ PARTE DE GARANTIA DE EMPRESTIMO
540
+ '11' => 'A330', # PAGO ATRAVÉS DO SISPAG POR CRÉDITO EM C/C E NÃO BAIXADO
541
+ })
542
+ when '218'
543
+ super.merge(
544
+ # Padrão Código para
545
+ {# do Banco a GEM
546
+ '16' => 'A307', # ABATIMENTO/ALTERAÇÃO DO VALOR DO TÍTULO OU SOLICITAÇÃO DE BAIXA BLOQUEADOS
547
+ '40' => 'A331', # NÃO APROVADA DEVIDO AO IMPACTO NA ELEGIBILIDADE DE GARANTIAS
548
+ '41' => 'A332', # AUTOMATICAMENTE REJEITADA
549
+ '42' => 'A304', # CONFIRMA RECEBIMENTO DE INSTRUÇÃO – PENDENTE DE ANÁLISE
550
+ })
551
+ else
552
+ super
553
+ end
554
+ end
201
555
 
556
+ def equivalent_codigo_ocorrencia_pagador_240
557
+ super.merge(
558
+ # Padrão Código para
559
+ {# do Banco a GEM
560
+ '1313' => '0302', # SOLICITA A PRORROGAÇÃO DO VENCIMENTO PARA:
561
+ '1321' => '0503', # SOLICITA A DISPENSA DOS JUROS DE MORA
562
+ '1339' => '0101', # NÃO RECEBEU A MERCADORIA
563
+ '1347' => '0102', # A MERCADORIA CHEGOU ATRASADA
564
+ '1354' => '0103', # A MERCADORIA CHEGOU AVARIADA
565
+ '1362' => '0105', # A MERCADORIA CHEGOU INCOMPLETA
566
+ '1370' => '0104', # A MERCADORIA NÃO CONFERE COM O PEDIDO
567
+ '1388' => '0106', # A MERCADORIA ESTÁ À DISPOSIÇÃO
568
+ '1396' => '0107', # DEVOLVEU A MERCADORIA
569
+ '1404' => '0201', # NÃO RECEBEU A FATURA
570
+ '1412' => '0108', # A FATURA ESTÁ EM DESACORDO COM A NOTA FISCAL
571
+ '1420' => '0202', # O PEDIDO DE COMPRA FOI CANCELADO
572
+ '1438' => '0203', # A DUPLICATA FOI CANCELADA
573
+ '1446' => '0109', # QUE NADA DEVE OU COMPROU
574
+ '1453' => '0603', # QUE MANTÉM ENTENDIMENTOS COM O SACADOR
575
+ '1461' => '0304', # QUE PAGARÁ O TÍTULO EM:
576
+ '1479' => '0305', # QUE PAGOU O TÍTULO DIRETAMENTE AO BENEFICIÁRIO EM:
577
+ '1487' => '0306', # QUE PAGARÁ O TÍTULO DIRETAMENTE AO BENEFICIÁRIO EM:
578
+ '1495' => '0301', # QUE O VENCIMENTO CORRETO É:
579
+ '1503' => '0501', # QUE TEM DESCONTO OU ABATIMENTO DE:
580
+ '1719' => '0401', # PAGADOR NÃO FOI LOCALIZADO; CONFIRMAR ENDEREÇO
581
+ '1727' => '0601', # PAGADOR ESTÁ EM REGIME DE CONCORDATA
582
+ '1735' => '0602', # PAGADOR ESTÁ EM REGIME DE FALÊNCIA
583
+ '1750' => '0504', # PAGADOR SE RECUSA A PAGAR JUROS BANCÁRIOS
584
+ '1768' => '0505', # PAGADOR SE RECUSA A PAGAR COMISSÃO DE PERMANÊNCIA
585
+
586
+ '1776' => '1776', # NÃO FOI POSSÍVEL A ENTREGA DO BOLETO AO PAGADOR
587
+ '1784' => '1784', # BOLETO NÃO ENTREGUE, MUDOU-SE/DESCONHECIDO
588
+ '1792' => '1792', # BOLETO NÃO ENTREGUE, CEP ERRADO/INCOMPLETO
589
+ '1800' => '1800', # BOLETO NÃO ENTREGUE, NÚMERO NÃO EXISTE/ENDEREÇO INCOMPLETO
590
+ '1818' => '1818', # BOLETO NÃO RETIRADO PELO PAGADOR. REENVIADO PELO CORREIO PARA CARTEIRAS COM EMISSÃO PELO BANCO
591
+ '1826' => '1826', # ENDEREÇO DE E-MAIL INVÁLIDO/COBRANÇA MENSAGEM. BOLETO ENVIADO PELO CORREIO
592
+ '1834' => '1834', # BOLETO DDA, DIVIDA RECONHECIDA PELO PAGADOR
593
+ '1842' => '1842', # BOLETO DDA, DIVIDA NÃO RECONHECIDA PELO PAGADOR
594
+ })
595
+ end
596
+
202
597
  end
203
598
  end
204
599
  end