Are following features part of Commerce

We are planning a shop for a travel agency. Travels are basically like digital products. And so far I think commerce will fulfill our main requirements. But I have still some questions if this would be possible:

  1. Voucher/Coupon codes for discount
  2. Last seen products: List of products/travels the user has seen before
  3. Favorite Lists: Click on icon to store product in a list
  4. Configure products with options or variations

Hi @ivmedia
Sorry for the delayed response, it seems I’ve missed notifications for the last couple of posts.

  1. Commerce includes coupons that can be used for discounts: Coupons - modmore documentation
  2. Listing previously viewed products is not included in core out of the box, but this could be included via a snippet. That’s a good idea for a module!
  3. Favourite listings are also not included in core out of the box, I know people have added their own implementations however.
  4. Commerce has quite a few choices for product option/variation configuration

Note that for #2 and#3 above, while these could potentially be Commerce modules, typically products are displayed via resources, so any MODX snippet that can keep track of resources/links visited and favourited will work for the related products too.

Sounds great so far. I got much more insight about the products. Now I want to start entering the products. But I’m not sure how to start.

Her some infos:

  1. The products are Dive-Travel trips.
  2. Each trip can have different prices depending on the season/month, i.e. A=Jan->June, B=July → Dec.
  3. Tours can be grouped together. For example: In the Caribbean Sea we have Trip »Barbados«, in the first two weeks of October we have route »North«, second two weeks we have route »west«.
  4. We have different types of rooms.

If I understand it right, each item with each price relevant option is a unique product. This means the Barbados trip are four products:

  • Barbados - Route North - Season A - Double room
  • Barbados - Route North - Season A - Single room
  • Barbados - Route North - Season B - Double room
  • Barbados - Route North - Season B - Single room
  • Barbados - Route West - Season A - Double room
  • Barbados - Route West - Season A - Single room
  • Barbados - Route West - Season B - Double room
  • Barbados - Route West - Season B - Single room

For the trip I create a resource and add the products as a product matrix. Correct?

Another questions:
Trips have no delivery method. Is there a way to ignore delivery process? Or should I use digital products. But they don‘t have downloads.

Hi @ivmedia,

Yes that’s correct, you can create the products via the Product Matrix TV, if that’s what you’re choosing to use.

Or simpler, you could use the products TV and have a dropdown on the product page for Double or Single room.
So in this case you’d have 4 resources and each would have a Products TV containing two products
For the resource Barbados - Route North - Season A you’d have:

  • Barbados - Route North - Season A - Double room
  • Barbados - Route North - Season A - Single room

And you could also create these products in the products tab of the Commerce manager page.

As for the delivery type, in the delivery type configuration, you can set the “Show shipping step” option to “Never”. You won’t need to use the Digital Product module for that! :slight_smile:

Thanks @digitalpenguin, this sounds fine for me. But some additional questions came up:

Booking Flow
The user should see first one product, i.e. »Barbados - Route North - Season A - Double room«, if he clicks »Book« he will come to the booking form there he can select from different room options, like Deluxe, Suite, etc… These room classes are individual for each travel or hotel. Perhaps a product matrix is more useful.

Product informations
Normal products have a weight for delivery. I need some other values, like:

  • amount of nights
  • price unit (price is per person or per room)
  • start date of trip

Currently I use weight, for nights, and the weight unit for (per person, per room). Starting date is coded into the last six characters of the SKU. But this is not very scalable. A custom product could be more useful. Or add additional Information as product properties (How?).
Perhaps it would be better to have two different custom products, one for hotel bookings and one for trips.
Naming the products will also become a problem, because the displayed name could be the same for same trips starting on different dates - but this will creates issues in the commerce backend. It would be nice to a have a displayed name and an internal name.

Huge amount of products
Currently we calculated about 40 different prices for each travel, because every week starts a new round trip - room-Class not included. If we add room classes we would have 160 products per travel, plus optional things like breakfast included, transport from airport, etc…