Velicoo

developers

REST + webhooks. JSON in, JSON out.

Two API surfaces share the same auth and conventions: an inventory and order API for ERPs and partners, and a B2B-specific API for companies, contract pricing, and quote requests. Both versioned (v1), paginated and rate-limited.

order.created · order.paid · order.shipped · order.delivered · order.cancelled · order.refunded · company.applied · company.approved · company.updated · quote.requested · quote.responded · quote.converted · customer.created · customer.updated · product.created · product.updated · product.stock_changed

REST · place an order
# Place a B2B order (wire / Net-30)curl https://ol-y.com/api/v1/public/orders \  -H "X-API-Key: $OLY_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "purchase_order_number": "PO-2026-0418",    "payment_method": "wire",    "items": [      { "ean": "7350012340001", "qty": 24 },      { "ean": "7350012340018", "qty": 12 }    ],    "shipping": {      "company": "Acme Wholesale GmbH",      "street": "Hauptstrasse 12",      "postal_code": "10115",      "city": "Berlin",      "country": "DE"    }  }'
Node.js · sync inventory to ERP
// Pull live inventory every 5 minutesimport { Velicoo } from "velicoo-sdk";const client = new Velicoo({ apiKey: process.env.VELICOO_API_KEY });setInterval(async () => {  const stock = await client.inventory.list({    updatedSince: lastSync,    limit: 500,  });  await syncToErp(stock);}, 5 * 60 * 1000);

b2b api

Wholesale-specific surfaces, called out explicitly.

Companies, buyers and quote requests are first-class resources — not customer-table workarounds.

MethodPathRequired scope
GET/api/v1/public/inventoryread:inventory
GET/api/v1/public/inventory/{ean}read:inventory
GET/api/v1/public/productsread:inventory
GET/api/v1/public/companiesread:companies
POST/api/v1/public/companies/{id}/quoteswrite:quotes
POST/api/v1/public/orderswrite:orders
GET/api/v1/public/ordersread:orders
GET/api/v1/public/orders/{id}read:orders
GET/api/v1/public/orders/{id}/invoice.pdfread:orders

webhooks

Subscribe once. Reliable retries.

HMAC-SHA256 signed payloads, replay protection via timestamp header, exponential backoff retries up to 24 hours.

    • order.created
    • order.paid
    • order.shipped
    • order.delivered
    • order.cancelled
    • order.refunded
    • company.applied
    • company.approved
    • company.updated
    • quote.requested
    • quote.responded
    • quote.converted
    • customer.created
    • customer.updated
    • product.created
    • product.updated
    • product.stock_changed

sdks

Hit REST directly. Or use a thin SDK.

  • Node.js / TypeScript

    availablenpm install velicoo-sdk
  • Go

    availableImport path on signup
  • Python

    on requestAvailable when a customer commits

Want an API key for evaluation? Tell us the use case.