Dictionaries
All the enum values you need when creating documents are returned by one endpoint:
curl -s https://prod.api.fakturnia.pl/external/v1/dictionaries \
-H "Authorization: Bearer $TOKEN"
This is the source of truth for your integration. The endpoint only needs a valid OAuth token (no extra scope), and the data is static and non-sensitive. Rather than hardcoding the values below, fetch them once at integration start, so a new dictionary entry won't break your code.
The full content of each dictionary is below. You use these lists when creating documents.
Document types (documentTypes)
These are all the types supported by the External API. There are no separate types for split payment, the margin scheme, reverse charge or a VAT-exempt invoice, the way some other systems have. Fakturnia is fully KSeF-compliant and these document features are set via annotations. This is the current standard: fewer document types and a simpler integration. The "Sent to KSeF" column tells you whether a type can be submitted to KSeF.
| Value | Sent to KSeF |
|---|---|
Faktura |
no (document outside KSeF, for VAT-exempt entities) |
FakturaVAT |
yes |
FakturaKorygujaca |
yes |
FakturaKorygujacaZaliczkowa |
yes |
FakturaKorygujacaRozliczeniowa |
yes |
FakturaZaliczka |
yes |
FakturaRozliczeniowa |
yes |
FakturaProforma |
no (informational document) |
FakturaProformaBezVAT |
no (informational document) |
Zamowienie |
no (an order, not an invoice) |
VAT rates (vatRates)
value is what you send in vatRate. The special string codes mean net = gross, VAT = 0.
value |
Label | Description |
|---|---|---|
np I |
np. I | Not subject - excluding art. 100(1)(4) of the Act |
np II |
np. II | Not subject - under art. 100(1)(4) of the Act |
zw |
zw. | Exempt from tax |
oo |
o.o. | Reverse charge |
0 KR |
0% - KR | 0% for domestic supply of goods and services |
0 WDT |
0% - WDT | 0% for intra-Community supply of goods (WDT) |
0 EX |
0% - EX | 0% for export of goods |
marza |
marża | Margin scheme (art. 119 and 120): gross amounts only on the invoice, the sum in P_13_11 in KSeF. Needs annotations.marginProcedure. Not on the vatRates list. |
3 |
3% | |
4 |
4% | |
5 |
5% | |
7 |
7% | |
8 |
8% | |
22 |
22% | |
23 |
23% |
Payment methods (paymentMethods)
You send paymentMethodId in the document.
paymentMethodId |
Name |
|---|---|
1 |
Cash |
2 |
Card |
3 |
Voucher |
4 |
Cheque |
5 |
Credit |
6 |
Transfer |
7 |
Mobile payment |
Payment statuses (paymentStatuses)
id |
Name |
|---|---|
0 |
Paid |
1 |
Unpaid |
Currencies (currencies)
availableExchangeRate indicates whether you can pass exchangeRate for that currency.
id |
Name | availableExchangeRate |
|---|---|---|
PLN |
Polish zloty | no |
EUR |
Euro | yes |
USD |
US dollar | yes |
GBP |
British pound | yes |
CHF |
Swiss franc | yes |
DKK |
Danish krone | yes |
NOK |
Norwegian krone | yes |
SEK |
Swedish krona | yes |
CZK |
Czech koruna | yes |
HUF |
Forint | yes |
Show all (18)
id |
Name | availableExchangeRate |
|---|---|---|
RUR |
Ruble | no |
LTL |
Lithuanian litas | no |
UAH |
Hryvnia | yes |
BGN |
Lev | yes |
ROL |
Romanian leu | no |
JPY |
Yen | yes |
TRL |
Turkish lira | no |
HRK |
Kuna | no |
Country codes (countries)
The ISO 3166-1 alpha-2 code goes in countryCode (contractor).
code |
Name |
|---|---|
PL |
Poland |
AT |
Austria |
BE |
Belgium |
BG |
Bulgaria |
HR |
Croatia |
CY |
Cyprus |
CZ |
Czechia |
DK |
Denmark |
EE |
Estonia |
FI |
Finland |
Show all (68)
code |
Name |
|---|---|
FR |
France |
GR |
Greece |
ES |
Spain |
NL |
Netherlands |
IE |
Ireland |
LT |
Lithuania |
LU |
Luxembourg |
LV |
Latvia |
MT |
Malta |
DE |
Germany |
PT |
Portugal |
RO |
Romania |
SK |
Slovakia |
SI |
Slovenia |
SE |
Sweden |
HU |
Hungary |
IT |
Italy |
GB |
United Kingdom |
US |
United States |
CA |
Canada |
CH |
Switzerland |
NO |
Norway |
UA |
Ukraine |
RU |
Russia |
CN |
China |
JP |
Japan |
KR |
South Korea |
IN |
India |
BR |
Brazil |
MX |
Mexico |
AU |
Australia |
NZ |
New Zealand |
ZA |
South Africa |
TR |
Turkey |
IL |
Israel |
AE |
United Arab Emirates |
SA |
Saudi Arabia |
SG |
Singapore |
TH |
Thailand |
VN |
Vietnam |
ID |
Indonesia |
MY |
Malaysia |
PH |
Philippines |
AR |
Argentina |
CL |
Chile |
CO |
Colombia |
EG |
Egypt |
IS |
Iceland |
RS |
Serbia |
BA |
Bosnia and Herzegovina |
ME |
Montenegro |
MK |
North Macedonia |
AL |
Albania |
BY |
Belarus |
MD |
Moldova |
GE |
Georgia |
AM |
Armenia |
AZ |
Azerbaijan |
GTU codes (gtu)
Optional gtu on a line item.
id |
Description |
|---|---|
GTU_01 |
Supply of alcoholic beverages |
GTU_02 |
Supply of motor fuels |
GTU_03 |
Supply of heating oil, lubricating oils and plastic greases, etc. |
GTU_04 |
Supply of tobacco products and novelty products |
GTU_05 |
Supply of waste |
GTU_06 |
Supply of electronic equipment and parts/materials for it |
GTU_07 |
Supply of vehicles and automotive parts |
GTU_08 |
Supply of precious and base metals |
GTU_09 |
Supply of medicines and medical devices |
GTU_10 |
Supply of buildings, structures and land |
GTU_11 |
Services of transferring greenhouse gas emission allowances |
GTU_12 |
Consulting, accounting, legal, management, training, marketing, advertising, market research and R&D services |
GTU_13 |
Transport and warehouse management services |
Margin procedures (marginProcedures)
You send id in annotations.marginProcedure.procedureId.
id |
Description |
|---|---|
1 |
Margin scheme for travel agencies |
2 |
Margin scheme - second-hand goods |
3 |
Margin scheme - works of art |
4 |
Margin scheme - collectors' items and antiques |
VAT exemption types (vatExemptionTypes)
You send type in annotations.vatExemption.exemptionType, and the legal basis in legalBasis (pattern in the "Example" column).
type |
Description | Example (legalBasis) |
|---|---|---|
A |
Provision of the Act, or an act issued under it, on which the taxpayer bases the exemption | e.g. art. 43 ust. 1 pkt 19 ustawy o VAT |
B |
Provision of Directive 2006/112/EC exempting such a supply of goods or services | e.g. art. 132 ust. 1 lit. c dyrektywy 2006/112/WE |
C |
Other legal basis indicating that the supply of goods or services is exempt | e.g. exemption under an international agreement |
Payment date headers (paymentDateHeaders)
You send id in additionalPaymentDateHeaderId.
id |
Name |
|---|---|
0 |
Data płatności |
1 |
Data dokonania płatności |
2 |
Data otrzymania zapłaty |
3 |
Końcowa data płatności |
Additional date headers (additionalDateHeaders)
You send id in subDateHeaderId (the header above the sale date).
id |
Name |
|---|---|
0 |
Data sprzedaży |
1 |
Data wykonania usługi |
2 |
Data dokonania dostawy towarów |
3 |
Data zakończenia dostawy towarów |
4 |
Data zakończenia świadczenia usług |
5 |
Data otrzymania zaliczki |
6 |
Data otrzymania zapłaty |
7 |
Termin realizacji zamówienia |
8 |
Data otrzymania towaru |
9 |
Data wydania towaru |
10 |
Data zaliczki |
11 |
Termin ważności oferty |