Ubercart Conditional Payment

Primary tabs

This module adds workflow_ng (in Drupal 5) and Conditional Actions (in Drupal 6) support to Ubercart payment methods, so payment methods can be restricted by cart total, user role, or any other conditions that these modules provide.

This does not override the standard payment methods page at /admin/store/settings/payment/edit/methods - disabled payment methods will never be available, and enabled payment methods will (unless a condition is added) be available at checkout.

Drupal 5 example

Restricting the "Other" payment method to cart totals of at least $100.00:

1. Enable the "Conditional payments", "Payment Method Pack" and "Workflow UI" modules.
2. Visit the workflow-ng administration page and note that a new rule is listed for each available payment method.
3. Click on the "Payment via Other" rule, then "Add a condition".
4. Select "Compare cart total" from the dropdown list and click Add.
5. Give the condition a label such as "Check cart total is at least $100".
6. Select "Greater than or equal to" for the operation and enter "100" in the price field.
7. Click Submit to save the new condition.

Drupal 6 example

Restricting the "Other" payment method to cart totals of at least $100.00:

1. Enable the "Conditional payments", "Payment Method Pack" and "Conditional Actions" modules.
2. Visit the Conditional Actions administration page and note that a new predicate is listed for each available payment method.
3. Click "edit" for the "Payment via Other" predicate, then "Conditions".
4. Select "Compare the cart total to a specified price" from the dropdown list and click "Add condition".
5. Give the condition a title such as "Check cart total is at least $100".
6. Select "Greater than or equal to" for the operation and enter "100" in the price field.
7. Click "Save changes".

The Drupal 6 version also supports order conditions such as billing or delivery country, and will dynamically update the available options on the checkout page accordingly.