v1 · stable

Build with Kikapu

The Kikapu API is a RESTful commerce engine: products, inventory, orders and payments over clean JSON. Everything the dashboard can do, your code can do too.

Authentication

Every request carries a bearer token.

Include your Bearer token and X-Tenant-ID header with every call. Generate keys under Settings → Developers in your dashboard.

HTTP headers
Authorization: Bearer kkp_live_827f...2a9
X-Tenant-ID: nex_tenant_9128

Products & catalog

Variants, pricing and merchandising.

List products

A paginated list of your products, including variants, default pricing and category metadata.

GET/api/products

Example response
[{
  "id": "prod_01H2...",
  "title": "Kiondo basket",
  "variants": [
    { "sku": "KB-MED", "price": 1850 }
  ]
}]

Adjust inventory

Update stock in real time — reconcile a physical count, record a POS sale, or receive a delivery.

POST/api/erp/inventory/adjust

Request body
{
  "variant_id": "var_921...",
  "change": -5,
  "reason": "POS Sale",
  "warehouse_id": "wh_main"
}

Events that reach your customer

Trigger SMS and email automatically when something happens in your store — an order lands, a payment clears, stock runs low.

  • Order placed → SMS confirmation
  • Payment success → email receipt
  • Stock low → dashboard alert
Webhook example
kikapu.on('order.paid', async (event) => {
  await sms.send({
    to: event.customer.phone,
    body: 'Order confirmed! Receipt: '
      + event.receipt_url
  });
});

Stuck on an integration?

Our engineers hang out with the community. Bring your questions — and your error logs.