/api/partner/v1/wolt/orders/{id}/invoice
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.
Kthen faturën fiskale të lëshuar për porosinë: identifikuesit IIC, FIC dhe EIC,
verifikimin nëpërmjet pdf_url, klientin, shumat dhe rreshtat.
Objekti i faturës është i njëjtë me atë të GET /api/v1/invoice/{id}/details, ndaj çdo gjë e
shkruar tashmë për atë endpoint punon këtu pa ndryshim.
Sa kohë është ende null#
invoice është null sa kohë porosia nuk ka faturë. Ndiqni fiscal_state në vend që të
thërrisni pa kriter:
fiscal_state |
Kuptimi |
|---|---|
pending |
Ende pa faturë. Shënojeni porosinë gati që të lëshohet një |
deferred |
E lëshuar, në pritje të CIS-it; invoice vjen me fic: null. Përfundon vetë |
fiscalised |
E kryer. invoice është i plotësuar |
failed |
Duhet riprovuar |
Edhe më mirë, ndiqni ngjarjen order.fiscalized në feed në vend të thirrjeve periodike.
URL-ja e plotë: https://fature.al/api/partner/v1/wolt/orders/{id}/invoice
Path parameters
| Name | Tipi | E detyrueshme | Përshkrimi |
|---|---|---|---|
| id | integer | yes | Id-ja e porosisë në fature.al, nga feed-i ose nga lista e porosive. |
Përgjigjet
200 Gjendja fiskale te `fiscal_state` dhe fatura e plotë te `invoice`; `invoice` është `null` sa kohë porosia nuk ka faturë.
| Field | Tipi | Përshkrimi |
|---|---|---|
| status | boolean | |
| data | object | |
| data.fiscal_state | string | Gjendja fiskale e porosisë, e nxjerrë nga fatura e saj: `pending` (ende pa faturë), `deferred` (fatura është lëshuar, por CIS-i nuk e ka regjistruar ende), `fiscalised` (CIS-i e ka regjistruar faturën) ose `failed` (një përpjekje për ta lëshuar dështoi dhe porosia mbeti pa faturë) |
| data.invoice | object, nullable | Fatura e plotë e porosisë, ose `null` sa kohë porosia nuk ka faturë (`fiscal_state` `pending` ose `failed`). Në gjendjen `deferred` fatura kthehet me `fic: null`. Kur përdoruesi i token-it është i llojit operator, fatura kthehet vetëm nëse u lëshua nga ai vetë; përndryshe `invoice` vjen `null` edhe pse `fiscal_state` tregon faturë |
| data.invoice.id | integer | Id-ja e faturës në fature.al |
| data.invoice.number | any | Numri i faturës, si `12/2026` |
| data.invoice.type | string | Lloji i faturës: `CASH`, `NONCASH` ose `EINVOICE` |
| data.invoice.issue_date | string | Data e lëshimit, `YYYY-MM-DD` |
| data.invoice.due_date | string | Afati i pagesës, `YYYY-MM-DD` |
| data.invoice.delivery_date | string | Data e dorëzimit, ose fundi i periudhës së furnizimit, `YYYY-MM-DD` |
| data.invoice.created_at | any | Data dhe ora e krijimit, `YYYY-MM-DD HH:MM:SS`, ora lokale |
| data.invoice.supply_start_date | any | Fillimi i periudhës së furnizimit, `YYYY-MM-DD` |
| data.invoice.supply_end_date | any | Fundi i periudhës së furnizimit, `YYYY-MM-DD` |
| data.invoice.client | object | Blerësi i faturës |
| data.invoice.amount | object | Shumat e faturës, në monedhën e saj dhe në lekë |
| data.invoice.payment | object | Sa është shlyer nga fatura |
| data.invoice.bank_account | any | Llogaria bankare e shtypur në faturë, ose `null` |
| data.invoice.notes | any | Shënimet që dalin në faturë |
| data.invoice.iic | any | Kodi identifikues i faturës (IIC, në ligj NSLF) |
| data.invoice.fic | any | Kodi që ktheu CIS-i kur e regjistroi faturën (FIC, në ligj NIVF). `null` sa kohë fatura pret fiskalizimin |
| data.invoice.eic | any | Kodi i faturës në platformën e e-faturave. Vetëm te e-faturat |
| data.invoice.doc_type | any | Lloji i dokumentit në UBL: `380` faturë, `381` notë krediti, `383` notë debiti. `null` te një faturë e zakonshme fiskale |
| data.invoice.process | any | Profili UBL: `P1` për një shitje, `P9` për një korrigjim. Vendoset te e-faturat |
| data.invoice.self_issue_type | any | Lloji i vetëfaturimit, kur fatura është vetëfaturim |
| data.invoice.reversed_at | any | Kur u anulua fatura, `YYYY-MM-DD HH:MM:SS`, ose `null` |
| data.invoice.reversed_by | any | Id-ja e faturës që kjo faturë anulon, ose `null` |
| data.invoice.pdf_url | string | URL-ja për të shkarkuar PDF-në e faturës |
| data.invoice.reverse_charge | boolean | Ngarkesë e kundërt: TVSH-në e deklaron blerësi |
| data.invoice.periodic_invoice | boolean | Faturë e një cikli të përsëritur faturimi |
| data.invoice.payment_method | string, nullable | Mënyra e pagesës me të cilën u shlye fatura; te një pagesë e ndarë, ajo me pjesën më të madhe |
| data.invoice.lines | array | Rreshtat e faturës; ngarkohen vetëm kur lexohet një faturë e vetme |
| data.invoice.lines[].name | any | Emri i produktit ose i shërbimit |
| data.invoice.lines[].product_code | any | Kodi i produktit në fature.al, kur rreshti i përket një produkti të katalogut |
| data.invoice.lines[].unit | any | Njësia matëse |
| data.invoice.lines[].unit_code | any | Kodi i njësisë matëse, p.sh. `C62` |
| data.invoice.lines[].quantity | any | Sasia |
| data.invoice.lines[].unitPrice | any | Çmimi për njësi me TVSH, pasi është hequr zbritja e rreshtit |
| data.invoice.lines[].vat_rate | any | Norma e TVSH-së në përqind |
| data.invoice.lines[].vat_exempt_type | any | Tipi i përjashtimit nga TVSH-ja, kur rreshti është i përjashtuar |
| data.invoice.lines[].margin_cost | any | Kostoja e blerjes së gjithë rreshtit në skemën e marzhit; null te rreshtat e tjerë |
| data.invoice.lines[].discount_rate | any | Zbritja e rreshtit në përqind, siç u dërgua te `lines[].discount`; null kur rreshti nuk ka zbritje |
| data.invoice.lines[].discount | any | Shuma e zbritjes së rreshtit, pa TVSH |
| data.invoice.lines[].amount_net | any | Vlera e rreshtit pa TVSH |
| data.invoice.lines[].amount_vat | any | TVSH-ja e rreshtit |
| data.invoice.lines[].total | any | Totali i rreshtit me TVSH |
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) |
404 Nuk ka porosi të tillë për këtë njësi.
| 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/8801/invoice' \
-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/8801/invoice');
$data = $response->json();
use GuzzleHttp\Client;
$client = new Client();
$response = $client->request('GET', 'https://fature.al/api/partner/v1/wolt/orders/8801/invoice', [
'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/8801/invoice', {
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": {
"fiscal_state": "fiscalised",
"invoice": {
"id": 40323,
"number": "12/2026",
"type": "EINVOICE",
"issue_date": "2026-09-13",
"due_date": "2026-09-27",
"delivery_date": "2026-09-13",
"created_at": "2026-09-13 10:15:00",
"supply_start_date": "2026-09-01",
"supply_end_date": "2026-09-13",
"client": [],
"amount": [],
"payment": [],
"bank_account": 3,
"notes": "Pagesa brenda 14 ditëve.",
"iic": "3C7E9A1F52B84D0E6A2C4F8B1D9E7A35",
"fic": "2f6c1e8a-9b3d-4c7e-a5f1-0d8b6e4c2a91",
"eic": "9b4e2d1c-6f7a-4b3c-8d2e-1f0a9c8b7d65",
"doc_type": 380,
"process": "P1",
"self_issue_type": "DOMESTIC",
"reversed_at": "2026-09-14 08:05:00",
"reversed_by": 40311,
"pdf_url": "https://fature.al/api/v1/invoice/print/40323",
"reverse_charge": false,
"periodic_invoice": false,
"payment_method": "ACCOUNT",
"lines": [
{
"name": "Orë pune mirëmbajtje",
"product_code": "SRV-MNT",
"unit": "Orë",
"unit_code": "HUR",
"quantity": 2,
"unitPrice": 270,
"vat_rate": 20,
"vat_exempt_type": "TYPE_1",
"margin_cost": 80,
"discount_rate": 10,
"discount": 50,
"amount_net": 450,
"amount_vat": 90,
"total": 540
}
]
}
}
}
{
"message": "Unauthenticated."
}
{
"status": false,
"message": "Porosia nuk u gjet.",
"code": "order_not_found"
}
{
"status": false,
"message": "Porosia nuk u gjet.",
"code": "order_not_found"
}
{
"message": "Hello there"
}