Store API
Store API
Manage your product catalog, inventory, and orders programmatically. Sync from POS, ERP, or any external system.
Store API
The Store API lets you manage your shop's products, inventory, and orders programmatically. Use it to sync your catalog from a point-of-sale system, ERP, or any custom integration.
Use cases
- POS integration -- sync products and stock levels from your point-of-sale system in real time
- Odoo / ERP sync -- import your full catalog from Odoo, SAP, or any ERP via CSV or API
- Catalog management -- create, update, and organize products without the mobile app
- Inventory automation -- push stock updates from your warehouse management system
Authentication
All Store API endpoints require a Business API key. Write operations require a secret key (sk_test_* or sk_live_*). Read operations accept either secret or publishable keys.
Include your key in the Authorization header:
Authorization: Bearer sk_test_YOUR_KEYRequired scopes
| Scope | Endpoints |
|---|---|
store.products:read | List/get products, list categories, get import template |
store.products:write | Create/update/delete products, upload images |
store.inventory:read | List inventory |
store.inventory:write | Update stock, bulk inventory |
store.import:write | CSV import preview and confirm |
store.orders:read | List/get orders |
store.orders:write | Simulate orders (sandbox only) |
Base URL
https://api.elebne.ai/api/v1/dev/storeQuick start
Create a product in your shop:
curl -X POST https://api.elebne.ai/api/v1/dev/store/products \
-H "Authorization: Bearer sk_test_YOUR_KEY" \
-H "Content-Type: application/json" \
-H "X-Idempotency-Key: create-thieb-001" \
-d '{
"name": "Thiéboudienne Royale",
"price": 50000,
"description": "Le plat national mauritanien, poisson frais et légumes",
"quantity": 20,
"externalId": "THIEB-001",
"status": "ACTIVE"
}'const response = await fetch('https://api.elebne.ai/api/v1/dev/store/products', {
method: 'POST',
headers: {
'Authorization': 'Bearer sk_test_YOUR_KEY',
'Content-Type': 'application/json',
'X-Idempotency-Key': 'create-thieb-001',
},
body: JSON.stringify({
name: 'Thiéboudienne Royale',
price: 50000,
description: 'Le plat national mauritanien, poisson frais et légumes',
quantity: 20,
externalId: 'THIEB-001',
status: 'ACTIVE',
}),
});
const { data } = await response.json();
console.log(data.id); // "6612f..."
console.log(data.externalId); // "THIEB-001"import requests
response = requests.post(
'https://api.elebne.ai/api/v1/dev/store/products',
headers={
'Authorization': 'Bearer sk_test_YOUR_KEY',
'Content-Type': 'application/json',
'X-Idempotency-Key': 'create-thieb-001',
},
json={
'name': 'Thiéboudienne Royale',
'price': 50000,
'description': 'Le plat national mauritanien, poisson frais et légumes',
'quantity': 20,
'externalId': 'THIEB-001',
'status': 'ACTIVE',
},
)
data = response.json()['data']
print(data['id']) # "6612f..."
print(data['externalId']) # "THIEB-001"Rate limits
| Operation | Per IP | Per API key |
|---|---|---|
| Read (list, get) | 60/min | 2,000/day |
| Write (create, update, delete) | 30/min | 500/day |
| Stock updates | 120/min | 5,000/day |
| Bulk inventory | 30/min | 500/day |
| CSV import | 5/hour | 50/day |
Next steps
- Products -- full CRUD for your product catalog
- Inventory -- single and bulk stock updates
- Orders -- read orders and simulate in sandbox
- CSV Import -- bulk import from spreadsheets
- Webhook Events -- get notified on orders and stock changes
Was this page helpful?