diff --git a/app/mailers/email_rejection_mailer.rb b/app/mailers/email_rejection_mailer.rb
index 89aceda82d159da80b31359f94a18f9c51babe71..883f1c73ad43a5751d1688b2f03d17ca91519363 100644
--- a/app/mailers/email_rejection_mailer.rb
+++ b/app/mailers/email_rejection_mailer.rb
@@ -3,6 +3,8 @@ class EmailRejectionMailer < BaseMailer
     @reason = reason
     @original_message = Mail::Message.new(original_raw)
 
+    return unless @original_message.from
+
     headers = {
       to: @original_message.from,
       subject: "[Rejected] #{@original_message.subject}"
diff --git a/app/workers/email_receiver_worker.rb b/app/workers/email_receiver_worker.rb
index a588a1f45ee638fd96654d43b63ddd881dd191b4..8cfb96ef37645b102727ea4850c36cb2663c401a 100644
--- a/app/workers/email_receiver_worker.rb
+++ b/app/workers/email_receiver_worker.rb
@@ -18,6 +18,8 @@ class EmailReceiverWorker
   def handle_failure(raw, e)
     Rails.logger.warn("Email can not be processed: #{e}\n\n#{raw}")
 
+    return unless raw.present?
+
     can_retry = false
     reason = nil
 
diff --git a/config/mail_room.yml.example b/config/mail_room.yml.example
index 28366eb73941606615c6821f56407f81ba5077e4..dd8edfc42eb027c7c1740d740497ea6709d4c8ed 100644
--- a/config/mail_room.yml.example
+++ b/config/mail_room.yml.example
@@ -14,6 +14,8 @@
     # :name: "inbox"
     # # Always "sidekiq".
     # :delivery_method: sidekiq
+    # # Always true.
+    # :delete_after_delivery: true
     # :delivery_options:
     #   # The URL to the Redis server used by Sidekiq. Should match the URL in config/resque.yml.
     #   :redis_url: redis://localhost:6379
diff --git a/doc/reply_by_email/README.md b/doc/reply_by_email/README.md
index 91eea956e52a5ee75833454e7e160fc51290e151..5d36f5121d1d8b6ad7f35e6d83d3763cd533ada5 100644
--- a/doc/reply_by_email/README.md
+++ b/doc/reply_by_email/README.md
@@ -59,6 +59,8 @@ In this example, we'll use the Gmail address `gitlab-replies@gmail.com`. If you'
         :name: "inbox"
         # Always "sidekiq".
         :delivery_method: sidekiq
+        # Always true.
+        :delete_after_delivery: true
         :delivery_options:
           # The URL to the Redis server used by Sidekiq. Should match the URL in config/resque.yml.
           :redis_url: redis://localhost:6379
@@ -144,6 +146,8 @@ TODO
         :name: "inbox"
         # Always "sidekiq".
         :delivery_method: sidekiq
+        # Always true.
+        :delete_after_delivery: true
         :delivery_options:
           # The URL to the Redis server used by Sidekiq. Should match the URL in config/resque.yml.
           :redis_url: redis://localhost:6379