Using Twilio for E-commerce with Order Status, Payments, & Support

Last week we challenged Twilio developers to use our telephony API to build applications that support online commerce.  Evan wrote up a list of uses for Twilio in e-commerce as a jumping off point to get the creative juices flowing, and we were impressed to see each one implemented in at least one of the two applications we’ve selected as this week’s winners.

Its exciting to see people submitting Twilio applications that aren’t just created to win a Netbook, but have also become tools to perform important business operations.  Both winning applications are part of live websites being used to generate revenue and support customers every day, and each developer has won a Netbook from Twilio.  Congratulations to Jimmy and Jonathan! Phone-In Order Manager by Jimmy Baker

How did you hear about Twilio?

Levi Kennedy, a friend and fellow ruby dev, told me it was a cool API and to check it out. The company I work for,, has been using a Cisco Call Manager which is not so easy to customize to say the very least. After only a few minutes of playing around with Twilio, I knew it would be a perfect fit for us.


Can you tell us about how you’re using Twilio in your business?

I had always thought it would be cool to give our customers the option to call in and check the status of their orders. Many of our customers are on the go all the time and it’s not always convenient for them to check the status of their order on the web, so checking order status over the phone was the first feature I added.

Another really cool feature is the ability to place your order over the phone. Often we have customers who just need to get an order in quickly, so sitting in a calling queue isn’t pleasant. Using Twilio’s recording and transcription services, I was able to easily add an over the phone ordering feature. Customer’s call in their order, and their order is recorded, transcribed and sent to customer service to be placed. Then the customer gets a email detailing the items on their order, and once it’s shipped, they receive an email containing tracking info.

What technologies did you use to build this application?

Since I built our app with Ruby on Rails, it was a breeze to integrate it with Twilio’s services. Webficient makes an excellent ruby gem creatively called “twilio” which uses the amazing httparty gem created by John Nunemaker. I also used Shopify‘s active_shipping plugin to query FedEx, UPS, and USPS to get tracking information for the caller’s order.

How long did it take you to build?

It took me about 3 hours to get everything done; including planning, coding, and recording/re-recording my voice. I was amazed at how easy the Twilio API is to use. The documentation is only a few pages long, and outlines everything I needed.

“Hands down the most fun I’ve had programming in a long time.

What are your long term plans for this app?

I’m planning on adding a feature that lets the caller hear product information including specifications and stock levels. I’m also considering a “repeat last order” feature that’s very popular. In short the caller calls in, and says “repeat my last order” and using the caller’s phone number, and I’ll look up the customer and place a new order that’s identical to their last one.

Ripstyles CD Conversion E-commerce by Jonathan Kressaty


How did you hear about Twilio?

I heard about Twilio a looong time ago, months now, and at the time had very little knowledge about programming. Might have been on a blog, Smashing Magazine or Engadget or something? Not entirely sure.

Can you tell us about how you’re using Twilio in your business?

Essentially what I’ve created is a custom PBX for Ripstyles. It’s simple, clean, but directs people to the correct phone number and will give them order status over the phone by simply typing in an order number.  You can read more about how Jonathan’s Twilio application works in his blog post Twilio + Ripstyles Ecommerce = Amazing!

Jonathan_kressatyWhat technologies did you use to build this application?

Let me preface this – I’m not a developer. I’m trained in economics and run a business, but wanted to learn to program as a hobby and to further my biz. About 6 months ago I embarked on the journey to move us away from a hosted shopping cart to a new system that was internally run. This would allow us to create custom webstores for our partners that use Ripstyles as a backend to fulfill CD ripping services that are branded for them, and would comprise a management app that tied everything together so that orders and our internal workings were seamless.

My app (lovingly called Rosie) runs the business essentially – everything from managing webstore inventory and availability to handling contact with customers and keeping track of orders and their status in our conversion facility. Twilio is being integrated to provide customers with a way to get order status and be routed to the correct person in our office while maintaining our philosophy that talking to a human is much better than relying on an answering system.

The whole system is written in PHP, and is built atop CodeIgniter (my absolute favorite framework). It’s super easy to use CI to get PHP apps up and running quickly, and as soon as I can strip out some of the proprietary stuff I’m going to be sharing all the (very simple) code I used for this Twilio project.

“I think the entire app, including the management part that lets me see recordings, data, and transcriptions, is under 300 lines of code.”

The TwiML format is awesome and actually makes it quite easy to setup a system that’s super robust in a short amount of time.

How long did it take you to build?

I spent about 4-6 hours in total pulling the entire thing together, but I’d say about half of that was with actual Twilio stuff. For all you other Twilio devs – use the debugger in your account. It is amazing and will save you loads of time trying to figure out where your problems are.

What are your long term plans for this app?

Long term, the plans for the app are to make it integrate completely into my business and provide myself and employees with a way to manage calls and have data right at their fingertips. I’m going to implement fedex tracking immediately, so not only will it give you order status but if your order is in transit it will read you the latest fedex details and delivery estimates.

After that, my goal is to get some sort of real time push system (probably running on Meteor Server (used in a previous Twilio project by @jazzychad) in order to push call info to the screen as soon as the phone rings. I’m sure it’ll evolve from there, but we’ll see where it goes and as Twilio adds new features, we’ll make it even better!


Would you like to win a Netbook for your Twilio application?  Each week on Monday we announce a new contest category on this blog, as well as on the Twilio contest page of our website.  This week’s contest category is Trick or Treat! and we’re encouraging developers to get creative with the Twilio API and Halloween.  The deadline for submissions is Sunday, November 1st at 11:59pm and you can submit here when you’re ready.  Happy coding!