Magento integration guide
Plugin overview#
The ExpertSender CDP plugin not only syncs orders by default but also allows you to collect customer consents directly from your Magento store and submit them to ECDP.
The plugin is compatible with Magento 2.2+.
If you prefer using this feature instead of an API integration for collecting consents, follow these steps:
Order synchronization
- By default, order information is automatically sent to ECDP. No additional setup is required for this.
- To ensure order statuses are properly synced, refer to the Order Status Mappings section.
Steps to collect and submit consents
- General settings configuration
Go to the General Settings tab and fill in the necessary fields:- API key
- Tracking code
- Website ID
- Create consents in Magento
If you want to collect marketing consents (e.g., when users register, edit profiles, or place orders):- Go to the Consents tab.
- Create a consent in Magento and map it to a corresponding marketing consent in ECDP.
- Create consent forms
In the Consent Form Elements tab:- Create the forms responsible for collecting consents (e.g., «Checkout consent»).
- Select where the consent checkbox or form should be displayed (e.g., registration, checkout, profile edit).
- Choose which consent is collected once the form is submitted.
- Configure opt-in mode
Go to Settings > Form Settings and define whether consents will be collected using Single Opt-In or Double Opt-In. If Double Opt-In is selected, you’ll need to specify the Confirmation Message ID from ECDP. - Optional: Custom data mapping
If your store collects additional data beyond standard fields (e.g., order, product, or user data):- Configure the submission of custom fields in the Custom field mapping tab. This step ensures that non-standard data is sent to ECDP.
Installation & configuration
- Install the extension
You can install the ExpertSender CDP extension using either Composer or manually via FTP:
Via composer:
Run the following command in your Magento root directory
composer require expertsender/ecdp
Manually via FTP:
- Download the plugin from GitHub.
- Upload the extension files to your Magento server in the following directory: app/code/ExpertSender/Ecdp/
- Run Magento commands
After installing the extension (using either method), run the following commands in your Magento root directory to enable and compile the extension:
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento cache:flush
Plugin sections
General settings
- Navigate to the Magento admin panel.
- Go to ECDP > General Settings.
- Here, you need to configure the following fields:
- API Key: Enter your ExpertSender API Key for authentication.
- Tracking Code: Add the tracking code to monitor user activity on your site.
- Website ID: Input your website’s ID for ExpertSender CDP.
- Enable API Log: If enabled, all requests and responses to/from the ECDP API will be logged in the /var/log/expertsender/api.log file for troubleshooting purposes.
Customer Data settings
To configure how customer data is sent to ECDP:
- Navigate to ECDP > Customer Data in the Magento admin panel.
- You can configure the source for the customer’s phone number to be sent to ECDP with the following options:
- Billing Address (default)
- Shipping Address
- Additionally, you can determine whether to send the customer’s phone number to ECDP.
If you select Yes, ensure that all phone numbers stored in Magento are in international format(including the country prefix), as failing to do so may cause issues during data transmission.
Form settings
To configure forms in ExpertSender CDP:
- Navigate to Admin Panel > ECDP > Form Settings.
- The General section includes the following fields:
- Text to display before consents in forms: This is the text that will appear above the list of checkboxes in forms, such as “I agree to:”.
Note: This text does not display in the newsletter or profile edit forms. - Use ExpertSender CDP form: Set whether the plugin should replace the default newsletter form with one that includes consents.
- Text to display before consents in forms: This is the text that will appear above the list of checkboxes in forms, such as “I agree to:”.
- The Single/Double Opt-In section includes options for different forms (registration, profile edit, checkout, newsletter):
- Form type: Choose between Single Opt-In or Double Opt-In for each form.
- Confirmation message ID: If Double Opt-In is selected for any form, an additional field will appear where you can enter the ID of the confirmation message. If left empty, the default confirmation message will be sent.
Customer consents
Consents in Magento need to be mapped to consents in ExpertSender CDP to ensure proper synchronization. Follow these steps to create and map a consent:
- Navigate to ECDP > Consents > Add New.
- Give it a name: This will be the name you use to refer to the consent in Magento.
- Select a consent from ECDP: Choose the corresponding consent that was already created in the ExpertSender CDP platform.
Once the consent is created in Magento, it can be used in various forms to start gathering customer subscriptions. These consents will be applied to the following forms:
- Registration form
- Profile Update form
- Checkout form
- Newsletter form
Consent Form Element#
After creating the consent, you need to specify where and how the consent checkbox or form will be displayed. Here’s how to set up a consent form element:
- Navigate to ECDP > Consent Form Elements > Add New.
- Add a name: For example, you might name it «Newsletter Consent».
- Select a form: Choose where the consent checkbox will appear. You can select from the following options:
- Registration
- Profile Edit
- Checkout
- Newsletter
- Select a consent: Choose the consent you previously created and mapped to ECDP. This consent will be given once the customer checks the box and submits the form.
- Select a store: Define in which store views the checkbox will be displayed (Magento’s multi-store functionality).
- Enable or disable: Toggle the checkbox to either enable or disable the consent checkbox in the form.
- Set sorting order: You can define the display order by assigning a number for the sorting priority. The lower the number, the higher the checkbox will appear in the form.
Custom Field Mappings
Custom Field Mappings enable you to map non-standard fields from Magento with corresponding fields in ECDP. These custom fields go beyond the basic data and might include specific details related to an order, product, or user.
Supported Resources for Custom field mapping
- Order
- Product
- User
Each custom field from these resources can be linked to a pre-defined field in ECDP. It’s important to note that the corresponding field in ECDP must be created before the mapping can occur.
To map specific Magento attributes to ExpertSender CDP features:
- Go to ECDP > Custom Fields Mapping.
- Click Create to define new mappings:
- Magento Field: Select the product/user attribute.
- Mapped Resource: Choose from User, Product, or Order.
- ExpertSender Field: Choose the corresponding field from ExpertSender.
- All created mappings will be listed in the table and will be automatically synced with ExpertSender CDP.
Order Status Mappings
Order Status Mappings allow you to synchronize Magento’s order statuses with corresponding statuses in ECDP. This feature ensures that ECDP is always up-to-date with the latest order status, providing accurate information for reporting and triggering customer communications.
- Navigate to ECDP > Order Status Mapping.
- Create mappings between Magento order statuses and those in ECDP:
- ExpertSender Order Status: Select a status (e.g., placed, paid, completed, canceled).
- Magento Order Status: Choose from Magento’s order statuses.
Default mapping:
ECDP’s Status | Magento’s Status |
placed | pending, pending_payment, holded |
paid | processing |
completed | complete |
canceled | canceled, closed |