Payment/order workflow

There has been some discussion about the problem of failed orders but I would like to extend this discussion a bit to see what other areas could be improved in order placement and management.



One thing that comes to mind is that you should be able to specify in Payment Methods what order status is assigned to successful (approved), unsuccessful (declined) and review/pending (failed) outcomes. Some other carts do this which allows you to create custom workflows in your order administration for differing payment methods (e.g, different workflows for a failed credit card order than for an order placed on account by purchase order).



It seems it would also be beneficial to separate out the reason for failure rather than using the order status. For any payment method, there are really only three outcomes: successful, unsuccessful or review. For any unsuccessful or review outcome, they should provide the reason for the outcome. In conjunction with assigning order statuses based on payment methods, you could then work a list of problem orders knowing what the specific problem was.



There is still the issue of how to best handle unpaid orders. Do you create and assign an order number or not? The best way may be to create the order but assign a separate invoice number once an item is paid. This would allow the customer to return in the future to finalize payment using the order number. You could also change the order confirmation emails to send either the order confirmation or a reminder that their order was not completed.



These are just a few ideas - I am sure others have different ideas that could improve this area. Let’s toss around some ideas here so that we can request that the developers improve this critical area.



Bob

[QUOTE]There is still the issue of how to best handle unpaid orders. Do you create and assign an order number or not? The best way may be to create the order but assign a separate invoice number once an item is paid.[/QUOTE]



Perhaps assign an order number with a suffix of -P (for Pending) so that they are easily distinguishable?

[quote name=‘Struck’]Perhaps assign an order number with a suffix of -P (for Pending) so that they are easily distinguishable?[/QUOTE]

That would probably work. The downside though is that it would probably be a little slow, especially if you have a busy site - the order number field is indexed and also is the related field to a number of other tables where it is also indexed. Still, I like the simplicity of this approach.



For me, the opportunity to establish different workflows based on setting the order status returned by a specific payment method is really attractive. Currently, you need to manually collate orders for any special handling - I think it would be a great timesaver to let the system do this instead. For instance, a person could verify Paypal payments without having to wade through other non-Paypal orders.



Anyone else have thoughts on these issues?



Bob