POST /invoices með Idempotency-Key, VSK sem prósentur, auk lista, storno og merkingar greiddra reikninga.
Fyrsti reikningurinn þinn í 6 skrefum
- Sendu POST /v1/invoices með buyer-hlut og að minnsta kosti einni færslu í lines.
- Bættu við Idempotency-Key-hausnum — hann er krafist, einn lykill fyrir hverja rökrétta aðgerð.
- Sendu vat_rate sem prósentu (21) og unit_price sem NETTÓ einingarverð.
- 201-svarið ber id, number, series, heildarfjárhæðir net/vat/gross og lýsigögnin sem þú sendir.
- Sæktu skjalið með GET /v1/invoices/{id}/pdf eða UBL XML með GET /v1/invoices/{id}/xml.
Allir endapunktar
| Aðferð | Endapunktur | Scope | Idempotency-Key | Beiðnir / mínútu |
|---|---|---|---|---|
| POST | /invoices Gefa út reikning eða proforma-reikning | invoices:write | krafist | 30 |
| GET | /invoices Lista reikninga (bendilsblaðsíðað) | invoices:read | — | 120 |
| POST | /invoices/preview-totals Reikna heildarfjárhæðir án þess að búa til nokkuð | invoices:read | — | 120 |
| GET | /invoices/{invoice_id} Sækja einn reikning | invoices:read | — | 120 |
| GET | /invoices/{invoice_id}/pdf Sækja PDF-skrá reiknings | invoices:read | — | 120 |
| POST | /invoices/{invoice_id}/storno Gefa út kreditreikning sem afturkallar þennan reikning | invoices:write | krafist | 30 |
| POST | /invoices/{invoice_id}/payments Merkja reikning sem greiddan | invoices:write | — | 30 |
| DELETE | /invoices/{invoice_id}/payments Merkja reikning sem ógreiddan | invoices:write | — | 30 |
Hvað eru forritaskil 4invoices
bash
curl -sS -X POST https://api.4invoices.net/v1/invoices \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: order-10457-invoice' \
-d '{
"buyer": {
"name": "Exemplu Comert SRL",
"tax_id": "RO12345678",
"address": "Str. Fabricii 12",
"city": "Cluj-Napoca",
"county": "Cluj",
"country": "RO",
"email": "[email protected]"
},
"lines": [
{ "description": "Abonament SaaS, iulie", "quantity": 1, "unit_price": 400, "vat_rate": 21, "unit": "buc" },
{ "description": "Implementare", "quantity": 6, "unit_price": 250, "vat_rate": 21, "unit": "ora" }
],
"currency": "RON",
"document_kind": "factura",
"due_date": "2026-08-15",
"metadata": { "order_id": "10457" }
}'bash
# Bendilsblaðsíðun: fylgdu next_cursor þar til has_more er false.
curl -sS "https://api.4invoices.net/v1/invoices?limit=50&status=issued&issued_from=2026-07-01" \
-H "Authorization: Bearer $ACCESS_TOKEN"
# → {"object":"list","data":[...],"has_more":true,"next_cursor":"inv_01J..."}
curl -sS "https://api.4invoices.net/v1/invoices?limit=50&cursor=inv_01J..." \
-H "Authorization: Bearer $ACCESS_TOKEN"bash
curl -sS -X POST https://api.4invoices.net/v1/invoices/inv_01J7ABC/storno \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Idempotency-Key: storno-inv_01J7ABC-1'
# Kreditreikningurinn fær EIGIÐ fjárhagsnúmer; upprunalega númerið er aldrei notað aftur.bash
# Merkja greiddan
curl -sS -X POST https://api.4invoices.net/v1/invoices/inv_01J7ABC/payments \
-H "Authorization: Bearer $ACCESS_TOKEN"
# Afturkalla
curl -sS -X DELETE https://api.4invoices.net/v1/invoices/inv_01J7ABC/payments \
-H "Authorization: Bearer $ACCESS_TOKEN"https://api.4invoices.net/v1 · https://api.4invoices.net/v1/openapi.json
Villur
| Staða | Tegund | Kóði |
|---|---|---|
| 422 | invalid_request_error | issuer_profile_incomplete |
| 422 | invalid_request_error | cannot_storno_draft |
| 422 | invalid_request_error | nothing_to_storno |
Algeng mistök
- Listun byggir á bendlum: fylgdu next_cursor þar til has_more er false. Síur eru meðal annars status, document_kind, buyer_tax_id, issued_from, issued_to og q.
- Storno er POST /v1/invoices/{id}/storno og fær eigið fjárhagsnúmer — upprunalega númerið er aldrei notað aftur.
- Proforma (document_kind proforma) notar ekkert fjárhagsnúmer og er ekki hægt að skrá í landskerfi rafrænna reikninga.
- metadata endurómast við lestur: settu auðkenni pöntunarinnar þíns þar og þarft ekki sérstaka tengitöflu.
- POST /v1/invoices/preview-totals keyrir sama reikning án hliðarverkana — gott til að sýna heildarfjárhæðir í þinni eigin körfu.
Spurningar og svör fyrir þróendur
Hversu margar línur getur einn reikningur haft?
Á bilinu 1 til 400. description er takmarkað við 1024 stafi og quantity verður að vera stranglega jákvætt.
Hvað gerist ef ég sendi sömu beiðni aftur eftir tímamörk?
Með sama Idempotency-Key færðu upprunalega reikninginn ásamt hausnum Idempotency-Replayed: true. Ekkert annað skjal er gefið út.
Hvernig merki ég reikning sem greiddan?
POST /v1/invoices/{id}/payments merkir hann greiddan og DELETE á sömu slóð afturkallar það. Hvort tveggja krefst heimildarinnar invoices:write.