1

When a customer completes an order using Stripe they get an email notification from Stripe. I have configured notifications to be sent from Craft and would like them to only get those emails. After looking into this for a bit, it seems like I need to stop Commerce from passing the receipt_email to Stripe to stop this from happening?

https://craftcommerce.com/changelog#build1323

Commerce now provides Stripe with the customer’s email address to support Stripe’s receipt email feature.

https://support.stripe.com/questions/email-receipts

If you charge a customer that already has an email address attached to it, passing in a receipt_email with a charge will override the customer’s stored email address, and we’ll send the receipt to the email address specified in your charge request’s receipt_email regardless of your email settings.

2

You shouldn't need to adjust Craft Commerce at all. You can disable email receipts on the Stripe side in your account settings.

Account Settings > Emails

Uncheck "Email Customers for: Successful Payments"

Stripe Email Settings

As far as Stripe using the previous email address saved with the Customer, as far as I know OmniPay (which powers Commerce) doesn't create a Customer in Stripe, it only creates a Charge.

| improve this answer | |
  • Thanks for the help! This is unchecked, though, and customers are still getting an email from Stripe. Not sure how to stop that from happening. – Rob McFadden Nov 30 '16 at 20:59
  • I have this question as well, and confirmed with Stripe that: "Even though you have it disabled in your account settings, receipt emails can still be sent if the API has been set to send them. Looking over the test payments you made, I see the API has been set to pass through "receipt_email", which overrides the receipt settings in the Dashboard. A guide to changing this can be found here: support.stripe.com/questions/email-receipts#through-the-api" It's unchecked in our account, too, but receipt emails are being sent from Commerce and I'm not sure how to disable. – Ryan Masuga Dec 10 '16 at 0:29
1

You have to unset the receipt_email value when sending the request to Stripe.

I packaged the solution up as a small plugin: https://superbig.co/plugins/disable-stripe-receipts

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.