philip937:
...
step 1 install invoice only
step 2 to install admin edit orders
step 3 customise initial email order confirmation notifying order is being reviewed
step 4 create a order statuses of 'awaiting payment' & 'paid'
step 5 custom code something so that when order status to changed to 'awaiting payment' it send the normal order confirmation email with a link instead of saying 'view detailed invoice' change to 'Pay for order' (or something similar) link still takes them to order details
step 6 create a custom paypal button (based order details) to show on the order detail page that only shows when the order status is 'awaiting payment' and title it 'pay now'..
step 7 somehow get the ipn to change the order status from awaiting payment to 'Paid' once payment is taken and so that the pay now button now longer shows.
This is similiar to a workflow I've been working towards... 1) Customer calls or requests a quote online. 2) Order is added to Zen Cart (by customer or by employee). 3) Customer notified the request has been received. 4) Customer notified of payment required to complete order (and any other order status changes). 5) Customer visits website to complete order (or calls in payment). A little different workflow, but one I've had clients request in the past.
Changes to be made in templates / database (already supported by Zen Cart)
- Add new order status. For example "Shipping Quoted", "Awaiting Payment", "Completed", etc.
- Adjust payment module settings for which status to set on the order.
- Modify order confirmation email template.
- Modify order status / updated email template.
- Change the order status and send email w/ order comment(s).
Needed Zen Cart add-ons / plugins
- "Request Shipping Estimate" shipping module (for those who deal with freight or when unable to pre-determine shipping options). I've built a non-public one of these - most stores probably would not need this.
- "Request Quote" payment module (for shipping estimate, quote requests on an order, etc). I've built one of these and made changes to custom templates to add additional verbiage and set the order status.
- Admin interface to create a new customer (lat9's Add Customer or Admin New Order).
- Admin interface to add new orders (Admin New Order).
- Admin interface to bulk add orders (for those using 3rd party order management - not something I plan to tackle at this time).
- Admin interface to modify orders and shipping information (ever wonder why Edit Orders was recently revamped?).
- Admin interface to bulk print / export completed orders not already exported (a couple plugins come to mind here).
- Customer interface to rebuild order and request payment w/ the "Request Quote" payment module disabled.
DivaVocals:
Wanted to point this out.. Your workflow implies that the order is "incomplete" (as in unpaid) from a standard e-commerce transactional POV.. I'm thinking that whatever solution is built is going to have to make SOME edits to Edit Orders to support your workflow..
If no payment is taken up front Edit Orders should work. If a portion of the payment is being taken up front... Then modifications to Edit Orders would be needed...
I see a couple different ways to handle "partial prepay" or "down payment". One would be large changes to Edit Orders... One would be small changes to Edit Orders (involves creating an order total module for "down payment" or giving "store credit" for the prepaid amount, cloning the order to a new order #, changing the old order to use a non taxable product labeled "down payment" for the original order amount, adding the "down payment" or credit order total to the new order #, and notifying the customer via email).
Other thoughts
Of course following up with a phone call to customers would also be a good idea (and logging the call using order comments). Many of the required modules have been built excluding #8 (Collect Customer Payment Online).
I've obviously put way too much time into things about this (and somewhere I actually have a UML state diagram)... So may be missing something obvious... What are other people's thoughts?
The glass is not half full. The glass is not half empty. The glass is simply too big!
Where are the Zen Cart Debug Logs? Where are the HTTP 500 / Server Error Logs?
Zen Cart related projects maintained by lhûngîl : Plugin / Module Tracker