Rutter: The Universal API for Commerce
You can learn more about the Rutter Universal API and try it out here.
The Problem
Over the last few years, there’s been an explosion in the number of platforms and channels where merchants can host their storefronts. At the same time, the merchant toolset has unbundled, with functions like shipping, accounting, or checkout now being powered by third party tools.
In late 2020, my co-founder Eric and I were building an inventory management tool for online merchants. However, as we began working with clients, we quickly noticed a problem: every time a business owner approached us about a new ecommerce platform, we needed to build a new integration to support the platform. Building each integration was a nightmare, a rat’s nest. Each one required a unique authentication method, custom data transformations for that platform’s APIs, and a unique syncing method to get up to date data. And after being built, each integration also needed to be maintained. The work of supporting every ecommerce platform out there quickly added up.
The Solution
Rutter unifies the way you interact with any ecommerce platform, eliminating the need to learn disparate APIs to manage storefronts that you work with. This lets any company or developer building a tool for merchants or small businesses remove the complexity of integrating with the platforms their customers are on, letting them sell to any merchant in the world with a single integration. Today, we help companies like Uncapped, Ramp, Yardline, Printify, and Orderchamp shorten their integration time from 1 year to 1 week.
Here's all of the heavy lifting that Rutter does under the hood to make this happen:
Authentication
Every D2C storefront, marketplace, and payment processor deals with third party authentication in a different way, whether it's OAuth 1.0, OAuth 2.0, with JWTs, or with API keys. Rutter handles every kind of authentication under the hood and gives the developer a single way to handle OAuth from every platform. For the merchant, we offer a Plaid-like auth flow called Rutter Link that's easily added as a frontend library.
Here's the documentation on Rutter Link.
Normalization
Rutter does all of the work of unifying the APIs and data stitching so that you can use one set of CRUD APIs for product, order, and customer data, without having to go into every platform and figure out how to use those APIs per platform.
Data Syncing
Every platform offers a different way for developers to fetch data and keep it up to date. Rate limits are different per platform, pagination is different, and rarely does the platform offer webhook updates, so for any event driven notification you'll have to implement your own polling. Rutter abstracts the different ways to sync data by handling rate limiting and pagination under the hood and delivering cached data normalized to our API. This provides the developer with a single way to access real-time data without having to worry about different fetching rules. We also provide webhooks on top of every platform we integrate with, which lets you receive event driven data updates from any storefront without having to implement your own listeners.
What’s coming next
Rutter supports a number of different use cases today from letting fintech companies pull transactions data for their underwriting model to enabling dropshipping companies manage order fulfillment. But we’re only just getting started with building the best integration layer for ecommerce - here's what's next:
Full Platform Coverage
With 14 platforms supported currently, Rutter is not even 1% of the way to covering all of the platforms that enable businesses on the internet. We want to provide full coverage for the 1000+ storefronts, marketplaces, and payment processors used by merchants and brands throughout the world.
Better APIs
Commerce platforms are complex to integrate with because of all of the things you can do with them - there are many components to a store or business in addition to products, orders, and customers, such as inventory, fulfillments, transactions, discount codes, shipping methods, and so on. We’ve captured the essential operations, but there are so many capabilities we have yet to expose for all the platforms we're connected with, such as the ability to issue refunds, get and set shipping methods, and perform programmatic checkout.
A Better Developer Experience
Rutter aims to be the defacto integration layer for anyone building a commerce tool. To do this we want not only to be the pipes that connect everything, but also provide the best developer experience and extend functionality across all the platforms we support. The best example of what we've built for this today is our webhooks, which provides developers a way to receive real-time, event driven notifications for anything that happens in a storefront.
Adding inventory timeseries data, improving search for orders and products, and exposing anonymized store performance and benchmarking data are all things we have planned to make the Rutter API as powerful as can be.
Try it out today
Rutter is the data infrastructure that powers many of the next generation ecommerce tools, from challenger banks and credit cards to dropshipping and fulfillment companies to accounting and marketing platforms. Feel free to reach out to us at hello@rutterapi.com as well if you'd like to chat and get a more in-depth demo.
We also have a lot of exciting product releases planned for the coming year - if you'd like to stay in the loop, you can subscribe to updates below. We're also hiring for all positions!
Thanks to the entire Rutter team, Bec, Shanelle, etc. for reading rough drafts of this!