Update a system
fiskaly SIGN IT (2024-10-31)
Download OpenAPI specification:
Imprint: fiskaly.com/impressum
Privacy Policy: fiskaly.com/privacy-policy
Service Details: fiskaly.com/signit
Developer Guide: workspace.fiskaly.com/sign-it/2024-10-31/integration-guide/
The fiskaly API is a RESTful, cross-country solution designed to support compliance with the relevant legislation.
The fiskaly API is a platform-independent and software-only solution. Since this is a cloud-based API, the only requirement to integrate and use this fiskaly API is a stable Internet connection. The API ...
This API documentation specifically covers the Italian module, SIGN IT, that ensures compliance with Italian legislation for the telematic transmission of daily transactions. Compliance can be achieved through two different options: SIGN IT in its lite version or in its full version:
- SIGN IT in its lite version connects your PoS with the Revenue Agencys web portal for the issuance of Online Commercial Documents, a legally valid alternative to the telematic registers to issue compliant receipts.
- SIGN IT in its full version will comply with the new generation of software fiscalization as described in article 24 of D lgs 1 - 2024.
SIGN IT provides a test environment for integration and testing purposes as well as a dedicated live environment for performing the real-time sending of official transactions (commercial documents) to the Italian "Online commercial document" web procedure, present in the "Invoices and Fees" portal of the Revenue Agency. In order to access the live environment, please contact our sales team.
SIGN IT implements legal requirements and technical guidelines for fiscalization compliance of PoS softwares in Italy.
SIGN IT in its lite version is based on the following Italian regulation:
- Legislative Decree no. 127/2015 for the "Telematic transmission of VAT operations and control of sales of goods carried out through automatic dispensers" for the technological tools that guarantee the inalterability and security of the data, mandatory since 2021 for all taxpayers issuing commercial documents.
SIGN IT in its full version is based on the following Italian regulation:
- Article 24 of the Legislative Decree published on January 8, 2024. The electronic storage of the total amount and telematic transmission of daily fees may be performed by means of software solutions that guarantee the security and inalterability of the data. These solutions must be able to enable the full integration and interaction with electronic payment processes, in order to simplify and reduce the administrative operations for taxpayers.
Our fiskaly API service offers a compliance-as-a-service solution implementation that records business transaction, technical events, and taxpayer interactions in an inalterable and cryptographically secure way.
The fiskaly SIGN IT service provides a 100% legally compliant implementation in order to transmit the information from each transaction to the Revenue Agency in real time.
To ensure a smooth implementation of our fiskaly API, we highly recommend that you first have a look at our integration guide where you will find an explanation of how to create your organizational structure and API keys, as well as a first overview of our fiskaly API endpoints.
The up-to-date information below is organized in a change log format which is available in the following subscribable feed formats as well: RSS, Atom, and JSON.
2025-07-31 Entities & Records
- enabled modification of entity coordinates in
PATCH /entitiesupdating functionality - enabled completion of records
INTENTIONwhen recordTRANSACTIONcompletes
2025-07-22 Entities
- enabled modification of entity name and type in
PATCH /entitiesupdating functionality
2025-07-15 Entities and Records
- improved
PATCH /entitiesupdating functionality error response of incorrect fiscalization credentials - improved internal validations of
POST /recordscreation functionality
2025-07-04 Systems and Records
- enabled modification of software in
PATCH /systemsupdating functionality - improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATION
2025-06-25 Entities and Records
- improved
PATCH /entitiesupdating functionality ofCOMMISSIONEDstate andOPERATIVEmode transitions - improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATION
2025-06-18 Individual Entity Support
- enabled
POST /entitiescreation functionality ofINDIVIDUALtype in production (LIVE) environment
2025-06-12 Entities and Records
- improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATIONrecords
2025-05-19 Entities and Records
- improved
PATCH /entitiesupdating functionality and error response handling of incorrect fiscalization credentials - improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATIONrecords
2025-05-05 OAS Documenation
- updated OAS documentation and endpoint description of all API resources
- improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATIONrecords
2025-04-09 Entities and Records
- enabled modification of address in
PATCH /entitiesupdating functionality - updated internal validations of
PATCH /entitiesupdating functionality - updated internal validations of
POST /recordscreation functionality
2025-03-24 Entities and Records
- updated internal validations of
POST /entitiescreation functionality - updated internal validations of
PATCH /entitiesupdating functionality - improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATIONrecords
2025-03-17 Idempotency and Subjects
- enabled
X-Idempotency-KeyUUIDv3 support - enabled
GET /subjectslisting functionality with pagination support - improved
GET /assetslisting functionality and pagination support - improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATIONrecords
2025-02-17 Records and Assets
- improved transmission of
TRANSACTION::RECEIPT,TRANSACTION::CORRECTION, andTRANSACTION::CANCELLATIONrecords - updated
POST /assetscreation functionality ofAsset::GROUPschema - enabled
GET /assetslisting functionality
2025-02-07 Records and Assets
- added
transmissionproperty in thePOST /recordsresponse schema to provide forCOMPLETEDreceipt transactions the request and response transmission information - added
GET /recordspagination-based listing functionality to support filtering viasystem_idquery parameter - added
POST /assetscreation functionality ofAsset::GROUPschema - improved stability of TEST record
TRANSACTION::RECEIPTcreations
2025-01-20 System and Record Listing
- enabled
GET /systemspagination-based listing functionality - enabled
GET /recordspagination-based listing functionality - improved transmission of SIGN IT lite commercial documents
2025-01-13 Record Validation
- enabled production live validations in test environment
- enabled
GET /entitiespagination-based listing functionality - enabled
PATCH /assetsname updating functionality - improved transmission of SIGN IT lite commercial documents
2024-12-13 Record Transmission
- improved transmission of SIGN IT lite commercial documents
- provided validation warnings in record logs of AdE web portal
- enabled production live service the following functionalities
POST /recordscreation functionality forTRANSACTION::CANCELLATIONOAS schemaPOST /recordscreation functionality forTRANSACTION::CORRECTIONOAS schema
2024-11-29 Production Live
- deployed the production live service which covers the same API endpoint functionality except the following API operation and OAS schema:
POST /entitiescreation functionality forINDIVIDUALOAS schemaPOST /recordscreation functionality forTRANSACTION::CANCELLATIONOAS schemaPOST /recordscreation functionality forTRANSACTION::CORRECTIONOAS schema- enabled retrieval of record data API request payloads for
POST /recordsrequest
2024-11-26 Correction and Journaling
- enabled
POST /recordscreation functionality forTRANSACTION::CORRECTIONOAS schema - enabled
POST /recordsinternal journaling behavior for all record creations per system - enabled
POST /recordslogs for providing record operation diagnostics
2024-11-08 Cancellation
- enabled
POST /recordscreation functionality forTRANSACTION::CANCELLATIONOAS schema - improved
POST /recordscreation functionality forTRANSACTION::RECEIPTtype
2024-10-31 Integration Ready
- enabled
POST /assetscreation functionality forUNITOAS schema - enabled
POST /subjectscreation functionality forAPI_KEYOAS schema - enabled
PATCH /entitiesupdating functionality forEntityresources - enabled
PATCH /systemsupdating functionality forSystemresources - improved
POST /recordscreation functionality forTRANSACTION::RECEIPTtype
2024-10-02 Idempotent Requests
- enabled
X-Idempotency-KeyAPI functionality for allPOSTandPATCHAPI operations exceptcreateToken - reponds with
422errorUnprocessableContentResponseschema for inconsistentX-Idempotency-KeyAPI operation calls - improved
POST /entitiescreation functionality forCOMPANYandLOCATIONtypes - improved
POST /systemscreation functionality forFISCAL_DEVICEtypes - improved
POST /recordscreation functionality forTRANSACTION::RECEIPTtypes
2024-09-20 Record Creation
- enabled
CreateRecordAPI operation functionality forINTENTION::TRANSACTIONschema - enabled
CreateRecordAPI operation functionality forTRANSACTION::RECEIPTschema - refined
EntityStateschema and introducedEntityModeschema - refined
SystemStateschema and introducedSystemModeschema - refined
RecordStateschema and introducedRecordModeschema - refined
SystemResponseto includemodefield - refined
EntityResponseto includemodefield - refined
RecordResponseto includemodefield
2024-09-13 System Creation
- enabled
CreateSystemAPI operation functionality forFISCAL_DEVICEschema - enabled
CreateEntityAPI operation functionality forINDIVIDUALschema - refined
CreateSubjectwith new HTTP-based headerX-Scope-Identifierto provide scope-based API operation - refined
EntityResponseto return for provided fiscalization the resolvedvat_numberinformation - refined
SystemResponseto return for dedicated journal and if available compliance cryptography information - renamed
AssetEntitytoAssetUnitand it's discriminator type value fromENTITYtoUNIT
2024-09-06 Documentation
- provided SIGN IT service documentation and Italian information
- improved
POST /entitiescreation functionality forCOMPANYandLOCATIONtypes - responds with
501error response for unavailable API operations
2024-08-28 Entity Creation
- enabled
CreateEntityAPI operation functionality forCOMPANYandLOCATIONschemas - reworked
CreateTokenAPI endpoint response schema to reflect asset and subject identifiers - added
405error responses to allPOSTandPATCHAPI endpoints - added
409error responses to allPATCHAPI endpoints
2024-08-20 Transactions
- added
recordfield to Transaction records to reference originalTransactionRecordresource forENRICHMENT,CORRECTION, andCANCELLATIONtransactions business activities - improved overall OpenAPI specification documentation
2024-08-12 Management
- provides refined of OpenAPI specification and adds Managment design
- provides
/tokensAPI endpoint forcreateTokenoperation and removes/authAPI endpoint forretrieveTokenoperation - provides
/subjectsAPI endpoints forcreateSubject,updateSubject,retrieveSubject, andlistSubjectsoperations - refines
/assetsAPI endpoints forcreateAsset,updateAsset,retrieveAsset, andlistAssetsoperations
2024-07-22 Initial Release
- provides draft of OpenAPI specification and adds Operation design
- provides
/entitiesAPI endpoints forcreateEntity,updateEntity,retrieveEntity, andlistEntitiesoperations - provides
/systemsAPI endpoints forcreateSystem,updateSystem,retrieveSystem, andlistSystemsoperations - provides
/recordsAPI endpoints forcreateRecord,updateRecord,retrieveRecord, andlistRecordsoperations
Our fiskaly API follows Calendar (Date-based) Versioning.
The version number has a pattern of YYYY-MM-DD whereas the YYYY stands for the year, MM stands for the month, and DD stands for the day.
The current version is: X-Api-Version: 2024-10-31.
Idempotency ensures that repeated identical requests produce the same result, even if they are retried due to network issues, timeouts, or other transient problems.
This idempotency behavior prevents duplicate resource creation or unintended side effects in APIs that accept POST (creation) or PATCH (alteration) requests.
The X-Idempotency-Key HTTP header in this API follows the principles of the Internet Engineering Task Force (IETF) idempotency specification and plays a vital role in implementing idempotent requests.
API clients use this header to uniquely identify requests, enabling the API to track and manage their outcomes across retries.
The value of the HTTP header is a Universally Unique Identifier (UUID) -- version 3 or version 4 -- key provided by the client for each idempotent request. This key ensures that retries of the same request are recognized by the server.
This key is required for all POST and PATCH requests.
This key is ignored for all other HTTP request methods like GET, PUT, DELETE etc. since these are inherently idempotent by HTTP standards.
Exception: The POST /tokens endpoint currently does not react on the provided X-Idempotency-Key HTTP header.
This exception will be resolved by upcoming improvements to the API.
The HTTP header format is defined as: X-Idempotency-Key: <key>.
The <key> value shall be a valid and randomized UUIDv4 string.
Furthermore, this key shall be unique for each logically distinct request.
The API service keeps track of the X-Idempotency-Key (key) and the associated request status, payload, and response (value) in a persistence cache.
By default the stored idempotency key-value pairs expire after 24 hours (1 day) after their creation timestamp.
If another request reaches the API service and there is already the same X-Idempotency-Key available, where the request method and payload are also equal to the cached value, the API service returns the cached response.
If the API service returns:
422 Unprocessable Entity: Verify that the request headers and payload match exactly between retries. Ensure the idempotency key is not reused for unrelated operations.409 Conflict: The request is already being processed. Wait before retrying and ensure there are no concurrent retries with the same idempotency key.
For a quick first demo, you may use Postman. We prepared a Postman collection that allows you to step through the most important functions of this API.
Download the Postman application.
Create an API Key and API Secret via the fiskaly dashboard.
Insert your API Key and API Secret to download your personalized fiskaly SIGN IT Postman environment JSON based configuration file:
Download the fiskaly SIGN IT Postman collection JSON based configuration file:
Start Postman and import the downloaded Postman environment and collection files.
Select the fiskaly SIGN IT Postman environment and run the collection.
The FAQs of SIGN IT are provided at the fiskaly support page
In order to access the fiskaly API, a valid JSON Web Token (JWT) is required.
The information carried inside the JWT is used for authentication and authorization of every request towards the fiskaly API.
API requests without a JWT present will fail with an unauthorized access HTTP error 401.xf
A Token resource can be created by using the key and secret credentials information of an already existing Subject::API_KEY.
The API key secret will be generated from the fiskaly API and provided only in the response of the POST /tokens request.
Each Token resource has its own unique id in form of a UUIDv4, the JWT bearer string, an issued_at timestamp, and an expires_at timestamp.
Additionally, the token resource provides the information to which Asset and which Subject the token belongs to.
The JWT bearer string must be sent with every following request in the HTTP Authorization header field using the Bearer authentication scheme.
The fiskaly API processes only https based requests.
Plain http based requests are redirected to https by the fiskaly service.
Create a token
This endpoint is used to create a Token resource.
Currently, the fiskaly API supports an Subject::API_KEY based Token creation which returns the JWT bearer HTTP authentication string that is valid until a given expires_at timestamp.
Recreations of the new Token resource is required only then if the received JWT bearer string has expired.
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
required | any (TokenCreateContent) Defines the structure required to create the token. |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "type": "API_KEY",
- "key": "string",
- "secret": "string"
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 409
- 429
- 500
{- "content": {
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "authentication": {
- "type": "JWT",
- "bearer": "string",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "issued_at": "2006-01-02T15:04:05+00:00"
}, - "organization": {
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063"
}, - "subject": {
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063"
}
}, - "metadata": {
- "my_property_1": "1234",
}
}A Subject represents an authenticated identity with defined access rights.
Currently, the fiskaly API supports Subject resources of type API_KEY (Subject::API_KEY).
The support for handling Subject resources of type USER (Subject::USER) is available soon.
The X-Scope-Identifier HTTP header establishes the link between the Subject and the corresponding Asset resource.
List subjects
This endpoint is used to list Subject resources.
Authorizations:
query Parameters
| limit | integer (PaginationLimit) [ 1 .. 100 ] Default: 10 Represents the pagination limit of the results set of a listing endpoint. |
| token | string (PaginationToken) <= 1024 characters ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-... Represents the pagination token, which is used as an index pointer to the next page relative to the current page in Base64 encoding. |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
| X-Scope-Identifier | string <uuid> (ScopeIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 The |
Responses
Response samples
- 200
- 400
- 401
- 429
- 500
{- "results": [
- {
- "content": {
- "type": "API_KEY",
- "name": "my-api-key-0",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "credentials": {
- "key": "text example...",
- "secret": "text example..."
}
}, - "metadata": {
- "my_property_1": "1234",
}
}
], - "pagination": {
- "next": "string",
- "token": "string",
- "limit": 10
}
}Create a subject
A Subject represents an authenticated identity with defined access rights.
Currently, the fiskaly API supports Subject resources of type API_KEY (Subject::API_KEY).
The support for handling Subject resources of type USER (Subject::USER) is available soon.
The X-Scope-Identifier HTTP header establishes the link between the Subject and the corresponding Asset resource.
Authorizations:
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
| X-Scope-Identifier | string <uuid> (ScopeIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 The |
Request Body schema: application/jsonrequired
required | any (SubjectCreateContent) Defines the structure required to create the token. |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "type": "API_KEY",
- "name": "my-api-key-0"
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 405
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "type": "API_KEY",
- "name": "my-api-key-0",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "credentials": {
- "key": "text example...",
- "secret": "text example..."
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Update a subject
This endpoint is used to update a Subject resource.
Authorizations:
path Parameters
| subject_id required | string <uuid> (SubjectIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 Subject identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
object (SubjectUpdateContent) Defines the structure required to update the token. | |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "name": "text example..."
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 404
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "type": "API_KEY",
- "name": "my-api-key-0",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "credentials": {
- "key": "text example...",
- "secret": "text example..."
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Retrieve a subject
This endpoint is used to retrieve a Subject resource.
Authorizations:
path Parameters
| subject_id required | string <uuid> (SubjectIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 Subject identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 404
- 429
- 500
- 501
{- "content": {
- "type": "API_KEY",
- "name": "my-api-key-0",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "credentials": {
- "key": "text example...",
- "secret": "text example..."
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Asset resources are used to represent the management structure (organizational hierarchy):
ACCOUNTrepresents the PoS provider or a retailer that operates its own PoS system. It is the top-level asset in the structure. This type represents the first created account via the fiskaly Dashboard and cannot be created via the API.GROUPan optional intermediate layer used to group multipleAssetresources of typeUNIT.UNITrepresents a merchant.
List assets
This endpoint is used to list Asset resources.
Authorizations:
query Parameters
| limit | integer (PaginationLimit) [ 1 .. 100 ] Default: 10 Represents the pagination limit of the results set of a listing endpoint. |
| token | string (PaginationToken) <= 1024 characters ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-... Represents the pagination token, which is used as an index pointer to the next page relative to the current page in Base64 encoding. |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
| X-Scope-Identifier | string <uuid> (ScopeIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 The |
Responses
Response samples
- 200
- 400
- 401
- 429
- 500
{- "results": [
- {
- "content": {
- "type": "UNIT",
- "name": "text example...",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "organization": {
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063"
}
}, - "metadata": {
- "my_property_1": "1234",
}
}
], - "pagination": {
- "next": "string",
- "token": "string",
- "limit": 10
}
}Create an asset
This endpoint is used to create Asset resources.
Authorizations:
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
| X-Scope-Identifier | string <uuid> (ScopeIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 The |
Request Body schema: application/jsonrequired
required | any (OrganizationCreateContent) Defines the structure required to create an Organization. |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "type": "UNIT",
- "name": "text example..."
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 405
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "type": "UNIT",
- "name": "text example...",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "organization": {
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063"
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Update an asset
This endpoint is used to update an Asset resource.
Authorizations:
path Parameters
| asset_id required | string <uuid> (OrganizationIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 Organization identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
object (OrganizationUpdateContent) Defines the structure required to update an Organization. | |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "name": "text example..."
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 404
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "type": "UNIT",
- "name": "text example...",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "organization": {
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063"
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Retrieve an asset
This endpoint is used to retrieve an Asset resource.
Authorizations:
path Parameters
| asset_id required | string <uuid> (OrganizationIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?4[0-9a-f]{3}-?[89a... Example: 1c81cb86-c2e8-4074-afc3-a0601b2bf063 Organization identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 404
- 429
- 500
- 501
{- "content": {
- "type": "UNIT",
- "name": "text example...",
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063",
- "state": "ENABLED",
- "organization": {
- "id": "1c81cb86-c2e8-4074-afc3-a0601b2bf063"
}
}, - "metadata": {
- "my_property_1": "1234",
}
}An Entity resource represents a particular Asset::UNIT with the relevant legal entity (taxpayer) data.
A legal entity consists of two main parts: taxpayer information and country-specific fiscalization details.
The lifecycle of an Entity resource is depicted in the following state and mode transitions:

List entities
This endpoint is used to list Entity resources.
Authorizations:
query Parameters
| limit | integer (PaginationLimit) [ 1 .. 100 ] Default: 10 Represents the pagination limit of the results set of a listing endpoint. |
| token | string (PaginationToken) <= 1024 characters ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-... Represents the pagination token, which is used as an index pointer to the next page relative to the current page in Base64 encoding. |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 429
- 500
{- "results": [
- {
- "content": {
- "type": "COMPANY",
- "name": {
- "legal": "text example...",
- "trade": "text example..."
}, - "address": {
- "line": {
- "type": "STREET_NUMBER",
- "prefix": "text example...",
- "street": "text example...",
- "infix": "text example...",
- "number": "text example...",
- "suffix": "text example..."
}, - "code": "text example...",
- "city": "text example...",
- "country": "AD"
}, - "fiscalization": {
- "type": "FR",
- "tax_id_number": "123456789",
- "fiscal_year_date": "07-14",
- "credentials": {
- "type": "LNE",
- "properties": {
- "FAC-DUP-RES": "1A2B3C",
- "my_tag_123": "20250811"
}
}
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "country": "text example...",
- "locations": [
- {
- "type": "HEAD_OFFICE",
- "description": "text example..."
}
], - "vat_number": "FR12345678901",
- "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}
], - "pagination": {
- "next": "string",
- "token": "string",
- "limit": 10
}
}Create an entity
This endpoint is used to create Entity resources. Currently the fiskaly API supports the following creation use cases:
- legal entities (taxpayer) as a
COMPANY(for business entities) or as anINDIVIDUAL(for self-employed) which require the details of the entity legal name, legal address, and fiscalization-related data such as the VAT number, tax identification number, and credentials for accessing the Revenue Agency portal. LOCATIONentities represent the physical address of the business premises or establishment of a given legal entity --COMPANYorINDIVIDUAL
When an Entity is created, its initial state is automatically set to ACQUIRED. In order to make it fully operational, the state must be updated to COMMISSIONED using the updateEntity endpoint.
Authorizations:
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
required | any (TaxpayerCreateContent) Defines the structure required to create a Taxpayer. |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "type": "COMPANY",
- "name": {
- "legal": "text example...",
- "trade": "text example..."
}, - "address": {
- "line": {
- "type": "STREET_NUMBER",
- "prefix": "text example...",
- "street": "text example...",
- "infix": "text example...",
- "number": "text example...",
- "suffix": "text example..."
}, - "code": "text example...",
- "city": "text example...",
- "country": "AD"
}, - "fiscalization": {
- "type": "FR",
- "tax_id_number": "123456789",
- "fiscal_year_date": "07-14",
- "credentials": {
- "type": "LNE",
- "properties": {
- "FAC-DUP-RES": "1A2B3C",
- "my_tag_123": "20250811"
}
}
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 405
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "type": "COMPANY",
- "name": {
- "legal": "text example...",
- "trade": "text example..."
}, - "address": {
- "line": {
- "type": "STREET_NUMBER",
- "prefix": "text example...",
- "street": "text example...",
- "infix": "text example...",
- "number": "text example...",
- "suffix": "text example..."
}, - "code": "text example...",
- "city": "text example...",
- "country": "AD"
}, - "fiscalization": {
- "type": "FR",
- "tax_id_number": "123456789",
- "fiscal_year_date": "07-14",
- "credentials": {
- "type": "LNE",
- "properties": {
- "FAC-DUP-RES": "1A2B3C",
- "my_tag_123": "20250811"
}
}
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "country": "text example...",
- "locations": [
- {
- "type": "HEAD_OFFICE",
- "description": "text example..."
}
], - "vat_number": "FR12345678901",
- "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}Update an entity
This endpoint is used to update an Entity resource.
Please note that, for certain use cases, particular state and mode transitions are required. Please refer to our Guide for examples.
Authorizations:
path Parameters
| entity_id required | string <uuid> (TaxpayerIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: 0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f Taxpayer identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
object (TaxpayerUpdateContent) Defines the structure required to update a Taxpayer. | |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "type": "COMPANY",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "fiscalization": {
- "type": "FR",
- "tax_id_number": "123456789",
- "fiscal_year_date": "07-14",
- "credentials": {
- "type": "LNE",
- "properties": {
- "FAC-DUP-RES": "1A2B3C",
- "my_tag_123": "20250811"
}
}
}, - "name": {
- "legal": "text example...",
- "trade": "text example..."
}, - "address": {
- "line": {
- "type": "STREET_NUMBER",
- "prefix": "text example...",
- "street": "text example...",
- "infix": "text example...",
- "number": "text example...",
- "suffix": "text example..."
}, - "code": "text example...",
- "city": "text example...",
- "country": "AD"
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 404
- 405
- 409
- 422
- 429
- 500
{- "content": {
- "type": "COMPANY",
- "name": {
- "legal": "text example...",
- "trade": "text example..."
}, - "address": {
- "line": {
- "type": "STREET_NUMBER",
- "prefix": "text example...",
- "street": "text example...",
- "infix": "text example...",
- "number": "text example...",
- "suffix": "text example..."
}, - "code": "text example...",
- "city": "text example...",
- "country": "AD"
}, - "fiscalization": {
- "type": "FR",
- "tax_id_number": "123456789",
- "fiscal_year_date": "07-14",
- "credentials": {
- "type": "LNE",
- "properties": {
- "FAC-DUP-RES": "1A2B3C",
- "my_tag_123": "20250811"
}
}
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "country": "text example...",
- "locations": [
- {
- "type": "HEAD_OFFICE",
- "description": "text example..."
}
], - "vat_number": "FR12345678901",
- "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}Retrieve an entity
This endpoint is used to retrieve an Entity resource.
Authorizations:
path Parameters
| entity_id required | string <uuid> (TaxpayerIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: 0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f Taxpayer identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 404
- 429
- 500
{- "content": {
- "type": "COMPANY",
- "name": {
- "legal": "text example...",
- "trade": "text example..."
}, - "address": {
- "line": {
- "type": "STREET_NUMBER",
- "prefix": "text example...",
- "street": "text example...",
- "infix": "text example...",
- "number": "text example...",
- "suffix": "text example..."
}, - "code": "text example...",
- "city": "text example...",
- "country": "AD"
}, - "fiscalization": {
- "type": "FR",
- "tax_id_number": "123456789",
- "fiscal_year_date": "07-14",
- "credentials": {
- "type": "LNE",
- "properties": {
- "FAC-DUP-RES": "1A2B3C",
- "my_tag_123": "20250811"
}
}
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "country": "text example...",
- "locations": [
- {
- "type": "HEAD_OFFICE",
- "description": "text example..."
}
], - "vat_number": "FR12345678901",
- "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}A System represents an Electronic Recording System (ERS), such as a Point of Sale (PoS) or any other system capable of performing business operations.
The lifecycle of a System resource is depicted in the following state and mode transitions:

List systems
This endpoint is used to list System resources.
Authorizations:
query Parameters
| limit | integer (PaginationLimit) [ 1 .. 100 ] Default: 10 Represents the pagination limit of the results set of a listing endpoint. |
| token | string (PaginationToken) <= 1024 characters ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-... Represents the pagination token, which is used as an index pointer to the next page relative to the current page in Base64 encoding. |
| entity_id | string <uuid> (TaxpayerIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: entity_id=0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f Taxpayer identifier |
| location_id | string <uuid> (LocationIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: location_id=0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f oas_components_parameters_location_identifier_query_description |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 429
- 500
{- "results": [
- {
- "content": {
- "type": "FISCAL_DEVICE",
- "kind": "INTERNAL",
- "location": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "producer": {
- "type": "MPN",
- "number": "PSP20U-99P98R",
- "details": {
- "name": "text example...",
- "brand": "text example...",
- "model": "text example...",
- "serial": "text example...",
- "label": "text example...",
- "batch": "AGT-M10000",
- "date_of_entry": "2006-01-02",
- "date_of_production": "2006-01-02"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "journal": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}
}, - "compliance": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}
}, - "records": [
- {
- "type": "INTENTION::TRANSACTION",
- "description": "text example..."
}
], - "vat_rates": [
- {
- "code": "REDUCED_1",
- "percentage": "123.45",
- "description": "text example...",
- "historic": true
}
], - "vat_exemptions": [
- {
- "code": "CAUSE_1",
- "description": "text example..."
}
], - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
], - "annotations": {
- "peppol_id": "1234:0123456789"
}, - "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}
], - "pagination": {
- "next": "string",
- "token": "string",
- "limit": 10
}
}Create a system
This endpoint is used to create System resources.
Authorizations:
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
required | any (SystemCreateContent) Defines the structure required to create a System. |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "type": "FISCAL_DEVICE",
- "kind": "INTERNAL",
- "location": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "producer": {
- "type": "MPN",
- "number": "PSP20U-99P98R",
- "details": {
- "name": "text example...",
- "brand": "text example...",
- "model": "text example...",
- "serial": "text example...",
- "label": "text example...",
- "batch": "AGT-M10000",
- "date_of_entry": "2006-01-02",
- "date_of_production": "2006-01-02"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 405
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "type": "FISCAL_DEVICE",
- "kind": "INTERNAL",
- "location": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "producer": {
- "type": "MPN",
- "number": "PSP20U-99P98R",
- "details": {
- "name": "text example...",
- "brand": "text example...",
- "model": "text example...",
- "serial": "text example...",
- "label": "text example...",
- "batch": "AGT-M10000",
- "date_of_entry": "2006-01-02",
- "date_of_production": "2006-01-02"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "journal": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}
}, - "compliance": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}
}, - "records": [
- {
- "type": "INTENTION::TRANSACTION",
- "description": "text example..."
}
], - "vat_rates": [
- {
- "code": "REDUCED_1",
- "percentage": "123.45",
- "description": "text example...",
- "historic": true
}
], - "vat_exemptions": [
- {
- "code": "CAUSE_1",
- "description": "text example..."
}
], - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
], - "annotations": {
- "peppol_id": "1234:0123456789"
}, - "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}Update a system
This endpoint is used to update System resources.
Please note that, for certain use cases, particular state and mode transitions are required. Please refer to our Guide for examples.
Authorizations:
path Parameters
| system_id required | string <uuid> (SystemIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: 0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f System identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
object (SystemUpdateContent) Defines the structure required to update a System. | |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "location": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}, - "producer": {
- "type": "MPN",
- "number": "PSP20U-99P98R",
- "details": {
- "name": "text example...",
- "brand": "text example...",
- "model": "text example...",
- "serial": "text example...",
- "label": "text example...",
- "batch": "AGT-M10000",
- "date_of_entry": "2006-01-02",
- "date_of_production": "2006-01-02"
}
}, - "acquirer": {
- "tax_id_number": "text example...",
- "legal_name": "text example..."
}, - "label": "text example...",
- "connected_to": [
- "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
]
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 404
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "type": "FISCAL_DEVICE",
- "kind": "INTERNAL",
- "location": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "producer": {
- "type": "MPN",
- "number": "PSP20U-99P98R",
- "details": {
- "name": "text example...",
- "brand": "text example...",
- "model": "text example...",
- "serial": "text example...",
- "label": "text example...",
- "batch": "AGT-M10000",
- "date_of_entry": "2006-01-02",
- "date_of_production": "2006-01-02"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "journal": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}
}, - "compliance": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}
}, - "records": [
- {
- "type": "INTENTION::TRANSACTION",
- "description": "text example..."
}
], - "vat_rates": [
- {
- "code": "REDUCED_1",
- "percentage": "123.45",
- "description": "text example...",
- "historic": true
}
], - "vat_exemptions": [
- {
- "code": "CAUSE_1",
- "description": "text example..."
}
], - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
], - "annotations": {
- "peppol_id": "1234:0123456789"
}, - "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}Retrieve a system
This endpoint is used to retrieve System resources.
Authorizations:
path Parameters
| system_id required | string <uuid> (SystemIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: 0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f System identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 404
- 429
- 500
- 501
{- "content": {
- "type": "FISCAL_DEVICE",
- "kind": "INTERNAL",
- "location": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "producer": {
- "type": "MPN",
- "number": "PSP20U-99P98R",
- "details": {
- "name": "text example...",
- "brand": "text example...",
- "model": "text example...",
- "serial": "text example...",
- "label": "text example...",
- "batch": "AGT-M10000",
- "date_of_entry": "2006-01-02",
- "date_of_production": "2006-01-02"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}, - "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "state": "ACQUIRED",
- "mode": "INACTIVE",
- "journal": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}
}, - "compliance": {
- "cryptography": {
- "certificate": {
- "serial_number": "0a1B2cD ...",
- "expires_at": "2006-01-02T15:04:05+00:00",
- "x509_pem": "string"
}, - "signature": {
- "type": "ECDSA",
- "hash": "SHA-256"
}
}, - "software": {
- "name": "text example...",
- "version": "text example..."
}
}, - "records": [
- {
- "type": "INTENTION::TRANSACTION",
- "description": "text example..."
}
], - "vat_rates": [
- {
- "code": "REDUCED_1",
- "percentage": "123.45",
- "description": "text example...",
- "historic": true
}
], - "vat_exemptions": [
- {
- "code": "CAUSE_1",
- "description": "text example..."
}
], - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
], - "annotations": {
- "peppol_id": "1234:0123456789"
}, - "created_at": "2006-01-02T15:04:05+00:00",
- "updated_at": "2006-01-02T15:04:05+00:00"
}, - "metadata": {
- "my_property_1": "1234",
}
}A Record represents a persisted and signed artifact of any kind interaction with a given System resource that is carried out through the fiskaly API.

List records
This endpoint is used to list Record resources.
Authorizations:
query Parameters
| limit | integer (PaginationLimit) [ 1 .. 100 ] Default: 10 Represents the pagination limit of the results set of a listing endpoint. |
| token | string (PaginationToken) <= 1024 characters ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-... Represents the pagination token, which is used as an index pointer to the next page relative to the current page in Base64 encoding. |
| entity_id | string <uuid> (TaxpayerIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: entity_id=0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f Taxpayer identifier |
| location_id | string <uuid> (LocationIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: location_id=0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f oas_components_parameters_location_identifier_query_description |
| system_id | string <uuid> (SystemIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: system_id=0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f System identifier |
| type | Array of strings (SystemRecordType) [ 1 .. 10 ] items unique Items Enum: "INTENTION::TRANSACTION" "INTENTION::EVENT" "INTENTION::EXPORT" "INTENTION::DUPLICATE" "INTENTION::CLOSING" "TRANSACTION::ABORT" "INTENTION::UPLOAD" "TRANSACTION::RECEIPT" "TRANSACTION::ABORT" "TRANSACTION::CANCELLATION" "TRANSACTION::CORRECTION" "TRANSACTION::DRAFT_RECEIPT" "TRANSACTION::ENRICHMENT" "TRANSACTION::INVOICE" "TRANSACTION::PROOF_OF_PAYMENT" "TRANSACTION::PRO_FORMA_INVOICE" "CLOSING::DAILY" "CLOSING::MONTHLY" "CLOSING::YEARLY" "EXPORT::RECORDS" "E_INVOICE::TRANSMISSION" "E_INVOICE::RECEPTION" "UPLOAD::PEPPOL_PROOF_OF_OWNERSHIP" oas_components_parameters_record_type_query_description |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 429
- 500
{- "results": [
- {
- "content": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "type": "INTENTION::TRANSACTION",
- "state": "ACCEPTED",
- "mode": "PROCESSING",
- "system": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "used_in": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "replayed_by": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "journal": {
- "signature": "text example...",
- "signed_at": "2006-01-02T15:04:05+00:00",
- "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}
}, - "file": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/json",
- "data": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "operation": "string",
- "compliance": {
- "data": "text example...",
- "url": "string",
- "artifact": {
- "type": "application/json",
- "data": "string"
}
}, - "transmission": {
- "request": {
- "type": "application/json",
- "data": "string"
}, - "response": {
- "type": "application/json",
- "data": "string"
}
}, - "data": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/zip",
- "path": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
]
}, - "metadata": {
- "my_property_1": "1234",
}
}
], - "pagination": {
- "next": "string",
- "token": "string",
- "limit": 10
}
}Create a record
This endpoint is used to create Record resources.
Every interaction with a System resource requires an initial Record creation of type INTENTION (Record::INTENTION).
Currently the fiskaly API supports only an INTENTION of a TRANSACTION which reflects the interaction with a System resource right at the beginning of a purchase process.
Directly after the payment process, the transaction can be concluded with a subsequent Record creation call providing the TRANSACTION information, containing details of a given business activity which links to the previous Record::INTENTION::TRANSACTION.
Authorizations:
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
| X-Replay-Remaining | string (ReplayRemaining) ^(\d{1,4})$ Example: 1234 Not supported in 🇮🇹 Italy - Current number of records left (only relevant for offline scenario) |
| X-Replay-Hash | string (ReplayHash) [ 1 .. 64 ] characters Example: text example... Not supported in 🇮🇹 Italy - The hash stored during offline phase in base64 format (only relevant for offline scenario) |
Request Body schema: application/jsonrequired
required | any (RecordCreateContent) Defines the structure required to create a Record. |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": {
- "type": "INTENTION",
- "system": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "operation": {
- "type": "TRANSACTION",
- "details": {
- "creators": [
- {
- "type": "PERSON",
- "label": "text example...",
- "name": {
- "gender": "DIVERSE",
- "prefix": "text example...",
- "forename": "text example...",
- "infix": "text example...",
- "surname": "text example...",
- "suffix": "text example..."
}
}
], - "training": true,
- "properties": {
- "FAC-DUP-RES": "1A2B3C",
- "my_tag_123": "20250811"
}
}
}
}, - "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 405
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "type": "INTENTION::TRANSACTION",
- "state": "ACCEPTED",
- "mode": "PROCESSING",
- "system": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "used_in": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "replayed_by": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "journal": {
- "signature": "text example...",
- "signed_at": "2006-01-02T15:04:05+00:00",
- "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}
}, - "file": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/json",
- "data": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "operation": "string",
- "compliance": {
- "data": "text example...",
- "url": "string",
- "artifact": {
- "type": "application/json",
- "data": "string"
}
}, - "transmission": {
- "request": {
- "type": "application/json",
- "data": "string"
}, - "response": {
- "type": "application/json",
- "data": "string"
}
}, - "data": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/zip",
- "path": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
]
}, - "metadata": {
- "my_property_1": "1234",
}
}Update a record
This endpoint is used to update Record resources.
Please note that currently all state and mode transitions are carried out by the fiskaly API service itself internally for Record resources.
Please refer to our Guide.
Authorizations:
path Parameters
| record_id required | string <uuid> (RecordIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: 0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f Record identifier |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
required | UniversallyUniqueIdentifierV4 (string) or UniversallyUniqueIdentifierV3 (string) (IdempotencyKey) The idempotency key, see idempotency. |
Request Body schema: application/jsonrequired
object (RecordUpdateContent) Defines the structure required to update a Record. | |
object (Metadata) <= 20 properties Attach custom key value data to a resource. Useful for storing additional, structured information.
If Note: Up to 20 keys. Key names up to 40 characters. Values up to 500 characters. |
Responses
Request samples
- Payload
{- "content": { },
- "metadata": {
- "my_property_1": "1234",
}
}Response samples
- 200
- 400
- 401
- 404
- 409
- 422
- 429
- 500
- 501
{- "content": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "type": "INTENTION::TRANSACTION",
- "state": "ACCEPTED",
- "mode": "PROCESSING",
- "system": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "used_in": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "replayed_by": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "journal": {
- "signature": "text example...",
- "signed_at": "2006-01-02T15:04:05+00:00",
- "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}
}, - "file": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/json",
- "data": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "operation": "string",
- "compliance": {
- "data": "text example...",
- "url": "string",
- "artifact": {
- "type": "application/json",
- "data": "string"
}
}, - "transmission": {
- "request": {
- "type": "application/json",
- "data": "string"
}, - "response": {
- "type": "application/json",
- "data": "string"
}
}, - "data": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/zip",
- "path": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
]
}, - "metadata": {
- "my_property_1": "1234",
}
}Retrieve a record
This endpoint is used to retrieve Record resources.
Authorizations:
path Parameters
| record_id required | string <uuid> (RecordIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: 0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f Record identifier |
query Parameters
| operation | string Value: "" Defines the operation. |
| file-artifact | string Value: "" oas_components_parameters_record_file_artifact_query_description |
| file-integrity | string Value: "" oas_components_parameters_record_file_integrity_query_description |
| compliance-artifact | string Value: "" oas_components_parameters_record_compliance_artifact_query_description |
| data-artifact | string Value: "" oas_components_parameters_record_data_artifact_query_description |
| data-integrity | string Value: "" oas_components_parameters_record_data_integrity_query_description |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 404
- 429
- 500
{- "content": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "type": "INTENTION::TRANSACTION",
- "state": "ACCEPTED",
- "mode": "PROCESSING",
- "system": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "used_in": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "replayed_by": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "journal": {
- "signature": "text example...",
- "signed_at": "2006-01-02T15:04:05+00:00",
- "record": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}
}, - "file": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/json",
- "data": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "operation": "string",
- "compliance": {
- "data": "text example...",
- "url": "string",
- "artifact": {
- "type": "application/json",
- "data": "string"
}
}, - "transmission": {
- "request": {
- "type": "application/json",
- "data": "string"
}, - "response": {
- "type": "application/json",
- "data": "string"
}
}, - "data": {
- "location": "SERVICE",
- "artifact": {
- "type": "application/zip",
- "path": "string"
}, - "integrity": {
- "type": "application/jose",
- "data": "string"
}
}, - "logs": [
- {
- "severity": "ERROR",
- "message": "text example..."
}
]
}, - "metadata": {
- "my_property_1": "1234",
}
}List files
This endpoint is used to list File resources.
Authorizations:
query Parameters
| limit | integer (PaginationLimit) [ 1 .. 100 ] Default: 10 Represents the pagination limit of the results set of a listing endpoint. |
| token | string (PaginationToken) <= 1024 characters ^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{4}|[A-... Represents the pagination token, which is used as an index pointer to the next page relative to the current page in Base64 encoding. |
| system_id | string <uuid> (SystemIdentifier) ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: system_id=0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f System identifier |
| start | string <date-time> (FileCreationTimestamp) = 25 characters Example: start=2006-01-02T15:04:05+00:00 Defines the start date and time |
| end | string <date-time> (FileCreationTimestamp) = 25 characters Example: end=2006-01-02T15:04:05+00:00 Defines the end date and time |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 200
- 400
- 401
- 404
- 429
- 500
{- "results": [
- {
- "content": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f",
- "created_at": "2006-01-02T15:04:05+00:00",
- "system": {
- "id": "0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f"
}, - "location": "SERVICE",
- "artifact": {
- "type": "application/zip",
- "path": "string"
}, - "integrity": {
- "type": "application/jose",
- "path": "string"
}
}, - "metadata": {
- "my_property_1": "1234",
}
}
], - "pagination": {
- "next": "string",
- "token": "string",
- "limit": 10
}
}Stream a file
This endpoint is used to stream a File content.
Authorizations:
path Parameters
| path required | string (Path) [ 1 .. 44 ] characters ^[0-9a-f]{8}-?[0-9a-f]{4}-?7[0-9a-f]{3}-?[0-9... Example: 0189f7ea-ae2c-7809-8aeb-b819cf5e9e7f.zip oas_components_parameters_file_path_description |
header Parameters
| X-Api-Version required | string (ApiVersion) = 10 characters ^[0-9]{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3... Example: 2006-01-02 The API version, see versioning. |
Responses
Response samples
- 400
- 401
- 404
- 429
- 500
{- "content": {
- "status": 401,
- "code": "E_UNAUTHORIZED_ACCESS",
- "error": "Unauthorized Access",
- "message": "Not authorized to perform this operation."
}
}Was this page helpful?