Starter .NET microservice project for Ordercloud extensions using the Dotnet Catalyst library.
-
Clone the repo and build locally with
docker build -t MyOrderCloudMiddleware .
-
After building, run locally with
docker run -it -p 3000:80 MyOrderCloudMiddleware
then open http://localhost:3000/ in the browser and you should see api route documentation. -
Can also run a static example api from dockerhub with
docker run -it -p 3000:80 oliverheywood/ordercloud-dotnet-middleware
.
See a working version of this api at https://headstartdemo-middleware-checkout-integrations.azurewebsites.net/index.html. This is built and published to Azure on pushes to dev using a github action.
OrderCloud is an API that handles commerce, so why do you need your own server-side project? Generally, the reason is that you want to securely extend the functionality of OrderCloud, either with custom logic or with functionality from another service. An ecommerce solution almost always integrates with external systems such as an ERP, a payment processor, an email automator, a shipper, a tax calculator, or others. For this reason, it is almost certain your OrderCloud solution will require middleware.
OrderCloud middleware is usually built with variations on 3 primary patterns
- A webhook callback from OrderCloud to your API triggered by certain events
- A proxy route in your API that is called from the browser and then makes requests to OrderCloud with elevated permissions
- A scheduled job
Learn how to stand up a hosted middleware API from scratch.
Learn how to hook custom logic into any Ordercloud API request with Webhooks.
Learn how to plug in your preferred shipping, tax, and payment processing partners to Ordercloud. Among other integrations.
Learn how to import a product catalog to Ordercloud and keep it in sync with updates.
Learn how to forward orders captured in ordercloud to a downstream system that handles fulfillment.
Learn how to wrap an Ordercloud endpoint in your own hosted API to perform logic in a secure environment.
Learn how to notify users of important events with custom emails.