eCommerce made simple

The easiest way to add eCommerce functionality to your site with our extremely fast and lightweight API.

Everything you need
to launch your Online Store

Catalog Service

Hierarchical Categories, Variants, Indexed and Faceted Search, Taxes and Stock Status per Product

Stock Service

Product inventory, Warehose enabled, Reservation system available with expiration times

Cart Service

Bulk add to Cart, Stock checking, Max Items per Product, Fast Cart Calculation, Configurable Taxes, Abandonment handling

Customer Service

Customer info and addresses, Classification with Tags, Password management

Tax Service

Tax calculation, Powerful customization system based on Cart, Products and User data

Promotion Service

Promotions based on Products, Categories, User Type or Order ammount, Thresholds for firing, Custom DSL, Almost fullfilled calculation

Recommendation Service

Product views history per Customer, Products also viewed by other customers, Products bought together

As simple as you want.
As complex as you need.

MicroBase offers incredible features out of the box that you can start using in minutes. But it's also completely flexible to allow you to customise everything to fit your customers' needs.

How to use it

Take a look at the docs wich contains CURL examples to the Cart, Catalog and Stock services.

Example: Add a product to a Cart

Actual API may vary

To add a Product to a Cart you need to call the addToCart API with the Cart ID, and a set of one or more Product ID and Quantities.

You can optionally send a Warehouse ID to pick products from there.

curl --request POST \
  --url http://localhost:3000/services/cart/v1/{cartId}/entry \
  --header 'authorization: Bearer xxxxx...' \
  --header 'accept: application/json' \
  --header 'content-type: application/json' \
  --data '[{"productId": "0001", "quantity": 10, "warehouseId": "001"}]'
const defaultHeaders = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer xxxxx...'
const payload = [{
  productId: '0001',
  quantity: 10,
  warehouseId: '001'
  method: 'POST',
  url: '/services/cart/v1/' + cartId + '/entry',
  headers: defaultHeaders,
  data: payload
}).then(function successCallback(response) {
}, function errorCallback(error) {