Disclaimer: We're in the middle of seeking a new ecommerce solution and are considering switching over from ZenCart to a CivicSpace site with the Drupal ecommerce module. I haven't tried to install and run the commerce module, yet, so the following may not be an issue, but the documentation seems to imply that it might be. Please be nice if this is a stupid question... ;-)

We sell event tickets for events which may have limited seating. We need inventory control, but all tickets are handled as "will call" meaning that the customer picks them up at the registration desk at the event. There's no shipping, and we've found that asking for a shipping address for products that aren't shipped leads to significant confusion (and lots of customer support emails).

Is there a module that allows for inventoried generic objects? If not, I'd love to see the generic module support inventory, or the tangible module allow suppression of shipping, or whatever is the easiest way to acheive the goal. ;-)

Comments

neclimdul’s picture

There is no such module but, one could be made without much difficulty. Other than the descriptive shipping text that shows up all over the tangible product, this should happen if you simply removing line 65 from tangible.module.

      $attributes = array('is_shippable');

Personally I think it might be worth considering to convert the tangible module to support nonshippable tangible products like this but that is up for discussion.

If you wanted to do a custom module for the site, you could just copy the tangible module to "ticket.module" or what ever you wanted to call it, rename the functions(ticket_help, etc.), clean up the strings to fit your purpose, and remove that one line.

somebodysysop’s picture

Is there a way to send the end-user a custom e-mail (specific to tickets sales) automatcially? That is, after the tickets are purchased, an e-mail is sent with instructions on where to go and what to do with the e-mail receipt?

neclimdul’s picture

Status: Active » Closed (fixed)

Yes in 4.7.x-3 that should be a possibility with the ec_mail module.

Going to assume the original issue has been solved do to a lack of responce.

somebodysysop’s picture

Version: 4.7.x-1.x-dev » 4.7.x-2.1
Status: Closed (fixed) » Postponed (maintainer needs more info)

I just followed the instructions to create a ticket module from the tangible module. Even was able to send mail (using store_email_send) when transaction is completed. Module appears to work fine. Transaction is completed (when paid) without requiring manual completion (for shipping). Inventory control works as well.

I removed the "attributes" line as described. However, when I go to view the transaction http://mysite.com/store/transaction/view/trans_id, I see addresses in both Shipping to and Billing to. How do I prevent an address in Shipping to from appearing if the item is a non-shipped item?

Thanks!

somebodysysop’s picture

My recommendation:

I have followed the instructions above and created a ticket module. However, deleting that $attributes line causes problems down the line. I got this error:

warning: in_array(): Wrong datatype for second argument in /modules/ecommerce/product/product.module on line 1000

I recommend replacing the current $attributes = array('is_shippable'); line with

		$attributes = array('online'); // my own guess at it

This way, the attribute array is created, and you at least won't get the problems I had.

sime’s picture

Status: Postponed (maintainer needs more info) » Fixed
Anonymous’s picture

Status: Fixed » Closed (fixed)