---
title: "Descarcare factura PDF"
method: GET
path: "/invoice/pdf"
tags: ["Facturi"]
---

# Descarcare factura PDF

`GET /invoice/pdf`

Descarca factura in format PDF. Parametrii se trimit in URL (query string).

Factura poate fi preluata prin API doar ca fisier PDF. Nu exista endpoint pentru factura in format JSON sau XML.

Raspunsul de succes este un fisier binar (`application/octet-stream`), trimis cu `Content-Disposition: attachment` si cu numele fisierului format din `factura` + serie + numar - de exemplu `facturafac3880.pdf`.

`Content-Type` din raspuns oglindeste header-ul `Accept` trimis in cerere: daca ceri `Accept: application/json`, raspunsul e etichetat `application/json`, desi corpul ramane acelasi PDF. Nu te baza pe `Content-Type` ca sa decizi cum tratezi raspunsul.

**Nu trimite `Accept: application/pdf`.** Valoarea cea mai naturala e singura care nu merge: raspunsul e `406` cu `{"code": "invalid_accept_header"}`, nu PDF-ul. Merg `application/octet-stream`, `*/*`, `application/json` sau lipsa completa a header-ului `Accept`.

Atentie la erori: acest endpoint **nu** intoarce o eroare de API. Orice parametru lipsa sau document inexistent duce la `502 Bad Gateway`, cu corp HTML, care nu se poate interpreta programatic. Spre deosebire de el, [proforma in PDF](#tag/proforme/GET/estimate/pdf) intoarce `400` cu `errorText` in JSON.

## Query parameters

- `cif` string, required
- `seriesname` string, required
- `number` string, required

## Response `200`

Fisierul PDF al facturii, ca flux binar (`application/octet-stream`). Salveaza-l intr-un fisier `.pdf`.

## Other responses

- `401` — Autentificare esuata
- `502` — Parametri lipsa sau factura inexistenta. Verifica `seriesname`, `number` si existenta facturii.

---

[API](https://skmtc.dev/smartbill/apis/smartbill-api.md) · [All operations](https://skmtc.dev/smartbill/apis/smartbill-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/smartbill/smartbill-api/revisions/29940a27d41c/schema)
