Faktury korygujące
Zarządzanie fakturami korygującymi należącymi do użytkownika
Definicja
Obiekt CorrectiveInvoice
zawiera następujące klucze:
Parametr | Typ danych | Wymagany | Opis |
---|---|---|---|
id | integer | Tylko do odczytu | ID Faktury Korygującej |
number | string | Nie | Numer faktury korygującej. Domyślnie generowany na podstawie Następny numer faktury |
corrected_invoice_number | string | Nie | Numer faktury korygowanej. |
corrected_invoice_date | string | Nie | Data faktury korygowanej |
confirmation | string | Nie | Otrzymaliśmy podpisaną fakturę true lub false |
currency | string | Nie | Waluta: THB , USD , AUD , HKD , CAD , NZD , SGD , EUR , HUF , CHF , GBP , UAH , JPY , CZK , DKK , ISK , NOK , SEK , HRK , RON , BGN , TRY , LTL , LVL , PHP , MXN , ZAR , BRL , MYR , RUB , IDR , KRW , CNY , INR , LTL , domyślnie PLN . |
paid_price | integer | Nie | Zapłacono w groszach. |
notes | string | Nie | Uwagi |
payment_method | string | Nie | Metoda płatności:
|
recipient_signature | string | Nie | Imię i nazwisko Odbiorcy |
seller_signature | string | Nie | Imię i nazwisko Sprzedawcy |
invoice_date | string | Nie | Data wystawienia w formacie RRRR-MM-DD |
sale_date | string | Nie | Data sprzedaży w formacie RRRR-MM-DD |
confirmation_date | string | Nie | Data podpisania w formacie RRRR-MM-DD |
status | string | Nie | Status:
|
payment_date | string | Nie | Termin zapłaty w formacie RRRR-MM-DD |
net_price | integer | Nie | Razem netto w groszach |
tax_price | integer | Nie | Wartość VAT w groszach |
gross_price | integer | Nie | Razem brutto w groszach |
left_to_pay | integer | Nie | Pozostało do zapłaty w groszach |
client_id | integer | Nie | ID klienta (jeśli istnieje) |
client_company_name | string | Nie | Nazwa firmy klienta (jeśli klient nie istnieje) |
client_street | string | Nie | Ulica klienta (jeśli klient nie istnieje) |
client_street_number | string | Nie | Numer budynku klienta (jeśli klient nie istnieje) |
client_flat_number | string | Nie | Numer mieszkania klienta (jeśli klient nie istnieje) |
client_city | string | Nie | Miasto klienta (jeśli klient nie istnieje) |
client_post_code | string | Nie | Kod pocztowy klienta (jeśli klient nie istnieje) |
client_tax_code | string | Nie | NIP klienta (jeśli klient nie istnieje) |
client_country | string | Nie | Kraj klienta (jeśli klient nie istnieje) |
check_duplicate_number | boolean | Nie | Czy sprawdzać duplikacje numeru faktury true lub false |
bank_name | string | Nie | Nazwa banku, dotyczy faktur z przelewem |
bank_account | string | Nie | Nr konta bankowego, dotyczy faktur z przelewem. |
swift | string | Nie | Nr Swift, dotyczy faktur z przelewem |
sale_type | string | Dla klientów zagranicznych. | Rodzaj sprzedaży:
|
invoice_date_kind | string | Nie | Rodzaj daty na fakturze:
|
receipt_number | string | Nie | Numer paragonu |
not_income | boolen | Tak, w przypadku faktury do paragonu, jej korekty lub zaliczki | Nie uwzględniaj do podatku dochodowego |
vat_exchange_date_kind | string | Tak, w przypadku faktury w obcej walucie | Rodzaj daty kursu waluty na cele vat. Przyjmuje jedną z dwóch wartości:vat – zgodny z momentem obowiązku podatkowego VATpit – zgodny z kursem dla celów PIT |
correction_reason | string | Nie | Powód korekty. Przyjmuje jedną z dwóch wartości:mistake – błąd rachunkowy lub inna oczywista omyłkaother – inne: np. zwrot, rabat |
services | array of Services | Tak | Lista pozycji na fakturze (i link do services) |
Services
Obiekt service zawiera następujące klucze:
Parametr | Typ danych | Wymagany | Opis |
---|---|---|---|
group | string | Tak | Id grupy produktów, musi być taki sam dla produktu przed i po korekcie |
tax_symbol | string | Tak | Stawka VAT (lista obsługiwanych stawek) |
correction | string | Nie | Zaznaczamy, czy produkt z danej grupy jest korektą, czy wpisem korygowanym true lub false |
name | string | Nie | Nazwa |
unit | string | Nie | Jednostka |
quantity | integer | Nie | Ilość |
unit_net_price | integer | Nie | Cena netto za sztukę w groszach |
net_price | integer | Nie | Wartość netto w groszach |
gross_price | integer | Tylko do odczytu | Wartość brutto w groszach |
tax_price | integer | Nie | Wartość podatku VAT w groszach |
discount | integer | Nie | Wartość rabatu w procentach |
unit_net_price_before_discount | integer | Nie | Cena zakupu netto w groszach przed rabatem |
gtu_id | string | Nie | Id kodu GTU (Oznaczenia dostaw towarów i świadczenia usług) |
symbol | string | Nie | symbol PKWiU / CN / PKOB deprecated |
pkwiu | string | Nie | PKWiU |
sn | string | Nie | CN |
pkob | string | Nie | PKOB |
Listowanie faktur
GET /v3/corrective_invoices.json
Akcja listowania zwraca odpowiedź zawierającą tablicę obiektów pod kluczem entities
oraz informacje pomocnicze dotyczące stronicowania. Domyślne sortowanie dla zwracanej tablicy odbywa się malejąco przy użyciu pola invoice_date
.
Dodatkowo, na zbiorze danych można wykonywać nastepujące operacje:
Przykład akcji listowania:
Przykład curl
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
https://api.infakt.pl/v3/corrective_invoices.json
Przykładowa odpowiedź
{
"metainfo": {
"count": 1,
"total_count": 4,
"next": "https://api.infakt.pl/api/v3/corrective_invoices.json?offset=10",
"previous": "https://api.infakt.pl/api/v3/corrective_invoices.json?offset=0"
},
"entities": [
{
"id": 42,
"number": "1/04/2022",
"corrected_invoice_number": "1/KOR/2022",
"corrected_invoice_date": "2022-04-12",
"confirmation": false,
"confirmation_date": "",
"currency": "PLN",
"paid_price": 1230,
"notes": "",
"kind": "vat",
"payment_method": "cash",
"recipient_signature": "",
"seller_signature": "Michal Wisniewski",
"invoice_date": "2022-04-12",
"sale_date": "2022-04-12",
"status": "draft",
"payment_date": "2022-04-26",
"net_price": 1000,
"tax_price": 230,
"gross_price": 1230,
"client_id": 8,
"client_company_name": "HSK Group",
"client_street": "Pawia",
"client_street_number": "3",
"client_flat_number": "22",
"client_city": "Warszaw",
"client_post_code": "00-920",
"client_tax_code": "4218067785",
"client_country": "PL",
"bank_name": "",
"bank_account": "",
"swift": "",
"vat_exemption_reason": null,
"sale_type": "",
"invoice_date_kind": "sale_date",
"document_markings_ids": [],
"transaction_kind_id": null,
"bdo_code": null,
"receipt_number": null,
"not_income": false,
"vat_exchange_date_kind": null,
"correction_reason": "Inne: np. zwrot, rabat",
"services": [
{
"id": 1609,
"group": "123",
"correction": true,
"name": "Produkt",
"tax_symbol": "23",
"unit": "szt.",
"quantity": "1.0",
"unit_net_price": 12300,
"net_price": 12300,
"gross_price": 15129,
"tax_price": 2829,
"symbol": "",
"pkwiu": null,
"cn": null,
"pkob": null
},
{
"id": 1608,
"group": "123",
"correction": false,
"name": "Produkt",
"tax_symbol": "23",
"unit": "szt.",
"quantity": "1.0",
"unit_net_price": 1000,
"net_price": 1000,
"gross_price": 1230,
"tax_price": 230,
"symbol": "",
"pkwiu": null,
"cn": null,
"pkob": null
}
]
}
]
}
Możliwe kody odpowiedzi:
Kod odpowiedzi | Opis |
---|---|
200 | Zapytanie zostało wykonane poprawnie |
401 | Brak autoryzacji lub uprawnień do danego zasobu |
Podgląd
GET /v3/corrective_invoices/{id}.json
Dodatkowo, na zbiorze danych można wykonywać nastepujące operacje:
Przykład curl
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
https://api.infakt.pl/v3/corrective_invoices/16.json
Przykładowa odpowiedź
{
"id": 16,
"number": "1/04/2022",
"corrected_invoice_number": "1/KOR/2022",
"corrected_invoice_date": "2022-04-12",
"confirmation": false,
"confirmation_date": "",
"currency": "PLN",
"paid_price": 1230,
"notes": "",
"kind": "vat",
"payment_method": "cash",
"recipient_signature": "",
"seller_signature": "Jan Kowalski",
"invoice_date": "2022-04-12",
"sale_date": "2022-04-12",
"status": "draft",
"payment_date": "2022-04-26",
"net_price": 1000,
"tax_price": 230,
"gross_price": 1230,
"client_id": 8,
"client_company_name": "inFakt Sp. z o.o.",
"client_street": "Pawia",
"client_street_number": "3",
"client_flat_number": "22",
"client_city": "Kraków",
"client_post_code": "30-549",
"client_tax_code": "9452121681",
"client_country": "PL",
"client_tax_code": "4218067785",
"bank_name": "",
"bank_account": "",
"vat_exemption_reason": null,
"sale_type": "",
"invoice_date_kind": "sale_date",
"document_markings_ids": [],
"transaction_kind_id": null,
"bdo_code": null,
"receipt_number": null,
"not_income": false,
"vat_exchange_date_kind": null,
"correction_reason": "Inne: np. zwrot, rabat",
"services": [
{
"id": 1609,
"group": "123",
"correction": true,
"name": "Produkt",
"tax_symbol": "23",
"unit": "szt.",
"quantity": "1.0",
"unit_net_price": 2000,
"net_price": 2000,
"gross_price": 2460,
"tax_price": 460,
"discount": "0.0",
"unit_net_price_before_discount": 1137,
"gtu_id": null,
"symbol": "",
"pkwiu": null,
"cn": null,
"pkob": null
},
{
"id": 1608,
"group": "123",
"correction": false,
"name": "Produkt",
"tax_symbol": "23",
"unit": "szt.",
"quantity": "1.0",
"unit_net_price": 1000,
"net_price": 1000,
"gross_price": 1230,
"tax_price": 230,
"discount": "0.0",
"unit_net_price_before_discount": 1137,
"gtu_id": null,
"symbol": "",
"pkwiu": null,
"cn": null,
"pkob": null
}
]
}
Możliwe kody odpowiedzi:
Kod odpowiedzi | Opis |
---|---|
200 | Zapytanie zostało wykonane poprawnie |
401 | Brak autoryzacji lub uprawnień do danego zasobu |
404 | Zasób nie został odnaleziony |
Tworzenie
Faktura zawsze utworzy się w statusie draft
. Po utworzeniu można oznaczyć ją jako zapłaconą, wydrukowaną lub wysłaną.
POST /v3/invoices.json
POST /v3/corrective_invoices.json
Tworzenie
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
-H "Content-Type: application/json" \
-X POST \
-d '{
"corrective_invoice": {
"payment_method": "cash",
"client_id": ClientID,
"corrected_invoice_number": "123",
"invoice_date": "2021-09-20",
"sale_date": "2021-09-20",
"payment_date": "2021-10-20",
"services": [
{
"name": "Przykładowa Usługa",
"unit_net_price": 6623,
"group": "1",
"quantity":"1.0",
"correction": false,
"tax_symbol": "23",
"pkwiu": "84.11.12.0"
},
{
"name": "Przykładowa Usługa - korekta",
"unit_net_price": 6600,
"group": "1",
"quantity":"1.0",
"correction": true,
"tax_symbol": "23",
"pkwiu": "84.11.12.0"
},
{
"name": "Przykładowy produkt",
"unit_net_price": 6623,
"group": "2",
"quantity":"1.0",
"correction": false,
"tax_symbol": "23",
"pkwiu": "46.11.12"
},
{
"name": "Przykładowy produkt - korekta",
"unit_net_price": 6623,
"group": "2",
"quantity":"0",
"correction": true,
"tax_symbol": "23",
"pkwiu": "46.11.12"
}
]
}
}' \
https://api.infakt.pl/v3/corrective_invoices.json
Dla FV korygującej w pozycji wpisujemy cenę za pomocą unit_net_price. System wyliczy odpowiednio pozostałe wartości dla pozycji oraz całej FV.
Możliwe kody odpowiedzi:
Kod odpowiedzi | Opis |
---|---|
201 | Zasób został poprawnie utworzony |
422 | Zwracany wraz z informacją o błędach w przypadku problemów z zasobem. |
Aktualizacja faktury korygującej
PUT /v3/corrective_invoices/{id}.json
Aktualizacja
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
-H "Content-Type: application/json" \
-X PUT \
-d '{"corrective_invoice":{"payment_method":"cash"}}' \
https://api.infakt.pl/v3/corrective_invoices/42.json
Możliwe kody odpowiedzi:
Kod odpowiedzi | Opis |
---|---|
200 | Zapytanie zostało wykonane poprawnie |
422 | Zwracany wraz z informacją o błędach w przypadku problemów z zasobem. |
Usuwanie faktury korygującej
DELETE /v3/corrective_invoices/{id}.json
Usuwanie
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
-X DELETE \
https://api.infakt.pl/v3/corrective_invoices/42.json
Możliwe kody odpowiedzi:
Kod odpowiedzi | Opis |
---|---|
204 | Zwracany po poprawnym usunięciu zasobu. |
401 | Brak autoryzacji lub uprawnień do danego zasobu |
Oznaczenie faktury jako zapłacona
POST /v3/corrective_invoices/{id}/paid.json
Parametr | Typ danych | Wymagany | Opis |
---|---|---|---|
paid_date | string | Nie | Data opłacenia w formacie RRRR-MM-DD |
Oznaczenie fakury jako zapłacona
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
-H "Content-Type: application/json" \
-X POST \
-d '{"paid_date":"2022-04-05"}' \
https://api.infakt.pl/v3/corrective_invoices/42/paid.json
Możliwe kody odpowiedzi:
Kod odpowiedzi | Opis |
---|---|
204 | Zwracany po poprawnym opłaceniu faktury. |
422 | Zwracany wraz z informacją o błędach w przypadku problemów z zasobem. |
Pobranie faktury w formacie pdf
GET /v3/corrective_invoices/{id}/pdf.json
Parametr | Typ danych | Wymagany | Opis |
---|---|---|---|
document_type | string | Tak | Rodzaj dokumentu:
|
locale | string | Nie | Język dokumentu: pl – Polski, en – Angielski, pe – polsko – angielski |
Pobranie faktury w formacie pdf
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
https://api.infakt.pl/v3/corrective_invoices/42/pdf.json?document_type=original&locale=pl
W odpowiedzi zostaje zwrócona faktura w formie pliku PDF. Pobranie faktury jako PDF powoduje zmianę statusu faktury na „Wydrukowano”.
Oznaczenie faktury jako podpisana
POST /v3/corrective_invoices/{id}/sign.json
Parametr | Typ danych | Wymagany | Opis |
---|---|---|---|
confirmation_date | string | Nie | Data podpisania w formacie RRRR-MM-DD |
Oznaczenie faktury jako podpisania
curl -H "X-inFakt-ApiKey: 49206c6f766520496e66616b74203a3e" \
-H "Content-Type: application/json" \
-X POST \
-d '{"confirmation_date":"2022-03-05"}' \
https://api.infakt.pl/v3/corrective_invoices/42/sign.json
Możliwe kody odpowiedzi:
Kod odpowiedzi | Opis |
---|---|
204 | Zwracany po poprawnym podpisaniu faktury. |
422 | Zwracany wraz z informacją o błędach w przypadku problemów z zasobem. |