Vi em tópicos do fórum que o acbrBoleto não está configurado para funcionar a homologação da API do Itaú com o Bolecode, isso porque só retorna erro 500 quando não é enviado o JSON exatamente igual ao caso de teste deles. Por esse motivo ajustei alguns campos para que o json enviado se encaixe no caso mapeado pelo sandbox do banco. Abaixo tem os campos que fiz alteração. Ainda não tenho acesso a produção da API portanto não sei se essas mudanças implicaram em algo no fluxo dela, mas acredito que não.
**"indicador_pagamento_parcial":"True",
**"quantidade_maximo_parcial":0,
**"desconto_expresso":"False"
Retirei esses campos porque segundo a documentação não é para enviá-los. Ficou assim:
Por algum motivo na homologação está fixo que tem que enviar a negativação, mesmo não sendo obrigatório, forcei a enviar apenas na homologação.
Adicionei data da multa ao invés de quantidade de dias para api do pix porque nesse é necessário enviar a data. Fiz a mesma coisa para os juros.
Alterei a forma para não enviar descontos, não é obrigatório o envio na homologação e parece que possui estrutura diferente, então decidi retirá-lo na homologação porque pelo o que nas postagens deve tá funcionando na produção, ficou assim:
O "codigo_carteira" está para receber uma string na API do pix, fiz essa alteração.
O campo “texto_uso_beneficiario” estava com ‘0’, porém estava sendo recusado na homologação, então passei fixo o ‘000001’. Além disso, ‘texto_seu_numero’ não tem na API do pix então retirei o envio.
Ressalto novamente que não tenho certeza se essas modificações vão dar algum problema na Produção pois ainda não tenho acesso. Mas depois dessas mudanças conseguir fazer testes na homologação que é bem engessada e não dá para testar muito bem, seria bom alguém com as credenciais testar pra ver se continua ok o envio da requisição. Adicionei o arquivo modificado aqui para vocês realizarem o teste.
ACBrBoletoW_Itau_API.pas