Skip to content

Shopping Cart

What does this extension do?

It provides "Shopping Cart" functionality to CiviCRM that allows you to do the following things:

  • Add items to a Cart in various ways.
  • View cart.
  • Checkout and pay for the cart.

How does it work?

Per-user cart

Currently each contact can have a single cart "open" at any time.

Anonymous (not logged in) users are also supported - the cart is tracked via the session instead of a contact ID until checkout.

What can I add to the cart

Technically, you add any PriceFieldValue entities to the cart. Each one can specify a quantity, amount and description.

Currently, discount codes use the default "Donation" PriceFieldValue internally.

So, in theory, you can add any type of entity if it can be linked to a PriceFieldValue. In practise, at the moment, that means Event tickets, Memberships and Donations.

Can I use it with CiviDiscount?

Yes! But it might not work with various types of discounts at the moment. It's been tested with discounts for membership types.

Changes might be required to DiscountCode.Verify API in CiviDiscount and applyDiscount code in ShoppingCart to work with more discount types.

Support and Maintenance

This extension is supported and maintained with the help and support of the CiviCRM community by MJW.

We offer paid support and development as well as a troubleshooting/investigation service.