{
    "openapi": "3.1.0",
    "info": {
        "title": "fature.al API",
        "version": "1.0",
        "description": "# fature.al API\n\nAPI per integrimin me fature.al - sistemi i fiskalizimit dhe faturimit per bizneset ne Shqiperi.\n\n## Identifikimi\n\nTe gjitha kerkesat kerkojne nje Bearer token ne header-in Authorization:\n\n```\nAuthorization: Bearer {api_token}\n```\n\nToken-in e gjeneroni nga **Konfigurime > API Tokens** ne panelin e fature.al, ose e merrni nga pergjigja e endpoint-it Register Company.\n\n## Serverat\n\n| Mjedisi | URL |\n|---------|-----|\n| **Live** | `https:\/\/fature.al` |\n| **Sandbox\/Demo** | `https:\/\/demo.fature.al` |\n\n## Seksionet kryesore\n\n- **On Boarding** - regjistrimi i kompanise, certifikata elektronike, njesite e biznesit, perdoruesit, pajisjet fiskale (TCR), llogarite bankare\n- **Invoice** - krijimi i faturave Cash, NonCash, E-Invoice, Order, Summary. Listimi, detajet, anullimi, printimi PDF\n- **Arka Fiskale** - hapja dhe mbyllja e arkes per shitje me para ne dore\n- **Klienti** - kerkimi i kompanive ne regjistrin fiskal sipas NIPT\n\n## Rrjedha e integrimit (ne rastet kur behet onboarding e klienteve me api)\n\n1. **Regjistro kompanin\u00eb** (`POST \/register`) - merr token + branch ID\n2. **Ngarko certifikaten** (`POST \/on-boarding\/certificate`)\n3. **Konfiguro njesine e biznesit** (`POST \/on-boarding\/branch\/{id}`) - vendos businessUnitCode\n4. **Krijo pajisje fiskale** (`POST \/on-boarding\/fiscal-device`) - merr kodin TCR\n5. **Konfiguro perdoruesin** (`POST \/on-boarding\/user\/{id}`) - vendos operatorCode + fiscalTcrCode\n6. **Fillo leshimin e faturave** - perdor endpoint-et e Invoice\n\n## Formati i pergjigjes\n\nTe gjitha pergjigjjet kane formatin:\n```json\n{\"success\": true, \"data\": { ... }}\n```\n\nNe rast gabimi:\n```json\n{\"success\": false, \"errors\": [\"Mesazhi i gabimit\"]}\n```\n\n## Limitet (Rate limiting)\n\nAPI ka limit kerkesash per te mbrojtur sherbimin dhe per te garantuar performance per te gjithe perdoruesit. Kur arrihet limiti, server-i kthen statusin **HTTP 429 Too Many Requests** se bashku me header-in `Retry-After` (sekonda) qe tregon kohen e nevojshme per te ritestuar.\n\nLimitet jane **per perdorues** (te lidhura me API token-in tuaj), me perjashtim te limitit te pergjithshem qe eshte per IP.\n\n| Kategoria | Endpoint-et | Limit |\n|-----------|-------------|-------|\n| **I pergjithshem (per IP)** | te gjitha kerkesat e nivelit te API-t | 120\/minute |\n| **Default (per perdorues)** | te gjitha endpoint-et e mbrojtura me identifikim | 240\/minute |\n| **Fatura fiskale** | `POST \/invoice\/cash`, `\/invoice\/noncash`, `\/invoice\/e-invoice`, `\/invoice\/order`, `\/invoice\/summary`, `\/invoice\/cancel\/*`, `\/invoice\/wtn` | 30\/minute, 600\/ore |\n| **Bulk** | `POST \/invoice\/bulk-noncash` | 3\/minute, 30\/ore |\n| **Printim PDF** | `GET \/invoice\/print\/{id}`, `\/invoice\/print-eic\/{eic}`, `\/invoice\/wtn\/print\/{id}` | 30\/minute |\n| **Kerkim klientesh** | `GET \/client\/search` | 90\/minute |\n| **Onboarding** | `POST \/register`, `POST \/on-boarding\/*` | 30\/minute, 600\/ore (per perdorues) |\n\nKur perdorimi juaj eshte i larte ne menyre te qendrueshme dhe limitet bllokojne integrimin, na kontaktoni.\n\n### Pergjigja kur arrihet limiti\n\n```json\n{\n    \"message\": \"Too Many Attempts.\"\n}\n```\n\nHeader-at e kthyer:\n- `Retry-After: 30` - numri i sekondave para se te ritestoni\n- `X-RateLimit-Limit` - limiti maksimal per dritaren aktuale\n- `X-RateLimit-Remaining` - kerkesat e mbetura ne kete dritare"
    },
    "servers": [
        {
            "url": "https:\/\/fature.al\/api\/v1",
            "description": "Live"
        },
        {
            "url": "https:\/\/demo.fature.al\/api\/v1",
            "description": "Sandbox"
        }
    ],
    "tags": [
        {
            "name": "On Boarding",
            "description": "Ne kete koleksion perfshihen endpoint-et qe ju lejojne te regjistroni nje kompani ne fature.al dhe te plotesoni te dhenat e nevojshme per ta bere gati per leshimin e faturave.\n\n**Workflow:**\n1. Regjistroni kompanin\u00eb (`POST \/register`).\n2. Perditesoni njesine e biznesit (branch) me `businessUnitCode`, i cili merret nga self-care dhe ruhet te njesia e biznesit.\n3. Perditesoni perdoruesin me `operatorCode`, i cili merret nga self-care.\n4. Ngarkoni certifikaten elektronike se bashku me fjalekalimin perkates, te cilin e merrni nga e-Albania.\n5. Ruani llogarite bankare qe kompania do te perdore per faturat pa para ne dore ose per faturat elektronike (eInvoice).\n\n**Nese kompania do te leshoje fatura me para ne dore:**\n6. Ruani pajisjen fiskale (fiscal device) dhe kodi i kthyer `fiscalTcrCode` duhet te ruhet te perdoruesi qe do te leshoje keto lloj faturash, nj\u00ebsoj si te pika 3.\n\n**Shtimi i perdoruesve te rinj:**\nMund te shtoni me shume perdorues nese eshte e nevojshme, por per secilin duhet te plotesohen:\n- Nje email unik, p.sh. `dicka-unike@domaini-juaj.com`\n- Pajisja fiskale, sipas pikes 6\n- Kodi i operatorit, sipas pikes 3\n\n> **Shenim:** Cdo perdorues do te operoje me `api_token`-in e vet, te cilin e merr pasi te regjistrohet.\n\n**Sandbox (vetem ne instancen DEMO):**\nPer te testuar te gjithe flow-in e onboarding-ut pa krijuar nje kompani te re, perdorni NIPT-in sandbox `L62221018T` ne thirrjen `POST \/register`. Sjellja:\n\n- Nuk krijohet kompani e re; perdoruesi dhe njesia e biznesit krijohen nen kompanine ekzistuese sandbox `L62221018T`.\n- Email-i qe dergoni shtohet me nje sufiks unik (`+sandbox-XXXXXXXX`) ne DB, keshtu qe mund ta riperseritni `POST \/register` me te njejtin email pa goditur unique-key.\n- `POST \/on-boarding\/certificate` ne DEMO kthen `success` per cdo certifikate (`.p12` ose `.pfx`) dhe cdo fjalekalim, pa e validuar fjalekalimin apo NIPT-in brenda certifikates. Data `expiresAt` qe kthehet eshte +1 vit nga sot.\n- Hapat e tjere (`branch`, `user`, `bank-account`, `fiscal-device`) ekzekutohen normalisht ne kompanine sandbox.\n\nNe `PRODUCTION` keto sjellje sandbox jane jo-aktive. NIPT `L62221018T` trajtohet si cdo NIPT tjeter."
        }
    ],
    "paths": {
        "\/register": {
            "get": {
                "operationId": "v1.pong",
                "description": "Kontrollo nese API eshte aktiv per regjistrimin e kompanive.",
                "summary": "Ping (Register)",
                "tags": [
                    "On Boarding"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "properties": {
                                                        "pong": {
                                                            "type": "integer"
                                                        }
                                                    },
                                                    "required": [
                                                        "pong"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "data"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "anyOf": [
                                                        {
                                                            "type": "string"
                                                        },
                                                        {
                                                            "type": "string",
                                                            "enum": [
                                                                ""
                                                            ]
                                                        }
                                                    ]
                                                },
                                                "errors": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "message",
                                                "errors"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "v1.register",
                "description": "Regjistron nje kompani te re ne fature.al. Kerkon token special te autorizuar nga fature.al. Kthen token API per perdoruesin e krijuar dhe ID e njesise se biznesit.\n\n**Sandbox (DEMO):** ne instancen DEMO, dergimi i NIPT-it `L62221018T` aktivizon rrjedhen sandbox: nuk krijohet kompani e re, por krijohet nje perdorues + njesi biznesi nen kompanine ekzistuese sandbox dhe ju kthehet nje `api_token` real qe e perdorni per hapat e tjere te onboarding-ut. Email-i shtohet me sufiks `+sandbox-XXXXXXXX` qe te lejojme thirrje te perseritura me te njejtin email. Ne `PRODUCTION` ky NIPT trajtohet normalisht.",
                "summary": "Regjistro kompani te re",
                "tags": [
                    "On Boarding"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/RegisterCompanyRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "user": {
                                                    "type": "object",
                                                    "properties": {
                                                        "token": {
                                                            "type": "string"
                                                        },
                                                        "id": {
                                                            "type": "integer"
                                                        }
                                                    },
                                                    "required": [
                                                        "token",
                                                        "id"
                                                    ]
                                                },
                                                "branch": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "name"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "user",
                                                "branch"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/on-boarding\/certificate": {
            "post": {
                "operationId": "v1.on-boarding.certificate",
                "description": "Ngarkoni certifikaten elektronike (.p12 ose .pfx) per kompanin\u00eb. Fjalekalimi duhet te jete i sakte dhe NIPT-i ne certifikate duhet te perputhet me NIPT-in e kompanise.\n\n**Sandbox (DEMO):** ne instancen DEMO ky endpoint kthen `success` per cdo certifikate dhe cdo fjalekalim. `expiresAt` qe kthehet eshte +1 vit nga sot.",
                "summary": "Ngarko certifikaten elektronike",
                "tags": [
                    "On Boarding"
                ],
                "requestBody": {
                    "content": {
                        "multipart\/form-data": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/CertificateRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "cert": {
                                                    "type": "object",
                                                    "properties": {
                                                        "expiresAt": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "expiresAt"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "cert"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/on-boarding\/branch\/{id}": {
            "post": {
                "operationId": "v1.on-boarding.branch",
                "description": "Perditesoni emrin, adresen, administratorin dhe kodin e biznesit per nje njesi biznesi ekzistuese. Kodi i biznesit (businessUnitCode) eshte i domosdshem per leshimin e faturave.",
                "summary": "Perditeso njesine e biznesit (Branch)",
                "tags": [
                    "On Boarding"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string"
                                    },
                                    "businessUnitCode": {
                                        "type": "string"
                                    },
                                    "administrator": {
                                        "type": "string"
                                    },
                                    "address": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "branch": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "businessUnitCode": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "name",
                                                        "businessUnitCode"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "branch"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/on-boarding\/user": {
            "post": {
                "operationId": "v1.on-boarding.user",
                "description": "Krijoni nje perdorues te ri per kompanin\u00eb me kodin e operatorit dhe pajisjen fiskale. Kthen token API per kete perdorues.",
                "summary": "Krijo perdorues te ri",
                "tags": [
                    "On Boarding"
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "branchId": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "phone": {
                                        "type": "string",
                                        "default": "0000"
                                    },
                                    "fiscalTcrCode": {
                                        "type": "string"
                                    },
                                    "operatorCode": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "user": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "operatorCode": {
                                                            "type": "string"
                                                        },
                                                        "token": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "name",
                                                        "operatorCode",
                                                        "token"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "user"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/on-boarding\/user\/{id}": {
            "post": {
                "operationId": "v1.on-boarding.user-update",
                "description": "Perditesoni emrin, kodin e operatorit, pajisjen fiskale dhe njesine e biznesit per nje perdorues ekzistues. Kodi i operatorit eshte i domosdshem per leshimin e faturave.",
                "summary": "Perditeso perdoruesin",
                "tags": [
                    "On Boarding"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "fiscalTcrCode": {
                                        "type": "string"
                                    },
                                    "name": {
                                        "type": "string"
                                    },
                                    "branchId": {
                                        "type": "string"
                                    },
                                    "operatorCode": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "user": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "operatorCode": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "name",
                                                        "operatorCode"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "user"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/on-boarding\/fiscal-device": {
            "post": {
                "operationId": "v1.on-boarding.fiscal-device",
                "description": "Regjistron nje pajisje fiskale te re ne sistemin e tatimeve dhe kthen kodin TCR. Ky kod perdoret per faturat me para ne dore dhe duhet te lidhet me perdoruesin perkates.",
                "summary": "Krijo pajisje fiskale (TCR)",
                "tags": [
                    "On Boarding"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/FiscalDeviceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "device": {
                                                    "type": "object",
                                                    "properties": {
                                                        "fiscalTcrCode": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "fiscalTcrCode"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "device"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/on-boarding\/bank-account": {
            "post": {
                "operationId": "v1.on-boarding.bank-account",
                "description": "Krijoni nje llogari bankare per kompanin\u00eb. Llogaria bankare shfaqet ne faturat elektronike dhe jo-cash si informacion pagese per klientin.",
                "summary": "Krijo llogari bankare",
                "tags": [
                    "On Boarding"
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/BankAccountRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "bankAccount": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "iban": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "iban"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "bankAccount"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/account": {
            "get": {
                "operationId": "account.index",
                "description": "Kthen te dhenat e perdoruesit te autentifikuar: emri, email, kodi fiskal dhe kompania.",
                "summary": "Te dhenat e llogarise",
                "tags": [
                    "Account"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "name": {
                                                    "type": "string"
                                                },
                                                "email": {
                                                    "type": "string"
                                                },
                                                "fiscalCode": {
                                                    "type": "string"
                                                },
                                                "company": {
                                                    "type": "string"
                                                },
                                                "nipt": {
                                                    "type": "string"
                                                },
                                                "branch": {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        },
                                                        "city": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "address",
                                                        "city"
                                                    ]
                                                },
                                                "companyBranches": {
                                                    "type": "string"
                                                },
                                                "permissions": {
                                                    "type": "object",
                                                    "properties": {
                                                        "createArticles": {
                                                            "type": "boolean"
                                                        },
                                                        "createClients": {
                                                            "type": "boolean"
                                                        }
                                                    },
                                                    "required": [
                                                        "createArticles",
                                                        "createClients"
                                                    ]
                                                },
                                                "configs": {
                                                    "type": "object",
                                                    "properties": {
                                                        "openDayAlways0": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "openDayAlways0"
                                                    ]
                                                },
                                                "vatConfigs": {
                                                    "type": "object",
                                                    "properties": {
                                                        "issuerInVat": {
                                                            "type": "string"
                                                        },
                                                        "vat_rates": {
                                                            "anyOf": [
                                                                {
                                                                    "type": "array",
                                                                    "prefixItems": [
                                                                        {
                                                                            "type": "integer",
                                                                            "const": 20
                                                                        },
                                                                        {
                                                                            "type": "integer",
                                                                            "const": 10
                                                                        },
                                                                        {
                                                                            "type": "integer",
                                                                            "const": 6
                                                                        },
                                                                        {
                                                                            "type": "integer"
                                                                        }
                                                                    ],
                                                                    "minItems": 4,
                                                                    "maxItems": 4,
                                                                    "additionalItems": false
                                                                },
                                                                {
                                                                    "type": "array",
                                                                    "prefixItems": [
                                                                        {
                                                                            "type": "integer"
                                                                        }
                                                                    ],
                                                                    "minItems": 1,
                                                                    "maxItems": 1,
                                                                    "additionalItems": false
                                                                }
                                                            ]
                                                        },
                                                        "vat_exempts": {
                                                            "type": "array",
                                                            "items": {}
                                                        }
                                                    },
                                                    "required": [
                                                        "issuerInVat",
                                                        "vat_rates",
                                                        "vat_exempts"
                                                    ]
                                                },
                                                "subscription": {
                                                    "type": "object",
                                                    "properties": {
                                                        "cash": {
                                                            "type": "string"
                                                        },
                                                        "noncash": {
                                                            "type": "string"
                                                        },
                                                        "einvoice": {
                                                            "type": "string"
                                                        },
                                                        "wtn": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "cash",
                                                        "noncash",
                                                        "einvoice",
                                                        "wtn"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "name",
                                                "email",
                                                "fiscalCode",
                                                "company",
                                                "nipt",
                                                "branch",
                                                "companyBranches",
                                                "permissions",
                                                "configs",
                                                "vatConfigs",
                                                "subscription"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/bank-accounts": {
            "get": {
                "operationId": "v1.bank-accounts.list",
                "description": "Merr listen e llogarive bankare aktive te kompanise me faqosje dhe filtrim me tekst.",
                "summary": "Lista e llogarive bankare",
                "tags": [
                    "BankAccount"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "items": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer"
                                                            },
                                                            "bank_name": {
                                                                "type": "string"
                                                            },
                                                            "iban": {
                                                                "type": "string"
                                                            },
                                                            "swift": {
                                                                "type": "string"
                                                            },
                                                            "holder": {
                                                                "type": "string"
                                                            },
                                                            "currency_code": {
                                                                "type": "string"
                                                            },
                                                            "is_default": {
                                                                "type": "boolean"
                                                            },
                                                            "notes": {
                                                                "type": "string"
                                                            },
                                                            "valid_from": {
                                                                "type": "string"
                                                            },
                                                            "valid_to": {
                                                                "type": "string"
                                                            },
                                                            "created_at": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "id",
                                                            "bank_name",
                                                            "iban",
                                                            "swift",
                                                            "holder",
                                                            "currency_code",
                                                            "is_default",
                                                            "notes",
                                                            "valid_from",
                                                            "valid_to",
                                                            "created_at"
                                                        ]
                                                    }
                                                },
                                                "pagination": {
                                                    "type": "object",
                                                    "properties": {
                                                        "records": {
                                                            "type": "integer"
                                                        },
                                                        "total": {
                                                            "type": "integer"
                                                        },
                                                        "limit": {
                                                            "type": "integer"
                                                        },
                                                        "offset": {
                                                            "type": "integer"
                                                        }
                                                    },
                                                    "required": [
                                                        "records",
                                                        "total",
                                                        "limit",
                                                        "offset"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "items",
                                                "pagination"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/cash-register\/open-balance": {
            "post": {
                "operationId": "v1.cash-register.open",
                "description": "Hapni balancen e arkes fiskale per te filluar shitjet me para ne dore. Perdoruesi duhet te kete pajisje fiskale (TCR) te lidhur.",
                "summary": "Hap balancen e arkes",
                "tags": [
                    "CashRegister"
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "balance": {
                                        "type": "string",
                                        "default": 0
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "balance": {
                                                    "type": "number"
                                                }
                                            },
                                            "required": [
                                                "balance"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/cash-register\/close-balance": {
            "post": {
                "operationId": "v1.cash-register.close",
                "description": "Mbyllni balancen e arkes fiskale ne fund te dites. Nese arka nuk eshte e hapur, hapet automatikisht me balance 0.",
                "summary": "Mbyll balancen e arkes",
                "tags": [
                    "CashRegister"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "balance": {
                                                    "type": "number"
                                                }
                                            },
                                            "required": [
                                                "balance"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/cash-register\/deposit": {
            "post": {
                "operationId": "v1.cash-register.deposit",
                "description": "Bej nje hyrje parash ne arken fiskale (MONEY_IN). Kerkon qe perdoruesi te kete pajisje fiskale (TCR) te lidhur.",
                "summary": "Hyrje ne arke (Deposit)",
                "tags": [
                    "CashRegister"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/CashActionRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "id": {
                                                    "type": "integer"
                                                },
                                                "action_type": {
                                                    "type": "string"
                                                },
                                                "amount": {
                                                    "type": "number"
                                                },
                                                "currency": {
                                                    "type": "string"
                                                },
                                                "transaction_date": {
                                                    "type": "string"
                                                },
                                                "transaction_no": {
                                                    "type": "integer"
                                                },
                                                "cash_action_no": {
                                                    "type": "string"
                                                },
                                                "fiscal_status": {
                                                    "type": "string"
                                                },
                                                "fiscal_uuid": {
                                                    "type": "string"
                                                },
                                                "fiscal_fic": {
                                                    "type": "string"
                                                },
                                                "description": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "id",
                                                "action_type",
                                                "amount",
                                                "currency",
                                                "transaction_date",
                                                "transaction_no",
                                                "cash_action_no",
                                                "fiscal_status",
                                                "fiscal_uuid",
                                                "fiscal_fic",
                                                "description"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/cash-register\/withdraw": {
            "post": {
                "operationId": "v1.cash-register.withdraw",
                "description": "Bej nje dalje parash nga arka fiskale (MONEY_OUT). Kerkon qe perdoruesi te kete pajisje fiskale (TCR) te lidhur.",
                "summary": "Dalje nga arka (Withdraw)",
                "tags": [
                    "CashRegister"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/CashActionRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "id": {
                                                    "type": "integer"
                                                },
                                                "action_type": {
                                                    "type": "string"
                                                },
                                                "amount": {
                                                    "type": "number"
                                                },
                                                "currency": {
                                                    "type": "string"
                                                },
                                                "transaction_date": {
                                                    "type": "string"
                                                },
                                                "transaction_no": {
                                                    "type": "integer"
                                                },
                                                "cash_action_no": {
                                                    "type": "string"
                                                },
                                                "fiscal_status": {
                                                    "type": "string"
                                                },
                                                "fiscal_uuid": {
                                                    "type": "string"
                                                },
                                                "fiscal_fic": {
                                                    "type": "string"
                                                },
                                                "description": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "id",
                                                "action_type",
                                                "amount",
                                                "currency",
                                                "transaction_date",
                                                "transaction_no",
                                                "cash_action_no",
                                                "fiscal_status",
                                                "fiscal_uuid",
                                                "fiscal_fic",
                                                "description"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/cash-register\/actions": {
            "get": {
                "operationId": "v1.cash-register.list",
                "description": "Merrni listen e veprimeve me arken fiskale (hyrje, dalje, hapje\/mbyllje dite) me filtrim dhe faqosje.",
                "summary": "Lista e veprimeve me arken",
                "tags": [
                    "CashRegister"
                ],
                "parameters": [
                    {
                        "name": "type",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "fromDate",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "toDate",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "items": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer"
                                                            },
                                                            "action_type": {
                                                                "type": "string"
                                                            },
                                                            "amount": {
                                                                "type": "number"
                                                            },
                                                            "currency": {
                                                                "type": "string"
                                                            },
                                                            "transaction_date": {
                                                                "type": "string"
                                                            },
                                                            "transaction_no": {
                                                                "type": "integer"
                                                            },
                                                            "cash_action_no": {
                                                                "type": "string"
                                                            },
                                                            "fiscal_status": {
                                                                "type": "string"
                                                            },
                                                            "fiscal_uuid": {
                                                                "type": "string"
                                                            },
                                                            "fiscal_fic": {
                                                                "type": "string"
                                                            },
                                                            "fiscal_tcr_code": {
                                                                "type": "string"
                                                            },
                                                            "description": {
                                                                "type": "string"
                                                            },
                                                            "third_party": {
                                                                "type": "string"
                                                            },
                                                            "id_client": {
                                                                "type": "string"
                                                            },
                                                            "created_at": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "id",
                                                            "action_type",
                                                            "amount",
                                                            "currency",
                                                            "transaction_date",
                                                            "transaction_no",
                                                            "cash_action_no",
                                                            "fiscal_status",
                                                            "fiscal_uuid",
                                                            "fiscal_fic",
                                                            "fiscal_tcr_code",
                                                            "description",
                                                            "third_party",
                                                            "id_client",
                                                            "created_at"
                                                        ]
                                                    }
                                                },
                                                "pagination": {
                                                    "type": "object",
                                                    "properties": {
                                                        "records": {
                                                            "type": "integer"
                                                        },
                                                        "limit": {
                                                            "type": "integer"
                                                        },
                                                        "offset": {
                                                            "type": "integer"
                                                        },
                                                        "type": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "records",
                                                        "limit",
                                                        "offset",
                                                        "type"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "items",
                                                "pagination"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/cash-register\/balance": {
            "get": {
                "operationId": "v1.cash-register.balance",
                "description": "Merrni balancen aktuale ne ALL te arkes fiskale (TCR) te perdoruesit. Nese [toDate] nuk jepet, kthehet balanca e fundit.",
                "summary": "Balanca e arkes fiskale",
                "tags": [
                    "CashRegister"
                ],
                "parameters": [
                    {
                        "name": "toDate",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "fiscal_tcr_code": {
                                                    "type": "string"
                                                },
                                                "currency": {
                                                    "type": "string"
                                                },
                                                "to_date": {
                                                    "type": "string"
                                                },
                                                "balance": {
                                                    "type": "number"
                                                }
                                            },
                                            "required": [
                                                "fiscal_tcr_code",
                                                "currency",
                                                "to_date",
                                                "balance"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/clients": {
            "get": {
                "operationId": "v1.clients.list",
                "description": "Merr listen e klienteve te kompanise me faqosje dhe filtrim me tekst.",
                "summary": "Lista e klienteve",
                "tags": [
                    "Client"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "items": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer"
                                                            },
                                                            "name": {
                                                                "type": "string"
                                                            },
                                                            "client_type": {
                                                                "type": "string"
                                                            },
                                                            "company_name": {
                                                                "type": "string"
                                                            },
                                                            "company_type": {
                                                                "type": "string"
                                                            },
                                                            "nipt": {
                                                                "type": "string"
                                                            },
                                                            "first_name": {
                                                                "type": "string"
                                                            },
                                                            "surname": {
                                                                "type": "string"
                                                            },
                                                            "birthday": {
                                                                "type": "string"
                                                            },
                                                            "id_type": {
                                                                "type": "string"
                                                            },
                                                            "id_num": {
                                                                "type": "string"
                                                            },
                                                            "nationality_code": {
                                                                "type": "string"
                                                            },
                                                            "nationality_id": {
                                                                "type": "string"
                                                            },
                                                            "telephone": {
                                                                "type": "string"
                                                            },
                                                            "email": {
                                                                "type": "string"
                                                            },
                                                            "address": {
                                                                "type": "string"
                                                            },
                                                            "city": {
                                                                "type": "string"
                                                            },
                                                            "customer_number": {
                                                                "type": "string"
                                                            },
                                                            "created_at": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "id",
                                                            "name",
                                                            "client_type",
                                                            "company_name",
                                                            "company_type",
                                                            "nipt",
                                                            "first_name",
                                                            "surname",
                                                            "birthday",
                                                            "id_type",
                                                            "id_num",
                                                            "nationality_code",
                                                            "nationality_id",
                                                            "telephone",
                                                            "email",
                                                            "address",
                                                            "city",
                                                            "customer_number",
                                                            "created_at"
                                                        ]
                                                    }
                                                },
                                                "pagination": {
                                                    "type": "object",
                                                    "properties": {
                                                        "records": {
                                                            "type": "integer"
                                                        },
                                                        "total": {
                                                            "type": "integer"
                                                        },
                                                        "limit": {
                                                            "type": "integer"
                                                        },
                                                        "offset": {
                                                            "type": "integer"
                                                        }
                                                    },
                                                    "required": [
                                                        "records",
                                                        "total",
                                                        "limit",
                                                        "offset"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "items",
                                                "pagination"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "v1.clients.create",
                "summary": "Krijo klient",
                "tags": [
                    "Client"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/ClientRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "client": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "client_type": {
                                                            "type": "string"
                                                        },
                                                        "company_name": {
                                                            "type": "string"
                                                        },
                                                        "company_type": {
                                                            "type": "string"
                                                        },
                                                        "nipt": {
                                                            "type": "string"
                                                        },
                                                        "first_name": {
                                                            "type": "string"
                                                        },
                                                        "surname": {
                                                            "type": "string"
                                                        },
                                                        "birthday": {
                                                            "type": "string"
                                                        },
                                                        "id_type": {
                                                            "type": "string"
                                                        },
                                                        "id_num": {
                                                            "type": "string"
                                                        },
                                                        "nationality_code": {
                                                            "type": "string"
                                                        },
                                                        "nationality_id": {
                                                            "type": "string"
                                                        },
                                                        "telephone": {
                                                            "type": "string"
                                                        },
                                                        "email": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        },
                                                        "city": {
                                                            "type": "string"
                                                        },
                                                        "customer_number": {
                                                            "type": "string"
                                                        },
                                                        "created_at": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "name",
                                                        "client_type",
                                                        "company_name",
                                                        "company_type",
                                                        "nipt",
                                                        "first_name",
                                                        "surname",
                                                        "birthday",
                                                        "id_type",
                                                        "id_num",
                                                        "nationality_code",
                                                        "nationality_id",
                                                        "telephone",
                                                        "email",
                                                        "address",
                                                        "city",
                                                        "customer_number",
                                                        "created_at"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "client"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/clients\/{id}\/details": {
            "get": {
                "operationId": "v1.clients.details",
                "summary": "Detajet e klientit sipas ID",
                "tags": [
                    "Client"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "client": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "client_type": {
                                                            "type": "string"
                                                        },
                                                        "company_name": {
                                                            "type": "string"
                                                        },
                                                        "company_type": {
                                                            "type": "string"
                                                        },
                                                        "nipt": {
                                                            "type": "string"
                                                        },
                                                        "first_name": {
                                                            "type": "string"
                                                        },
                                                        "surname": {
                                                            "type": "string"
                                                        },
                                                        "birthday": {
                                                            "type": "string"
                                                        },
                                                        "id_type": {
                                                            "type": "string"
                                                        },
                                                        "id_num": {
                                                            "type": "string"
                                                        },
                                                        "nationality_code": {
                                                            "type": "string"
                                                        },
                                                        "nationality_id": {
                                                            "type": "string"
                                                        },
                                                        "telephone": {
                                                            "type": "string"
                                                        },
                                                        "email": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        },
                                                        "city": {
                                                            "type": "string"
                                                        },
                                                        "customer_number": {
                                                            "type": "string"
                                                        },
                                                        "created_at": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "name",
                                                        "client_type",
                                                        "company_name",
                                                        "company_type",
                                                        "nipt",
                                                        "first_name",
                                                        "surname",
                                                        "birthday",
                                                        "id_type",
                                                        "id_num",
                                                        "nationality_code",
                                                        "nationality_id",
                                                        "telephone",
                                                        "email",
                                                        "address",
                                                        "city",
                                                        "customer_number",
                                                        "created_at"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "client"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/clients\/{id}": {
            "put": {
                "operationId": "v1.clients.update",
                "description": "Perditeson nje klient ekzistues. Trupi i kerkeses ka te njejtin format si POST \/clients.",
                "summary": "Perditeso klient",
                "tags": [
                    "Client"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/ClientRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "client": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "client_type": {
                                                            "type": "string"
                                                        },
                                                        "company_name": {
                                                            "type": "string"
                                                        },
                                                        "company_type": {
                                                            "type": "string"
                                                        },
                                                        "nipt": {
                                                            "type": "string"
                                                        },
                                                        "first_name": {
                                                            "type": "string"
                                                        },
                                                        "surname": {
                                                            "type": "string"
                                                        },
                                                        "birthday": {
                                                            "type": "string"
                                                        },
                                                        "id_type": {
                                                            "type": "string"
                                                        },
                                                        "id_num": {
                                                            "type": "string"
                                                        },
                                                        "nationality_code": {
                                                            "type": "string"
                                                        },
                                                        "nationality_id": {
                                                            "type": "string"
                                                        },
                                                        "telephone": {
                                                            "type": "string"
                                                        },
                                                        "email": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        },
                                                        "city": {
                                                            "type": "string"
                                                        },
                                                        "customer_number": {
                                                            "type": "string"
                                                        },
                                                        "created_at": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "name",
                                                        "client_type",
                                                        "company_name",
                                                        "company_type",
                                                        "nipt",
                                                        "first_name",
                                                        "surname",
                                                        "birthday",
                                                        "id_type",
                                                        "id_num",
                                                        "nationality_code",
                                                        "nationality_id",
                                                        "telephone",
                                                        "email",
                                                        "address",
                                                        "city",
                                                        "customer_number",
                                                        "created_at"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "client"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/client\/search": {
            "get": {
                "operationId": "v1.client.search",
                "description": "Kerkoni nje kompani ne regjistrin fiskal duke perdorur NIPT\/NUIS. Kthen te dhenat e kompanise nese gjendet.",
                "summary": "Kerko klient sipas NIPT",
                "tags": [
                    "Client"
                ],
                "parameters": [
                    {
                        "name": "nuis",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "client": {
                                                    "type": "object",
                                                    "properties": {
                                                        "nuis": {
                                                            "type": "string"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        },
                                                        "city": {
                                                            "type": "string"
                                                        },
                                                        "country": {
                                                            "type": "string"
                                                        },
                                                        "verified": {
                                                            "type": "boolean"
                                                        }
                                                    },
                                                    "required": [
                                                        "nuis",
                                                        "name",
                                                        "address",
                                                        "city",
                                                        "country",
                                                        "verified"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "client"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/currencies": {
            "get": {
                "operationId": "v1.currencies.list",
                "description": "Kthen monedhat e konfiguruara p\u00ebr kompanin\u00eb,\nme ALL gjithmon\u00eb n\u00eb fillim.",
                "summary": "Lista e monedhave",
                "tags": [
                    "Currencies"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "currencies": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer"
                                                            },
                                                            "code": {
                                                                "type": "string"
                                                            },
                                                            "name": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "id",
                                                            "code",
                                                            "name"
                                                        ]
                                                    }
                                                }
                                            },
                                            "required": [
                                                "currencies"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/exchange-rates": {
            "get": {
                "operationId": "v1.exchange-rates",
                "description": "Kthen kursin e shitjes s\u00eb dit\u00ebs p\u00ebr \u00e7do monedh\u00eb, sipas burimit t\u00eb\nzgjedhur. T\u00eb dh\u00ebnat vijn\u00eb nga `https:\/\/api.kursi.al\/api\/rates` dhe\nruhen ne cache per 1h n\u00eb server; klienti mund t\u00eb mbaj\u00eb snapshot-in e fundit\nlokalisht p\u00ebr p\u00ebrdorim offline.\n\nBurimet e mb\u00ebshtetura (vlera `source` n\u00eb k\u00ebrkes\u00eb):\n  - `BOA`      \u2192 Banka e Shqip\u00ebris\u00eb (kursi zyrtar)\n  - `BKT`      \u2192 Banka Komb\u00ebtare Tregtare\n  - `Iliria98` \u2192 K\u00ebmbim Valutor \"Iliria '98\"\n  - `ADON`     \u2192 K\u00ebmbim Valutor \"Adon\"\n\nBurim i pa percaktuar kthehet automatikisht n\u00eb `BOA`. Fusha `source` n\u00eb\np\u00ebrgjigje \u00ebsht\u00eb gjithmon\u00eb vlera e normalizuar.",
                "summary": "Kursi i k\u00ebmbimit",
                "tags": [
                    "Currencies"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "rates": {
                                                    "type": "object",
                                                    "additionalProperties": {
                                                        "type": "number"
                                                    }
                                                },
                                                "source": {
                                                    "type": "string"
                                                },
                                                "fetchedAt": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "rates",
                                                "source",
                                                "fetchedAt"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice": {
            "get": {
                "operationId": "invoice.invoicesList",
                "description": "Merrni listen e faturave me filtrim dhe faqosje.",
                "summary": "Lista e faturave",
                "tags": [
                    "Invoice"
                ],
                "parameters": [
                    {
                        "name": "type",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "fromDate",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "toDate",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "query",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "items": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer"
                                                            },
                                                            "number": {
                                                                "type": "string"
                                                            },
                                                            "type": {
                                                                "type": "string"
                                                            },
                                                            "issue_date": {
                                                                "type": "string"
                                                            },
                                                            "due_date": {
                                                                "type": "string"
                                                            },
                                                            "delivery_date": {
                                                                "type": "string"
                                                            },
                                                            "client": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "name": {
                                                                        "type": "string"
                                                                    },
                                                                    "id": {
                                                                        "type": "object",
                                                                        "properties": {
                                                                            "type": {
                                                                                "type": "string"
                                                                            },
                                                                            "id": {
                                                                                "type": "string"
                                                                            }
                                                                        },
                                                                        "required": [
                                                                            "type",
                                                                            "id"
                                                                        ]
                                                                    },
                                                                    "address": {
                                                                        "type": "object",
                                                                        "properties": {
                                                                            "street": {
                                                                                "type": "string"
                                                                            },
                                                                            "city": {
                                                                                "type": "string"
                                                                            },
                                                                            "country": {
                                                                                "type": "string"
                                                                            }
                                                                        },
                                                                        "required": [
                                                                            "street",
                                                                            "city",
                                                                            "country"
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "name",
                                                                    "id",
                                                                    "address"
                                                                ]
                                                            },
                                                            "amount": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "currency": {
                                                                        "type": "string"
                                                                    },
                                                                    "gross": {
                                                                        "type": "number"
                                                                    },
                                                                    "net": {
                                                                        "type": "number"
                                                                    },
                                                                    "vat": {
                                                                        "type": "number"
                                                                    }
                                                                },
                                                                "required": [
                                                                    "currency",
                                                                    "gross",
                                                                    "net",
                                                                    "vat"
                                                                ]
                                                            },
                                                            "notes": {
                                                                "type": "string"
                                                            },
                                                            "iic": {
                                                                "type": "string"
                                                            },
                                                            "self_issue_type": {
                                                                "type": "string"
                                                            },
                                                            "reversed_at": {
                                                                "type": "string"
                                                            },
                                                            "reversed_by": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "id",
                                                            "number",
                                                            "type",
                                                            "issue_date",
                                                            "due_date",
                                                            "delivery_date",
                                                            "client",
                                                            "amount",
                                                            "notes",
                                                            "iic",
                                                            "self_issue_type",
                                                            "reversed_at",
                                                            "reversed_by"
                                                        ]
                                                    }
                                                },
                                                "pagination": {
                                                    "type": "object",
                                                    "properties": {
                                                        "records": {
                                                            "type": "integer"
                                                        },
                                                        "limit": {
                                                            "type": "integer"
                                                        },
                                                        "offset": {
                                                            "type": "integer"
                                                        },
                                                        "type": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "records",
                                                        "limit",
                                                        "offset",
                                                        "type"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "items",
                                                "pagination"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/{id}\/details": {
            "get": {
                "operationId": "invoice.invoicesDetails",
                "description": "Merrni detajet e plota te nje fature sipas ID-se ne sistem.",
                "summary": "Detajet e fatures sipas ID",
                "tags": [
                    "Invoice"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "type": {
                                                            "type": "string"
                                                        },
                                                        "issue_date": {
                                                            "type": "string"
                                                        },
                                                        "due_date": {
                                                            "type": "string"
                                                        },
                                                        "delivery_date": {
                                                            "type": "string"
                                                        },
                                                        "created_at": {
                                                            "type": "string"
                                                        },
                                                        "supply_start_date": {
                                                            "type": "string"
                                                        },
                                                        "supply_end_date": {
                                                            "type": "string"
                                                        },
                                                        "client": {
                                                            "type": "object",
                                                            "properties": {
                                                                "name": {
                                                                    "type": "string"
                                                                },
                                                                "id": {
                                                                    "type": "object",
                                                                    "properties": {
                                                                        "type": {
                                                                            "type": "string"
                                                                        },
                                                                        "id": {
                                                                            "type": "string"
                                                                        }
                                                                    },
                                                                    "required": [
                                                                        "type",
                                                                        "id"
                                                                    ]
                                                                },
                                                                "address": {
                                                                    "type": "object",
                                                                    "properties": {
                                                                        "street": {
                                                                            "type": "string"
                                                                        },
                                                                        "city": {
                                                                            "type": "string"
                                                                        },
                                                                        "country": {
                                                                            "type": "string"
                                                                        }
                                                                    },
                                                                    "required": [
                                                                        "street",
                                                                        "city",
                                                                        "country"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "name",
                                                                "id",
                                                                "address"
                                                            ]
                                                        },
                                                        "amount": {
                                                            "type": "object",
                                                            "properties": {
                                                                "currency": {
                                                                    "type": "string"
                                                                },
                                                                "gross": {
                                                                    "type": "number"
                                                                },
                                                                "net": {
                                                                    "type": "number"
                                                                },
                                                                "vat": {
                                                                    "type": "number"
                                                                },
                                                                "local_currency": {
                                                                    "type": "object",
                                                                    "properties": {
                                                                        "exchange_rate": {
                                                                            "type": "number"
                                                                        },
                                                                        "gross": {
                                                                            "type": "number"
                                                                        },
                                                                        "net": {
                                                                            "type": "number"
                                                                        },
                                                                        "vat": {
                                                                            "type": "number"
                                                                        }
                                                                    },
                                                                    "required": [
                                                                        "exchange_rate",
                                                                        "gross",
                                                                        "net",
                                                                        "vat"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "currency",
                                                                "gross",
                                                                "net",
                                                                "vat"
                                                            ]
                                                        },
                                                        "payment_method": {
                                                            "type": "string"
                                                        },
                                                        "bank_account": {
                                                            "type": "string"
                                                        },
                                                        "notes": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "fic": {
                                                            "type": "string"
                                                        },
                                                        "eic": {
                                                            "type": "string"
                                                        },
                                                        "doc_type": {
                                                            "type": "string"
                                                        },
                                                        "process": {
                                                            "type": "string"
                                                        },
                                                        "self_issue_type": {
                                                            "type": "string"
                                                        },
                                                        "reversed_at": {
                                                            "type": "string"
                                                        },
                                                        "reversed_by": {
                                                            "type": "string"
                                                        },
                                                        "pdf_url": {
                                                            "type": "string"
                                                        },
                                                        "reverse_charge": {
                                                            "type": "boolean"
                                                        },
                                                        "periodic_invoice": {
                                                            "type": "boolean"
                                                        },
                                                        "lines": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "name": {
                                                                        "type": "string"
                                                                    },
                                                                    "product_code": {
                                                                        "type": "string"
                                                                    },
                                                                    "unit": {
                                                                        "type": "string"
                                                                    },
                                                                    "unit_code": {
                                                                        "type": "string"
                                                                    },
                                                                    "quantity": {
                                                                        "type": "number"
                                                                    },
                                                                    "unitPrice": {
                                                                        "type": "number"
                                                                    },
                                                                    "vat_rate": {
                                                                        "type": "string"
                                                                    },
                                                                    "vat_exempt_type": {
                                                                        "type": "string"
                                                                    },
                                                                    "discount_rate": {
                                                                        "type": "string"
                                                                    },
                                                                    "discount": {
                                                                        "type": "string"
                                                                    },
                                                                    "amount_net": {
                                                                        "type": "number"
                                                                    },
                                                                    "amount_vat": {
                                                                        "type": "number"
                                                                    },
                                                                    "total": {
                                                                        "type": "number"
                                                                    }
                                                                },
                                                                "required": [
                                                                    "name",
                                                                    "product_code",
                                                                    "unit",
                                                                    "unit_code",
                                                                    "quantity",
                                                                    "unitPrice",
                                                                    "vat_rate",
                                                                    "vat_exempt_type",
                                                                    "discount_rate",
                                                                    "discount",
                                                                    "amount_net",
                                                                    "amount_vat",
                                                                    "total"
                                                                ]
                                                            }
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "type",
                                                        "issue_date",
                                                        "due_date",
                                                        "delivery_date",
                                                        "created_at",
                                                        "supply_start_date",
                                                        "supply_end_date",
                                                        "client",
                                                        "amount",
                                                        "payment_method",
                                                        "bank_account",
                                                        "notes",
                                                        "iic",
                                                        "fic",
                                                        "eic",
                                                        "doc_type",
                                                        "process",
                                                        "self_issue_type",
                                                        "reversed_at",
                                                        "reversed_by",
                                                        "pdf_url",
                                                        "reverse_charge",
                                                        "periodic_invoice",
                                                        "lines"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/details\/{internalId}": {
            "post": {
                "operationId": "invoice.details",
                "description": "Merr detajet e nje fature duke perdorur ID-ne tuaj interne.",
                "summary": "Detajet e fatures sipas Internal ID",
                "tags": [
                    "Invoice"
                ],
                "parameters": [
                    {
                        "name": "internalId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "type": {
                                                            "type": "string"
                                                        },
                                                        "issue_date": {
                                                            "type": "string"
                                                        },
                                                        "due_date": {
                                                            "type": "string"
                                                        },
                                                        "delivery_date": {
                                                            "type": "string"
                                                        },
                                                        "client": {
                                                            "type": "object",
                                                            "properties": {
                                                                "name": {
                                                                    "type": "string"
                                                                },
                                                                "id": {
                                                                    "type": "object",
                                                                    "properties": {
                                                                        "type": {
                                                                            "type": "string"
                                                                        },
                                                                        "id": {
                                                                            "type": "string"
                                                                        }
                                                                    },
                                                                    "required": [
                                                                        "type",
                                                                        "id"
                                                                    ]
                                                                },
                                                                "address": {
                                                                    "type": "object",
                                                                    "properties": {
                                                                        "street": {
                                                                            "type": "string"
                                                                        },
                                                                        "city": {
                                                                            "type": "string"
                                                                        },
                                                                        "country": {
                                                                            "type": "string"
                                                                        }
                                                                    },
                                                                    "required": [
                                                                        "street",
                                                                        "city",
                                                                        "country"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "name",
                                                                "id",
                                                                "address"
                                                            ]
                                                        },
                                                        "amount": {
                                                            "type": "object",
                                                            "properties": {
                                                                "currency": {
                                                                    "type": "string"
                                                                },
                                                                "gross": {
                                                                    "type": "number"
                                                                },
                                                                "net": {
                                                                    "type": "number"
                                                                },
                                                                "vat": {
                                                                    "type": "number"
                                                                }
                                                            },
                                                            "required": [
                                                                "currency",
                                                                "gross",
                                                                "net",
                                                                "vat"
                                                            ]
                                                        },
                                                        "notes": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "reversed_at": {
                                                            "type": "string"
                                                        },
                                                        "reversed_by": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "type",
                                                        "issue_date",
                                                        "due_date",
                                                        "delivery_date",
                                                        "client",
                                                        "amount",
                                                        "notes",
                                                        "iic",
                                                        "reversed_at",
                                                        "reversed_by"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/e-invoice": {
            "post": {
                "operationId": "invoice.createEInvoice",
                "description": "Fatura dergohet automatikisht ne sistemin qendror te e-faturave. Klienti identifikohet me NIPT.",
                "summary": "Krijo fature elektronike (E-Invoice)",
                "tags": [
                    "Invoice"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/EInvoiceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "fic": {
                                                            "type": "string"
                                                        },
                                                        "tcrCode": {
                                                            "type": "string"
                                                        },
                                                        "businessCode": {
                                                            "type": "string"
                                                        },
                                                        "operatorCode": {
                                                            "type": "string"
                                                        },
                                                        "fiscalizedAt": {
                                                            "type": "string"
                                                        },
                                                        "verifyURL": {
                                                            "type": "string"
                                                        },
                                                        "pdf": {
                                                            "type": "string"
                                                        },
                                                        "eic": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "iic",
                                                        "fic",
                                                        "tcrCode",
                                                        "businessCode",
                                                        "operatorCode",
                                                        "fiscalizedAt",
                                                        "verifyURL",
                                                        "pdf"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/invoice\/noncash": {
            "post": {
                "operationId": "invoice.createNonCash",
                "description": "Perdoret per transaksione me transferte bankare, cek, etj.",
                "summary": "Krijo fature pa para ne dore (NonCash)",
                "tags": [
                    "Invoice"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/NonCashInvoiceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "fic": {
                                                            "type": "string"
                                                        },
                                                        "tcrCode": {
                                                            "type": "string"
                                                        },
                                                        "businessCode": {
                                                            "type": "string"
                                                        },
                                                        "operatorCode": {
                                                            "type": "string"
                                                        },
                                                        "fiscalizedAt": {
                                                            "type": "string"
                                                        },
                                                        "verifyURL": {
                                                            "type": "string"
                                                        },
                                                        "pdf": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "iic",
                                                        "fic",
                                                        "tcrCode",
                                                        "businessCode",
                                                        "operatorCode",
                                                        "fiscalizedAt",
                                                        "verifyURL",
                                                        "pdf"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/invoice\/cash": {
            "post": {
                "operationId": "invoice.createCash",
                "summary": "Krijo fature me para ne dore (Cash)",
                "tags": [
                    "Invoice"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/CashInvoice"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "fic": {
                                                            "type": "string"
                                                        },
                                                        "tcrCode": {
                                                            "type": "string"
                                                        },
                                                        "businessCode": {
                                                            "type": "string"
                                                        },
                                                        "operatorCode": {
                                                            "type": "string"
                                                        },
                                                        "fiscalizedAt": {
                                                            "type": "string"
                                                        },
                                                        "verifyURL": {
                                                            "type": "string"
                                                        },
                                                        "pdf": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "iic",
                                                        "fic",
                                                        "tcrCode",
                                                        "businessCode",
                                                        "operatorCode",
                                                        "fiscalizedAt",
                                                        "verifyURL",
                                                        "pdf"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/invoice\/order": {
            "post": {
                "operationId": "invoice.createOrder",
                "description": "Fatura regjistrohet por pagesa nuk perfundon - perdoret me summary invoice.\npayment_method vendoset automatikisht ne ORDER.",
                "summary": "Krijo fature porosi (Order)",
                "tags": [
                    "Invoice"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/OrderInvoice"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "fic": {
                                                            "type": "string"
                                                        },
                                                        "tcrCode": {
                                                            "type": "string"
                                                        },
                                                        "businessCode": {
                                                            "type": "string"
                                                        },
                                                        "operatorCode": {
                                                            "type": "string"
                                                        },
                                                        "fiscalizedAt": {
                                                            "type": "string"
                                                        },
                                                        "verifyURL": {
                                                            "type": "string"
                                                        },
                                                        "pdf": {
                                                            "type": "string"
                                                        },
                                                        "isOrderInvoice": {
                                                            "type": "boolean"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "iic",
                                                        "fic",
                                                        "tcrCode",
                                                        "businessCode",
                                                        "operatorCode",
                                                        "fiscalizedAt",
                                                        "verifyURL",
                                                        "pdf",
                                                        "isOrderInvoice"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/invoice\/summary": {
            "post": {
                "operationId": "invoice.createSummary",
                "description": "Perfundon pagesen e nje ose me shume faturave Order. Duhet te specifikoni IIC-te e faturave order ne fushen order_invoices.",
                "summary": "Krijo fature permbledhese (Summary)",
                "tags": [
                    "Invoice"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/SummaryInvoice"
                            }
                        }
                    }
                },
                "responses": {
                    "500": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Ndodhi nje gabim, po e kontrollojme."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "anyOf": [
                                                        {
                                                            "type": "string"
                                                        },
                                                        {
                                                            "type": "string",
                                                            "enum": [
                                                                ""
                                                            ]
                                                        }
                                                    ]
                                                },
                                                "errors": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "message",
                                                "errors"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "properties": {
                                                        "invoice": {
                                                            "type": "object",
                                                            "properties": {
                                                                "id": {
                                                                    "type": "integer"
                                                                },
                                                                "number": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "iic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "tcrCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "businessCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "operatorCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fiscalizedAt": {
                                                                    "type": "string"
                                                                },
                                                                "verifyURL": {
                                                                    "type": "string"
                                                                },
                                                                "pdf": {
                                                                    "type": "string"
                                                                },
                                                                "eic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "isOrderInvoice": {
                                                                    "type": "boolean"
                                                                },
                                                                "summaryInvoiceId": {
                                                                    "type": [
                                                                        "integer",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "isSummaryInvoice": {
                                                                    "type": "boolean"
                                                                },
                                                                "settledOrderInvoices": {
                                                                    "type": "array",
                                                                    "items": {
                                                                        "type": "object",
                                                                        "properties": {
                                                                            "id": {
                                                                                "type": "integer"
                                                                            },
                                                                            "number": {
                                                                                "type": [
                                                                                    "string",
                                                                                    "null"
                                                                                ]
                                                                            },
                                                                            "date": {
                                                                                "type": "string"
                                                                            },
                                                                            "amountGross": {
                                                                                "type": [
                                                                                    "number",
                                                                                    "null"
                                                                                ]
                                                                            },
                                                                            "currency": {
                                                                                "type": [
                                                                                    "string",
                                                                                    "null"
                                                                                ]
                                                                            }
                                                                        },
                                                                        "required": [
                                                                            "id",
                                                                            "number",
                                                                            "date",
                                                                            "amountGross",
                                                                            "currency"
                                                                        ]
                                                                    }
                                                                }
                                                            },
                                                            "required": [
                                                                "id",
                                                                "number",
                                                                "iic",
                                                                "fic",
                                                                "tcrCode",
                                                                "businessCode",
                                                                "operatorCode",
                                                                "fiscalizedAt",
                                                                "verifyURL",
                                                                "pdf",
                                                                "eic",
                                                                "isOrderInvoice",
                                                                "summaryInvoiceId",
                                                                "isSummaryInvoice",
                                                                "settledOrderInvoices"
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "invoice"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "data"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "503": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "anyOf": [
                                                        {
                                                            "type": "string"
                                                        },
                                                        {
                                                            "type": "string",
                                                            "enum": [
                                                                ""
                                                            ]
                                                        }
                                                    ]
                                                },
                                                "errors": {
                                                    "type": "array",
                                                    "prefixItems": [
                                                        {
                                                            "type": "string",
                                                            "const": "Sherbimi i fiskalizimit eshte ia pa arritshem."
                                                        }
                                                    ],
                                                    "minItems": 1,
                                                    "maxItems": 1,
                                                    "additionalItems": false
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "message",
                                                "errors"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "anyOf": [
                                                        {
                                                            "type": "string"
                                                        },
                                                        {
                                                            "type": "string",
                                                            "enum": [
                                                                ""
                                                            ]
                                                        }
                                                    ]
                                                },
                                                "errors": {
                                                    "type": "array",
                                                    "prefixItems": [
                                                        {
                                                            "type": "string",
                                                            "const": "Ndodhi nje gabim, fatura nuk u ruajt."
                                                        }
                                                    ],
                                                    "minItems": 1,
                                                    "maxItems": 1,
                                                    "additionalItems": false
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "message",
                                                "errors"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "anyOf": [
                                                        {
                                                            "type": "string"
                                                        },
                                                        {
                                                            "type": "string",
                                                            "enum": [
                                                                ""
                                                            ]
                                                        }
                                                    ]
                                                },
                                                "errors": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "message",
                                                "errors"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "anyOf": [
                                                        {
                                                            "type": "string"
                                                        },
                                                        {
                                                            "type": "string",
                                                            "enum": [
                                                                ""
                                                            ]
                                                        }
                                                    ]
                                                },
                                                "errors": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "message",
                                                "errors"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            },
                                            "minItems": 0,
                                            "maxItems": 0,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    },
                    "403": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            },
                                            "minItems": 0,
                                            "maxItems": 0,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Eshte arritur numri maksimal i kerkesave te lejuara ne API."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/cancel\/{invoiceId}": {
            "post": {
                "operationId": "invoice.cancelInvoice",
                "description": "Anullon faturen dhe krijon regjistrim fiskal anullimi ne sistemin e tatimeve. Nuk kerkohet body.",
                "summary": "Anullo fature sipas ID",
                "tags": [
                    "Invoice"
                ],
                "parameters": [
                    {
                        "name": "invoiceId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "fic": {
                                                            "type": "string"
                                                        },
                                                        "tcrCode": {
                                                            "type": "string"
                                                        },
                                                        "businessCode": {
                                                            "type": "string"
                                                        },
                                                        "operatorCode": {
                                                            "type": "string"
                                                        },
                                                        "fiscalizedAt": {
                                                            "type": "string"
                                                        },
                                                        "verifyURL": {
                                                            "type": "string"
                                                        },
                                                        "pdf": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "iic",
                                                        "fic",
                                                        "tcrCode",
                                                        "businessCode",
                                                        "operatorCode",
                                                        "fiscalizedAt",
                                                        "verifyURL",
                                                        "pdf"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/cancel-by-internal-id\/{internalId}": {
            "post": {
                "operationId": "invoice.cancelInvoiceByInternalId",
                "description": "Anullon faturen duke perdorur ID-ne tuaj interne qe keni derguar kur keni krijuar faturen.",
                "summary": "Anullo fature sipas Internal ID",
                "tags": [
                    "Invoice"
                ],
                "parameters": [
                    {
                        "name": "internalId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        },
                                                        "iic": {
                                                            "type": "string"
                                                        },
                                                        "fic": {
                                                            "type": "string"
                                                        },
                                                        "fiscalizedAt": {
                                                            "type": "string"
                                                        },
                                                        "verifyURL": {
                                                            "type": "string"
                                                        },
                                                        "pdf": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "iic",
                                                        "fic",
                                                        "fiscalizedAt",
                                                        "verifyURL",
                                                        "pdf"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/bulk-noncash": {
            "post": {
                "operationId": "invoice.createNonCashBulk",
                "summary": "Krijo fatura pa para ne dore ne bllok (Bulk NonCash)",
                "tags": [
                    "Invoice"
                ],
                "requestBody": {
                    "content": {
                        "application\/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "invoices": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "additionalProperties": {
                                        "type": "object",
                                        "properties": {
                                            "status": {
                                                "type": "boolean"
                                            },
                                            "data": {
                                                "type": "object",
                                                "properties": {
                                                    "invoice": {
                                                        "type": "object",
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer"
                                                            },
                                                            "number": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "id",
                                                            "number"
                                                        ]
                                                    }
                                                },
                                                "required": [
                                                    "invoice"
                                                ]
                                            }
                                        },
                                        "required": [
                                            "status",
                                            "data"
                                        ]
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/print\/{invoiceId}": {
            "get": {
                "operationId": "v1.invoice.pdf",
                "description": "Kthen skedarin PDF te fatures.",
                "summary": "Shkarko PDF te fatures sipas ID",
                "tags": [
                    "Invoice"
                ],
                "parameters": [
                    {
                        "name": "invoiceId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "string"
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "invoices": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "invoices"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "logo": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "title": {
                                                    "anyOf": [
                                                        {
                                                            "type": "null"
                                                        },
                                                        {
                                                            "type": "array",
                                                            "items": {}
                                                        },
                                                        {
                                                            "type": "object"
                                                        },
                                                        {
                                                            "type": "string"
                                                        }
                                                    ]
                                                },
                                                "company": {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "nuis": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "nuis",
                                                        "address"
                                                    ]
                                                },
                                                "client": {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "anyOf": [
                                                                {
                                                                    "type": "string"
                                                                },
                                                                {
                                                                    "type": "null"
                                                                }
                                                            ]
                                                        },
                                                        "id": {
                                                            "type": "object",
                                                            "properties": {
                                                                "type": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "id": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "type",
                                                                "id"
                                                            ]
                                                        },
                                                        "addres": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "city": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "country": {
                                                            "anyOf": [
                                                                {
                                                                    "type": "string"
                                                                },
                                                                {
                                                                    "type": "string",
                                                                    "enum": [
                                                                        "ALB"
                                                                    ]
                                                                }
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "id",
                                                        "addres",
                                                        "city",
                                                        "country"
                                                    ]
                                                },
                                                "transporter": {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "plate": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        },
                                                        "city": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "plate",
                                                        "address",
                                                        "city"
                                                    ]
                                                },
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "type": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "payment_method": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "payment_method_label": {
                                                            "anyOf": [
                                                                {
                                                                    "type": "null"
                                                                },
                                                                {
                                                                    "type": "array",
                                                                    "items": {}
                                                                },
                                                                {
                                                                    "type": "string"
                                                                },
                                                                {
                                                                    "type": "object"
                                                                }
                                                            ]
                                                        },
                                                        "bank_account": {
                                                            "anyOf": [
                                                                {
                                                                    "type": "object",
                                                                    "properties": {
                                                                        "id": {
                                                                            "type": "integer"
                                                                        },
                                                                        "bank_name": {
                                                                            "type": [
                                                                                "string",
                                                                                "null"
                                                                            ]
                                                                        },
                                                                        "iban": {
                                                                            "type": [
                                                                                "string",
                                                                                "null"
                                                                            ]
                                                                        },
                                                                        "swift": {
                                                                            "type": [
                                                                                "string",
                                                                                "null"
                                                                            ]
                                                                        },
                                                                        "currency": {
                                                                            "type": [
                                                                                "string",
                                                                                "null"
                                                                            ]
                                                                        },
                                                                        "notes": {
                                                                            "type": [
                                                                                "string",
                                                                                "null"
                                                                            ]
                                                                        }
                                                                    },
                                                                    "required": [
                                                                        "id",
                                                                        "bank_name",
                                                                        "iban",
                                                                        "swift",
                                                                        "currency",
                                                                        "notes"
                                                                    ]
                                                                },
                                                                {
                                                                    "$ref": "#\/components\/schemas\/BankAccount"
                                                                }
                                                            ]
                                                        },
                                                        "issueDate": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "businessCode": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "operatorCode": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "deviceCode": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "currency": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "exchangeRate": {
                                                            "type": [
                                                                "object",
                                                                "null"
                                                            ]
                                                        },
                                                        "number": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "lines": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "name": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "unit": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "quantity": {
                                                                        "type": [
                                                                            "number",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "unitPrice": {
                                                                        "type": "string"
                                                                    },
                                                                    "total": {
                                                                        "type": [
                                                                            "number",
                                                                            "null"
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "name",
                                                                    "unit",
                                                                    "quantity",
                                                                    "unitPrice",
                                                                    "total"
                                                                ]
                                                            }
                                                        },
                                                        "amounts": {
                                                            "type": "object",
                                                            "properties": {
                                                                "net": {
                                                                    "type": [
                                                                        "number",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "gross": {
                                                                    "type": [
                                                                        "number",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "vat": {
                                                                    "type": [
                                                                        "number",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "discount": {
                                                                    "type": [
                                                                        "number",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "net_all": {
                                                                    "type": "string"
                                                                },
                                                                "gross_all": {
                                                                    "type": "string"
                                                                },
                                                                "vat_all": {
                                                                    "type": "string"
                                                                },
                                                                "discount_all": {
                                                                    "type": "string"
                                                                }
                                                            },
                                                            "required": [
                                                                "net",
                                                                "gross",
                                                                "vat",
                                                                "discount",
                                                                "net_all",
                                                                "gross_all",
                                                                "vat_all",
                                                                "discount_all"
                                                            ]
                                                        },
                                                        "iic": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "fic": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "eic": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "process": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "doc_type": {
                                                            "type": [
                                                                "integer",
                                                                "null"
                                                            ]
                                                        },
                                                        "notes": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "verifyUrl": {
                                                            "type": "string"
                                                        },
                                                        "footer": {
                                                            "type": "array",
                                                            "items": {
                                                                "anyOf": [
                                                                    {
                                                                        "type": "string"
                                                                    },
                                                                    {
                                                                        "type": "string",
                                                                        "enum": [
                                                                            "fiskalizoi: fature.al",
                                                                            "---"
                                                                        ]
                                                                    }
                                                                ]
                                                            }
                                                        }
                                                    },
                                                    "required": [
                                                        "type",
                                                        "payment_method",
                                                        "payment_method_label",
                                                        "bank_account",
                                                        "issueDate",
                                                        "businessCode",
                                                        "operatorCode",
                                                        "deviceCode",
                                                        "currency",
                                                        "exchangeRate",
                                                        "number",
                                                        "lines",
                                                        "amounts",
                                                        "iic",
                                                        "fic",
                                                        "eic",
                                                        "process",
                                                        "doc_type",
                                                        "notes",
                                                        "verifyUrl",
                                                        "footer"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "logo",
                                                "title",
                                                "company",
                                                "client",
                                                "transporter",
                                                "invoice"
                                            ]
                                        }
                                    ]
                                }
                            },
                            "application\/pdf": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        },
                        "headers": {
                            "Content-Disposition": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/print-eic\/{eic}": {
            "get": {
                "operationId": "v1.einvoice.pdf",
                "description": "Kthen skedarin PDF te fatures duke perdorur kodin EIC (UUID).",
                "summary": "Shkarko PDF te fatures sipas EIC",
                "tags": [
                    "Invoice"
                ],
                "parameters": [
                    {
                        "name": "eic",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/pdf": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        },
                        "headers": {
                            "Content-Disposition": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/ping": {
            "get": {
                "operationId": "ping.pong",
                "description": "Kontrollo nese API eshte aktiv. Kthen timestamp dhe IP.",
                "summary": "Ping",
                "tags": [
                    "Ping"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "pong": {
                                                    "type": "integer"
                                                },
                                                "ip": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "pong",
                                                "ip"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/product\/categories": {
            "get": {
                "operationId": "products.categories",
                "description": "Merrni listen e kategorive te produkteve per kompanin\u00eb tuaj.",
                "summary": "Lista e kategorive",
                "tags": [
                    "Products"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "id": {
                                                        "type": "integer"
                                                    },
                                                    "name": {
                                                        "type": "string"
                                                    },
                                                    "color": {
                                                        "type": "string"
                                                    }
                                                },
                                                "required": [
                                                    "id",
                                                    "name",
                                                    "color"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/products": {
            "get": {
                "operationId": "products.products",
                "description": "Merrni listen e produkteve per kompanin\u00eb tuaj. Kthen id, kodin, emrin, njesine, cmimin e fundit, shkallen e TVSH, llojin e perjashtimit nga TVSH dhe kategorin\u00eb.",
                "summary": "Lista e produkteve",
                "tags": [
                    "Products"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "id": {
                                                        "type": "integer"
                                                    },
                                                    "code": {
                                                        "type": "string"
                                                    },
                                                    "name": {
                                                        "type": "string"
                                                    },
                                                    "description": {
                                                        "type": "string"
                                                    },
                                                    "unit": {
                                                        "type": "string"
                                                    },
                                                    "unit_code": {
                                                        "type": "string"
                                                    },
                                                    "last_price": {
                                                        "type": "number"
                                                    },
                                                    "vat_rate": {
                                                        "type": "integer"
                                                    },
                                                    "vat_exempt_type": {
                                                        "type": "string"
                                                    },
                                                    "vat_exempt_description": {
                                                        "type": "string"
                                                    },
                                                    "currency": {
                                                        "type": "string"
                                                    },
                                                    "id_category": {
                                                        "type": "string"
                                                    }
                                                },
                                                "required": [
                                                    "id",
                                                    "code",
                                                    "name",
                                                    "description",
                                                    "unit",
                                                    "unit_code",
                                                    "last_price",
                                                    "vat_rate",
                                                    "vat_exempt_type",
                                                    "vat_exempt_description",
                                                    "currency",
                                                    "id_category"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "v1.products.create",
                "description": "Krijon nje produkt te ri per kompanin\u00eb tuaj. Kodi gjenerohet automatikisht nese nuk jepet. Njesia matese derivohet nga unit_code.",
                "summary": "Krijo produkt",
                "tags": [
                    "Products"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/ProductRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "product": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "code": {
                                                            "type": "string"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "description": {
                                                            "type": "string"
                                                        },
                                                        "unit_code": {
                                                            "type": "string"
                                                        },
                                                        "last_price": {
                                                            "type": "number"
                                                        },
                                                        "cost_price": {
                                                            "type": "string"
                                                        },
                                                        "vat_rate": {
                                                            "type": "integer"
                                                        },
                                                        "vat_exempt_type": {
                                                            "type": "string"
                                                        },
                                                        "currency": {
                                                            "type": "string"
                                                        },
                                                        "service": {
                                                            "type": "boolean"
                                                        },
                                                        "id_category": {
                                                            "type": "string"
                                                        },
                                                        "category": {
                                                            "type": "string"
                                                        },
                                                        "created_at": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "code",
                                                        "name",
                                                        "description",
                                                        "unit_code",
                                                        "last_price",
                                                        "cost_price",
                                                        "vat_rate",
                                                        "vat_exempt_type",
                                                        "currency",
                                                        "service",
                                                        "id_category",
                                                        "category",
                                                        "created_at"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "product"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/products\/{id}\/details": {
            "get": {
                "operationId": "v1.products.details",
                "description": "Merrni detajet e nje produkti sipas id-se per kompanin\u00eb tuaj.",
                "summary": "Detajet e produktit sipas ID",
                "tags": [
                    "Products"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "product": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "code": {
                                                            "type": "string"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "description": {
                                                            "type": "string"
                                                        },
                                                        "unit": {
                                                            "type": "string"
                                                        },
                                                        "unit_code": {
                                                            "type": "string"
                                                        },
                                                        "last_price": {
                                                            "type": "number"
                                                        },
                                                        "cost_price": {
                                                            "type": "string"
                                                        },
                                                        "vat_rate": {
                                                            "type": "number"
                                                        },
                                                        "vat_exempt_type": {
                                                            "type": "string"
                                                        },
                                                        "vat_exempt_description": {
                                                            "type": "string"
                                                        },
                                                        "currency": {
                                                            "type": "string"
                                                        },
                                                        "service": {
                                                            "type": "boolean"
                                                        },
                                                        "id_category": {
                                                            "type": "string"
                                                        },
                                                        "category": {
                                                            "type": "string"
                                                        },
                                                        "created_at": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "code",
                                                        "name",
                                                        "description",
                                                        "unit",
                                                        "unit_code",
                                                        "last_price",
                                                        "cost_price",
                                                        "vat_rate",
                                                        "vat_exempt_type",
                                                        "vat_exempt_description",
                                                        "currency",
                                                        "service",
                                                        "id_category",
                                                        "category",
                                                        "created_at"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "product"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/products\/{id}": {
            "put": {
                "operationId": "v1.products.update",
                "description": "Perditeson nje produkt ekzistues. Trupi i kerkeses ka te njejtin format si POST \/products.",
                "summary": "Perditeso produkt",
                "tags": [
                    "Products"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/ProductRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "product": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "code": {
                                                            "type": "string"
                                                        },
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "description": {
                                                            "type": "string"
                                                        },
                                                        "unit": {
                                                            "type": "string"
                                                        },
                                                        "unit_code": {
                                                            "type": "string"
                                                        },
                                                        "last_price": {
                                                            "type": "number"
                                                        },
                                                        "cost_price": {
                                                            "type": "string"
                                                        },
                                                        "vat_rate": {
                                                            "type": "number"
                                                        },
                                                        "vat_exempt_type": {
                                                            "type": "string"
                                                        },
                                                        "vat_exempt_description": {
                                                            "type": "string"
                                                        },
                                                        "currency": {
                                                            "type": "string"
                                                        },
                                                        "service": {
                                                            "type": "boolean"
                                                        },
                                                        "id_category": {
                                                            "type": "string"
                                                        },
                                                        "category": {
                                                            "type": "string"
                                                        },
                                                        "created_at": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "code",
                                                        "name",
                                                        "description",
                                                        "unit",
                                                        "unit_code",
                                                        "last_price",
                                                        "cost_price",
                                                        "vat_rate",
                                                        "vat_exempt_type",
                                                        "vat_exempt_description",
                                                        "currency",
                                                        "service",
                                                        "id_category",
                                                        "category",
                                                        "created_at"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "product"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/invoice\/wtn": {
            "get": {
                "operationId": "v1.invoice.wtn.list",
                "description": "Merr listen e faturave shoqeruese me faqosje dhe filtrim sipas datave.",
                "summary": "Lista e faturave shoqeruese (WTN)",
                "tags": [
                    "WtnInvoice"
                ],
                "parameters": [
                    {
                        "name": "fromDate",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "toDate",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "500": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Ndodhi nje gabim, po e kontrollojme."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Datat nuk jane ne formatin e duhur: Y-m-d."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "items": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer"
                                                            },
                                                            "number": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "type": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "transaction": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "issue_date": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "start_date": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "destination_date": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "origin": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "point": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "city": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "address": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "point",
                                                                    "city",
                                                                    "address"
                                                                ]
                                                            },
                                                            "destination": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "point": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "city": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "address": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "point",
                                                                    "city",
                                                                    "address"
                                                                ]
                                                            },
                                                            "carrier": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "name": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "id_type": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "id_num": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "town": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "address": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "vehicle_ownership": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "vehicle_plates": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "name",
                                                                    "id_type",
                                                                    "id_num",
                                                                    "town",
                                                                    "address",
                                                                    "vehicle_ownership",
                                                                    "vehicle_plates"
                                                                ]
                                                            },
                                                            "value_of_goods": {
                                                                "type": "number"
                                                            },
                                                            "items_num": {
                                                                "type": "integer"
                                                            },
                                                            "fiscal": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "status": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "iic": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "fic": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "tcr_code": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "business_code": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "operator_code": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "fiscalized_at": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "verify_url": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "status",
                                                                    "iic",
                                                                    "fic",
                                                                    "tcr_code",
                                                                    "business_code",
                                                                    "operator_code",
                                                                    "fiscalized_at",
                                                                    "verify_url"
                                                                ]
                                                            },
                                                            "lines": {
                                                                "type": "array",
                                                                "items": {}
                                                            },
                                                            "print": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "id",
                                                            "number",
                                                            "type",
                                                            "transaction",
                                                            "issue_date",
                                                            "start_date",
                                                            "destination_date",
                                                            "origin",
                                                            "destination",
                                                            "carrier",
                                                            "value_of_goods",
                                                            "items_num",
                                                            "fiscal",
                                                            "lines",
                                                            "print"
                                                        ]
                                                    }
                                                },
                                                "pagination": {
                                                    "type": "object",
                                                    "properties": {
                                                        "records": {
                                                            "type": "integer"
                                                        },
                                                        "limit": {
                                                            "type": [
                                                                "object",
                                                                "null"
                                                            ]
                                                        },
                                                        "offset": {
                                                            "type": [
                                                                "object",
                                                                "null"
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "records",
                                                        "limit",
                                                        "offset"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "items",
                                                "pagination"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Eshte arritur numri maksimal i kerkesave te lejuara ne API."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "v1.invoice.wtn.create",
                "summary": "Krijo fature shoqeruese (WTN)",
                "tags": [
                    "WtnInvoice"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "$ref": "#\/components\/schemas\/WtnInvoiceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "500": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string"
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "503": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string"
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "properties": {
                                                        "invoice": {
                                                            "type": [
                                                                "object",
                                                                "null"
                                                            ],
                                                            "properties": {
                                                                "id": {
                                                                    "type": "integer"
                                                                },
                                                                "number": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "iic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "tcrCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "businessCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "operatorCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fiscalStatus": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fiscalizedAt": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "verifyURL": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "print": {
                                                                    "type": "string"
                                                                }
                                                            },
                                                            "required": [
                                                                "id",
                                                                "number",
                                                                "iic",
                                                                "fic",
                                                                "tcrCode",
                                                                "businessCode",
                                                                "operatorCode",
                                                                "fiscalStatus",
                                                                "fiscalizedAt",
                                                                "verifyURL",
                                                                "print"
                                                            ]
                                                        },
                                                        "message": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "invoice",
                                                        "message"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "data"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "boolean"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "properties": {
                                                        "invoice": {
                                                            "type": "object",
                                                            "properties": {
                                                                "id": {
                                                                    "type": "integer"
                                                                },
                                                                "number": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "iic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "tcrCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "businessCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "operatorCode": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fiscalStatus": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fiscalizedAt": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "verifyURL": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "print": {
                                                                    "type": "string"
                                                                }
                                                            },
                                                            "required": [
                                                                "id",
                                                                "number",
                                                                "iic",
                                                                "fic",
                                                                "tcrCode",
                                                                "businessCode",
                                                                "operatorCode",
                                                                "fiscalStatus",
                                                                "fiscalizedAt",
                                                                "verifyURL",
                                                                "print"
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "invoice"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "status",
                                                "data"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Kontrolloni ne Konfigurime > Abonimi i softit per te porositur nje abonim te ri."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "429": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Eshte arritur numri maksimal i kerkesave te lejuara ne API."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#\/components\/responses\/ValidationException"
                    }
                }
            }
        },
        "\/invoice\/wtn\/{id}\/details": {
            "get": {
                "operationId": "v1.invoice.wtn.details",
                "summary": "Detajet e fatures shoqeruese sipas ID",
                "tags": [
                    "WtnInvoice"
                ],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "500": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string",
                                                    "const": "Ndodhi nje gabim, po e kontrollojme."
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "id": {
                                                            "type": "integer"
                                                        },
                                                        "number": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "type": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "transaction": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "issue_date": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "start_date": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "destination_date": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "origin": {
                                                            "type": "object",
                                                            "properties": {
                                                                "point": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "city": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "address": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "point",
                                                                "city",
                                                                "address"
                                                            ]
                                                        },
                                                        "destination": {
                                                            "type": "object",
                                                            "properties": {
                                                                "point": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "city": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "address": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "point",
                                                                "city",
                                                                "address"
                                                            ]
                                                        },
                                                        "carrier": {
                                                            "type": "object",
                                                            "properties": {
                                                                "name": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "id_type": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "id_num": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "town": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "address": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "vehicle_ownership": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "vehicle_plates": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "name",
                                                                "id_type",
                                                                "id_num",
                                                                "town",
                                                                "address",
                                                                "vehicle_ownership",
                                                                "vehicle_plates"
                                                            ]
                                                        },
                                                        "value_of_goods": {
                                                            "type": "number"
                                                        },
                                                        "items_num": {
                                                            "type": "integer"
                                                        },
                                                        "fiscal": {
                                                            "type": "object",
                                                            "properties": {
                                                                "status": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "iic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fic": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "tcr_code": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "business_code": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "operator_code": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "fiscalized_at": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                },
                                                                "verify_url": {
                                                                    "type": [
                                                                        "string",
                                                                        "null"
                                                                    ]
                                                                }
                                                            },
                                                            "required": [
                                                                "status",
                                                                "iic",
                                                                "fic",
                                                                "tcr_code",
                                                                "business_code",
                                                                "operator_code",
                                                                "fiscalized_at",
                                                                "verify_url"
                                                            ]
                                                        },
                                                        "lines": {
                                                            "type": "array",
                                                            "items": {}
                                                        },
                                                        "print": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "id",
                                                        "number",
                                                        "type",
                                                        "transaction",
                                                        "issue_date",
                                                        "start_date",
                                                        "destination_date",
                                                        "origin",
                                                        "destination",
                                                        "carrier",
                                                        "value_of_goods",
                                                        "items_num",
                                                        "fiscal",
                                                        "lines",
                                                        "print"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string"
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        },
        "\/invoice\/wtn\/print\/{invoiceId}": {
            "get": {
                "operationId": "v1.invoice.wtn.print",
                "description": "Kthen nje strukture JSON me te gjitha te dhenat per nje \"print view\".",
                "summary": "Te dhenat e fatures shoqeruese ne format printimi (JSON)",
                "tags": [
                    "WtnInvoice"
                ],
                "parameters": [
                    {
                        "name": "invoiceId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object",
                                            "properties": {
                                                "logo": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "title": {
                                                    "type": "string",
                                                    "const": "Fatur\u00eb Shoq\u00ebruese"
                                                },
                                                "company": {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "nuis": {
                                                            "type": "string"
                                                        },
                                                        "address": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "nuis",
                                                        "address"
                                                    ]
                                                },
                                                "carrier": {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "idType": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "idNum": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "town": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "address": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "vehicleOwnership": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "vehiclePlates": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "idType",
                                                        "idNum",
                                                        "town",
                                                        "address",
                                                        "vehicleOwnership",
                                                        "vehiclePlates"
                                                    ]
                                                },
                                                "origin": {
                                                    "type": "object",
                                                    "properties": {
                                                        "point": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "city": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "address": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "dateTime": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "point",
                                                        "city",
                                                        "address",
                                                        "dateTime"
                                                    ]
                                                },
                                                "destination": {
                                                    "type": "object",
                                                    "properties": {
                                                        "point": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "city": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "address": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "dateTime": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "point",
                                                        "city",
                                                        "address",
                                                        "dateTime"
                                                    ]
                                                },
                                                "invoice": {
                                                    "type": "object",
                                                    "properties": {
                                                        "issueDate": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "businessCode": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "operatorCode": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "deviceCode": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "number": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "type": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "transaction": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "lines": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "object",
                                                                "properties": {
                                                                    "name": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "code": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "unit": {
                                                                        "type": [
                                                                            "string",
                                                                            "null"
                                                                        ]
                                                                    },
                                                                    "quantity": {
                                                                        "type": [
                                                                            "number",
                                                                            "null"
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "name",
                                                                    "code",
                                                                    "unit",
                                                                    "quantity"
                                                                ]
                                                            }
                                                        },
                                                        "amounts": {
                                                            "type": "object",
                                                            "properties": {
                                                                "valueOfGoods": {
                                                                    "type": "number"
                                                                },
                                                                "currency": {
                                                                    "type": "string",
                                                                    "const": "ALL"
                                                                },
                                                                "itemsNum": {
                                                                    "type": "integer"
                                                                }
                                                            },
                                                            "required": [
                                                                "valueOfGoods",
                                                                "currency",
                                                                "itemsNum"
                                                            ]
                                                        },
                                                        "iic": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "fic": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "fiscalStatus": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "verifyUrl": {
                                                            "type": [
                                                                "string",
                                                                "null"
                                                            ]
                                                        },
                                                        "footer": {
                                                            "type": "array",
                                                            "items": {
                                                                "anyOf": [
                                                                    {
                                                                        "type": "string"
                                                                    },
                                                                    {
                                                                        "type": "string",
                                                                        "enum": [
                                                                            "fiskalizoi: fature.al",
                                                                            "---"
                                                                        ]
                                                                    }
                                                                ]
                                                            }
                                                        }
                                                    },
                                                    "required": [
                                                        "issueDate",
                                                        "businessCode",
                                                        "operatorCode",
                                                        "deviceCode",
                                                        "number",
                                                        "type",
                                                        "transaction",
                                                        "lines",
                                                        "amounts",
                                                        "iic",
                                                        "fic",
                                                        "fiscalStatus",
                                                        "verifyUrl",
                                                        "footer"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "logo",
                                                "title",
                                                "company",
                                                "carrier",
                                                "origin",
                                                "destination",
                                                "invoice"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "",
                        "content": {
                            "application\/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        ""
                                                    ]
                                                }
                                            ]
                                        },
                                        "errors": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string"
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "status",
                                        "message",
                                        "errors"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#\/components\/responses\/AuthenticationException"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "BankAccount": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "bank_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "id_bank": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "iban": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "swift": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "id_currency": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "valid_from": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "valid_to": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "type": "integer"
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "id_company": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "default": {
                        "type": "integer"
                    },
                    "maintenance_monthly_costs": {
                        "type": "number"
                    },
                    "holder": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "id",
                    "bank_name",
                    "id_bank",
                    "iban",
                    "swift",
                    "id_currency",
                    "valid_from",
                    "valid_to",
                    "notes",
                    "status",
                    "created_at",
                    "updated_at",
                    "id_company",
                    "default",
                    "maintenance_monthly_costs",
                    "holder"
                ],
                "title": "BankAccount"
            },
            "BankAccountRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "holder": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "iban": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "swift": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "title": "BankAccountRequest"
            },
            "CashActionRequest": {
                "type": "object",
                "properties": {
                    "amount": {
                        "type": "number"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "third_party": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    }
                },
                "required": [
                    "amount"
                ],
                "title": "CashActionRequest"
            },
            "CashInvoice": {
                "type": "object",
                "properties": {
                    "internalId": {
                        "type": "string"
                    },
                    "payment_method": {
                        "type": "string",
                        "enum": [
                            "BANKNOTE",
                            "CARD",
                            "CHECK",
                            "SVOUCHER",
                            "COMPANY",
                            "ORDER"
                        ]
                    },
                    "invoice_discount_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "percent",
                            "amount"
                        ]
                    },
                    "invoice_discount_value": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "minimum": 0
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "exchange_rate": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "due_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "supply_start_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "supply_end_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "reverse_charge": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "periodic_invoice": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "self_issue_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "DOMESTIC",
                            "ABROAD",
                            "OTHER"
                        ]
                    },
                    "client": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "id": {
                                "type": [
                                    "object",
                                    "null"
                                ],
                                "properties": {
                                    "type": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "description": "when client is Albanian Company (NUIS), when client is Non-AlbanCompany(VAT, TAX), when client is Person(ID, PASS, SOC)",
                                        "enum": [
                                            "NUIS",
                                            "VAT",
                                            "TAX",
                                            "ID",
                                            "PASS",
                                            "SOC"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                }
                            },
                            "address": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "description": "ISO 3166-1 alpha-3 country code (e.g. RKS, ALB, USA)."
                            }
                        }
                    },
                    "lines": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "product_name": {
                                    "type": "string"
                                },
                                "product_code": {
                                    "type": "string"
                                },
                                "unit": {
                                    "type": "string"
                                },
                                "quantity": {
                                    "type": "number"
                                },
                                "price": {
                                    "type": "number"
                                },
                                "total": {
                                    "type": "number"
                                },
                                "vat": {
                                    "type": "integer",
                                    "enum": [
                                        "0",
                                        "6",
                                        "10",
                                        "20"
                                    ]
                                },
                                "vat_exempt_type": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "enum": [
                                        "TYPE_1",
                                        "TYPE_2",
                                        "EXPORT_OF_GOODS",
                                        "TAX_FREE"
                                    ]
                                }
                            },
                            "required": [
                                "product_name",
                                "product_code",
                                "unit",
                                "quantity",
                                "price",
                                "total",
                                "vat"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "internalId",
                    "payment_method",
                    "lines"
                ],
                "title": "CashInvoice"
            },
            "CertificateRequest": {
                "type": "object",
                "properties": {
                    "certificate_file": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "binary",
                        "contentMediaType": "application\/octet-stream"
                    },
                    "password": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "title": "CertificateRequest"
            },
            "ClientRequest": {
                "type": "object",
                "properties": {
                    "client_type": {
                        "type": "string",
                        "enum": [
                            "PERSON",
                            "COMPANY"
                        ]
                    },
                    "company_name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "nipt": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 20
                    },
                    "address": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "city": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 50
                    },
                    "company_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "BUSINESS",
                            "BANK",
                            "EXCHANGE"
                        ]
                    },
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "surname": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "document_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "NUIS",
                            "ID",
                            "PASS",
                            "VAT",
                            "TAX",
                            "SOC"
                        ]
                    },
                    "document_number": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "nationality_code": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 3,
                        "maxLength": 3
                    },
                    "nationality_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "telephone": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "email",
                        "maxLength": 255
                    },
                    "customer_number": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 30
                    },
                    "gender": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 10
                    },
                    "birthday": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "client_type"
                ],
                "title": "ClientRequest"
            },
            "EInvoiceRequest": {
                "type": "object",
                "properties": {
                    "internalId": {
                        "type": "string"
                    },
                    "payment_method": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "ACCOUNT",
                            "COMPENSATION",
                            "FACTORING",
                            "KIND",
                            "OTHER",
                            "TRANSFER",
                            "WAIVER"
                        ]
                    },
                    "invoice_discount_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "percent",
                            "amount"
                        ]
                    },
                    "invoice_discount_value": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "minimum": 0
                    },
                    "bank_account": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "bank_account_iban": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "exchange_rate": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "due_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "supply_start_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "supply_end_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "reverse_charge": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "periodic_invoice": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "doc_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "80",
                            "82",
                            "84",
                            "380",
                            "381",
                            "383",
                            "384",
                            "386",
                            "388",
                            "393",
                            "394",
                            "395",
                            "575",
                            "623",
                            "780"
                        ]
                    },
                    "process": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "P1",
                            "P2",
                            "P3",
                            "P4",
                            "P5",
                            "P6",
                            "P7",
                            "P8",
                            "P9",
                            "P10",
                            "P11"
                        ]
                    },
                    "client": {
                        "type": "object",
                        "properties": {
                            "nuis": {
                                "type": "string",
                                "description": "Albanian company NUIS"
                            },
                            "name": {
                                "type": "string"
                            },
                            "address": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country": {
                                "type": "string",
                                "description": "ISO 3166-1 alpha-3 country code (e.g. RKS, ALB, USA)."
                            }
                        },
                        "required": [
                            "nuis",
                            "name",
                            "country"
                        ]
                    },
                    "lines": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "product_name": {
                                    "type": "string"
                                },
                                "product_code": {
                                    "type": "string"
                                },
                                "unit": {
                                    "type": "string"
                                },
                                "unit_code": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "enum": [
                                        "C62",
                                        "XPP",
                                        "LTR",
                                        "SEC",
                                        "MIN",
                                        "HUR",
                                        "DAY",
                                        "MON",
                                        "ANN",
                                        "MTK",
                                        "E4",
                                        "58",
                                        "DT",
                                        "DTN",
                                        "GRM",
                                        "M4",
                                        "E54",
                                        "KMT",
                                        "D68",
                                        "QB",
                                        "H93",
                                        "MTQ",
                                        "MTK",
                                        "MSK",
                                        "LM",
                                        "KWH",
                                        "E49",
                                        "E55",
                                        "OT",
                                        "PR",
                                        "XBX",
                                        "XPK",
                                        "SET",
                                        "IE"
                                    ]
                                },
                                "quantity": {
                                    "type": "number"
                                },
                                "price": {
                                    "type": "number"
                                },
                                "total": {
                                    "type": "number"
                                },
                                "vat": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "enum": [
                                        "0",
                                        "6",
                                        "10",
                                        "20"
                                    ]
                                },
                                "vat_exempt_type": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "enum": [
                                        "TYPE_1",
                                        "TYPE_2",
                                        "EXPORT_OF_GOODS",
                                        "TAX_FREE"
                                    ]
                                }
                            },
                            "required": [
                                "product_name",
                                "product_code",
                                "unit",
                                "quantity",
                                "price",
                                "total"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "internalId",
                    "client",
                    "lines"
                ],
                "title": "EInvoiceRequest"
            },
            "FiscalDeviceRequest": {
                "type": "object",
                "properties": {
                    "branchId": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "fromDate": {
                        "type": "string"
                    },
                    "toDate": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "branchId",
                    "name",
                    "fromDate"
                ],
                "title": "FiscalDeviceRequest"
            },
            "NonCashInvoiceRequest": {
                "type": "object",
                "properties": {
                    "internalId": {
                        "type": "string"
                    },
                    "payment_method": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "ACCOUNT",
                            "COMPENSATION",
                            "FACTORING",
                            "KIND",
                            "OTHER",
                            "TRANSFER",
                            "WAIVER"
                        ]
                    },
                    "invoice_discount_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "percent",
                            "amount"
                        ]
                    },
                    "invoice_discount_value": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "minimum": 0
                    },
                    "bank_account": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "bank_account_iban": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "exchange_rate": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "due_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "supply_start_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "supply_end_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "reverse_charge": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "periodic_invoice": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "self_issue_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "DOMESTIC",
                            "ABROAD",
                            "OTHER"
                        ]
                    },
                    "client": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string"
                            },
                            "id": {
                                "type": [
                                    "object",
                                    "null"
                                ],
                                "properties": {
                                    "type": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "description": "values when client is Albanian Company (NUIS), values when client is Non-AlbanCompany(VAT, TAX), values when client is Person(ID, PASS, SOC)",
                                        "enum": [
                                            "NUIS",
                                            "VAT",
                                            "TAX",
                                            "ID",
                                            "PASS",
                                            "SOC"
                                        ]
                                    },
                                    "id": {
                                        "type": [
                                            "string",
                                            "null"
                                        ]
                                    }
                                }
                            },
                            "address": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country": {
                                "type": "string",
                                "description": "ISO 3166-1 alpha-3 country code (e.g. RKS, ALB, USA)."
                            }
                        },
                        "required": [
                            "name",
                            "country"
                        ]
                    },
                    "bankAccount": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "iban": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "currency": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "swift": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "notes": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "holder": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        }
                    },
                    "fee": {
                        "type": "object",
                        "properties": {
                            "fee_type": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "fee_amount": {
                                "type": [
                                    "number",
                                    "null"
                                ]
                            }
                        }
                    },
                    "lines": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "product_name": {
                                    "type": "string"
                                },
                                "product_code": {
                                    "type": "string"
                                },
                                "unit": {
                                    "type": "string"
                                },
                                "quantity": {
                                    "type": "number"
                                },
                                "price": {
                                    "type": "number"
                                },
                                "total": {
                                    "type": "number"
                                },
                                "vat": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "enum": [
                                        "0",
                                        "6",
                                        "10",
                                        "20"
                                    ]
                                },
                                "vat_exempt_type": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "enum": [
                                        "TYPE_1",
                                        "TYPE_2",
                                        "EXPORT_OF_GOODS",
                                        "TAX_FREE"
                                    ]
                                }
                            },
                            "required": [
                                "product_name",
                                "product_code",
                                "unit",
                                "quantity",
                                "price",
                                "total"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "internalId",
                    "client",
                    "lines"
                ],
                "title": "NonCashInvoiceRequest"
            },
            "OrderInvoice": {
                "type": "object",
                "properties": {
                    "internalId": {
                        "type": "string"
                    },
                    "lines": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "product_name": {
                                    "type": "string"
                                },
                                "product_code": {
                                    "type": "string"
                                },
                                "unit": {
                                    "type": "string"
                                },
                                "quantity": {
                                    "type": "number"
                                },
                                "price": {
                                    "type": "number"
                                },
                                "total": {
                                    "type": "number"
                                },
                                "vat": {
                                    "type": "integer"
                                },
                                "vat_exempt_type": {
                                    "type": [
                                        "string",
                                        "null"
                                    ]
                                }
                            },
                            "required": [
                                "product_name",
                                "product_code",
                                "unit",
                                "quantity",
                                "price",
                                "total",
                                "vat"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "internalId",
                    "lines"
                ],
                "title": "OrderInvoice"
            },
            "ProductRequest": {
                "type": "object",
                "properties": {
                    "code": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "name": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "unit_code": {
                        "type": "string",
                        "enum": [
                            "C62",
                            "XPP",
                            "LTR",
                            "SEC",
                            "MIN",
                            "HUR",
                            "DAY",
                            "MON",
                            "ANN",
                            "MTK",
                            "E4",
                            "58",
                            "DT",
                            "DTN",
                            "GRM",
                            "M4",
                            "E54",
                            "KMT",
                            "D68",
                            "QB",
                            "H93",
                            "MTQ",
                            "MTK",
                            "MSK",
                            "LM",
                            "KWH",
                            "E49",
                            "E55",
                            "OT",
                            "PR",
                            "XBX",
                            "XPK",
                            "SET",
                            "IE"
                        ]
                    },
                    "last_price": {
                        "type": "number",
                        "minimum": 0
                    },
                    "cost_price": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "minimum": 0
                    },
                    "vat_rate": {
                        "type": "string",
                        "enum": [
                            "0",
                            "6",
                            "10",
                            "20"
                        ]
                    },
                    "vat_exempt_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "TYPE_1",
                            "TYPE_2",
                            "EXPORT_OF_GOODS",
                            "TAX_FREE"
                        ]
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 10
                    },
                    "service": {
                        "type": "boolean"
                    },
                    "id_category": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    }
                },
                "required": [
                    "name",
                    "unit_code",
                    "last_price",
                    "vat_rate"
                ],
                "title": "ProductRequest"
            },
            "RegisterCompanyRequest": {
                "type": "object",
                "properties": {
                    "nuis": {
                        "type": "string",
                        "pattern": "^[A-Z]\\d{8}[A-Z]$"
                    },
                    "name": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "address": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "administrator": {
                        "type": "string",
                        "maxLength": 255
                    },
                    "phone": {
                        "type": "string",
                        "maxLength": 50
                    },
                    "email": {
                        "type": "string",
                        "format": "email",
                        "maxLength": 255
                    },
                    "issuerInVat": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "lastNonCashEInvoiceNumber": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 50
                    }
                },
                "required": [
                    "nuis",
                    "name",
                    "address",
                    "administrator",
                    "phone",
                    "email"
                ],
                "title": "RegisterCompanyRequest"
            },
            "SummaryInvoice": {
                "type": "object",
                "properties": {
                    "internalId": {
                        "type": "string"
                    },
                    "payment_method": {
                        "type": "string",
                        "enum": [
                            "BANKNOTE",
                            "CARD"
                        ]
                    },
                    "currency": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "exchange_rate": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "supply_start_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "supply_end_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "order_invoices": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "internalId",
                    "payment_method",
                    "order_invoices"
                ],
                "title": "SummaryInvoice"
            },
            "WtnInvoiceRequest": {
                "type": "object",
                "properties": {
                    "vehPlates": {
                        "type": "string"
                    },
                    "valueOfGoods": {
                        "type": "number"
                    },
                    "type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "WTN",
                            "SALE"
                        ]
                    },
                    "transaction": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "TRANSFER",
                            "EXAMINATION",
                            "SALES",
                            "DOOR"
                        ]
                    },
                    "vehOwnership": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "OWNER",
                            "THIRDPARTY"
                        ]
                    },
                    "startPoint": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "ANOTHER",
                            "CUSTOMS",
                            "EXHIBITION",
                            "OTHER",
                            "SALE",
                            "STORE",
                            "WAREHOUSE"
                        ]
                    },
                    "destinPoint": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "ANOTHER",
                            "CUSTOMS",
                            "EXHIBITION",
                            "OTHER",
                            "SALE",
                            "STORE",
                            "WAREHOUSE"
                        ]
                    },
                    "carrier_id_type": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "NUIS",
                            "ID"
                        ]
                    },
                    "startCity": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "startAddr": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "destinCity": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "destinAddr": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "carrier_id_num": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "carrier_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "carrier_town": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "carrier_address": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "startDateTime": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "destinDateTime": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "invoice_lines": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "product_name": {
                                    "type": "string",
                                    "maxLength": 255
                                },
                                "product_code": {
                                    "type": "string",
                                    "maxLength": 50
                                },
                                "unit": {
                                    "type": "string",
                                    "maxLength": 50
                                },
                                "quantity": {
                                    "type": "number"
                                }
                            },
                            "required": [
                                "product_name",
                                "product_code",
                                "unit",
                                "quantity"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "vehPlates",
                    "valueOfGoods",
                    "invoice_lines"
                ],
                "title": "WtnInvoiceRequest"
            }
        },
        "responses": {
            "AuthenticationException": {
                "description": "Unauthenticated",
                "content": {
                    "application\/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Error overview."
                                }
                            },
                            "required": [
                                "message"
                            ]
                        }
                    }
                }
            },
            "ValidationException": {
                "description": "Validation error",
                "content": {
                    "application\/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Errors overview."
                                },
                                "errors": {
                                    "type": "object",
                                    "description": "A detailed description of each field that failed validation.",
                                    "additionalProperties": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                }
                            },
                            "required": [
                                "message",
                                "errors"
                            ]
                        }
                    }
                }
            }
        }
    }
}