При чтении документации Twig кажется, что метод renderFile является асинхронным и требует обратного вызова.
Существует несколько подходов для обработки асинхронных функций.Самое быстрое, что вы можете сделать, это:
Twig.renderFile('mail.twig', {message: mess}, function(err, html){
var messages = {
from: "XX",
to: "XX",
subject: objet,
text: html,
attachments:[
{
filename: url_facture.facture_id + '.pdf',
content: resultat
}
]
};
})
Также можно рассмотреть возможность использования Promise в сочетании с async / await командами.