Your SlideShare is downloading. ×
Plone+Salesforce
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Plone+Salesforce

559

Published on

Salesforce.com is a mature, feature-rich, highly customizable, software-as-a-service CRM that has had excellent integration with Plone since 2007. The combination of Plone and Salesforce.com is a …

Salesforce.com is a mature, feature-rich, highly customizable, software-as-a-service CRM that has had excellent integration with Plone since 2007. The combination of Plone and Salesforce.com is a great deal for non-profits - the Salesforce Foundation will donate up to 10 enterprise licenses to 501(c)3 organizations, and any additional licenses are deeply discounted.

In this talk I will review the Plone+Salesforce integration toolkit, describe recent improvements to the toolkit, and contrast this with what other CMSes have to offer.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
559
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Plone+Salesforce Sally Kleinfeldt, David Glick, Carlos de la Guardia Plone Conference Brasilia 4 October 2013
  • 2. Salesforce.com
  • 3. Salesforce.com • Leading hosted CRM (customer relationship management)
  • 4. Salesforce.com • Leading hosted CRM (customer relationship management) • Mature
  • 5. Salesforce.com • Leading hosted CRM (customer relationship management) • Mature • Feature-rich
  • 6. Salesforce.com • Leading hosted CRM (customer relationship management) • Mature • Feature-rich • Customizable
  • 7. Salesforce.com • Leading hosted CRM (customer relationship management) • Mature • Feature-rich • Customizable • Integrated with Plone since 2007
  • 8. Salesforce Foundation
  • 9. Salesforce Foundation • Leverage Salesforce.com
  • 10. Salesforce Foundation • Leverage Salesforce.com • Donate and discount products to non-profits
  • 11. Salesforce Foundation • Leverage Salesforce.com • Donate and discount products to non-profits • 10 donated Enterprise Edition licenses
  • 12. Salesforce Foundation • Leverage Salesforce.com • Donate and discount products to non-profits • 10 donated Enterprise Edition licenses • Deep discounts on additional licenses
  • 13. Salesforce Foundation • Leverage Salesforce.com • Donate and discount products to non-profits • 10 donated Enterprise Edition licenses • Deep discounts on additional licenses • Discounts on training, events, apps
  • 14. Integration Toolkit
  • 15. Initial Integration
  • 16. Initial Integration • Funded by 2006 Salesforce Foundation grant to ONE/Northwest (later Groundwire)
  • 17. Initial Integration • Funded by 2006 Salesforce Foundation grant to ONE/Northwest (later Groundwire) • Beatbox – Python library, wraps Salesforce SOAP API
  • 18. Initial Integration • Funded by 2006 Salesforce Foundation grant to ONE/Northwest (later Groundwire) • Beatbox – Python library, wraps Salesforce SOAP API • SalesforceBaseConnector – Calls Salesforce SOAP API from Plone
  • 19. Initial Integration
  • 20. Initial Integration • Salesforce PFG Adapter – Allows PFG forms to submit to Salesforce, provides field mapping
  • 21. Initial Integration • Salesforce PFG Adapter – Allows PFG forms to submit to Salesforce, provides field mapping • SalesforceAuthPlugin – Authenticate logins against Salesforce
  • 22. Expanded Toolkit
  • 23. Expanded Toolkit • Paypal2SalesforceLead- Paypal listener, adds a lead when a payment is made
  • 24. Expanded Toolkit • Paypal2SalesforceLead- Paypal listener, adds a lead when a payment is made • Salesforce Order Recorder – GetPaid add-on, allows checkouts to generate items in Salesforce
  • 25. Expanded Toolkit
  • 26. Expanded Toolkit • collective.salesforce.rsvp – accept registrations for unpaid events via Plone and store the data in Salesforce
  • 27. Expanded Toolkit • collective.salesforce.rsvp – accept registrations for unpaid events via Plone and store the data in Salesforce • Megaphone – map participation in petitions and letters to Salesforce
  • 28. Expanded Toolkit
  • 29. Expanded Toolkit • collective.salesforce.content – create Plone content types that are connected to objects in Salesforce
  • 30. Fundraising
  • 31. Turnkey Fundraising Site
  • 32. Turnkey Fundraising Site • The Innocence Project expanded the toolkit in 2012
  • 33. Turnkey Fundraising Site • The Innocence Project expanded the toolkit in 2012 • collective.salesforce.fundraising
  • 34. collective.salesforce.fundraising
  • 35. collective.salesforce.fundraising • Standalone online fundraising system
  • 36. collective.salesforce.fundraising • Standalone online fundraising system • Integration with Salesforce.com campaigns
  • 37. collective.salesforce.fundraising • Standalone online fundraising system • Integration with Salesforce.com campaigns • Create campaign timelines and goals One time and recurring donations
  • 38. collective.salesforce.fundraising • Standalone online fundraising system • Integration with Salesforce.com campaigns • Create campaign timelines and goals One time and recurring donations • Personal fundraising - allow users to create personal campaign pages
  • 39. collective.salesforce.fundraising
  • 40. collective.salesforce.fundraising • Payment processing
  • 41. collective.salesforce.fundraising • Payment processing • Integration with Stripe for recurring donations including sending emails and updating Salesforce Recurring Donations
  • 42. collective.salesforce.fundraising • Payment processing • Integration with Stripe for recurring donations including sending emails and updating Salesforce Recurring Donations • Social integration via Janrain
  • 43. Many Campaigns https://secure.innocenceproject.org/donate
  • 44. One Campaign https://secure.innocenceproject.org/donate/ypc-fundraiser-2013
  • 45. Plone Foundation Fundraising Site http://plonedemo.muselab.com
  • 46. Fundraising Take 2
  • 47. Fundraising Take 2 • Hard to add payment processors, switch CRM, etc.
  • 48. Fundraising Take 2 • Hard to add payment processors, switch CRM, etc. • Break collective.salesforce.fundraising into modular pieces
  • 49. Fundraising Take 2 • Hard to add payment processors, switch CRM, etc. • Break collective.salesforce.fundraising into modular pieces • Work still in progress
  • 50. collective.fundraising.*
  • 51. collective.fundraising.* • collective.fundraising.core - Dexterity behaviors and other shared functionality
  • 52. collective.fundraising.* • collective.fundraising.core - Dexterity behaviors and other shared functionality • collective.fundraising.site - Optimized site configuration
  • 53. collective.fundraising.* • collective.fundraising.core - Dexterity behaviors and other shared functionality • collective.fundraising.site - Optimized site configuration • Additional components planned for Salesforce, Stripe, Recurly, Janrain, Mailchimp, Mandrill....
  • 54. Recent Work
  • 55. API
  • 56. API • SOAP libraries were not ideal
  • 57. API • SOAP libraries were not ideal • Beatbox for generic API
  • 58. API • SOAP libraries were not ideal • Beatbox for generic API • Suds for custom API
  • 59. API • SOAP libraries were not ideal • Beatbox for generic API • Suds for custom API • Salesforce now has a unified REST API with a new Python library: simple-salesforce
  • 60. API
  • 61. Message Queuing
  • 62. Message Queuing • First generation toolkit was synchronous
  • 63. Message Queuing • First generation toolkit was synchronous • High latency - users and threads kept waiting
  • 64. Message Queuing • First generation toolkit was synchronous • High latency - users and threads kept waiting • Tight coupling - errors when Salesforce unavailable
  • 65. Message Queuing • First generation toolkit was synchronous • High latency - users and threads kept waiting • Tight coupling - errors when Salesforce unavailable • Solution: message queue allowing asynchronous processing
  • 66. Message Queuing
  • 67. Message Queuing • Technologies chosen:
  • 68. Message Queuing • Technologies chosen: • Celery: http://www.celeryproject.org/
  • 69. Message Queuing • Technologies chosen: • Celery: http://www.celeryproject.org/ • Feature rich
  • 70. Message Queuing • Technologies chosen: • Celery: http://www.celeryproject.org/ • Feature rich • Good traction
  • 71. Message Queuing • Technologies chosen: • Celery: http://www.celeryproject.org/ • Feature rich • Good traction • RabbitMQ: http://www.rabbitmq.com/
  • 72. Message Queuing • Technologies chosen: • Celery: http://www.celeryproject.org/ • Feature rich • Good traction • RabbitMQ: http://www.rabbitmq.com/ • Message queue backend
  • 73. Message Queuing
  • 74. Message Queuing • Integrating Celery with Zope transactions turned out to be easy
  • 75. Message Queuing • Integrating Celery with Zope transactions turned out to be easy • Use after-commit hook in case transaction hits a database conflict and gets retried
  • 76. Message Queuing • Integrating Celery with Zope transactions turned out to be easy • Use after-commit hook in case transaction hits a database conflict and gets retried • Created decorator to encapsulate queueing and creating Salesforce connection
  • 77. Future Work
  • 78. Future Work • Package decorators for creating celery tasks that run within Zope or do callouts to external webservices into a reusable library
  • 79. Future Work • Package decorators for creating celery tasks that run within Zope or do callouts to external webservices into a reusable library • Higher-level Plone add-on for configuring synchronization between Plone content types and Salesforce objects
  • 80. Competition
  • 81. Drupal+Salesforce
  • 82. Drupal+Salesforce • Salesforce Suite
  • 83. Drupal+Salesforce • Salesforce Suite • https://drupal.org/project/salesforce
  • 84. Drupal+Salesforce • Salesforce Suite • https://drupal.org/project/salesforce • Modular integration framework for developers
  • 85. Drupal+Salesforce • Salesforce Suite • https://drupal.org/project/salesforce • Modular integration framework for developers • Lower level components to build from
  • 86. Drupal+Salesforce • Salesforce Suite • https://drupal.org/project/salesforce • Modular integration framework for developers • Lower level components to build from • Recently rewritten
  • 87. Drupal+Salesforce
  • 88. Drupal+Salesforce • Springboard
  • 89. Drupal+Salesforce • Springboard • http://www.jacksonriver.com/ springboard
  • 90. Drupal+Salesforce • Springboard • http://www.jacksonriver.com/ springboard • Out of the box non-profit fundraising and marketing
  • 91. Drupal+Salesforce • Springboard • http://www.jacksonriver.com/ springboard • Out of the box non-profit fundraising and marketing • Satisfies a particular set of use cases
  • 92. Drupal+Salesforce
  • 93. Drupal+Salesforce • RedHen
  • 94. Drupal+Salesforce • RedHen • http://redhencrm.com/
  • 95. Drupal+Salesforce • RedHen • http://redhencrm.com/ • Native Drupal CRM
  • 96. Drupal+Salesforce • RedHen • http://redhencrm.com/ • Native Drupal CRM • Designed to be integrated with Salesforce
  • 97. Joomla!+Salesforce
  • 98. Joomla!+Salesforce • JoomForce
  • 99. Joomla!+Salesforce • JoomForce • http://extensions.joomla.org/ extensions/clients-a-communities/crm- bridges/14704
  • 100. Joomla!+Salesforce • JoomForce • http://extensions.joomla.org/ extensions/clients-a-communities/crm- bridges/14704 • Lead and Contact capture through auto generated forms
  • 101. Wordpress+Salesforce
  • 102. Wordpress+Salesforce • WordPress to Lead for Salesforce
  • 103. Wordpress+Salesforce • WordPress to Lead for Salesforce • http://wordpress.org/plugins/ salesforce-wordpress-to-lead/
  • 104. Wordpress+Salesforce • WordPress to Lead for Salesforce • http://wordpress.org/plugins/ salesforce-wordpress-to-lead/ • Easy to install
  • 105. Wordpress+Salesforce • WordPress to Lead for Salesforce • http://wordpress.org/plugins/ salesforce-wordpress-to-lead/ • Easy to install • Basic web to lead forms
  • 106. Wordpress+Salesforce
  • 107. Wordpress+Salesforce • Gravity Forms to Salesforce
  • 108. Wordpress+Salesforce • Gravity Forms to Salesforce • http://wordpress.org/plugins/gravity- forms-salesforce/
  • 109. Wordpress+Salesforce • Gravity Forms to Salesforce • http://wordpress.org/plugins/gravity- forms-salesforce/ • Easy to install
  • 110. Wordpress+Salesforce • Gravity Forms to Salesforce • http://wordpress.org/plugins/gravity- forms-salesforce/ • Easy to install • Web to lead forms with custom fields
  • 111. Wordpress+Salesforce • Gravity Forms to Salesforce • http://wordpress.org/plugins/gravity- forms-salesforce/ • Easy to install • Web to lead forms with custom fields • Use the API with Salesforce Enterprise, Unlimited and Developer Edition
  • 112. Plone vs. The Others
  • 113. Plone vs. The Others • Plone offers richer Salesforce integration than Joomla! or Wordpress
  • 114. Plone vs. The Others • Plone offers richer Salesforce integration than Joomla! or Wordpress • Plone and Drupal offer a similar level of Salesforce integration but packaged differently
  • 115. Questions?

×