Knowledgebase

Home » Item #916

My CactuShop is not sending email in some or all cases

Item: #916
Date: 20 Jul 2004
Applies to
v5
v6

Question

Q1. I have set up my CactuShop but it does not send email for order confirmations.

Q2. My CactuShop sends some emails, but not others.

Answer

If you don't receive order confirmations, then it could be that the callback process from the payment gateway is not hitting your site correctly, or is not setup. A quick way to test this is to go to the mailing-list signup on your CactuShop site and sign up your email address. You should receive a confirmation 'opt-in' mail. If you do, but don't get order emails, that indicates a problem with the payment gateway setup. In this case, review the CactuShop PDF manual carefully, especially regarding setup required on the gateway's site.

If no email is sent from your CactuShop at all, including from the mailing list sign up or contact form, you first need to check the emailmethod config setting. As default, CactuShop ships with the mailmethod set to 'write' which is a test mode that will write the text of the email to the screen. You can change this to the Microsoft default methods on most servers which are 'CDONTS' or 'CDOSYS'. However, some web hosts disable these and instead require mail to be sent using a third party mail component. CactuShop supports the following: ASPmail, Persits (ASPemail) and Jmail.

Note that ASPemail and ASPmail are *not* the same, so be careful to specify the right one in your config settings if your host tells you they support one of them.

The next common problem with mail is the mailserver config setting. This should be set to the IP address or server address of the SMTP server that your web host specifies you should use to send mail from a web page. IMPORTANT: don't use the SMTP server address your host provides for you to use for your personal/company email (e.g. mail you send through Outlook or Thunderbird) unless the host specifically tells you to. Generally, hosts will run a separate mail system for mail clients and these days most web servers send mail themselves rather than via a central SMTP server.

We have also seen a lot of problems due to the email addresses clients have their CactuShop set to use. In the back end, you can specify email addresses for the orders, contact form enquiries and the 'reply-to'. The latter will be used as the 'from' address on all mail from the site. Therefore this should be different to the email addresses used to receive orders and contact messages, otherwise, the store will be trying to send email from an address, to the same address. The mailserver may well not allow this.

If you have not changed the 'reply-to' address setting at all, your mail may not work simply because the outgoing domain is still set to the default 'mydomainnamegoeshere.com'. Many mailservers are configured by hosts to only allow mail to be sent out from addresses on domains that resolve to their system (to stop spammers forging domains).

We have seen cases where mail sends to addresses on domains that are hosted by your web host work, but ones sent to external addresses don't. Conversely, we have also seen the opposite, where mail to local domains fails (i.e. your CactuShop domain), but mail to external domains (e.g. hotmail) works fine. In this case, you should contact your web host and explain the issue, as it is due to mail server setup problems and not CactuShop.

If you still experience mail problems where some mails work and some don't, you need to find a situation that fails (e.g. a certain email address signing up for the newsletter) and then switch the emailmethod to 'write' and try it again. This will print the mail to the screen instead of trying to send it, so you can clearly see the details that CactuShop was trying to use. Make a note of the 'to' and 'from' addresses. Then find an email address that does get mail from the newsletter signup and do the same. Note the 'to' and 'from' addresses again. You will likely find a pattern as detailed in the paragraph above, where success or failure depends on whether the email address it is trying to send the mail to is local or external. This is a network problem that your web host needs to address, it is *not* a CactuShop issue.

If you are still convinced that the mail problem is due to CactuShop, you need to verify this. Get a test .asp script from your host for the mail method you are using, set it up on your site and get it to send a message using the same 'to' and 'from' email addresses as a message that fails through CactuShop. This way, you are eliminating CactuShop as a factor. If the message fails, then the problem is definitely NOT with CactuShop (as the mail was sent using the test script your host supplied, not CactuShop).

The CactuShop mail functions are extensively tested and are running for hundreds of clients around the world. In the past few years we have not found any problems sending mail that were traced back to bugs in CactuShop, so please ensure you follow through the steps above before raising a support ticket as it is almost certain the solution is on this page.

Can't find the answer you need? Click here to open a support ticket.

« Back