Ir para conteúdo
  • Cadastre-se

I3 SISTEMAS

Membros Pro
  • Total de ítens

    28
  • Registro em

  • Última visita

Sobre I3 SISTEMAS

Contact Methods

  • Website URL
    http://www.i3sistema.com.br

Últimos Visitantes

927 visualizações

I3 SISTEMAS's Achievements

  1. Ok tudo testado aqui agora deu certo os retorno de baixa e liquidados.
  2. Pessoal boa tarde! foi solicitado essa altera alteração aqui porem a correção não foi realizada corretamente por parte de vocês. fiz os testes aqui e a função usada na manutenção não é satisfatória peço a correção, caso queira podem acessa minha maquina e analisa o caso, já tinha feito todos os testes em produção agora vou ter que voltar para meus fontes corrigidos. minha alteração foi usa: if UpperCase(ARetornoWS.DadosRet.TituloRet.EstadoTituloCobranca).Contains(UpperCase('LIQUIDADO')) then foi colocado: if (Pos(UpperCase(ARetornoWS.DadosRet.TituloRet.EstadoTituloCobranca),'LIQUIDADO') > 0) then mas não funcionar, fico a disposição para qualquer informação.
  3. Olá segue classes corrigidas ACBrBoletoRet_Santander_API.pas Alteração da procedure TBoletoW_Santander_API. GerarDados; Motivo: verbo errado na chamada "POST" Solução: foi alterado o verbo para "PATCH" no modo tpAltera e tpBaixa Alteração da procedure TBoletoW_Santander_API. RequisicaoBaixa; Motivo: estava incluindo um array de mensagens no metodo e não existe esse campo na rota, dai dava erro no envio do Json; Solução: foi removida a linha que gerada essa parte errada do Json. ACBrBoletoW_Santander_API.pas Alteração da function TRetornoEnvio_Santander_API. LerRetorno(const ARetornoWS: TACBrBoletoRetornoWS): Boolean; Motivo: Não tinha implementado a consulta detalhe, so tinha o retorno de criação de boleto emplementado. Solução: Foi criado e testando em produção a consultar detalhe com boletos abertos e boletos pagos; Conclusão: Foi gerado boletos e baixado e feito alteração de data e testes de liquidação, todos os testes em produção foram bem sucedidos. Solicito a inclusão dessas alterações nos fontes do acbr. ACBrBoletoRet_Santander_API.pas ACBrBoletoW_Santander_API.pas
  4. A leitura do retorno santader essa classe ACBrBoletoW_Santander_API.pas não esta correta não, só ler poucas informações e tem dando que nem existem no json, preciso de ajuda pra entender. vou posta o json aqui pra darem uma olhada. json com os dois tipos de retorno: //settlement: Pesquisa para informações de baixas/liquidações do boleto // bankslip: Pesquisa para dados completos do boleto retorno santader.json
  5. Com a ajuda do pessoal no discord deu certo a alteração da URL de https://trust-open.api.santander.com.br/collection_bill_management/v2/bills?{0385014.0000000000500}?tipoConsulta=bankslip para https://trust-open.api.santander.com.br/collection_bill_management/v2/bills/0385014.0000000000500?tipoConsulta=bankslip segue classe para ser publicada em produção ACBrBoletoW_Santander_API.pas
  6. Olá pessoal por acaso já foi resolvido esse tópico da consulta de boleto do santander, estou com mesmo problema aqui nem a consulta tpConsulta nem tpConsultaDetalhe funciona componente atualizado hoje 10/10/2023. Usando a tpConsulta da esse erro aqui: Falha Envio: TRetornoEnvio_Santander_APIMetodo LerListaRetorno nao Implementado Retorna um objeto porem o componente não esta preparado Usando tpConsultaDetalhe da esse erro aqui: Retorno Envio: HTTPCode=400 Retorna uma lista vazia, percebi que na tpConsultaDetalhe a URL da rota esta com uns parenteces e no postmam não usa assim, talvez poderia ser essa a causa. componente: 'https://trust-open.api.santander.com.br/collection_bill_management/v2/bills?{0385014.0000000000500}?tipoConsulta=bankslip' postman: 'https://trust-open.api.santander.com.br/collection_bill_management/v2/bills?0385014.0000000000500?tipoConsulta=bankslip' caso alguém tenha conseguindo resolver me dê uma força ai nessa zica.
  7. Opa tem outra correção a fazer quando é um boleto de baixa por solicitação está pegando a campo data da baixa errado. foi alterado para pega correto //alteração if ARetornoWS.DadosRet.TituloRet.CodigoEstadoTituloCobranca = '7' then begin ARetornoWS.DadosRet.TituloRet.DataBaixa := DateSicreditoDateTime(aJson.Values['dataBaixa'].AsString); end; segue fontes alterado e arquivo com Json do retorno ARQUIVO JSON SICREDI BAIXA.txt ACBrBoletoRet_Sicredi_APIV2.pas
  8. bom dia! segue em anexo unit alterada e testada. na função function TRetornoEnvio_Sicredi_APIV2.LerRetorno(const ARetornoWS: TACBrBoletoRetornoWS): Boolean; ACBrBoletoRet_Sicredi_APIV2.pas
  9. Olá pessoal! foi Implementado a operação tpConsultaDetalhe para o Banco Sicredi API V2. porem tem um erro na classe que impede de retorna algumas informação da liquidação por não cai na condição CodigoEstadoTituloCobranca = 6 são elas: ARetornoWS.DadosRet.TituloRet.ValorPago ARetornoWS.DadosRet.TituloRet.ValorMoraJuros ARetornoWS.DadosRet.TituloRet.ValorAbatimento ARetornoWS.DadosRet.TituloRet.DataBaixa ARetornoWS.DadosRet.TituloRet.ValorDesconto veja o trecho dos fontes ACBrBoletoRet_Sicredi_APIV2 na linha 166 function TRetornoEnvio_Sicredi_APIV2.LerRetorno(const ARetornoWS: TACBrBoletoRetornoWS): Boolean; . . . if UpperCase(ARetornoWS.DadosRet.TituloRet.EstadoTituloCobranca) = ('LIQUIDADO') then ARetornoWS.DadosRet.TituloRet.CodigoEstadoTituloCobranca := '6'; //Multa/Juros ARetornoWS.DadosRet.TituloRet.PercentualMulta := aJson.Values['valorMulta'].AsNumber; ARetornoWS.DadosRet.TituloRet.ValorAbatimento := aJson.Values['abatimento'].AsNumber; ARetornoWS.DadosRet.TituloRet.ValorMoraJuros := aJson.Values['juros'].AsNumber; ARetornoWS.DadosRet.TituloRet.DiasDeProtesto := aJson.Values['diasProtesto'].AsInteger; ARetornoWS.DadosRet.TituloRet.TxId := aJson.Values['txId'].AsString; ARetornoWS.DadosRet.TituloRet.EMV := aJson.Values['codigoQrCode'].AsString; ARetornoWS.DadosRet.TituloRet.PercentualMulta := aJson.Values['valorMulta'].AsNumber; if ARetornoWS.DadosRet.TituloRet.CodigoEstadoTituloCobranca = '6' then begin ARetornoWS.DadosRet.TituloRet.ValorPago := AJson.Values['dadosLiquidacao'].AsObject.Values['valor'].AsNumber; ARetornoWS.DadosRet.TituloRet.ValorMoraJuros := AJson.Values['dadosLiquidacao'].AsObject.Values['juros'].AsNumber; ARetornoWS.DadosRet.TituloRet.ValorAbatimento := AJson.Values['dadosLiquidacao'].AsObject.Values['abatimento'].AsNumber; ARetornoWS.DadosRet.TituloRet.DataBaixa := DateSicreditoDateTime(AJson.Values['dadosLiquidacao'].AsObject.Values['data'].AsString); ARetornoWS.DadosRet.TituloRet.ValorDesconto := AJson.Values['dadosLiquidacao'].AsObject.Values['desconto'].AsNumber; end; solicito a alteração dos fontes do ACBrBoletoRet_Sicredi_APIV2 na linha 166 de: if UpperCase(ARetornoWS.DadosRet.TituloRet.EstadoTituloCobranca) = ('LIQUIDADO') then para: if UpperCase(ARetornoWS.DadosRet.TituloRet.EstadoTituloCobranca).Contains(UpperCase('LIQUIDADO')) then para solucionar o caso. segue arquivo JSON do retorno em anexo. ARQUIVO JSON RETORNO SICREDI.txt
  10. @Daniel InfoCotidiano desculpa a demora, vou testar aqui e te dou um retorno.
  11. Estou com problema no envio de Alteração do AcbrBoleto sicredi API, "Tamanho de campo nosso numero inválido" porém eu alimento o título da mesma forma para todas as outras funções (Envio, solicitação de baixa) e apenas a "Alteração" está dando esse erro.
  12. No carregamento do objeto de retorno, a propriedade "dataliquidacao" está convertendo errado e trazendo sempre a data "30/12/1899" analisei que a data da API do sicredi vem o padrão americano, no arquivo ACBRBoletoRet_SicredAPI utiliza uma função que faz apenas um "StringReplace". alguém sabe sobre esse caso ?
  13. Opa blz, também estou passando pelo o mesmo caso, pelo que pude perceber em testes nos dois cenários que apresentou é que independente em coloca o "indSomaCOFINSST" igual à 1 ou "indSomaCOFINSST" igual à 0 se preenche as tags do total do pis "Total.ICMSTot.vPIS" e totais do Cofins "Total.ICMSTot.vCOFINS" causa essa rejeição 610, então a dica é essa só zera os totais de Pis e Cofins quando o CST for "05" que vai autorizar a nota. pelo menos pra mim funcionou abraços.
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...