API
Delivio integratsiooni API
Loo tellimusi oma süsteemist, loe nende olekut, tühista neid.
Autentimine
Loo võti paneelis kliendi lehel. Võti kuulub ühele kliendile; millise kliendi jaoks tellimus on, tuleb võtmest, mitte päringu kehast.
Authorization: Bearer dlv_live_xxxxxxxxxxxx_…
Loo tellimus
Aadressist ja summast piisab. Koordinaatide saatmine muudab kulleri sobitamise ja saabumisaja täpsemaks.
curl -X POST https://delivio.talivio.com/api/v1/integration/orders \
-H "Authorization: Bearer $DELIVIO_KEY" \
-H "Idempotency-Key: siparis-1042" \
-H "Content-Type: application/json" \
-d '{
"address": "Moda Cad. 12/3",
"customer_name": "Ada",
"customer_phone": "+90 555 000 00 00",
"total": 24000,
"is_prepaid": true
}'
Summad on TÄISARVUD sentides (24000 = 240,00). Ujukomaarve ei aktsepteerita.
Saada Idempotency-Key: katkenud ühenduse järel sama päringu kordamine ei loo teist tellimust.
{
"data": { "id": 1042, "code": "S-1042", "status": 15, "…": "…" },
"tracking_url": "https://delivio.talivio.com/t/…"
}
Loe olekut ja tühista
curl https://delivio.talivio.com/api/v1/integration/orders/1042 -H "Authorization: Bearer $DELIVIO_KEY" curl -X POST https://delivio.talivio.com/api/v1/integration/orders/1042/cancel \ -H "Authorization: Bearer $DELIVIO_KEY" \ -d 'reason=Müşteri vazgeçti'
Kui kuller on tellimuse võtnud, sulgub API kaudu tühistamine (409): POS-i päring ei saa teel olevat kullerit tagasi pöörata — tühista paneelist.
Vead
| HTTP | code | Tähendus |
|---|---|---|
| 401 | invalid_key | Võti on vigane või tühistatud. |
| 402 | api_not_in_plan | API-juurdepääs ei kuulu paketti. |
| 404 | — | Tellimus ei kuulu selle võtme kliendile. |
| 409 | already_assigned | Kuller võttis selle; tühista paneelist. |
| 422 | — | Välja valideerimine ebaõnnestus või tellimuse olek ei luba. |
| 429 | — | Päringupiirang: 120 päringut minutis. |
Veebihaagid
Määra oma lõpp-punkt paneelis kliendi lehel. Saadame POST-i, kui tellimus võetakse vastu, võetakse peale, tarnitakse ja tühistatakse.
POST /sizin-ucunuz
X-Delivio-Event: order.delivered
X-Delivio-Signature: t=1755680000,v1=9f2c…
{
"event": "order.delivered",
"sent_at": "2026-08-20T12:00:00+00:00",
"order": { "id": 1042, "code": "S-1042", "status": 20, "…": "…" }
}
Iga päring kannab päist `X-Delivio-Signature: t=<unix>,v1=<hmac>`. Kontrollimiseks arvuta `hmac_sha256(sinu_saladus, "<t>." + toorkeha)` ja võrdle `v1`-ga; lükka tagasi, kui `t` on vanem kui 5 minutit.
// PHP
[$t, $v1] = sscanf($_SERVER['HTTP_X_DELIVIO_SIGNATURE'], 't=%d,v1=%s');
$expected = hash_hmac('sha256', $t.'.'.file_get_contents('php://input'), $secret);
if (! hash_equals($expected, $v1) || abs(time() - $t) > 300) {
http_response_code(400);
exit;
}
Kui lõpp-punkt ei vasta 2xx-ga, proovime uuesti 10 s, 1 min, 5 min ja 30 min pärast. 20 järjestikuse vea järel lõpp-punkt suletakse.