Para o cálculo da multa está sendo calculado conforme % . Isso deveria acontecer para o juros tb, mas lá tá pegando o valor fixo como sendo o valor de juros, não observando se é taxa diaria, mensal ou valor fixo.
Veja o código da multa:
if PercentualMulta <> 0 then
begin
if DataMulta <> 0 then
AStringList.Add(ACBrStr('Cobrar multa de ' + FormatCurr('R$ #,##0.00',
IfThen(MultaValorFixo, PercentualMulta, TruncTo((ValorDocumento*( 1+ PercentualMulta/100)-ValorDocumento),2) )) +
' para pagamento'+ IfThen(DataMulta = Vencimento, ' após o vencimento.',
' a partir de '+ FormatDateTime('dd/mm/yyyy',DataMulta))))
else
AStringList.Add(ACBrStr('Multa de ' + FormatCurr('R$ #,##0.00',
IfThen(MultaValorFixo, PercentualMulta, TruncTo((ValorDocumento*( 1+ PercentualMulta/100)-ValorDocumento),2) )) +
' após o vencimento.'));