Re: Reward Points Module- Live Release now available.
I am lost.
I want reward points to be earned against regular priced items not items on sale. So can two items be purchased, one sale item and one regular item and still have it compute reward points correctly?
I want each product to be computed by this equation. PRICE X 0.05
Meaning if you buy something for $100. Your reward points will be $100*0.05. Basically you earn a nickel for every dollar you spend.
I want ... okay enough. Can someone please help set this up?
Re: Reward Points Module- Live Release now available.
I think that you can do it. I have set the Global Reward Point Ratio to 5.00 with Catalog > Reward Points. This gives 5 points for every currency unit ($, €, £ or whatever your base currency is) spent, which is redeemed for 0.01 per point. That covers your question about the formula.
If you go to Configuration > Reward Points > Adjust Reward Points for Sales/Specials you can set it to 0 or 1 depending on what you want to do. Each of the options is explained there.
Although I have not played with it, I see that you can define a different Reward Point Ratio for a product. Go to Catalog > Reward Points where you will see the Global Ratio of 5.0000 in the box on the top right of the screen. Then, select a category and a product. You will find another box titled "Set Product Reward Point ratio:" where you can enter a different ratio for the individual product. In your case, if you don't want some products to earn points, enter 0.0000 in the box.
As I said, I have not tried it but this should be the purpose of setting a ratio on a product basis. You may for example want items of sale to get 2 rather than 5 points for every dollar spent, or you may want some other products advertised as earning 20 points per dollar. I can't see any way to do it automatically, so I assume that this should be done manually for each product differentiating from the global setting.
If you try and it works this way, you may want to post your experience here for other users to learn and benefit. Good luck!
Re: Reward Points Module- Live Release now available.
Quote:
Originally Posted by
Athens Collectibles
I think that you can do it. I have set the Global Reward Point Ratio to 5.00 with Catalog > Reward Points. This gives 5 points for every currency unit ($, €, £ or whatever your base currency is) spent, which is redeemed for 0.01 per point. That covers your question about the formula.
If you go to Configuration > Reward Points > Adjust Reward Points for Sales/Specials you can set it to 0 or 1 depending on what you want to do. Each of the options is explained there.
Although I have not played with it, I see that you can define a different Reward Point Ratio for a product. Go to Catalog > Reward Points where you will see the Global Ratio of 5.0000 in the box on the top right of the screen. Then, select a category and a product. You will find another box titled "Set Product Reward Point ratio:" where you can enter a different ratio for the individual product. In your case, if you don't want some products to earn points, enter 0.0000 in the box.
As I said, I have not tried it but this should be the purpose of setting a ratio on a product basis. You may for example want items of sale to get 2 rather than 5 points for every dollar spent, or you may want some other products advertised as earning 20 points per dollar. I can't see any way to do it automatically, so I assume that this should be done manually for each product differentiating from the global setting.
If you try and it works this way, you may want to post your experience here for other users to learn and benefit. Good luck!
I will try that and get back to you. Thanks!
Re: Reward Points Module- Live Release now available.
Quote:
Originally Posted by
Sharni
I have tried searching this rather large thread for answers, but none of my key words get a result. So here goes.
I just installed this module on my cart. My business has been in operation for 2 years now, and I have a lot of loyal customers. I would like to give my existing customers reward points to match the orders that they have made. Is there a simple way to do this?
Thanks
Sharni
I couldn't find an answer, so I wrote one. Here is the code. You should copy this code and create a .php file with it. Place that file on your web server and replace the top line for connections with your own DB connection info. Execute the script by accessing it through your browser.
I have our sunrises period in the admin set to 31 so I wrote this to check whether the order is older than 30 days. You may adjust this to meet your needs.
This comes with NO warranty or guarantee. It did exactly what I needed it to though. The rewards points module creates 3 tables, one of which is only used to track the reward ratio of different categories, products, groups etc. . .
The additional two tables are what's important here. These tables are properly addressed in my lil' script.
Enjoy! John
BACKUP YOUR DB!!!
PHP Code:
<?php
// hour minute second month day year
require 'connections.php';
$sunrises = (30 * 24 * 60 * 60); //days x hours x minutes x seconds
$now = time();
$issue_rewards = array();
$query = mysql_query("SELECT * FROM orders_total WHERE class ='ot_subtotal'");
$cID = '';
$date = '';
while($row = mysql_fetch_assoc($query)){
$updates = array();
$query2 = mysql_query("SELECT * FROM orders_status_history WHERE orders_id ='$row[orders_id]'");
while($row2 = mysql_fetch_assoc($query2)){
$updates[] = $row2['orders_status_id'];
}
if(in_array('3', $updates) && !in_array('5', $updates) && !in_array('6', $updates) && !in_array('111', $updates) && !in_array('107', $updates) && !in_array('109', $updates)){
$round_val = round($row['value'], PHP_ROUND_HALF_DOWN);
//2008-01-18 18:16:51
$o_get_date_time = mysql_query("SELECT * FROM orders WHERE orders_id ='$row[orders_id]'");
while($this_date_time = mysql_fetch_assoc($o_get_date_time)){
$dt_parts = explode(' ', $this_date_time['date_purchased']);
$dt_date = $dt_parts[0];
$dt_time = $dt_parts[1];
$cID = $this_date_time['customers_id'];
$date = $this_date_time['date_purchased'];
}
$d_parts = explode('-', $dt_date);
$mo = $d_parts[1]; $da = $d_parts[2]; $yr = $d_parts[0];
$t_parts = explode(':', $dt_time);
$hr = $t_parts[0]; $mn = $t_parts[1]; $se = $t_parts[2];
$odate_secs = mktime($hr, $mn, $se, $mo, $da, $yr);
//$recompile = $yr.'-'.$mo.'-'.$da.' '. $hr.':'.$mn.':'.$se;//testing here
$date_math = $now - $odate_secs;
if($date_math < $sunrises){
//insert these points as pending
echo $count . ": OK! Order ID: " . $row['orders_id'] . ' Will Get: ' . $round_val . ' ' . $recompile . ' PENDING<br />';
mysql_query("INSERT INTO reward_status_track (rewards_id,customers_id,orders_id,date,reward_points,status) VALUES ('',$cID,$row[orders_id],'$date',$round_val,'0')") or die(mysql_error());
$exisitng_check = mysql_query("SELECT * FROM reward_customer_points WHERE customers_id ='$cID'") or die(mysql_error());
$exis_chk_nums = mysql_num_rows($exisitng_check);
if($exis_chk_nums < 1){
mysql_query("INSERT INTO reward_customer_points (customers_id,reward_points,pending_points) VALUES ($cID,'0',$round_val)") or die(mysql_error());
}else{
while($existing_record = mysql_fetch_assoc($exisitng_check)){
//$existing_rp = $existing_record['reward_points'];
$existing_pp = $existing_record['pending_points'];
}
//$new_rp = $existing_rp + $round_val;
$new_pp = $existing_pp + $round_val;
mysql_query("UPDATE reward_customer_points SET pending_points=$new_pp WHERE customers_id=$cID") or die(mysql_error());
}
}else{
//insert these points as earned
echo $count . ": OK! Order ID: " . $row['orders_id'] . ' Will Get: ' . $round_val . ' ' . $recompile . ' EARNED!<br />';
mysql_query("INSERT INTO reward_status_track (rewards_id,customers_id,orders_id,date,reward_points,status) VALUES ('',$cID,$row[orders_id],'$date',$round_val,'1')") or die(mysql_error());
$exisitng_check = mysql_query("SELECT * FROM reward_customer_points WHERE customers_id ='$cID'") or die(mysql_error());
$exis_chk_nums = mysql_num_rows($exisitng_check);
if($exis_chk_nums < 1){
mysql_query("INSERT INTO reward_customer_points (customers_id,reward_points,pending_points) VALUES ($cID,$round_val,'0')") or die(mysql_error());
}else{
while($existing_record = mysql_fetch_assoc($exisitng_check)){
$existing_rp = $existing_record['reward_points'];
//$existing_pp = $existing_record['pending_points'];
}
$new_rp = $existing_rp + $round_val;
//$new_pp = $existing_pp + $round_val;
mysql_query("UPDATE reward_customer_points SET reward_points=$new_rp WHERE customers_id=$cID") or die(mysql_error());
}
}
}
}
?>
Re: Reward Points Module- Live Release now available.
Quote:
Originally Posted by
carley
hey everyone - sorry if this has already been covered, i couldn't find this info on the pages i read through.
I've installed everything that came with version 1.4 of the module (from Andrews website directly). I've even had my hosting company help me, as I'm not sure what I'm doing & am learning as i go - with a lot of hiccups along the way!
When I use the diagnostics tool, I no longer have any files or folders showing in red, but i have the following showing in red in the "MySQL Database Check" section:
customers_id- field missing in reward_customer_points!!!
reward_points- field missing in reward_customer_points!!!
pending_points- field missing in reward_customer_points!!!
rewards_id- field missing in reward_status_track!!!
customers_id- field missing in reward_status_track!!!
orders_id- field missing in reward_status_track!!!
date- field missing in reward_status_track!!!
reward_points- field missing in reward_status_track!!!
status- field missing in reward_status_track!!!
Allow Redeem of Reward Points on Order Total or Subtotal- record missing in configuration!!!
I've done all the SQL patches I can find inside the module, and so has my hosting company. I'm almost begin told to give up on the module at this point, because it seems like this issue can't be fixed!
(extra info - version 1.33a, the one for DL through zen cart, it also had the same files showing in red when i installed it, which is why i tried this version)
Could anyone help me with this? tell me how to fix it? where to get the info to fix it?
I"m no programmer, I don't really knwo what i'm doing here, so I can't figure this out on my own. I"d really appreciate anyone helping me with this that can - i'd love to be able to fix this issue & use this mod!
Also - Is there a way to make it so my wholesale customers do NOT get reward points for any of their purchases? Since they already get a heavily discounted price in many cases, i don't wish to give hem points as well.
Re: Reward Points Module- Live Release now available.
Well I tried diff configs and still cannot get it right. I tried PM'ing the author with no response or either that he's too busy.
Re: Reward Points Module- Live Release now available.
well, i did really want to use this module, it seems great. but after reading all 178pgs of posts, not finding anyone else mentioning the issues the RPD is finding with missing lines in the SQL file, and after posting twice myself, without any reply or comment in response, and after trying to PM the author, only to find his inbox is full & msg can't be sent - I'm giving up.
I found another reward points mod for zencart, made by a company, and they're following up with people-supporting their mod & answering questions in their forum without people having to wait too long. and it's also free. so I'm going it a shot instead.
Oh well, this mod does seem better than the 1 i'm going to try, but it's not much better if it won't work & is missing things :(
Re: Reward Points Module- Live Release now available.
I am having the same problem that someone else is having - I just placed a test order and I saw the points at checkout, I can see them in my order status in the admin, but they are not appearing under the CUSTOMERS > REWARD POINTS screen...
It was working at one time.....I did tests months ago and they worked fine - now we are getting ready to launch the program and it does not work.
We did upgrade to 1.3.9H a few weeks ago - but would think that should not have any cause for this.
Does anyone have any ideas why they are not appearing?!?!?!
Thank you!
Re: Reward Points Module- Live Release now available.
Even more weird is that I just placed another test order, used points from the old test I did....at checkout I applied the points i had to the order....and saw that I was to earn 395 points for the new order...order went through fine and when I looked at CUSTOMER > REWARD POINTS i can see that the points WERE removed from the earned column....but there are no new PENDING points for this order.....
?!?!?!?!!?
Re: Reward Points Module- Live Release now available.
Quote:
Originally Posted by
Athens Collectibles
I think that you can do it. I have set the Global Reward Point Ratio to 5.00 with Catalog > Reward Points. This gives 5 points for every currency unit ($, €, £ or whatever your base currency is) spent, which is redeemed for 0.01 per point. That covers your question about the formula.
If you go to Configuration > Reward Points > Adjust Reward Points for Sales/Specials you can set it to 0 or 1 depending on what you want to do. Each of the options is explained there.
Although I have not played with it, I see that you can define a different Reward Point Ratio for a product. Go to Catalog > Reward Points where you will see the Global Ratio of 5.0000 in the box on the top right of the screen. Then, select a category and a product. You will find another box titled "Set Product Reward Point ratio:" where you can enter a different ratio for the individual product. In your case, if you don't want some products to earn points, enter 0.0000 in the box.
As I said, I have not tried it but this should be the purpose of setting a ratio on a product basis. You may for example want items of sale to get 2 rather than 5 points for every dollar spent, or you may want some other products advertised as earning 20 points per dollar. I can't see any way to do it automatically, so I assume that this should be done manually for each product differentiating from the global setting.
If you try and it works this way, you may want to post your experience here for other users to learn and benefit. Good luck!
Well the author finally got back to me. Looks like this rounds UP in whole points.
I have it set in global for all products at .005. So if someone purchases for $189.99 their points are 0.94995 which rounds up to 1 full point.
to redeem in orders total I have it set at 1 point equals 1 dollar.
I DON"T think the author wants to be bothered with questions so for the future anyone seeking to ask him, forget it. He's maybe just too busy to deal with it anymore.
"Reward Point Rounding
Rounding value- This is an adjustment to each product price before it is rounded to 0 decimal places to calculate product Reward Points (default 0.0)"
Does anyone know what this means or how it adjusts? Becase like in my example above. "So if someone purchases for $189.99 their points are 0.94995 which rounds up to 1 full point." I don't want it to round up. I want it to round down. So this amount should not be getting any points. Now if the total was $379.98 the points would be$1.8999 which should be only 1 point.
All in all, it seems like a good mod, seems there is a lot of confusion as the instructions aren't that clear. After 179 pages you would think all the questions would be answered.