---
title: "Oznaczanie kosztów jako opłaconych"
description: "Jak oznaczyć jeden lub wiele dokumentów kosztowych jako opłacone, z datą płatności."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.niebieskiorzel.pl/llms.txt
> Use this file to discover all available pages before exploring further.

# Oznaczanie kosztów jako opłaconych

Jedno żądanie oznacza wiele kosztów jako opłacone. Odpowiedź zawiera wynik dla każdego dokumentu osobno.

> **Testowanie kosztów na produkcji**
>
> W sandboxie moduł kosztów ma ograniczony dostęp, dlatego przykłady na tej stronie korzystają z adresu produkcyjnego `https://api.infakt.pl/v3`. Testy należy przeprowadzać na własnym koncie, a po ich zakończeniu usunąć testowe dokumenty.

## Wymagania

- Klucz API z zakresem `api:costs:write` w zmiennej `INFAKT_API_KEY`.
- `uuid` kosztów z `GET /documents/costs.json`.

## Żądanie

Pole `uuids` zawiera identyfikatory dokumentów oddzielone przecinkami, a `paid_on` datę płatności:

```sh
curl -X PUT "https://api.infakt.pl/v3/documents/costs/paid_many.json" \
  -H "X-inFakt-ApiKey: $INFAKT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "uuids": "2f6e8a1c-3b4d-4e5f-9a6b-7c8d9e0f1a2b",
    "paid_on": "2026-10-10"
  }'
```

```js
const res = await fetch("https://api.infakt.pl/v3/documents/costs/paid_many.json", {
  method: "PUT",
  headers: {
    "X-inFakt-ApiKey": process.env.INFAKT_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "uuids": "2f6e8a1c-3b4d-4e5f-9a6b-7c8d9e0f1a2b",
    "paid_on": "2026-10-10"
  }),
});
const data = await res.json();
console.log(res.status, data);
```

```python
import os
import requests

res = requests.put(
    "https://api.infakt.pl/v3/documents/costs/paid_many.json",
    headers={"X-inFakt-ApiKey": os.environ["INFAKT_API_KEY"]},
    json={
        "uuids": "2f6e8a1c-3b4d-4e5f-9a6b-7c8d9e0f1a2b",
        "paid_on": "2026-10-10"
    },
)
print(res.status_code, res.json())
```

```php
<?php
$ch = curl_init('https://api.infakt.pl/v3/documents/costs/paid_many.json');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'PUT',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'X-inFakt-ApiKey: ' . getenv('INFAKT_API_KEY'),
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'uuids' => '2f6e8a1c-3b4d-4e5f-9a6b-7c8d9e0f1a2b',
        'paid_on' => '2026-10-10',
    ]),
]);
$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
echo $status, ' ', $response, PHP_EOL;
```

## Weryfikacja

```json
{
  "success": true,
  "entities": [
    {
      "uuid": "2f6e8a1c-3b4d-4e5f-9a6b-7c8d9e0f1a2b",
      "number": "FV/123/10/2026",
      "status": "success"
    }
  ]
}
```

Dokument ze statusem `"failure"` nie został oznaczony. Przy włączonym automatycznym księgowaniu różnic kursowych koszty w walucie obcej są w trybie zbiorczym pomijane i trzeba je oznaczać pojedynczo.

## Następne kroki

- [Dodawanie dokumentu kosztowego](/poradniki/koszty/dodaj-dokument/)
- [Operacja w referencji API](/api/cost-documents-mark-paid-many/)

Source: https://docs.niebieskiorzel.pl/poradniki/koszty/oznacz-jako-oplacone/index.mdx
