Create EL OUATINE invoices from your app or system — the same engine as the platform, the same numbering, the same QR verification.
Every request requires an API key. Send it in the header:
Authorization: Bearer elo_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# or alternatively: X-API-Key: elo_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
API keys are issued from the EL OUATINE workshop (“Invoicing API” tab) and shown only once.
POST /api/invoices/v1/create — returns the invoice number, PDF URL and verification URL.
customer_name · customer_email? · customer_phone? · lang: fr|en · items: [{description, qty, unit_price}] · notes? · status: paid|pending|proforma
curl -X POST https://securecelleouatine.com/api/invoices/v1/create \
-H "Authorization: Bearer elo_YOUR_KEY_HERE" \
-H "Content-Type: application/json" \
-d '{
"customer_name": "Ahmed Benali",
"customer_phone": "+213600000000",
"lang": "fr",
"items": [
{ "description": "iCloud removal - iPhone 14", "qty": 1, "unit_price": 45.00 },
{ "description": "Screen protector", "qty": 2, "unit_price": 3.50 }
],
"notes": "Paid in cash"
}'{
"ok": true,
"data": {
"id": 128,
"number": "INV-2026-0042",
"total": 52.00,
"currency": "USD",
"status": "paid",
"pdf_url": "https://securecelleouatine.com/api/invoices/v1/128/pdf",
"verify_url": "https://securecelleouatine.com/verify-invoice?inv=INV-2026-0042&code=A1B2C3D4",
"verify_code": "A1B2C3D4",
"warnings": [],
"quota": { "limit": 50, "used": 7, "month": "2026-10" }
}
}GET /api/invoices/v1 — only your invoices, paginated.
curl https://securecelleouatine.com/api/invoices/v1?limit=20 \ -H "Authorization: Bearer elo_YOUR_KEY_HERE"
GET /api/invoices/v1/:id/pdf — the same “like the contract” design, in French and English.
curl -o INV-2026-0042.pdf \ https://securecelleouatine.com/api/invoices/v1/128/pdf \ -H "Authorization: Bearer elo_YOUR_KEY_HERE"
Note: PDFs support Latin characters only — Arabic names print as “?”.
400 = invalid input · 401 = missing or invalid key · 404 = invoice not found · 429 = monthly quota or rate limit exceeded
API keys are issued from the EL OUATINE workshop (“Invoicing API” tab) and shown only once.
Professional invoicing for your system — EL OUATINE
Request your key