CompuDime API docs

CompuDime Public API

Read a store's products, prices, sales, customers and more from its point of sale, and send orders into it. You call the API over HTTPS with a key. Every answer is JSON.

Addresshttps://api.compudime.com
Also athttps://compudime-public-api.fly.dev The same API at its earlier address; integrations that already call it keep working there.
KeyAuthorization: Bearer <your key> on every call
ReferenceEvery endpoint, also as an OpenAPI document
SamplesCode samples to download, and a Postman collection
Supportsupport@compudime.com
ChangesChangelog, version 2026-11-04. How the API changes: Versioning and deprecation

Quickstart

1. Get a key

Sign in at account.compudime.com and create a key for the store you work with. Copy it and keep it secret: anyone who has it can call the API as you.

No account yet? Accounts are by invitation. Write to support@compudime.com.

2. Make your first call

Put the key in an environment variable. Then ask who the key is: its store, its mode, the fields it may read, its rate limit and the store's credits. This call is free.

export PUBLIC_API_KEY='paste your key here'
curl -s https://api.compudime.com/v1/me \
  -H "Authorization: Bearer $PUBLIC_API_KEY"

Now read two products, with three fields each:

curl -s "https://api.compudime.com/v1/products?fields=productCode,description,price&limit=2" \
  -H "Authorization: Bearer $PUBLIC_API_KEY" \
  -H "X-Request-Id: my-first-call"

On Windows PowerShell:

$headers = @{ Authorization = "Bearer $env:PUBLIC_API_KEY"; "X-Request-Id" = "my-first-call" }
Invoke-RestMethod -Headers $headers -Uri "https://api.compudime.com/v1/products?fields=productCode,description,price&limit=2"

In JavaScript (Node 18 or later):

const response = await fetch("https://api.compudime.com/v1/products?fields=productCode,description,price&limit=2", {
  headers: { Authorization: `Bearer ${process.env.PUBLIC_API_KEY}`, "X-Request-Id": "my-first-call" },
});
const page = await response.json();
if (!response.ok) throw new Error(`${page.code} (${page.requestId}): ${page.detail}`);
console.table(page.products);

Prefer Postman? Download the Postman collection, import it, and set its apiKey variable to your key. It has every endpoint, generated from the same OpenAPI document as these pages. More samples, ready to run: Code samples.

3. Read the answer

{
  "requestId": "my-first-call",
  "snapshotId": "6f1d2c3b-4a5e-4f60-8b7a-9c0d1e2f3a4b",
  "generatedAt": "2026-10-13T14:00:00Z",
  "lastSuccessAt": "2026-10-13T14:00:00Z",
  "stale": false,
  "fieldPolicyVersion": 1,
  "nextCursor": "eyJhZnRlciI6IjQ5MDAwMDA0NjMifQ",
  "products": [
    {
      "productCode": "012000001291",
      "description": "PEPSI 2L",
      "price": "2.49"
    },
    {
      "productCode": "4900000463",
      "description": "COKE 2L",
      "price": "2.49"
    }
  ],
  "billing": {
    "baseCost": 1,
    "fieldCount": 3,
    "includedFields": 5,
    "extraFieldCredits": 0,
    "totalCredits": 1,
    "decision": "allowed_sandbox",
    "pricingVersion": "2026-10-09.2",
    "mode": "test",
    "priceSource": "default",
    "unit": "page",
    "quantity": 1
  }
}

When a call fails, the answer has an HTTP error status and a body with a code:

{
  "type": "https://api.compudime.com/docs/errors#unauthorized",
  "title": "Unauthorized",
  "status": 401,
  "code": "unauthorized",
  "detail": "Public API key is missing or invalid.",
  "requestId": "req_0123456789abcdef",
  "retryable": false,
  "docsUrl": "https://api.compudime.com/docs/errors#unauthorized",
  "statusUrl": "https://status.compudime.com",
  "support": "mailto:support@compudime.com"
}

Every code is explained on Errors. A failed call is never charged.

Two order APIs, one address

Two order APIs share this address. /v1/orders is the public API described here: your app sends an order into a store's POS, then reads where it stands. /api/v1/orders/... is the CompuDime Orders API: delivery and ordering services push orders into a store's queue, and the store's POS collects them from there. They are separate APIs with their own requests and answers. These pages cover /v1/orders only. For the Orders API, write to support@compudime.com.

Next