PlumberSurplus.com Ecommerce and Entrepreneurship Blog | About | Contact | PlumberSurplus.com Store

The Dangers of Promoting on Social Networks

Posted on June 5, 2008 by Matt

A Great, but Simple Promotion

When you are in business to sell products online, you may be after such things as more sales, increased internet traffic, and online communities touting your site as a great deal and encouraging people to buy from you. And usually these are good things. But as we found out recently, sometimes you have to be careful about what you wish for. An example of this is the Omaha Steaks promotion that we had just initiated, a promotion that had been highly successful and was well-received.  A little too well-received, actually, and that caused a few tense hours over a recent weekend.

Our Omaha Steaks promotion was simple: when you make a purchase from us, we’ll send you a gift certificate in the form of a coupon code for $20 off your Omaha Steaks order, which we sent along in the order confirmation email. We had partnered with Omaha Steaks, purveyors of fine steaks and other food products, to provide this great value to our customers. This seemed to be a great promotion, and all was running smoothly until it got SlickDeal-ed.

Deal Wars: When Slickdeals Strikes Back!

Slickdeals.net is a great site for sharing, finding, and aggregating deals. I am a frequent visitor of the site, and have made some great buys based on deals I’ve found there. Slickdeal-ers tend to be a savvy bunch who really know how to game the system. They are a great source of information about products, pricing, and great buys.

So when a Slickdeal-er made a purchase from our site and instantly got their free $20 Omaha Steaks gift card in their order confirmation email, a light went on. They posted this great deal onto SlickDeals.net and pretty soon the frenzy began. The Slickdealers searched our site, found the cheapest item they could with free shipping, and began placing orders. One guy even placed over 60 orders! Being the sophisticated online retailer that we are, we allow customers to easily cancel orders that haven’t shipped. Since this happened on a Saturday, customers were able to place orders, receive their coupon codes instantly via email, then cancel their orders and repeat the process over and over again.

While we are all for good deals, we felt it wasn’t fair to our promotion partner to give away these gift certificates to fraudulent consumers whose only goal was to sell them on eBay. So after some discussion, we decided the best course of action would be to send out the coupon code after we knew the order wouldn’t be cancelled rather than instantly. Our terms of use stated that the offer was only good on non-cancelled orders, so those who placed orders then cancelled were not sent the coupon code.

Lessons Learned

This was a great lesson for us in the value of community sites as well as their potential dangers. While we loved the idea of our site getting a lot of notice and exposure, we also learned that we have to protect ourselves from situations that can spiral out of control. Rest assured, while our next promotion or deal may be a “slick deal”, we will take measures to prevent an incident like this from occurring again.

 

Digg It!StumbleUponTechnoratiDel.icio.us

How to be a Better eCommerce Third Party Software Vendor

Posted on May 27, 2008 by Matt

Third party software is like a box of chocolates. Once you buy them, they quickly get stale and can get quite messy.

OK, so this isn’t always the case. However, often you can have buyer’s remorse when it comes to buying software or a service from a vendor. Of course it’s all roses during the courtship phase; they tell you how much better and cheaper they are then their competitors, how reliable they are, and how we’ll see tremendous growth by using their product. It’s almost like it’s their job to sell us something.

Of course we do our research, including price comparisons, competitor research, and cost/benefit analysis, but in the end you really do have to make a decision without first hand experience. Sometimes these vendors work out great, and we get more than we bargained for and that leads to a great experience for all involved. But sometimes things aren’t all they are cracked up to be, and you could end up with something you can’t fully utilize, something that doesn’t work like it is supposed to, or something that flat out is a waste of money.

So for all vendors and potential vendors out there, here are a few suggestions that the decision makers want out of a partner.


  • Get to the point - My time is valuable. Don’t waste my time with glossy presentations that offer little real data I need to make an informed decision. Give me useful facts. 

  • Don’t belittle your competitors - Rest assured we have or will research them and they are going to say the same things about you. Feel free to point out solid differences that apply to our situation, but don’t get petty. 

  • Deliver as promised - Often the salesperson’s job is to get the sale and it is someone else’s job to deliver. If you are willing to say it, put it in writing. We have been burned before and don’t care for your “I’m pretty sure we can do that” or “It should be no problem”. I may like you and I may trust you, but forgive me if I don’t take your word for it. 

  • Keep us informed - Have a scheduled downtime? Tell us in advance. Making a major upgrade? Gee, that would have been nice to know yesterday. You’d be surprised how forgiving we are if we are kept in the loop. A major problem discussed in advance is better than a minor one that surprises us. 

  • Work with us - Value us as a current customer or risk losing us at the end of our contract. We may not be your biggest client, but we have needs too. Be flexible when you can. A minor sticking point on your end could make a major difference to us. 

  • Be supportive - Specifically with your technical support. Have a clear, concise way for us to get answers to our questions. Don’t put us in the support ticket loop and wait for us to call three times before you escalate it. We don’t want to waste your time or ours.

Fortunately, we have many outstanding third party partners that we love to tout.  Hopefully a peek into the mind on other side of the equation can be of use to those of you who are or hope to be vendors to eCommerce companies.

 

Digg It!StumbleUponTechnoratiDel.icio.us

Website Design and Architecture: Eight Musts for Scalability and Reusability

Posted on April 16, 2008 by Matt

As you may or may not know, we at PlumberSurplus.com have just completed the process of launching a brand new site in a completely new market, OutdoorPros.com. For the 7 week time period it took us to launch I was in the middle of making that happen. Our plan was to simply take our existing site and infrastructure, and copy it over and start a new site. We call it our “Ctrl-C, Ctrl-V” plan. Sounds simple, right?

Well, yes and no. Our site has been around for about 3 ½ years, and in that time a lot has changed. We’ve made many improvements and modifications along the way, and left some things alone. All that to say that after more than 3 years of coding, the task of doing this copy/paste has left me thinking more about proper site architecture methods and the modularizing of code and processes. Fortunately we’ve done a lot of that all along, though not perfectly and not everywhere.

So given that it’s on my mind right now, I thought I’d share my thoughts to help you eCommerce developers out there as well as remind myself of some of the more important things to consider when it comes to site design and architecture.

 

  1. Plan on Succeeding – You will grow. You will increase sales. You will offer more products. Don’t build anything thinking “ah, this will be good enough for now”. Don’t take shortcuts because it’s good enough for your current needs. It just adds layers of problems once you finally do outgrow it but are dependent on that piece. A small example is our name, PlumberSurplus.com. We only sell brand new, top notch products. Nothing “surplus”. And we sell a lot of non-plumbing products, including power tools and lighting. Very early on, we had no idea how broad our product line would get. 

  2. Separate Your Layers – This is kind of a no-brainer to programmers, but we all get lazy, rushed, or think something is so small and trivial it doesn’t matter. And we all eventually regret those decisions. Take the time to separate your data, business, and interface layers. To the lay-persons out there, what I mean is this: don’t hard code your site based on your current products, database, email system, etc. Because when you need to change something out, the world blows up. Renaming our mail server was a bit more tedious than it needed to be due to numerous references to it by name throughout the site. Now we use a global setting to refer to our mail server, so when we need to change it again it is a one line change. Even things as simple as a state drop down list; you may say “well how often are the states going to change?” They may not, but what if you start shipping to Canada? Now you have to add those provinces to all of the associated drop downs you have. It is much better to utilize your database for data and save your interface for content and actions. 

  3. Stretch the Limits With Third Party Vendors – One thing that our legal department is so good at is thinking ahead when negotiating contracts. Some vendors have arbitrary limits on products, categories, requests, bandwidth, etc. These are mostly arbitrary, as in not due to technical or physical capabilities. So if a vendor says they can support 40K SKUs, get them to bump that number up to 100K. You may only have 1500 products, but by agreeing to a ceiling you increase the chances of having to renegotiate later on. And most of the time it doesn’t cost them anything extra to change that number in your contract. 

  4. Imagine Everyone in Their Underwear – OK, so maybe that is a tip for public speaking. Skip that one. 

  5. Imagine Quadrupling Your Estimates – If you are just getting going, you really have no way to estimate your growth. You never know when you’ll land that major supplier, customer, or piece of market share. So plan as best as you can; just make sure you build it to handle a lot more. 

  6. Modularize –As much as is possible, develop your site so that components are hot-swappable. One thing we struggle with is our shipping logic. Our logic is based on many layers: boxing (how many packages to ship this order), warehouses (where is each package shipping from), weights, dimensions, etc. It is a cumbersome mess. This leaves us with a huge black hole that does not easily lend itself to upgrading or making relatively minor changes. As much as possible, spend the time modularizing and breaking out segments so that if you ever need to change one component you can with no problem. If you are writing custom shopping cart code, make the part that does the credit card processing its own piece. You give it the data, and it gives you the response. That way if you ever change credit card processors, it’s a simple integration with your existing checkout page rather than a page rewrite. 

  7. Globalize – So many times something needs to be referenced in multiple places. Things like a merchant ID for third party software, an ftp location, or even the aforementioned email server. Don’t hard code these references! You will only regret it later. Instead, put all these variables in a global location and reference them that way. In .NET, use the web.config <appSettings> section to refer to all your connections strings, account IDs, mail servers, email notification addresses… well, you get the idea. You will save yourself a lot of time down the road. Extensive utilization of globalization has made the copy/paste that much easier for me. 

  8. Strategize – Develop your code as if you were going to expand to other sites and industries. It will probably help you architect your site a lot better using a lot of the above mentioned techniques regardless of whether or not you ultimately do your own copy and paste. However, when you do come to that road (or quit this business and start a new one), you won’t have to do it all from scratch again. A few minor techniques planned in advance can save you so much time later on. One example: throughout our site, none of our links, pages, or images (in code, not rendered) link to PlumberSurplus.com. In code they all look something like this: [SiteName]/images/imageName.jpg. Our site is built for multiple domains, so now instead of looking for hundreds of references, I just change our site name variable and it’s all there. This is just one small example of how to develop your site with expansion in mind.

Hopefully these thoughts will prove helpful to you. Just writing them down has brought even more thoughts to mind for future development. Feel free to share any thoughts you have on this or other tips in the comments section.


Digg It!StumbleUponTechnoratiDel.icio.us

Power Reviews Gives the Power to the Customer, and Helps the Retailer

Posted on February 14, 2008 by Matt

Power to the People: Customer Reviews on Your Website

Let’s face it: no one wants to go it alone any more. James Dean died young, and with him the rebel that wanted to do things his way. Now it’s all about what others think.

Now it’s your turn, and thanks to PlumberSurplus.com, you too can be the owner of a faucet, tankless water heater, or sump pump that other users with experience think are cool. That’s right – it’s your turn to join the cool crowd now. And it’s all because we recently rolled out PowerReviews, a third party application for customer reviews. Let the sharing begin!

User reviews are all the rage these days. Ushered in with the web 2.0/social networking phase of the last few years was the concept that you care what someone else thinks about something you’re interested in. And there are very good reasons for this.

Why Reviews?

Customers like reviews because it helps them make a more informed purchase. Someone may not like the product, and because of the background and reasons they share, you can confidently assume you won’t like it either. Or they may not like it for a different reason, one that doesn’t bother you. Of course, the glowing reviews only make your decision that much more informed.

Retailers like it because it stops the sale, and subsequent return, refund, and poor customer experience involved in purchasing a product that is sub-par. And customers who purchase products with good reviews are more likely to be happy with their purchase, thereby decreasing complaints and returns.

Why Power Reviews?

So deciding to implement customer reviews was a no-brainer. And the decision to go with PowerReviews was almost as easy. PowerReviews offers:

  • Fast, easy implementation
  • Great technical support
  • They took us to dinner at Arcadia Modern American Steakhouse (I had the filet mignon)
  • Our Products are automatically on Buzzillions, a PowerReviews shopping engine

Competitors

We looked around a bit, but quite honestly not too much. PowerReviews has a great reputation, and a well-deserved one in my opinion, making our decision that much easier.

When I say fast and easy implementation that is exactly what I mean. I’ve successfully implemented other so called “easy” integrations. You know, the kind that offer convoluted, ill-informed documentation and obscure, decidedly not “best practice” techniques. PowerReviews provided a very helpful timeline, complete with what tasks happen when, and by whom (developer, marketing department, network admin, etc.) and an implementation guide that was actually useful! The actual development needs on our end were relatively simple and very straightforward. Not to mention Blake was there in an email with an instant response any time I had a quick question. Seriously – the technical implementation of PowerReviews was a breeze. Trust me developers.

Another cool thing about PowerReviews is Buzzillions, their comparison shopping engine that acts like an affiliate -they only get paid on conversions. Affiliate sales are great for us. Their ROI is significantly better than that of our ad spend, such as some of our SEM campaigns. And since we are on all the major shopping engines already, the addition of Buzzillions was great for us. Another great part about Buzzillions is that there is no additional development involved for it. It is all based on our reviews data. And that is good, since developers don’t really like building data feeds for every shopping engine under the sun.

Oh yeah, and the best part: the price is right! There may be no such thing as a free lunch, but a simple integration, your products on an up and coming shopping engine, a steak dinner and Johnny Walker Blue (if you are lucky) can be yours for the grand sum of zero dollars. Yep, you read right. They offer all this for free! They are in the data aggregation business, and are happy to offer all this in exchange for honest customer reviews and access to over a million products to list on Buzzillions.

Truly a win-win. I can’t recommend PowerReviews highly enough. You can be up and running with a great customer review product in a week (or less). Your customers will thank you, your customer service team will adore you, and your returns team will bring you donuts.

Special thanks to Blake, Tara, Cathie, and Jay from the PowerReviews team!

  

Jay and Cathie of Power Reviews at the Power Reviews Booth eTail 2008

One of the Surplusers had a chance to speak at eTail 2008 this week.  While there, he stopped by the Buzzillions booth and the Power Reviews booth.  Pictured above, Jay and Cathie struck a pose.

 

Digg It!StumbleUponTechnoratiDel.icio.us

The Gatekeeper: How to Prioritize Development Projects (Without Making Enemies)

Posted on February 8, 2008 by Matt

In this era of economic insecurity, with talks of recession on every news channel, job security is hard to come by. That is, unless you are a developer at a growing e-commerce company. Job security: solid. Relaxing schedule: non-existent. With a list of projects longer than Paris Hilton’s rap sheet, I’ve got worked lined up from now till Web 3.0 finally comes around. And while it is good to sit on top of the list of PlumberSurplus.com’s most wanted list, wandering around the office like a plate of bacon at a Weight Watcher’s convention, it isn’t all bon-bons and champagne.

A Wanted Man

As the Development Manager at an e-Commerce company where most of the business is run on custom built software, I am constantly inundated with requests for new features, changes, and even completely new systems. These requests come from all departments, and many are very valid requests. Executive management needs a custom tool to track financial adjustments. Marketing needs a new feed for a shopping engine. Customer service needs a way to track order notes. Some are quick, small projects. Some would take months to develop. Prioritizing, scheduling, and developing these solutions in an effective manner is crucial to the success of any growing organization.

Sometimes these requests are just not realistic. They may affect a very small number of users, and their value may be too low to ever move up on the priority list. And while I don’t like to be the bad guy, sometimes I have to say “I’m sorry, this just isn’t important enough”.

The Development Dilemma

However, many times these requests are valid, good ideas. So how do I go about this process of evaluating and prioritizing development requests? In a word: Bribes. For example, when our marketing team leader Vanessa needed something done, she dropped off her request with a gift card to Pick-Up Stix, my favorite lunch joint, and diet destroyer. Her project got done that afternoon.

After all bribes are factored in, I have to make some hard decisions. I really can’t satisfy every need, and this is tough on everyone. Sometimes people are left not getting their pet project done, and I’m left feeling like the bad guy. And the projects that do get worked on sometimes get rushed out so we can move on to the next project, without giving due diligence to the full optimization and enhancements that could have gone into it were time not a factor. It’s the same principal as a mechanic who has more cars than he can service; they all get pushed back and delayed, and the ones that get fixed sometimes get the bare minimum to get it working and out the door, with no time to check the radiator fluid.

The Evaluation Process 

When I am prioritizing projects, I look at several key factors:

  • Revenue – projects that are going to create sales and generate revenue get top priority.  
  • Cost Savings – saving the company money is almost as good as bringing in more money
  • Efficiency – Does this significantly make an impact on efficiency? Is this something that will automate a process and free up man-hours?
  • Enhanced Customer Experience – Is this going to help in customer satisfaction? Will customers be more informed and satisfied with their experience?
  • Benefit Scope - How far reaching are the benefits? Will it help many users, or just a few select users?
  • Resource to Benefit Ratio – is the end goal worth the development efforts?
    • If it takes 4 hours of development to save someone 20 hours a week, it has a good ratio.
    • If it takes 20 hours of development to save someone 4 hours a month, well, those are called “government jobs”.

These factors, based on our business needs, are the guidelines I use to evaluate and prioritize development projects. However, they are not firm. Executive requests seem to get higher priority for some reason. So do bug fixes or anything perceived as a barrier to customer satisfaction and conversions.

Often I will work on a larger project, then when I finish I will dive into a bunch of smaller ones that may not be the next on the priority list, but are valuable and can get done quickly. If at all possible, I don’t like to make requests wait for too long if they can be done relatively quickly.

Sometimes projects get whittled down, broken into segments, and those segments get prioritized. For example, when we wanted to start using Google Checkout, our end goal was Level 2 full integration, where we pass information back and forth to Google in an automated fashion. However, we wanted to get in early since Google was running their $10 off $30 program, and that project would have taken longer than we wanted. So we broke it up into stages, where we implemented Level 1 integration and allowed customers to check out with Google Checkout, then later on upgraded to our current Level 2 integration.

As you can see, there is a lot that goes into deciding what projects get worked on and when. So go easy on your development team; we aren’t just playing Second Life all day. And remember – a Starbucks Caramel Macchiato goes a long way, if you catch my drift ;) 

 

Digg It!StumbleUponTechnoratiDel.icio.us