Magento – Cannot subscribe email newsletter to second storeview: email already exists

customeremailnewsletter

we have several storeviews. And until recently I noticed that if 1 email is subscribed to storeview A (store) it cannot be added to storeview B (store).

We use this block on a page to add the newsletter subscription form:

{{block type="newsletter/subscribe" template="newsletter/subscribe_home.phtml"}}

The error when I add the email to store B is "email is already subscribed" .. but it is not … it is subscribed to store A: now the customer also wants to receive the newsletter from store B (other brand) …

The error message comes from mage_newsletter: "This email address is already assigned to another user."

UPDATE: Share Customer Accounts is set to Global under System->CUSTOMERS->Customer Configuration->Account Sharing Options.

question: how can I make this work? and allow customers to subscribe to 2 different newsletter (from 2 different stores)?

thanks

Best Answer

The solution lies in disabling GLOBAL accounts, but rather setting them to WEBSITE level.

This can be done under System>Configuration>Default>Customer Configuration>Share Customer Accounts

This does sound as a bug though. Because on the 1 side of should be able to allow for GLOBAL ACCOUNTS, whilst on the other side one should be allowed to subscribe to different newsletters. These two are unnecessarily mingled now...

This piece of code breaks the registration of the email to the second store.

if ($ownerId !== null && $ownerId != $customerSession->getId()) {
     //'This email address is already assigned to another user.
}
Related Topic