Discussions

Can't send customer email without account creation

Hi,

I've just been trying out Kickstart 2 for a week or so - first I installed it with the demo store to explore it, now have wiped and reinstalled without the demo content. The only additional module I've added is SagePay Form Integration (dev version) and this seems to work fine.

My problem is with account creation in the checkout process. I don't want this, so I disabled the "Create a new account for an anonymous order" checkout rule, as I read in the docs here (if I understood correctly) that this is what to do. (I also disabled "Assign an anonymous order to a pre-existing user").

However when I do this, although the account is not being created, which is what I want, it also stops not only the "An administrator has created an account..." email (good), but also the order completion email (bad - this needs to be sent).

Can anyone advise what I'm doing wrong? Thanks in advance.

Posted: Jan 10, 2013

Comments

torq on January 11, 2013

I've never done anonymous checkouts. But, you should be able to easily accomplish this with a rule.

On Drupal's configuration page, go to rules. Add a new rule.

Event -> Completing the checkout process
Action -> Send Mail (under the system actions)

Under replacement patters you can use [commerce-order:mail] for the email address associated with the order.

headbank on January 21, 2013

Hi torq, and sorry for the tardy reply (I didn't realise there are no email notifications for replies here).

I've been looking some more at this and I think I understand a little better what's happening. It appears the two rules I disabled are complementary: which one fires depends on whether the checkout is anonymous, and the goal is to have a non-anonymous User entity assigned to the order one way or the other when it gets finalised.

I think this is why disabling them prevents all emails being sent: this is supposed to be done by the rule "Commerce order message: order notification e-mail", which uses the action "Send Message with Message notify" rather than "Send email". From looking at the variables/fields they use, I assume that this rule fails silently when [commerce-order:owner] is not a User with an email address assigned.

I've already started developing a rule to send the webmaster an order notification as well, so I can probably just modify the broken rule to use "Send email" instead of "Send Message...".

On the other hand, since I posted this I've started to relent on the issue of creating accounts for each order; it's really the account email I'm concerned about suppressing, and I've already axed that action from the rule, so I might just stick with doing things the "Kickstart Way" after all...

Alif on October 8, 2013

I've never done anonymous checkouts. But, you should be able to easily accomplish this with a rule.

On Drupal's configuration page, go to rules. Add a new rule.
Get owner email notification also costomer get email same time:)
Event -> Completing the checkout process
Action -> Send Mail (under the system actions)

Under replacement patters you can use [commerce-order:mail] for the email address associated with the order. this is for consumer

Action -> Send Mail (under the system actions)
Under replacement patters you can use[site:mail] for the email address associated with the order. this is for site owner

Save you time
Enjoy E commerce