Jump to content

[Free Module] PriceAlert - Follow the Price


DataKick
 Share

Recommended Posts

Price Alert - Follow the Price

 

 

price-alert.png

 
This free module will allow your customers to easily create price alerts on products and combinations. They will receive email when price drops below this indicated threshold.
 
Not only is this a powerful incentive for them to return to your shop, but it also gives you interesting information - email addresses and expected price. You can use it to optimise your pricing strategy or for other marketing purposes.

 

You can download the latest version of module here 

If you find any bug please file an issue on github 
 

  

 

 

 


Demo: you can test this functionality on my demo account: Front Office / Back Office

 
Features

 

  • sends automated email when price drops
  • alerts can be created by anonymous visitors as well as registered customers
  • supports product combinations - notification can be set for specific combination only
  • supports multiple currencies
  • change email template
  • modern design

Accessing data
 
Module itself doesn't have any functionality to export price alert data, but it is integrated with DataKick module - your price alerts data will be available for creating lists, xml exports, inline editing and mass updates just as any regular record type. Minimal required version of datakick module is 1.4.1
 
price-alert-list.png

 

Edited by DataKick (see edit history)
  • Like 5
  • Thanks 1

Share this post


Link to post
Share on other sites

  • 4 weeks later...

Hi, this module seems interesting.

 

Some ideas for the next version of it....to : 

  • add a % of the unit price that the price could fall (As it is, i am going to have too many clients that want something for free  :) )
  • either give us their mail or their phonenumber

Thanks

Share this post


Link to post
Share on other sites

Hi, this module seems interesting.

 

Some ideas for the next version of it....to : 

  • add a % of the unit price that the price could fall (As it is, i am going to have too many clients that want something for free  :) )
  • either give us their mail or their phonenumber

Thanks

 

Thanks for the suggestions, I'll make sure to include it to the next version.

 

As for #1 - this functionality is somewhat supported, although there isn't configuration option in UI. To change min discount, you can simply edit file pricealert.php, and change line 320 to another value, for example 0.75 to allow max 25% drop. Default value is 0.2, so it allows for 80% price drop.

'config' => array(
  'separator' => Configuration::get('PS_ATTRIBUTE_ANCHOR_SEPARATOR'),
  'defaultDiscount' => 0.8,
  'minDiscount' => 0.2         //change this line
),

Share this post


Link to post
Share on other sites

Good  morning, 

 

just came here to report the mobile thing but eldermaster was faster than me.

 

I also think that the module would have much clearer function to the end-user if the values on the slider start from the value of the product and go till the minimal allowed discount. (and not till 0 euros).

 

This module is a really good idea, thanks for your efforts.

Share this post


Link to post
Share on other sites

Hello,

Nice feature.

Can you improve it even more in order to be adapted on mobiles?

Because at this moment the alert price screen is way to large to work ok on mobiles.

Thank you,

 

New version 1.0.3 fixes this mobile issue. Could you please test and let me know if you encounter any problems?

I also think that the module would have much clearer function to the end-user if the values on the slider start from the value of the product and go till the minimal allowed discount. (and not till 0 euros).

 

I agree, implemented in new version 1.0.3

Share this post


Link to post
Share on other sites

Hello, No alert on the backoffice ? Thank you

 

Hi,

 

no, there is no alert / email sent when customer creates Price Alert. The only email that is fired is the email to the customer when price drops below threshold. 

 

If you, as a store owner, are interested in created price alert, you can install datakick module, and create list with this data. Have a look at my demo account for example of such list.

 

price-alert-data-list.png

Share this post


Link to post
Share on other sites

Hello, Thank you for the answer, It is not possible to add this function to the module ?

 

It's definitely a nice to have feature, I've added this to my backlog. It may take a while, though. I'm kinda swamped at the moment. 

  • Like 1

Share this post


Link to post
Share on other sites

  • 4 weeks later...
  • 4 months later...
9 hours ago, Soyons zen said:

HI, Thank you, Pricealert-1_0_2 no pricealert-1_0_5 ?  no alert on the back office? and does not take into account https?
 

 

 

sorry, I don't understand what you are trying to say. Could you please explain?

 

Share this post


Link to post
Share on other sites

2 hours ago, dmr-electronics said:

Hi,

 

thank you for this module. I have tested it and i see no notifications sent to customer when price match is met. I see notification in backoffice via mail.

I have installed also Mail for different languages.

 

Any idea? 

 

Hello,

do you have the latest version 1.0.6?

I've just tested it, and it successfully sent both notification email when new alert has been created, and also alert to customer when price dropped below threshold.

I have no idea why it didn't worked for you. You can look into table ps_ph_pricealert to see if the price alert exists, and also if the email was sent (== if the send email request was passed to prestashop core)  

 

Share this post


Link to post
Share on other sites

2 hours ago, DataKick said:

 

Hello,

do you have the latest version 1.0.6?

I've just tested it, and it successfully sent both notification email when new alert has been created, and also alert to customer when price dropped below threshold.

I have no idea why it didn't worked for you. You can look into table ps_ph_pricealert to see if the price alert exists, and also if the email was sent (== if the send email request was passed to prestashop core)  

 

Hi yes i have latest version installed this is what i see after discounted the product as example:

image.thumb.png.b342ef7d2ebe28391d3c5d5bbbaea156.png 

below my settings:

image.thumb.png.6d98b078180569b7d7a868d7ebbc8840.png

Below added discount 50%

image.png.653e8a1096db15b50716feb004010f2e.png

I get notification in my backoffice:

Not on my private gmail account.

My mail system is working correct, i use PHP 7.1.12.

image.png.bcfeb5bc06710ddb3d484245383c90a1.png

 

 

 

Edited by dmr-electronics (see edit history)

Share this post


Link to post
Share on other sites

12 minutes ago, dmr-electronics said:

Below added discount 50%

I get notification in my backoffice:

Not on my private gmail account.

My mail system is working correct, i use PHP 7.1.12.

 

Thank you for the info. Can I ask what ps version do you use? Also (just to be sure) - did you update price from the backoffice? Not directly in database, or via some other process (import)?

Share this post


Link to post
Share on other sites

Just now, DataKick said:

 

Thank you for the info. Can I ask what ps version do you use? Also (just to be sure) - did you update price from the backoffice? Not directly in database, or via some other process (import)?

 

Just now, DataKick said:

 

Thank you for the info. Can I ask what ps version do you use? Also (just to be sure) - did you update price from the backoffice? Not directly in database, or via some other process (import)?

I use Prestashop 1.6.1.17 latest release from series 1.6 and yes i use Storemanager directly from my workspace and connect via sql to update the discount. i did also update  directly in the backofiice noting changed. form send to my private mail point of vieuw 1.6.1.17

Share this post


Link to post
Share on other sites

10 minutes ago, dmr-electronics said:

 

I use Prestashop 1.6.1.17 latest release from series 1.6 and yes i use Storemanager directly from my workspace and connect via sql to update the discount. i did also update  directly in the backofiice noting changed. form send to my private mail point of vieuw 1.6.1.17

 

Ohh, I guess I'm starting to see the problem. You wrote to update the discount - does that mean you didn't change the product price, but you have created/updated specific price or cart rule?

These methods do not trigger the product update hook this module depends on, so email are not send (not until product is re-saved). I'll have to investigate and find a way to fix this problem.

Share this post


Link to post
Share on other sites

2 hours ago, DataKick said:

 

Ohh, I guess I'm starting to see the problem. You wrote to update the discount - does that mean you didn't change the product price, but you have created/updated specific price or cart rule?

These methods do not trigger the product update hook this module depends on, so email are not send (not until product is re-saved). I'll have to investigate and find a way to fix this problem.

Ah i see, that can course the situation here, i think its best to trigger the final price so that if you discount the product price our change the price manualy then it has to trigger. hope you can find a solution for that.

 

Thanks for your time.

Share this post


Link to post
Share on other sites

  • 4 weeks later...

Hello,

 

I don't know why but this module doesn't work for me. I first thought that is because of me disabling english language, then i activate it but still no customer email neither notification of client email. (it doesn't say "alert created", it just closes)

I am usinfg Prestashop 1.7.2.4. 

 

Could you give a hint please?

Share this post


Link to post
Share on other sites

for those interested in error reported by @zelddaniel - this seems to be related to server configuration. Server returns 403: Forbidden: Access to this resource on the server is denied error when sending POST request to ajax handler. There must be some security software, unusually strict .htaccess, or something similar.

Share this post


Link to post
Share on other sites

  • 3 weeks later...
2 minutes ago, colives said:

Hello!! I tried on PS 1.7 and it doesn't show me any button on product page.

I'm not using Classic Prestashop theme.

What I'm doing wrong?

Thanks!

 

this module uses hook displayProductButtons (renamed to displayProductAdditionalInfo in 1.7.1.x) to render button. Make sure your theme actually displays this hook. And of course, clear caches (server/browser/cloudflare/...)

Share this post


Link to post
Share on other sites

12 minutes ago, DataKick said:

 

this module uses hook displayProductButtons (renamed to displayProductAdditionalInfo in 1.7.1.x) to render button. Make sure your theme actually displays this hook. And of course, clear caches (server/browser/cloudflare/...)

I guess it doesn't. How could I fix it?

Thanks!!

Share this post


Link to post
Share on other sites

1 hour ago, colives said:

I guess it doesn't. How could I fix it?

Thanks!!

Well, I think I fix the half of the problem.

I included {include file="module:pricealert/views/templates/hook/pricealert.tpl"} on the tpl file which controls ADD TO CART button.

Now it is showed but the problem is that it doesn't do anything, it diesn't appear any pop-up to set the alert.

Share this post


Link to post
Share on other sites

1 hour ago, colives said:

I guess it doesn't. How could I fix it?

 

You will have to either modify your template, or module code.

1) modify template - put this code to appropriate place in your template

{hook h='displayProductAdditionalInfo' product=$product}

2) modify module - this one is much more complicated. You'll have to edit file pricealert.php, and 

- register appropriate hook, probably displayRightColumnProduct

- implement function hookDisplayRightColumnProduct, in the same (or very similar) way to how hookDisplayProductButtons function works

EDIT: my original suggestion was for ps16. The above fix is for ps1.7.1.x

 

Edited by DataKick (see edit history)

Share this post


Link to post
Share on other sites

5 hours ago, DataKick said:

 

You will have to either modify your template, or module code.

1) modify template - put this code to appropriate place in your template

{hook h='displayProductAdditionalInfo' product=$product}

2) modify module - this one is much more complicated. You'll have to edit file pricealert.php, and 

- register appropriate hook, probably displayRightColumnProduct

- implement function hookDisplayRightColumnProduct, in the same (or very similar) way to how hookDisplayProductButtons function works

EDIT: my original suggestion was for ps16. The above fix is for ps1.7.1.x

 

Thanks!

I made it work!

But it doesn't update current price if I chose another combination.

 

Share this post


Link to post
Share on other sites

14 hours ago, iamhenrique said:

Hi.

The module is not sending notification when the price drops. 
I just receive the email notification that a new price alert was created. 

I am using Prestashop 1.6.1. version.

Can you help me?

 

Have you translated email template to languages you use in your store?

 

Share this post


Link to post
Share on other sites

There is an email address in the message that admin receives, however it is admin's email not customers right? Is it possible to have customers email address there instead? Kind of pointless to receive own email address...

Share this post


Link to post
Share on other sites

2 hours ago, DataKick said:

 

Very likely, as Prestashop will not send email if template for given language is not found.

 

 

 

I created the translations but the prestashop is just sending the 'pricealert_notification'. 
The 'pricealert_drop' doesn't work yet. 
See the image.
I think it's a problem with the version 1.6.1 of prestashop because in the version 1.7.3 it's working well.
I already tested in both version with and without my prestashop theme, in single or multilanguage store.
I really tried to make it work but I already don't know what to do anymore.

How could you help me with this issue?

Captura de ecrã 2018-03-14, às 11.48.09.png

Edited by iamhenrique (see edit history)

Share this post


Link to post
Share on other sites

HI, I'm currently using 1.7.2  with two languages but emails to customer have always subject in English "Price dropped on %s" and I'm unable to translate it. I've edited the pricealert_drop.html <title> but it doesn't help, still English subject. Any ideas please? I did not find the subject in database either.

Share this post


Link to post
Share on other sites

4 hours ago, mr_absinthe said:

HI, I'm currently using 1.7.2  with two languages but emails to customer have always subject in English "Price dropped on %s" and I'm unable to translate it. I've edited the pricealert_drop.html <title> but it doesn't help, still English subject. Any ideas please? I did not find the subject in database either.

 

1. Localization > Translations

2. Modify Translations:  (Type of translation = Email Templates Translations)

3. Find price alert module, and you can translate email subject

pricealert.thumb.png.c1162d74ae45e5b21fecbbe04b625681.png

 

Share this post


Link to post
Share on other sites

On 3/14/2018 at 6:56 PM, DataKick said:

 

1. Localization > Translations

2. Modify Translations:  (Type of translation = Email Templates Translations)

3. Find price alert module, and you can translate email subject

pricealert.thumb.png.c1162d74ae45e5b21fecbbe04b625681.png

 

That is exactly what I did as a first step, however the field remains empty and subject in English after I saved it. Tried several times with no luck. No matter if I select core or theme. Is it being saved to a database or a file? I could edit it manually if I know where to look.

Share this post


Link to post
Share on other sites

On 3/17/2018 at 11:27 PM, mr_absinthe said:

That is exactly what I did as a first step, however the field remains empty and subject in English after I saved it. Tried several times with no luck. No matter if I select core or theme. Is it being saved to a database or a file? I could edit it manually if I know where to look.

 

Translations for subjects are stored in lang.php file, in /themes/<theme>/mails/<language>/lang.php

for example in file: /themes/default-bootstrap/mails/cs/lang.php:

 

lang.png.d6d0b55a1cc4e16aa330c48f43c0487d.png

 

Edited by DataKick (see edit history)

Share this post


Link to post
Share on other sites

Strange, the lang.php file is almost empty (same in classic theme), however the subject line is there:

$_LANGMAIL['Price dropped on %s'] = '%s  - snížili jsme cenu!';

But despite the above, when I go to Localization > Translations, the subject field is empty.

Edited by mr_absinthe (see edit history)

Share this post


Link to post
Share on other sites

1 hour ago, mr_absinthe said:

Strange, the lang.php file is almost empty (same in classic theme), however the subject line is there:

$_LANGMAIL['Price dropped on %s'] = '%s  - snížili jsme cenu!';

When I go to Localization > Translations, the subject field is empty.

 

Must be some bug in prestashop core, or with some override you may be using. What ps version do you use?

 

Share this post


Link to post
Share on other sites

On 9-1-2018 at 6:09 PM, DataKick said:

 

Ohh, I guess I'm starting to see the problem. You wrote to update the discount - does that mean you didn't change the product price, but you have created/updated specific price or cart rule?

These methods do not trigger the product update hook this module depends on, so email are not send (not until product is re-saved). I'll have to investigate and find a way to fix this problem.

Hi, Did you solve the the price alert when discount is given instead of hard price change? And during my test i discovered that price alert is not working correct when you have product combinations activated on a specific product page. Then it will only change the base price of the master product not the combination of models and types with different pricing.

 

Share this post


Link to post
Share on other sites

On 19-3-2018 at 1:25 PM, mr_absinthe said:

Strange, the lang.php file is almost empty (same in classic theme), however the subject line is there:

$_LANGMAIL['Price dropped on %s'] = '%s  - snížili jsme cenu!';

But despite the above, when I go to Localization > Translations, the subject field is empty.

You need to copy the directory "en" insite the module then create a new directory of your local language and past the files inside that new directory. After that you can change the emails language from your admin site.

Share this post


Link to post
Share on other sites

  • 2 weeks later...

The following issue is caused most likely by the theme therefore not sure if it could be changed... when in any category and I click "quick view", there is a link "Alert me when price drops" in bottom right corner. However when I click on it, it does nothing. I've noticed that on your demo page, there is  ?content_only=1# appended at the end of an url. This is missing in my case, there is only # at the end.

Share this post


Link to post
Share on other sites

11 hours ago, mr_absinthe said:

The following issue is caused most likely by the theme therefore not sure if it could be changed... when in any category and I click "quick view", there is a link "Alert me when price drops" in bottom right corner. However when I click on it, it does nothing. I've noticed that on your demo page, there is  ?content_only=1# appended at the end of an url. This is missing in my case, there is only # at the end.

 

Could you share your shop url? There's either some javascript error that's preventing popup, or maybe popup is displayed, but is not visible (has low z-index)

 

Share this post


Link to post
Share on other sites

The following issue is caused most likely by the theme therefore not sure if it could be changed... when in any category and I click "quick view", there is a link "Alert me when price drops" in bottom right corner. However when I click on it, it does nothing. I've noticed that on your demo page, there is  ?content_only=1# appended at the end of an url. This is missing in my case, there is only # at the end.

This is the problem with ps17. In ps16, the quickview actually shows whole product page inside iframe. In ps17 only html fragments of product page are returned via ajax call, and rendered inside modal window, on product listing page.

The problem is that there can be a javascript that is loaded ONLY on product page. And if the html fragment grabbed from product page depends on this javascript, it will not work when transplanted to product listing page.

I'll add fix to next version of this module that will load this javascript on product listing page as well.

But I thing the root cause is in how ps17 designed this functionality.  I've noticed on your site that the same issue reproduces with 'Notify me when back in stock' functionality as well. Again, javascript file is missing, so your customers can't subscribe to notification. In console, there's this error message: Uncaught ReferenceError: addNotification is not defined.
   

 

Edited by DataKick (see edit history)

Share this post


Link to post
Share on other sites

Thank you for taking time to have a look at it, I'm sure that 1.7 is not perfect, but what is...? Perhaps it will get only better with further updates. And thank you for offering great free modules to a community!

Share this post


Link to post
Share on other sites

Hi DataKick and thanks to share your work with us.

Your module works great on my test website, but it's look like to do nothing if catalog price rule (create a discount) or specific price.

it's normal operation or I broke something ?

An other thing : when product with combinations, i can select any combination but the price-bar to select is always product with defaut price.

Edited by kokoon (see edit history)

Share this post


Link to post
Share on other sites

On 4/9/2018 at 2:58 PM, kokoon said:

Hi DataKick and thanks to share your work with us.

Your module works great on my test website, but it's look like to do nothing if catalog price rule (create a discount) or specific price.

it's normal operation or I broke something ?

An other thing : when product with combinations, i can select any combination but the price-bar to select is always product with defaut price.

 

Hi, you are right, it does not work with cart rules / specific prices.

Support for specific prices is in my backlog, and I plan to implement this into next version.

I don't think I can make this module work with cart rules anytime soon, though. It would require to go over all price alerts and test each and every one of them every time cart rule is created / updated. That's a big complexity, and it would have big impact on performance.

With price / specific price, the performance implications aren't that big, as I know final price beforehand, and can find all matching price alertes using simple sql query.

 

Share this post


Link to post
Share on other sites

Hi DataKick.

The module is already cool like that, I understand perfectly the job that it asks. Thank you for that precise answer.

I don't want to abuse, but you have not answered my problem with products with combinations. I explained no correctly ? (It's possible, my English is not perfect lol).

Share this post


Link to post
Share on other sites

On 14/03/2018 at 12:07 PM, mr_absinthe said:

There is an email address in the message that admin receives, however it is admin's email not customers right? Is it possible to have customers email address there instead? Kind of pointless to receive own email address...

 

I did not notice this detail, same thing for me.

In the email's html, {email} is used and if you look in the database (inside YOURPREFIX_ph_pricealert) the column is indeed "email" and there is the customer's email . It sould work, weird ...

Share this post


Link to post
Share on other sites