Newsletter¶
Ibexa Commerce offers a newsletter interface. It allows the user to subscribe to newsletters and see the newsletter status or update newsletter details information in their profile.
There is no specific newsletter configured out of the box. The standard offers only processes, templates, routes, configurations and an interface which can be used for newsletter integration. A newsletter provider service with specific API implementation of this provider has to be implemented separately.
The newsletter status is fetched from the newsletter provider after the user logs in, and displayed in the user's profile. The newsletter status is stored in customer profile data together with the list of IDs of newsletter topics, so it can be rendered in the template if required.
1 2 3 4 5 6 7 8 9 |
|
Configuration¶
General newsletter configuration is located in newsletter.yml
:
1 2 3 4 5 6 7 8 9 |
|
Default attributes¶
Following attributes are offered by default. These attributes are sent to the newsletter provider if available:
- First name
- Last name
- Gender
- Telephone Number
- Date of birth
- User language
- Last order date
- Last order amount
- Order amount total
Additional attributes¶
There are places where you can add or modify additional user data and send it to a newsletter provider. You can do it:
- before a user subscribes to the newsletter. By default the user language (current locale) is sent.
- after the user updates their profile or creates an order. By default, the newsletter details are updated with latest information about:
last_order_date
- date when last order was madelast_order_amount
- order amount from last orderorder_amount_total
- total order amount for the user
In both cases any data from the customer profile can be sent, but you have to implement a custom event listener for that.
Attributes that do not exist in the newsletter provider have to be created first.
Additional newsletter data¶
To send additional data to the newsletter provider, implement an event listener
that listens to subscribe_newsletter_event
or update_newsletter_event
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
1 2 3 4 |
|