rubygirl Posted December 29, 2005 Share Posted December 29, 2005 Hello all - just received a very strange request from a client yesterday and I am racking my brain trying to figure out where to start ... The client is currently using a pretty modded OS store - what they have now decided is that when either they enter an order via the admin or when a client purchases products via the store - they want each product to post as an individual order - let me see if I can explain that a little better: I am a client and I go to the site and purchase 3 contracts (Service) - the contracts can and will be used individually for certain items - so if all 3 contracts come in as 1 order - when the order is updated - the updates apply to all the contracts instead of to 1 so I can't close out the ticket until they are all used but if I do that I don't know how much is used - here's another generic example: I purchase 3 products - 1 apple, 1 banana and 1 book The client then wants to receive 3 order #s - 1 for the apple, 1 for the banana and 1 for the book so that when they have updated the apple order - they can close it out but the banana and book are still pending ... Now obviously one way is to simply enter each product ordered as 1 order - but to ask their clients to go through the whole checkout process 3 (or more times) in order to submit their orders is crazy - not to mention the transaction fees for the cc processing on each item ... so I need to know if I can have the client place an order as they normally would - but then have the order "split" into however many products were ordered - even if the order # became 12345A, 12345B, 12345C so that you can tell that they are pieces of the same order. does anyone have any ideas???? thanks for any suggestions - questions are welcome too if my examples are too confusing .... thanks! Link to comment Share on other sites More sharing options...
tarheit Posted December 29, 2005 Share Posted December 29, 2005 I'm sure it's quite possible to simply split the order into 3 after payment. In fact if I went this route I'd probably create a new status 'Paid', 'Original Order' or somthing similar, then I'd assign the order this status and create the new orders. I would also add a field to the orders table so that if the client viewed his order info for the original order it could display the new split orders (with links to each). This way the customer could view the billing info, etc. and your client could still see the 3 as seperate orders. Keeping the original order around may be easiest for reporting (actual number of transactions, etc.) Alternately you could just add a new field to the orders_products table that stores the status of each product. You would have to alter the orders pages so it displays this status, and on the admin side could allow the status to be changed. This I think is the simpler way to go and would probably be less confusing to the customer. -Tim Link to comment Share on other sites More sharing options...
rubygirl Posted December 29, 2005 Author Share Posted December 29, 2005 Thanks Tim for giving me some thoughts and letting me think this isn't completely impossible (-; in your first suggestion - you mention: "then I'd assign the order this status and create the new orders. " does that mean that you would manually create 3 new orders for each order submitted? Or is there a way to have the cart automatically create them? This client processes about 3000 product sales per day and I can't imagine them having to create the orders manually from an order that was submitted from the client. Maybe I am misunderstanding your suggestion though??? as for your second suggestion - that sounds great but I don't know how to implement that - can you elaborate a bit? thanks again! Link to comment Share on other sites More sharing options...
tarheit Posted December 29, 2005 Share Posted December 29, 2005 "then I'd assign the order this status and create the new orders. " Or is there a way to have the cart automatically create them? I'd definately have the cart automatically create them either after payment success. Or if there is any manual processing of the order, on the ok or click of a button on the administrators side. as for your second suggestion - that sounds great but I don't know how to implement that - can you elaborate a bit? Either solution would involve modifying the database structure and some html, php and sql programming. Unfortunately I don't know of any current contribution that does what you want For the 2nd option you would have to add a field to the orders_products table and modify /admin/orders.php to show and allow changing the the status for each item ordered, and /account_history_info.php so that the customer can see the status of each item ordered. Not exactly a trivial change but a big one either. Of course this is the great thing about osCommerce, most everything you can think of can be done, though understandably not out of the box and can take a bit of programming. -Tim Link to comment Share on other sites More sharing options...
rubygirl Posted December 31, 2005 Author Share Posted December 31, 2005 I'm still not sure where to start - of course adding the tables to the database is no big deal ... but where would I start to have the orders - at either checkout success or via the order editor in the admin area - convert themselves into multiple orders (1 for each product ordered). I would think this would be a great solution for all the people on the forum looking for solutions to backordered products and being able to change the status per product instead of per order ... is this something you feel comfortable actually doing or are you giving me ideas of how to implement it? anyone else have any ideas as well as to where to start coding this - I would be more than happy to post it as a contribution if I can get this to work Happy New Year and thanks! Link to comment Share on other sites More sharing options...
tarheit Posted January 1, 2006 Share Posted January 1, 2006 product instead of per order ... is this something you feel comfortable actually doing or are you giving me ideas of how to implement it? I'm no expert, but I'm sure it's something I can implement. (I never had thought of the partial backorder issue, but it could be useful.) I'm inclined to think the status per item would be the simpler and less confusing way to the customer to go. Then I'd add another order status so you would have 'Partial shipment' along with 'shipped' (or something similar) so it's easy to keep track of which orders are complete. Then each item in the order could have the status 'shipped', 'backordered', etc. -Tim Link to comment Share on other sites More sharing options...
rubygirl Posted January 8, 2006 Author Share Posted January 8, 2006 okay - so is this something you would be up to helping me with - I have no problem releasing it as a contribution - there does seem to be a pretty big demand for a contrib that will handle partial shipments. so just to clarify what I need for my client: I need to be able to allow the customer to order multiple products - all in one order. Then either have that one order - split into multiple orders based on the number of products all trackable as having come from that one order - example order # 1000 would become #1000a, 1000b, 1000c or something like that. If that is too difficult - then I need to be able to allow the customer to order multiple products and then on the order side - let any comments pertaining to each individual item - including client comments, product status, admin only notes etc be individualized - so that each product has its own area to view communication. If changing the status of each product is possible individually that would the best starting point I think - as you suggested and I think that would fix the partial order issue that OS doesn't currently address. I had thought however if the orders could be split into multiple orders in the backend - then they would automatically have their own status, etc... that wouldn't be easier? Link to comment Share on other sites More sharing options...
tarheit Posted January 9, 2006 Share Posted January 9, 2006 It certainly could be done by just splitting the orders into multiple orders and just having the original order have a reference to each of the orders. It might be a little bit simpler because each item would by default get it's own status, but I think it has some problems for general use. How does shipping, taxes, etc. get split. (Even taxes can be hard due to rounding issues). Management of the order becomes more difficult (For example, you would have to change the status on 10 orders for an order of 10 items and checking on a customers large order could take awhile. Modifying, canceling or any other adjustments could take awhile.) Customer confusion would be another, as multiple orders would show up in their history. The 'sub-order' numbers may have no real pattern as currently osCommercs stores order numbers as a strictly a number so you couldn't have an a,b,c pattern. For the typical osCommerce user this may not be the most desirable method as most orders probably get shipped out together (possibly as multiple packages) and only some have a backorder similar status. Still this is completely possible if your client wants to go this route. I think what would generally be more useful to more people would be a status by item where each can have: item status - Pending, Shipped, Backordered, etc. based on the current status options (configurable in the database already) item comment and possibly tracking number/shipper info. It would certainly be cleaner in the long run I think and more useful to more people. It may more changes than splitting the order, but I think once you end up address the problems splitting orders causes (if possible) it will end up being less work. -Tim Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.