/api/partner/v1/wolt/orders
Requires authentication
Rate limited by the `api-global` limiter
Send a bearer token, plus the X-Client-Id and X-Client-Secret headers in the Authorization header.
Porositë e njësisë (venue), më të rejat të parat.
Për të shkuar më prapa, dërgoni next_cursor-in e përgjigjes së mëparshme si ?cursor=.
Ndaloni kur has_more është false.
Ky është një snapshot për listim dhe për plotësim të historikut. Për të qëndruar në hap me njësinë në kohë reale lexoni feed-in e ngjarjeve: ai vetëm shtohet dhe është i renditur, ndaj asgjë nuk humbet.
URL-ja e plotë: https://fature.al/api/partner/v1/wolt/orders
Query parameters
| Name | Tipi | E detyrueshme | Përshkrimi |
|---|---|---|---|
| limit | integer | no | Numri i porosive për kërkesë, 1-100. Defaults to `25`. |
| cursor | integer | no | Kthen porositë më të vjetra se kjo id; dërgoni next_cursor-in e mëparshëm. |
| status | string | no | Filtron sipas statusit të Wolt, p.sh. received, acknowledged, ready, delivered. |
| from | string | no | Vetëm porositë e marra në këtë datë ose pas saj (YYYY-MM-DD). |
| to | string | no | Vetëm porositë e marra në këtë datë ose para saj (YYYY-MM-DD). |
Përgjigjet
200 Porositë e njësisë te `orders`, nga më e reja te më e vjetra, me `next_cursor` dhe `has_more`; `orders` është bosh kur nuk ka porosi.
| Field | Tipi | Përshkrimi |
|---|---|---|
| status | boolean | |
| data | object | |
| data.orders | array | Porositë e faqes në formën e shkurtër, të renditura sipas id-së në zbritje (më e reja e para), deri në `limit` copë dhe të kufizuara nga filtrat `status`, `from` dhe `to` kur i keni dërguar. Bosh kur asnjë porosi nuk përputhet |
| data.orders[].id | integer | Id-ja e porosisë në fature.al; përdoreni si `{id}` në endpoint-et e porosisë dhe të veprimeve |
| data.orders[].wolt_order_id | string | Id-ja e porosisë te Wolt |
| data.orders[].display_number | string, nullable | Numri i porosisë që Wolt i tregon klientit (`order_number`); `null` kur Wolt nuk e ka dërguar ende |
| data.orders[].status | string | Statusi i porosisë, siç vjen nga Wolt: `received`, `acknowledged`, `preorder_confirmed`, `production`, `ready`, `picked_up`, `courier_at_customer`, `delivered`, `rejected`, `refunded`, `cancelled`, ... |
| data.orders[].fiscal_state | string | Gjendja fiskale, e nxjerrë nga fatura: `pending` (pa faturë), `deferred` (fatura pret CIS-in), `fiscalised` (e regjistruar në CIS) ose `failed` (lëshimi dështoi dhe porosia mbeti pa faturë) |
| data.orders[].total_amount | number | Totali i paguar nga klienti, në monedhën e porosisë (`currency`), në njësi të plota (lekë, jo qindarka) |
| data.orders[].currency | string | Kodi i monedhës së porosisë sipas ISO 4217; `ALL` kur Wolt nuk dërgon monedhë |
| data.orders[].received_at | string, nullable | Kur fature.al e regjistroi porosinë nga Wolt (ISO-8601 me offset-in e orës lokale) |
| data.orders[].pickup_at | string, nullable | Koha e premtuar Wolt-it gjatë pranimit (ISO-8601 me offset-in e orës lokale): kur do të jetë gati porosia te një porosi marketplace, ose kur do t'i dorëzohet klientit te një porosi self-delivery. `null` kur gjatë pranimit nuk u premtua kohë |
| data.orders[].delivery_type | string, nullable | Lloji i dorëzimit sipas Wolt (`delivery.type`): `homedelivery` me korrier, `takeaway` klienti e merr vetë, `eatin` konsumim në vend; `null` kur Wolt nuk e dërgon |
| data.orders[].self_delivery | boolean | `true` kur njësia e dorëzon porosinë me korrierin e vet dhe jo me një korrier të Wolt |
| data.orders[].branch | string, nullable | Emri i njësisë së biznesit që mban lidhjen Wolt; `null` kur lidhja nuk ka njësi |
| data.orders[].invoice | object, nullable | Referenca e faturës fiskale të lidhur, ose `null` sa kohë nuk është lëshuar faturë |
| data.orders[].invoice.id | any | Id-ja e faturës në fature.al |
| data.orders[].invoice.number | any | Numri i faturës, si `184/2026`; `null` sa kohë nuk i është caktuar ende |
| data.orders[].invoice.state | any | Gjendja fiskale, e njëjtë me `fiscal_state` të porosisë: `pending`, `deferred`, `fiscalised` ose `failed`. Brenda kësaj reference është praktikisht `deferred` ose `fiscalised`, sepse referenca ekziston vetëm kur porosia ka faturë |
| data.orders[].invoice.fiscal_iic | any | IIC (NSLF) i faturës, kodi identifikues që llogaritet me lëshimin; `null` vetëm kur fatura nuk e ka ende |
| data.orders[].invoice.fiscal_fic | any | FIC (NIVF) i faturës, kodi që kthen CIS-i kur e regjistron; `null` sa kohë fatura pret fiskalizimin (`deferred`) |
| data.next_cursor | string | Cursor-i për faqen e radhës: id-ja e porosisë më të vjetër në këtë faqe, ose `0` kur faqja është bosh. Dërgojeni si `cursor` për të marrë porositë më të vjetra se ajo. Vjen si string edhe pse është numër |
| data.has_more | boolean | `true` kur ka porosi më të vjetra se `next_cursor` që përputhen me filtrat; `false` kur kjo është faqja e fundit |
401 Unauthenticated
| Field | Tipi | Përshkrimi |
|---|---|---|
| message | string |
403 Kompania nuk e ka modulin Wolt, përdoruesi i token-it nuk ka të drejtën Wolt, ose token-i nuk zgjidhet në një njësi të vetme aktive.
| Field | Tipi | Përshkrimi |
|---|---|---|
| status | boolean | Gjithmonë `false` |
| message | string | Shpjegim i përkthyer; ruajeni në log, por mos vendosni sipas tij |
| code | string | Arsyeja e qëndrueshme, e lexueshme nga makina: `unauthenticated` (token-i mungon ose nuk vlen), `wolt_not_enabled` (kompania nuk e ka modulin Wolt), `forbidden` (përdoruesi i token-it nuk ka të drejtën Wolt), `no_venue` (token-i nuk zgjidhet në një njësi të vetme aktive), `order_not_found` (nuk ka porosi të tillë për këtë njësi), `invalid_transition` (veprimi nuk lejohet për statusin aktual të porosisë), `invalid_data` (body i kërkesës nuk kaloi validimin), `action_failed` (veprimi dështoi nga ana jonë), `wolt_upstream_error` (Wolt e refuzoi veprimin ose nuk u përgjigj), `idempotency_key_required` (header-i `Idempotency-Key` mungon), `idempotency_in_progress` (një thirrje me të njëjtin çelës është ende në proces) |
429 Kufiri i kërkesave u arrit: 180 lexime në minutë për token. Riprovoni pas numrit të sekondave në header-in Retry-After.
| Field | Tipi | Përshkrimi |
|---|---|---|
| message | string |
Shembull kërkese
curl -X GET 'https://fature.al/api/partner/v1/wolt/orders' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'X-Client-Id: YOUR_CLIENT_ID' \
-H 'X-Client-Secret: YOUR_CLIENT_SECRET' \
-H 'Accept: application/json'
use Illuminate\Support\Facades\Http;
$response = Http::withHeaders([
'Authorization' => 'Bearer YOUR_TOKEN',
'X-Client-Id' => 'YOUR_CLIENT_ID',
'X-Client-Secret' => 'YOUR_CLIENT_SECRET',
'Accept' => 'application/json',
])->get('https://fature.al/api/partner/v1/wolt/orders');
$data = $response->json();
use GuzzleHttp\Client;
$client = new Client();
$response = $client->request('GET', 'https://fature.al/api/partner/v1/wolt/orders', [
'headers' => [
'Authorization' => 'Bearer YOUR_TOKEN',
'X-Client-Id' => 'YOUR_CLIENT_ID',
'X-Client-Secret' => 'YOUR_CLIENT_SECRET',
'Accept' => 'application/json',
],
]);
$data = json_decode((string) $response->getBody(), true);
const response = await fetch('https://fature.al/api/partner/v1/wolt/orders', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_TOKEN',
'X-Client-Id': 'YOUR_CLIENT_ID',
'X-Client-Secret': 'YOUR_CLIENT_SECRET',
'Accept': 'application/json'
}
});
const data = await response.json();
Shembull përgjigjeje
{
"status": true,
"data": {
"orders": [
{
"id": 8801,
"wolt_order_id": "66e1f3a2b4c5d6e7f8a9b0c1",
"display_number": "A7",
"status": "ready",
"fiscal_state": "fiscalised",
"total_amount": 1550,
"currency": "ALL",
"received_at": "2026-09-14T12:05:31+02:00",
"pickup_at": "2026-09-14T12:30:00+02:00",
"delivery_type": "homedelivery",
"self_delivery": false,
"branch": "Blloku",
"invoice": {
"id": 512430,
"number": "184/2026",
"state": "fiscalised",
"fiscal_iic": "B1D6E9F3A4C2E7D8F0A1B2C3D4E5F601",
"fiscal_fic": "3a9c6e1f-2b4d-4f8e-9c7a-5d1e0b2f4a6c"
}
}
],
"next_cursor": 8777,
"has_more": true
}
}
{
"message": "Unauthenticated."
}
{
"status": false,
"message": "Porosia nuk u gjet.",
"code": "order_not_found"
}
{
"message": "Hello there"
}