diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php
index 3acb974deaece38a4e600a495c1d4c70ea810f29..95c0c59a9cd1e478450fb91deee0cbc3686c2bdd 100644
--- a/htdocs/core/actions_massactions.inc.php
+++ b/htdocs/core/actions_massactions.inc.php
@@ -209,7 +209,26 @@ if (! $error && $massaction == 'confirm_presend')
             if (count($listofqualifiedinvoice) > 0)
             {
                 $langs->load("commercial");
-                $from = $user->getFullName($langs) . ' <' . $user->email .'>';
+
+                $fromtype = GETPOST('fromtype');
+                if ($fromtype === 'user') {
+                    $from = $user->getFullName($langs) .' <'.$user->email.'>';
+                }
+                elseif ($fromtype === 'company') {
+                    $from = $conf->global->MAIN_INFO_SOCIETE_NOM .' <'.$conf->global->MAIN_INFO_SOCIETE_MAIL.'>';
+                }
+                elseif (preg_match('/user_aliases_(\d+)/', $fromtype, $reg)) {
+                    $tmp=explode(',', $user->email_aliases);
+                    $from = trim($tmp[($reg[1] - 1)]);
+                }
+                elseif (preg_match('/global_aliases_(\d+)/', $fromtype, $reg)) {
+                    $tmp=explode(',', $conf->global->MAIN_INFO_SOCIETE_MAIL_ALIASES);
+                    $from = trim($tmp[($reg[1] - 1)]);
+                }
+                else {
+                    $from = $_POST['fromname'] . ' <' . $_POST['frommail'] .'>';
+                }
+
                 $replyto = $from;
                 $subject = GETPOST('subject');
                 $message = GETPOST('message');