Skip to content

Release Notes

Compare
Choose a tag to compare
@mykhailo-banin mykhailo-banin released this 23 Jul 21:35
· 1899 commits to master since this release

Website event tracking.

It is now possible to track user activity on web pages and record it in OroCRM. The tracking is done using Piwik JavaScript Tracking code snippets. (For additional information on the subject please check the documentation)
In order to start track events, you have to create a website first—this can be done under Marketing > Tracking Websites. After a site is created, you will get a template of tracking code that you can edit to suit your tracking demands and then embed it on desired pages of your website. By default the code contains only tracking of page views, but the template also contains a placeholder for event tracking code (hidden with comments).
By default all information is passed to OroCRM directly in the real time; note that it may cause performance issues if the traffic on the website is intensive. To avoid this, you may disable dynamic tracking and choose longer log rotation interval in the tracking configuration (System Configuration > General Setup > Tracking). You can also choose to store data not only in OroCRM, but on the Piwik host as well; to do so, specify Piwik credentials in the tracking configuration. Note that if this option is executed, website identifiers in OroCRM must be exactly the same as in Piwik.

Marketing campaigns.

This release introduces support for marketing campaigns. It is now possible to create Campaign records that contain name of the campaign, a unique campaign code that can be used for campaign tracking; provide a lengthy description to the campaign; specify its start and end dates, and estimate a budget.
A relation between Campaign and other entities may be introduced via entity configuration; by default such relation exists for Leads. These relations are available for segmentation and reporting; to provide an example of such use the bundle contains custom Campaign Performance report.
Campaigns are subject to standard ACL permissions; the default ownership type for them is User.

Campaign code tracking.

This feature is build atop the previous one. Its purpose is to link some events that have been registered on the website with a code of a particular campaign in order to measure its performance.
The campaign code can be registered in two possible ways: it can come in the get URL (a good example is a link that is provided to the customer in the newsletter email), or it can be attached to all events that occur on some "landing page."
Either way, such events will be registered in OroCRM with a link to the campaign, and will appear not only on the website page, but on the campaign page as well. The campaign page will also contain a summary report with the aggregate number of registered events of various types, and a timeline graph that will show the dynamics of event aggregation over the campaign lifetime.

Cases.

Case management is a CRM feature that is very important to e-Commerce users. Cases are CRM equivalents for real-world customer problems; when a customer writes an angry email about nondelivery of a product, or calls the hotline and asks for the nonstandard payment method—every time the case should be opened and maintained.
The case must contain a description of the problem that makes a case; some user should be made responsible for handling the case; and some context for the case might be provided. By default, the case has relations to Contact and Account, but you can add more relations via Entity configuration if necessary. For example, it might be useful to tie cases not just to customer's account, but also to the particular order the customer has problems with.
Cases in OroCRM are usable on their own, but they can also be a target to integration with third-party systems (see below).

Processes within Magento integration.

We have rewritten the existing Magento integration jobs and moved part of its functionality to built-in process. This change allows to separate the "synchronization" logic that will still be fulfilled by cron jobs, and the "CRM" logic that from now on will be fulfilled by processes triggered as a result of synchronization job. In this release, the built-in process only handles creation of Account and Contact upon Magento Customer data, but in future releases we intend to complete the separation of logic.

Activities.

In this release we introduce a new type of entities that we call Activities. From the user standpoint, activities equal to some widespread standardized tasks such as adding notes to entities or sending an emails in their context. Using activities allows to standardize user experience for such tasks all over the system, and makes them easily configurable in scope of every entity. All activities are subject to standard ACL permissions.
In scope of this release we introduce three activities: Notes, Emails, and Attachments. Calls and Tasks are in the roadmap for future releases.

  • Notes.
    Notes are small text messages that will appear in a dedicated Notes section on an entity view page below the record information.
    To add a note, click a corresponding button on top of a page, then enter a note text in the popup window that appears. Notes are added in a "string" in reverse chronological order—that is, they appear one after another and more recent notes appear higher by default. You can reverse the sorting order with a sorting control. You can also collapse or uncollapse each individual note, or collapse all of them at once using the corresponding control. You can also edit or delete notes if you have permissions to do so.
  • Emails.
    The ability to send an email in context of an entity record has been redesigned as a system-wide activity, providing a standardized and configurable user experience all over the system.
    Note that sending of emails via workflow transactions (e.g. in the Abandoned Shopping Cart flow) has not been refactored yet.
  • Attachments.
    Another activity added in 1.3 release is the ability to attach files and images to entity records. Attachments must be configured in scope of every entity; the admin should specify maximum file size and allowed MIME types for attached files.
    Attached files or images will be displayed in scope of the record and, if necessary, the user can download them from the system. The download link for every attachment will be protected: when a non-OroCRM user will try to use it, he will be prompted to login screen, and only after successful login the download will start.

Data import in CSV format.

The existing feature of CSV import and export of Contacts was expanded and generalized. It is now possible to configure templates for import & export of every entity, including custom ones. Ready-to-use import & export actions are available by default on the following entity grids: Account, Contact, Lead, and Opportunity. Export is also available for Users.

Zendesk integration.

Zendesk is a customer service software which main purpose is to provide means of communication between business owners and their customers. It is therefore a great match to Cases feature of OroCRM.
The integration allows the following features:

  • Synchronization with the existing Zendesk account (multiple integrations possible)
  • One-way synchronization of Zendesk users with OroCRM contacts: for every Zendesk user there will be a matching OroCRM Contact
  • Two-way synchronization of Zendesk tickets with OroCRM Cases
    • When a ticket is created in Zendesk, a matching Case will be created OroCRM
    • When a case is created in OroCRM, the user may link it to Zendesk ticket
    • All changes in a matching pair of Case and ticket are synchronized; the strategy for resolving conflicting changes is subject to configuration.
  • Two-way synchronization of comments to Cases/tickets between two systems.
    Zendesk integration will not come in default OroCRM package; it will be available as a free extension in the Marketplace.

Other changes and improvements

  • Default owners were introduced for channels; this value will be applied to all data.
  • Magento Order creation/completion form that appears in the iframe popup when the user tries to convert an existing shopping cart or create a new order now looks more in line with OroCRM style.
  • Entity grid data is now exported with filters and sorting applied; pagination is not preserved (all pages are exported at once).
  • Attribute key has been changed from the "attribute name" to the "scope + attribute name," so attributes of the same name can be used in different scopes.
  • User avatars are now processed the same way as other fields of image type.
  • The content of image and file type fields can now be imported and exported in the form of download links in the standard CSV import/export feature.
  • Job queue has been improved with multiple workers and jobs priorities.
  • Custom jobs for Magento integration were turned into processes.
  • Declaration of doctrine types for money an percent have been moved to config.yml.
  • Doctrine subscribers were converted to listeners, and all doctrine listeners have been marked as lazy.