Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Maximum Quantity per Order


aslan23

Recommended Posts

Posted

call me crazy, but the rest of us are trying to get the customer to buy as much as they possibly can, Why would you want to limit the amount of items a customer can purchase?

If it was easy, anyone could do it!

Posted

A reasonable question, let me explain...

 

Being a newbie at this (and doing quite well so far) there is one thing I just can't get to grips with. The store I am currently building has car seats for sale, lots of them. My client has requested some awkward shipping method which I can't seem to get my head around and have been avoiding the issue for some time now. The seats shipping needs to be charged at 20.00 for 1 or 2 seats 40 for 3 & 4 seats etc etc. This is because the shipping is charged per box and each box can take 2 seats.

 

I am using the shipping contribution that enables individual shipping costs per item (set at 20.00 per seat) and an extra shipping field per extra item ordered (set to 0 per seat). Ordering 2 seats would have a total shipping cost of 20.00 but every seat after the first one is charged at 0.00 shipping so the shipping cost will go no higher than 20.00 no matter how many seats are ordered.

I am presuming that most people will only buy 2 seats at a time and so the only way I can see to get it working is limit the quantity to two seats per order in the cart.

Ideally a customer could order more of the same seat but without it being added to any seats already in their cart.

 

I don't remember the name of the contribution I am using, sorry.

 

If I could find a better way then that's good but haven't had much luck so far.

 

Hope that answers your question. Hope that means you can answer mine now you know what it's all about. (I live in hope).

Posted

My reason is because I sell items at VERY low prices with a limited quantity on hand. I want these items to be available to as many people as possible.

Posted

Hi,

 

This kind of problem happens to a lot of people.

 

Since you are using flat rate shipping then what I would do is look at your monthly shipping revenue vs monthly shipping cost and find the magic flat rate so you dont lose money on shipping. Thats what flat rate is average rate to recover shipping cost.

 

qty 1 shipped local = $8

qty 2 shipped local = $10

qty 1 shipped cross country = $15

qty 2 shipped cross country = $18

 

flat rate = $14

 

 

Otherwise...

 

You can find the flat rate calculation in the shipping class and do an odd/even check on the quantity to calculate the rate.

 

If you want something more advanced then start by looking into this mod

 

http://www.oscommerce.com/community/contributions,1323

 

Snip...

function packProducts($productsArray) {
 // This algorithm is trivial. It works on the premise that you have selected
 // boxes that fit your products, and that their volumes are resonable multiples
 // of the products they store. For example, if you sell CDs and these CDs are
 // 5x5x0.5", your boxes should be 5x5x0.5 (1 CD mailer), 5x5x2.5 (5 CD mailer)
 // and 5x5x5 (10 CD mailer). No matter how many CDs a customer buys, this
 // routine will always find the optimal packing.
 //
 // Your milage may differ, depending on what variety of products you sell, and
 // how they're boxed. I just made up this algorithm in a hurry to fill a small
 // niche. You are encouraged to find better algorithms. Better algorithms mean
 // better packaging, resulting in higher quoting accuracy and less loss due to
 // inaccurate quoting.
 //
 // The algorithm proceeds as follows:
 // Get the first, smallest box, and try to put everything into it. If not all
 // of it fits, try fitting it all into the next largest box. Keep increasing
 // the size of the box until no larger box can be obtained, then spill over
 // into a second, smallest box. Once again, increase the box size until
 // everything fits, or spill over again. Repeat until everything is boxed.
 //
 // The cost of a box determines the order in which it is tried. There will definitely
 // be cases where it is cheaper to send two small packages rather than one larger one.
 // In that case, you'll need a better algorithm.

 // Get the available packages and "prepare" empty boxes with weight and remaining volume
 // counters. (Take existing box and add 'remaining_volume' and 'current_weight';

Posted
Hi,

 

This kind of problem happens to a lot of people.

 

Since you are using flat rate shipping then what I would do is look at your monthly shipping revenue vs monthly shipping cost and find the magic flat rate so you dont lose money on shipping. Thats what flat rate is average rate to recover shipping cost.

 

qty 1 shipped local = $8

qty 2 shipped local = $10

qty 1 shipped cross country = $15

qty 2 shipped cross country = $18

 

flat rate = $14

Otherwise...

 

You can find the flat rate calculation in the shipping class and do an odd/even check on the quantity to calculate the rate.

 

If you want something more advanced then start by looking into this mod

 

http://www.oscommerce.com/community/contributions,1323

 

Snip...

function packProducts($productsArray) {
?// This algorithm is trivial. It works on the premise that you have selected
?// boxes that fit your products, and that their volumes are resonable multiples
?// of the products they store. For example, if you sell CDs and these CDs are
?// 5x5x0.5", your boxes should be 5x5x0.5 (1 CD mailer), 5x5x2.5 (5 CD mailer)
?// and 5x5x5 (10 CD mailer). No matter how many CDs a customer buys, this
?// routine will always find the optimal packing.
?//
?// Your milage may differ, depending on what variety of products you sell, and
?// how they're boxed. I just made up this algorithm in a hurry to fill a small
?// niche. You are encouraged to find better algorithms. Better algorithms mean
?// better packaging, resulting in higher quoting accuracy and less loss due to
?// inaccurate quoting.
?//
?// The algorithm proceeds as follows:
?// Get the first, smallest box, and try to put everything into it. If not all
?// of it fits, try fitting it all into the next largest box. Keep increasing
?// the size of the box until no larger box can be obtained, then spill over
?// into a second, smallest box. Once again, increase the box size until
?// everything fits, or spill over again. Repeat until everything is boxed.
?//
?// The cost of a box determines the order in which it is tried. There will definitely
?// be cases where it is cheaper to send two small packages rather than one larger one.
?// In that case, you'll need a better algorithm.

?// Get the available packages and "prepare" empty boxes with weight and remaining volume
?// counters. (Take existing box and add 'remaining_volume' and 'current_weight';

 

Thanks for the help. Starting to see things more clearly now and really delved into this this evening.

My latest atempt was to use the table rate shipping method and by putting ridiculously high weigts for the seats.

 

If I put the weight of each seat at say 400 and set anything from 400 up to 1199 to cost 20.00. From 1200 to 2399 the cost is 40.00.

I've quickly tested this on one seat and it seems to work fine, ordering 1 or 2 seats sets the shipping to 20.00 and 3 or 4 seats sets the shipping to 40.00, just need to get my calculator to work out the figures for the any higher amounts.

 

Also because of the smaller items in the catalog I will need to place some smaller figures in between the figure's for the seats to make sure that the shipping for the smaller items is calculated too.

 

I'm keeping your tips as a back-up for now as i'm still not entirely sure i've found the best way to do this.

 

Thanks for your help.

Posted

Why not use the minimum order contribution (you can do a search for it) and make minor changes to it, that it checks for maximum order leve=ls, rather then minimum levels should be a simple switching of the < for >.......

 

Then you need to make some type of flag to signify if this routine is to be used or not, a simple field in the product edit page could do this for you, for example

 

if (($total_items > MAX_TOTAL) && (MAX_TOTAL > 0))

 

I am sure this could do something like max order limits......

 

 

cheers,

 

Peter M.

Peter McGrath

-----------------------------

See my Profile (click here) for more information and to contact me for professional osCommerce support that includes SEO development, custom development and security implementation

  • 1 month later...
Posted

hmm .. anybody made this? .. i would also need to enter maximum number .. we sell concert tickets .. and we have to make limit .. max 10 tickets per person ...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...