diff --git a/includes/mimemail.rules.inc b/includes/mimemail.rules.inc
index 4b3fe2d..340b186 100644
--- a/includes/mimemail.rules.inc
+++ b/includes/mimemail.rules.inc
@@ -11,7 +11,7 @@
 /**
  * Action Implementation: Send HTML mail.
  */
-function rules_action_mimemail($to, $cc = NULL, $bcc = NULL, $from_name = NULL, $from_mail = NULL, $subject, $body, $plaintext = NULL, $attachments = array(), $settings, RulesState $state, RulesPlugin $element) {
+function rules_action_mimemail($to, $cc = NULL, $bcc = NULL, $from_name = NULL, $from_mail = NULL, $reply_to = NULL, $subject, $body, $plaintext = NULL, $attachments = array(), $settings, RulesState $state, RulesPlugin $element) {
   // Set the sender name and from address.
   if (empty($from_mail)) {
     $from = NULL;
@@ -43,6 +43,7 @@ function rules_action_mimemail($to, $cc = NULL, $bcc = NULL, $from_name = NULL,
     ),
     'cc' => $cc,
     'bcc' => $bcc,
+    'reply-to' => $reply_to,
     'plaintext' => $plaintext,
     'attachments' => $attachments,
   );
diff --git a/mimemail.module b/mimemail.module
index d06081d..905ebf2 100644
--- a/mimemail.module
+++ b/mimemail.module
@@ -173,6 +173,12 @@ function mimemail_rules_action_info() {
           'description' => t("The sender's address. Leave it empty to use the site-wide configured address."),
           'optional' => TRUE,
         ),
+        'reply_to' => array(
+          'type' => 'text',
+          'label' => t('Reply e-mail address'),
+          'description' => t("The address to reply to. Leave it empty to use the sender's address."),
+          'optional' => TRUE,
+        ),
         'subject' => array(
           'type' => 'text',
           'label' => t('Subject'),
@@ -326,22 +332,20 @@ function mimemail_mail($key, &$message, $params) {
     }
   }
 
-  // We also handle CC and BCC if it's set.
-  $params['cc'] = empty($params['cc']) ? array() : explode(',', $params['cc']);
-  $params['bcc'] = empty($params['bcc']) ? array() : explode(',', $params['bcc']);
-
-  if (!empty($params['cc'])) {
-    foreach ($params['cc'] as $key => $address) {
-      $params['cc'][$key] = token_replace($address, $context);
-    }
-    $message['headers']['Cc'] = implode(',', $params['cc']);
-  }
-
-  if (!empty($params['bcc'])) {
-    foreach ($params['bcc'] as $key => $address) {
-      $params['bcc'][$key] = token_replace($address, $context);
+  // We handle different address headers if set.
+  $address_headers = array(
+    'cc' => 'Cc',
+    'bcc' => 'Ccc',
+    'reply-to' => 'Reply-to',
+  );
+  foreach ($address_headers as $param_key => $address_header) {
+    $params[$param_key] = empty($params[$param_key]) ? array() : explode(',', $params[$param_key]);
+    if (!empty($params[$param_key])) {
+      foreach ($params[$param_key] as $key => $address) {
+        $params[$param_key][$key] = token_replace($address, $context);
+      }
+      $message['headers'][$address_header] = implode(',', $params[$param_key]);
     }
-    $message['headers']['Bcc'] = implode(',', $params['bcc']);
   }
 
   $message['to'] = token_replace($message['to'], $context);
diff --git a/modules/mimemail_action/mimemail_action.module b/modules/mimemail_action/mimemail_action.module
index d0013c8..fdeb8ae 100644
--- a/modules/mimemail_action/mimemail_action.module
+++ b/modules/mimemail_action/mimemail_action.module
@@ -47,6 +47,7 @@ function mimemail_send_email_action($entity, $context) {
     ),
     'cc' => $context['cc'],
     'bcc' => $context['bcc'],
+    'reply-to' => $context['reply-to'],
     'plaintext' => $context['plaintext'],
     'attachments' => $context['attachments'],
   );
@@ -58,7 +59,7 @@ function mimemail_send_email_action($entity, $context) {
  * Form for configurable Drupal action to send an HTML mail.
  */
 function mimemail_send_email_action_form($context) {
-  $context += array('to' => '', 'cc' => '', 'bcc' => '', 'subject' => '', 'body' => '', 'format' => filter_fallback_format(), 'plaintext' => '', 'attachments' => '');
+  $context += array('to' => '', 'cc' => '', 'bcc' => '', 'reply-to' => '', 'subject' => '', 'body' => '', 'format' => filter_fallback_format(), 'plaintext' => '', 'attachments' => '');
 
   $form['to'] = array(
     '#type' => 'textfield',
@@ -82,6 +83,13 @@ function mimemail_send_email_action_form($context) {
     '#description' => t("The mail's blind carbon copy address. You may separate multiple addresses with comma."),
     '#required' => FALSE,
   );
+  $form['reply-to'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Reply e-mail address'),
+    '#default_value' => $context['reply-to'],
+    '#description' => t("The address to reply to. Leave it empty to use the sender's address."),
+    '#required' => FALSE,
+  );
   $form['subject'] = array(
     '#type' => 'textfield',
     '#title' => t('Subject'),
@@ -136,6 +144,11 @@ function mimemail_send_email_action_validate($form, $form_state) {
       form_set_error('bcc', t('Enter a valid email address or use a token e-mail address such as %author.', array('%author' => '[node:author:mail]')));
     }
   }
+
+  $reply_to = trim($form_state['values']['reply-to']);
+  if (!empty($reply_to) && !valid_email_address($reply_to) && strpos($reply_to, ':mail') === FALSE) {
+    form_set_error('reply-to', t('Enter a valid email address or use a token e-mail address such as %author.', array('%author' => '[node:author:mail]')));
+  }
 }
 
 /**
@@ -148,6 +161,7 @@ function mimemail_send_email_action_submit($form, $form_state) {
     'to' => $form_values['to'],
     'cc' => $form_values['cc'],
     'bcc' => $form_values['bcc'],
+    'reply-to' => $form_values['reply-to'],
     'subject' => $form_values['subject'],
     'body' => $form_values['body']['value'],
     'format' => $form_values['body']['format'],
