Quickstart

Create an API key, make your first call and read the answer: five minutes from the dashboard to the terminal.

1. Create an API key

In the Kivoo dashboard, open your store, then Paramètres › Développeur › Clés API (Settings › Developer › API keys; the dashboard is in French) and click Créer une clé (Create a key).

  1. Name: the tool that will use the key, for instance “Zapier” or “My website”. This name appears in the activity journal for every change made with the key.
  2. Scopes: for each resource (Store, Products, Orders, Customers, Payment links), no access, read or read and write. For this guide, Store read is enough. Scopes cannot be changed after creation: see Authentication.
  3. Expiry: never, 30 days, 90 days or 1 year.

The full key, starting with kv_live_, is shown only once. Copy it and store it right away where your server reads its secrets (an environment variable, a secret manager): Kivoo only keeps a fingerprint and cannot show it again.

No Developer section?

Only the owner of the store and Admin members can see it. If the create button is replaced by a notice saying key creation is temporarily closed, existing keys keep working: try again later.

2. Make your first call

Send the key in the Authorization header, after Bearer:

Terminal
curl https://api.kivoo.africa/v1/store \
  -H "Authorization: Bearer kv_live_EXAMPLE0000000000000000000000000000000000"

The same call from Node.js (18 or later), the key being read from the environment:

store.mjs
const response = await fetch('https://api.kivoo.africa/v1/store', {
  headers: { Authorization: `Bearer ${process.env.KIVOO_API_KEY}` },
});
if (!response.ok) throw new Error(`Kivoo answered ${response.status}`);
const store = await response.json();
console.log(store.name, store.currency);

3. Read the answer

Kivoo answers 200 with the store the key belongs to:

200 OK
{
  "id": "6f1c2d3e-4b5a-4c6d-8e9f-0a1b2c3d4e5f",
  "name": "Atelier Nour",
  "slug": "atelier-nour",
  "url": "https://atelier-nour.kivoo.store",
  "description": "Guides et ateliers de couture.",
  "currency": "XAF",
  "country": "CM",
  "supportEmail": "contact@atelier-nour.cm",
  "phone": "+237655000000",
  "whatsappPhone": "+237655000000",
  "socialLinks": { "instagram": "https://instagram.com/atelier.nour" },
  "status": "open",
  "createdAt": "2026-03-01T09:30:00.000Z"
}
  • id is a UUID: the same one appears in webhook events (store.id).
  • currency is the currency of every amount of the store, in minor units.
  • createdAt is an ISO 8601 date in UTC, like every date of the API.

If the key is missing, wrong, revoked or expired, Kivoo answers 401 with a code that says why (api_key_missing, api_key_invalid…); the codes are listed in Conventions.

Next steps

  • Browse the API reference: every operation gives the scope it requires.
  • Page through products or orders following the conventions.
  • Receive every sale as it happens with webhooks.

On this page