Differences between email to case and on demand email to case

The email to case is a java process that reads all of the data in the email and then assigns pieces to various fields in SF and then does an Insert or Upsert into the SF system. Because the email is completely handled 'behind your firewall' and the data is directly inserted into SF, some people consider this a bit 'safer'. You also get more flexibility since you can control what is extracted from the email and put into the various SF fields.

The on demand version runs on the SF platform itself and there is not much you can do to customize it directly. You can add in additional workflows that run after the fact to do some cleanup if necessary, but basically it handles all of the heavy lifting for you automatically (looking for replies, contacts, extracting subject and descriptions, etc) for you.

There is actually a third option also available - create a 'Email Services' class that implements Messaging.InboundEmailHandler and it requires that you do all of the work yourself (such as reading the message, looking up contacts, determining if the message is a reply to an existing email, etc), but because it runs at a 'lower level' than the email2case, there is much more that you can do.


On-demand email to case is a good option if you know

  1. Email attachments (if any) won't be greater than 25MB in size
  2. You are not concerned about keeping the emails traffic within your firewall
  3. You won't be required to install an email-to-case agent behind your firewall

For further clarification, you may want to play a little with each of them by using them both. This is a good guide that should help you understand the differences better and let you decide "when to use what".http://help.salesforce.com/servlet/servlet.FileDownload?file=01530000001x32vAAA

Firewall will filter any un-authorized/blocked email addresses from your system. Following image should explaing more clearly Email-to-case functionality. As for on-demand email-to-case, like MarcDeBehr explained, is internally handled by SF.

Email to case