Shipping by Rules for VirtueMart

IMPORTANT ANNOUNCEMENT: Plugin development ceased, all plugins made available freely (GPL)

With great sadness we have to announce that we are ceasing development of all our VirtueMart, WooCommerce and Joomla plugins. Effective immediately, all our plugins -- even those that were paid downloads -- are made available for free from our homepage (GPL license still applies), but we cannot and will not provide any support anymore.

It has been a great pleasure to be part of the thriving development communities of VirtueMart as well as WooCommerce. However, during the last year it became painstakingly clear that in addition to a full-time job, a young family and several other time-consuming hobbies at professional level (like being a professional singer) the plugin development and the support that it requires is not sustainable and is taking its toll. It has been an honor, but it is now time to say good bye!



The forum is in read only mode.
Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1


shipping free coupon use attention 07 Nov 2017 23:55 #1

  • originalmuranoglass
  • originalmuranoglass's Avatar Topic Author
there is a way to use the amount after coupon use?
i have problem to set the rules to have total order(paid) above 399 euro to be free shipping.

for example:
i got an order from a client of total bill 374 euro
the product sale price is 440euro
-15%off coupon used 66euro
amount 374 euro
the rule in error calculate freeshipping!!!

i dont want this, it should pay for shipping for paying not 399euro.

i dont want that who use coupon discount get free shipping if
total amount - coupon discount is <399euro

is there a way?

this is my rules:
Name=Freeshipping; Weight<=1; Shipping=0
Name=Parcel 1kg; 1<Weight<1000; Amount<399; Shipping=35
Name=Parcel 3kg; 1000<=Weight<=3000; Amount<399; Shipping=45
Name=Parcel 4kg; 3000<Weight<=4000; Amount<399; Shipping=60
Name=Parcel 6kg; 4000<Weight<=6000; Amount<399; Shipping=75
Name=Parcel 9kg; 6000<Weight<=9000; Amount<399; Shipping=90
Name=Parcel 11kg; 9000<Weight<=11000; Amount<399; Shipping=100
Name=Parcel 13kg; 11000<Weight<=13000; Amount<399; Shipping=130
Name=Parcel 16kg; 13000<Weight<=16000; Amount<399; Shipping=150
Name=Parcel 25kg; 16000<Weight<=25000; Amount<399; Shipping=160
Name=Parcel more than 30kg; 25000<Weight; Amount<399; Shipping=180
Name=Parcel 5kg (Chandeliers or Mirrors); Condition=contains_any(Categories, 16, 109, 115); Weight<=5000; Shipping=70
Name=Parcel 8kg (Chandeliers or Mirrors); Condition=contains_any(Categories, 16, 109, 115); 5000<Weight<=8000; Shipping=100
Name=Parcel 10kg (Chandeliers or Mirrors); Condition=contains_any(Categories, 16, 109, 115); 8000<Weight<=10000; Shipping=130
Name=Parcel 15kg (Chandeliers or Mirrors); Condition=contains_any(Categories, 16, 109, 115); 10000<Weight<=15000; Shipping=160
Name=Parcel 25kg (Chandeliers or Mirrors); Condition=contains_any(Categories, 16, 109, 115); 15000<Weight<=25000; Shipping=190
Name=Parcel more than 30kg (Chandeliers or Mirrors); Condition=contains_any(Categories, 16, 109, 115); 25000<Weight; Shipping=250
Name= SHIPPING FEE INCLUDED; 399<=Amount; Shipping=0

thank you

shipping free coupon use attention 11 Nov 2017 17:27 #2

Dear OriginalMuranoGlass,
You are right, the Amount variable holds the full order amount before coupons are applied.

Which coupon system do you use? Are you using the native VM coupons or do you use AwoCoupons?
If you use AwoCoupons, please see open-tools.net/forum/shipping-by-rules-p...nt-applied.html#5551 and the following post.

If you use the native VM coupons, then there is currently no way. In the upcoming version 6.2.5 of the plugin, we will add the CouponAmount and AmountAfterCoupon variables that hold the values after a coupon is applied.

Looking at your rules, I think you need to place the rules with the contains_any conditions before the other rules, because the plugin will use the first matching rule that it encounters. If you have an order with e.g. 3kg and a product from category 16, then then "Parcel 3kg" rule will already match and will be used. The Candeliers rule will never even be reached!

Best regards,
  • Page:
  • 1