Commerce SOS: An Order Management System for Drupal Commerce 1.x
The Commerce Simple Order System (SOS) is a system that lets you place and manage orders through a simple UI. Drupal Commerce is powerful, flexible, complex and super awesome! However, the admin interface for creating and managing orders is challenging for a typical user and lacks simplicity. Ease of use was the primary goal when we designed the SOS interface. From creating a customer to making the final order payment, Commerce SOS has you covered.
A better order management UI
As the saying goes, innovation comes from necessity. And this simplicity was a necessity for one of our valuable clients who echoed the same sentiments; the order admin interface really needed a face lift. The current process of placing and managing orders was a bit frustrating and took a lot of effort.
There were many cases where customers were forced to call in and place phone orders because of issues they had placing it online. This was challenging right off the bat as the first thing our client had to do was find the cart of the customer. Most customers have no idea what their order ID is and it often took time and effort to locate it from the huge list of orders. Once they did locate it, the process got even more complicated. Is the customer a new user or an existing customer? If they were an existing customer, could the admin find them in the system? If not, they’d be creating another duplicate account for the same person.
Then there is the issue of making changes to the order, whether is was adding or removing products, applying discounts or shipping information. The whole process was simply too cumbersome. They wanted to cut down on the complexity and save their employees time and effort administering orders.
So, we put our heads together and came up with an admin ordering system that allowed them to do everything the current ordering system did, but in a simple and straightforward manner. Let’s take a look at what Commerce SOS has to offer.
Order ID visible to the customer
Imagine the same scenario where a customer calls your store and asks you to place an order for them. They might have already created a cart and the first thing you need to do is find the order. When Commerce SOS is enabled, the first thing the module does is add a header to the cart and checkout pages that displays the Order ID in big bold text. The customer will never have trouble finding it when you ask them what their cart ID is.
Finding carts and orders
Now that we have the order ID, let’s look at the SOS to locate the order in the system. Commerce SOS comes with an order manager interface that lets you find orders based on a cart ID, order total, or customer email. In the image below we've found an order based on the Cart/Order ID.
Once the system locates the cart you can Process Order, which essentially takes you to the SOS order edit page, or you can View the order, which takes you to the SOS order view page.
Anonymous customer management
Alternatively, if this order was an anonymous order you’d have a different set of links appear under the Operation column. One of those alternate links is Cust. Lookup. This button allows you to lookup a customer based on their email (as shown below), name, or street address and assign this anonymous order to that customer.
Once you enter data in any of the fields the system will automatically find customers matching that criteria. The Use button will assign the order to that customer and take you to the SOS order edit page.
Another one of the alternate links, titled New Cust., gives you the option of creating a new customer and assigning the anonymous order to that customer. This link takes you to a page (shown below) where they can enter the details of the new customer, including billing and shipping addresses. The system creates the new user, sends them an email with a link to set their account password and assigns the order to the customer. Once done, you are taken to the SOS order edit page.
Editing orders with ease
Many processes occur in the background when you’re using the SOS system, but you will not be bothered by any of them. Wit the SOS system you get a straightforward process to find a cart, assign the cart to a user either by creating a new customer or finding an existing customer, and continue to the SOS order edit page (shown below) which is where all the fun happens.
This page gives you a central place to manage the order. From here you can update the billing and shipping addresses using the UI, add products using the Find Products auto complete product search, update product quantity or remove entire products. You can also add discounts to each item, edit products, and change attributes and options like you would using the add to cart form. If certain product attributes or options cost extra, that extra amount will be updated in the product price as you select them.
The vertical tabs below the product, shown in the image below, hold additional order management tools. You can add a fixed or percent discount to the entire order, search for coupons using an auto complete search and apply coupons to the order. You can select a shipping method for the order, add order notes, update the order status and modify any custom fields you have added to the order.
The most powerful feature of the Commerce SOS module is the ability to modify the order and the order total continuously updates in real-time. The blue ribbon you see in the previous image is updated when a change is made. You can give the customer up-to-date information regarding order as you are making changes.
Finalizing the order
Once you and your customer are satisfied with the changes to the order, click on the Next: Review & Pay button. This takes you to the payment form (shown below) where you can collect credit information from the customer and process the payment. This can be a charge to a single credit card or charges to multiple credit card payments. If you have Commerce GC module enabled, the page will also display a gift card tab that will allow you to search and use gift cards as payments for the order. When payment is successfully processed, the system dynamically updates the remaining total you need to pay to complete the order, if applicable.
Once the payment is completed, select the Finish: Pay Now button to immediately put the order in Pending state, adjust the stock levels, and send an order receipt to the customer. You can then fulfill the order as normal.
As you can see, we’ve just went from finding a user’s shopping cart, all the way to completing the entire checkout process with very few clicks. It’s a seamless process that keeps you moving through each step smoothly. We wanted this system to be one that could be used by everyone and anyone. Simplicity was our goal and we strongly believe that we’ve managed to achieve that with the Commerce Simple Order System module for Drupal Commerce 1.x.