You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by Adam Heath <do...@brainfood.com> on 2010/02/08 23:56:31 UTC

shipping methods and promotions

We've got a client that wants to offer free shipping based on certain
conditions; namely, whether the order > a certain dollar amount.   If
the condition matches, then they can get the cheapest free shipping,
but only to a particular region, namely USA, and standard mail.

I can't see how to do that in the promo system.  I can match a promo
by total $$ amount.  I can't then give free
shipping(ProductPromoWorker references PROMO_FREE_SHIPPING, but that
isn't in the seed data).  Even fixing that problem, I don't see a way
to change the list of available shipping methods for a product store.

Can anyone offer any pointers?

Re: shipping methods and promotions

Posted by Jacques Le Roux <ja...@free.fr>.
From: "David E Jones" <de...@me.com>
> On Feb 8, 2010, at 5:14 PM, Adam Heath wrote:
>
>> Adam Heath wrote:
>>> We've got a client that wants to offer free shipping based on certain
>>> conditions; namely, whether the order > a certain dollar amount.   If
>>> the condition matches, then they can get the cheapest free shipping,
>>> but only to a particular region, namely USA, and standard mail.
>>>
>>> I can't see how to do that in the promo system.  I can match a promo
>>> by total $$ amount.  I can't then give free
>>> shipping(ProductPromoWorker references PROMO_FREE_SHIPPING, but that
>>> isn't in the seed data).  Even fixing that problem, I don't see a way
>>> to change the list of available shipping methods for a product store.
>>>
>>> Can anyone offer any pointers?
>>
>> Set a minimum price on the ProductStoreShipmentMeth, set an
>> includeGeoId.  That'll allow a shipping method to show up with an
>> appropriate name, saying it is free shipping.
>>
>> I still don't know how to keep the user from being charged for
>> shipping.  We'd like the shipping charge to show up as a separate line
>> item in the accounting system, I just don't want the user to be
>> charged for it.  Maybe an OrderAdjustment that negates the shipping
>> charge, but I don't see how to do that.
>
> It looks like you found it. Yes, there used to be a promo rule action for free shipping, but it stopped working after a 
> ShoppingCart refactor a LONG time ago and was never fixed because the shipping price calculation tends to do most of what people 
> want, or I guess is good enough...
>
> -David

I thought there has been a replacement for the promo rule action for free shipping (in trunk - only? - some months ago while the 
promo stuff has been refactored) and that now it worked again. May someone confirm?

Jacques 


Re: shipping methods and promotions

Posted by David E Jones <de...@me.com>.
On Feb 8, 2010, at 5:24 PM, Adam Heath wrote:

> David E Jones wrote:
>> On Feb 8, 2010, at 5:14 PM, Adam Heath wrote:
>> 
>>> Adam Heath wrote:
>>>> We've got a client that wants to offer free shipping based on certain
>>>> conditions; namely, whether the order > a certain dollar amount.   If
>>>> the condition matches, then they can get the cheapest free shipping,
>>>> but only to a particular region, namely USA, and standard mail.
>>>> 
>>>> I can't see how to do that in the promo system.  I can match a promo
>>>> by total $$ amount.  I can't then give free
>>>> shipping(ProductPromoWorker references PROMO_FREE_SHIPPING, but that
>>>> isn't in the seed data).  Even fixing that problem, I don't see a way
>>>> to change the list of available shipping methods for a product store.
>>>> 
>>>> Can anyone offer any pointers?
>>> Set a minimum price on the ProductStoreShipmentMeth, set an
>>> includeGeoId.  That'll allow a shipping method to show up with an
>>> appropriate name, saying it is free shipping.
>>> 
>>> I still don't know how to keep the user from being charged for
>>> shipping.  We'd like the shipping charge to show up as a separate line
>>> item in the accounting system, I just don't want the user to be
>>> charged for it.  Maybe an OrderAdjustment that negates the shipping
>>> charge, but I don't see how to do that.
>> 
>> It looks like you found it. Yes, there used to be a promo rule action for free shipping, but it stopped working after a ShoppingCart refactor a LONG time ago and was never fixed because the shipping price calculation tends to do most of what people want, or I guess is good enough...
> 
> but how can I keep the user from being charged for shipping, *only* if
> they select the free shipping method?
> 
> Let's say a user needs to purchase $35 of product.  Then, I add a
> promo that gives them a shipping discount of 100%.  However, if they
> choose the UPS Next Day air option, they should not get free shipping.
> The only way I can see to give them free shipping is in the promo
> system, but that is an all-or-nothing setup, I can't limit that by
> shipping method.

I'm sorry if I implied that the shipping price rules would satisfy every requirement you might have. As a generality that is certainly not the case. If there was as maximum price on them then you could set the min price for free shipping option and the max price for the rest of the shipping options.

-David


Re: shipping methods and promotions

Posted by Adam Heath <do...@brainfood.com>.
David E Jones wrote:
> On Feb 8, 2010, at 5:14 PM, Adam Heath wrote:
> 
>> Adam Heath wrote:
>>> We've got a client that wants to offer free shipping based on certain
>>> conditions; namely, whether the order > a certain dollar amount.   If
>>> the condition matches, then they can get the cheapest free shipping,
>>> but only to a particular region, namely USA, and standard mail.
>>>
>>> I can't see how to do that in the promo system.  I can match a promo
>>> by total $$ amount.  I can't then give free
>>> shipping(ProductPromoWorker references PROMO_FREE_SHIPPING, but that
>>> isn't in the seed data).  Even fixing that problem, I don't see a way
>>> to change the list of available shipping methods for a product store.
>>>
>>> Can anyone offer any pointers?
>> Set a minimum price on the ProductStoreShipmentMeth, set an
>> includeGeoId.  That'll allow a shipping method to show up with an
>> appropriate name, saying it is free shipping.
>>
>> I still don't know how to keep the user from being charged for
>> shipping.  We'd like the shipping charge to show up as a separate line
>> item in the accounting system, I just don't want the user to be
>> charged for it.  Maybe an OrderAdjustment that negates the shipping
>> charge, but I don't see how to do that.
> 
> It looks like you found it. Yes, there used to be a promo rule action for free shipping, but it stopped working after a ShoppingCart refactor a LONG time ago and was never fixed because the shipping price calculation tends to do most of what people want, or I guess is good enough...

but how can I keep the user from being charged for shipping, *only* if
they select the free shipping method?

Let's say a user needs to purchase $35 of product.  Then, I add a
promo that gives them a shipping discount of 100%.  However, if they
choose the UPS Next Day air option, they should not get free shipping.
 The only way I can see to give them free shipping is in the promo
system, but that is an all-or-nothing setup, I can't limit that by
shipping method.


Re: shipping methods and promotions

Posted by David E Jones <de...@me.com>.
On Feb 8, 2010, at 5:14 PM, Adam Heath wrote:

> Adam Heath wrote:
>> We've got a client that wants to offer free shipping based on certain
>> conditions; namely, whether the order > a certain dollar amount.   If
>> the condition matches, then they can get the cheapest free shipping,
>> but only to a particular region, namely USA, and standard mail.
>> 
>> I can't see how to do that in the promo system.  I can match a promo
>> by total $$ amount.  I can't then give free
>> shipping(ProductPromoWorker references PROMO_FREE_SHIPPING, but that
>> isn't in the seed data).  Even fixing that problem, I don't see a way
>> to change the list of available shipping methods for a product store.
>> 
>> Can anyone offer any pointers?
> 
> Set a minimum price on the ProductStoreShipmentMeth, set an
> includeGeoId.  That'll allow a shipping method to show up with an
> appropriate name, saying it is free shipping.
> 
> I still don't know how to keep the user from being charged for
> shipping.  We'd like the shipping charge to show up as a separate line
> item in the accounting system, I just don't want the user to be
> charged for it.  Maybe an OrderAdjustment that negates the shipping
> charge, but I don't see how to do that.

It looks like you found it. Yes, there used to be a promo rule action for free shipping, but it stopped working after a ShoppingCart refactor a LONG time ago and was never fixed because the shipping price calculation tends to do most of what people want, or I guess is good enough...

-David


Re: shipping methods and promotions

Posted by Adam Heath <do...@brainfood.com>.
Adam Heath wrote:
> We've got a client that wants to offer free shipping based on certain
> conditions; namely, whether the order > a certain dollar amount.   If
> the condition matches, then they can get the cheapest free shipping,
> but only to a particular region, namely USA, and standard mail.
> 
> I can't see how to do that in the promo system.  I can match a promo
> by total $$ amount.  I can't then give free
> shipping(ProductPromoWorker references PROMO_FREE_SHIPPING, but that
> isn't in the seed data).  Even fixing that problem, I don't see a way
> to change the list of available shipping methods for a product store.
> 
> Can anyone offer any pointers?

Set a minimum price on the ProductStoreShipmentMeth, set an
includeGeoId.  That'll allow a shipping method to show up with an
appropriate name, saying it is free shipping.

I still don't know how to keep the user from being charged for
shipping.  We'd like the shipping charge to show up as a separate line
item in the accounting system, I just don't want the user to be
charged for it.  Maybe an OrderAdjustment that negates the shipping
charge, but I don't see how to do that.