I am using the uc_discounts_alt module on a Drupal 6 / Ubercart 2 site to provide specific dollar amount discounts for specific products. The discounts bring the product price down to zero, and conditional actions check for that discount code and, if found, make the shipping cost $0 as well.

I enabled the Ubercart Free Payments Module to allow these free orders to check out, but the cart states that the credit card info is missing when I to proceed to the order confirmation page. Apparently the Free Payments Module is not working as expected.

Is there any way I can hide or otherwise disable the payment panel when a certain discount is being applied... or any other options that may give me the functionality I need? Unfortunately, I am in a bit of a time crunch as we have a big promotion starting tomorrow, and this issue was masked by another payment method.


1 Answer 1


I was able to fix the problem by modifying the "Free Order" payment method's Conditional Action. Free Order is the payment method associated with the Ubercart Free Payments Module and comes pre-loaded with a CA that checks the cart total to see if it is more than $0.01... if it is more than that, it negates that condition and does not allow the Free Order payment method in the cart.

I changed that CA to instead check whether the cart had the discount(s) in question. If the discount(s) was used, the cart pulls in the Free Order payment method, and it all works as expected.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.