pelo que vi na function TACBrBancoSantander.MontarCodigoBarras ela nao usa o código da carteira (101) que deveria constar no código de barras
acrescentei o numero da carteira e deu certo
CodigoBarras := '033'+'9'+ FatorVencimento +
IntToStrZero(Round(ACBrTitulo.ValorDocumento*100),10) +
'9'+ padR(Cedente.CodigoCedente,7,'0') +
padR(ACBrTitulo.NossoNumero + DigitoNossoNumero, 13) +
'0'+ padR(trim('101'+ Cedente.Modalidade),3,'0');
function TACBrBancoSantander.MontarCodigoBarras ( const ACBrTitulo: TACBrTitulo) : String;
var
CodigoBarras, FatorVencimento, DigitoCodBarras, DigitoNossoNumero:String;
begin
with ACBrTitulo.ACBrBoleto do
begin
DigitoNossoNumero := CalcularDigitoVerificador(ACBrTitulo);
FatorVencimento := CalcularFatorVencimento(ACBrTitulo.Vencimento);
CodigoBarras := '033'+'9'+ FatorVencimento +
IntToStrZero(Round(ACBrTitulo.ValorDocumento*100),10) +
'9'+ padR(Cedente.CodigoCedente,7,'0') +
padR(ACBrTitulo.NossoNumero + DigitoNossoNumero, 13) +
'0'+ padR(trim( Cedente.Modalidade),3,'0');
DigitoCodBarras := CalcularDigitoCodigoBarras(CodigoBarras);
end;
Result:= '033' + '9'+ DigitoCodBarras + Copy(CodigoBarras,5,39);
end;