Step-by-Step Integration Process
Esta página aún no está disponible en tu idioma.
B2B E-Invoicing
Issue legally compliant electronic invoices via the PEPPOL network for B2B transactions.
Multi-Country Support
Belgium, Germany, Italy, France, and Poland with country-specific compliance built in.
Unified API
Single integration for e-invoicing across all supported countries with consistent endpoints.
Prerequisites
Section titled “Prerequisites”Before starting, ensure you have:
- Access to fiskaly HUB (TEST environment)
- Basic understanding of REST APIs and authentication flows
- Your business registration details for taxpayer setup
Integration Workflow
Section titled “Integration Workflow”Steps marked in yellow must be completed directly on HUB, while the remaining steps must be handled via the API. Performing each action in the right context is an important step toward a successful integration.
Step-by-Step Setup
Section titled “Step-by-Step Setup”Step 1: Register on HUB
Begin by registering on fiskaly HUB.

Step 2: Create Account & Organization GROUP
Creating a fiskaly Account is the first step, after which you can proceed with setting up the first organizational structure for your business and generating your API Key.
The Account represents the PoS provider or a retailer that operates its own PoS system. It is the top-level organization in the structure.
After creating your fiskaly Account, you will be taken to the Organization Selector where you can create your Group. A Group is an intermediate level within an Account that helps you organize multiple Units into logical clusters.
Step 3: Create API Key
The next step is to generate an API Key for your Organization via HUB within your Group. This API Key and Secret pair is required to create your first Organization of type
UNIT(Step 5).💡TEST vs. LIVE environmentsAPI Keys generated in the TEST environment (
https://test.api.fiskaly.com) will create TEST resources, while those from the LIVE environment (https://live.api.fiskaly.com) will create LIVE resources.
Step 4: MANAGEMENT - Create Token
Begin using the E-INVOICE API through the createToken endpoint. You will need to create a token to authenticate for the next steps.
Step 5: MANAGEMENT - Create an Organization UNIT
Continue by creating an Organization of type
UNITthrough the createOrganization endpoint. AUNITrepresents a single legal entity (merchant). You will need to create oneUNITfor each taxpayer representation you manage.When creating your first Organization of type
UNIT, ensure it is associated with your Group created via HUB. To do this, use the token generated from the API keys created for your Group. This reflects the hierarchical structure where theUNITis nested under yourGROUP, which in turn sits within yourACCOUNT.Step 6: MANAGEMENT - Create Subject (API Key)
Create a Subject of type
API_KEYthrough the createSubject endpoint. The connection between the OrganizationUNITand the API Key is established via theX-Scope-Identifier(using theidof the newly created Organization).Step 7: MANAGEMENT - Create new Token
Next, create a token that will be used to create resources within the corresponding Organization
UNIT.Step 8: OPERATION - Create Taxpayer
You are now ready to create the Taxpayers required for e-invoicing. To do so, use the createTaxpayer endpoint. You will need to set the Taxpayer of type
COMPANY.Depending on the country, the required fiscalization setup and required taxpayer data may differ, so please refer to the dedicated country guides:
Once you create a
Taxpayerof typeCOMPANY, itsstatewill be set toACQUIRED. In order to be fully functional, the state has to be updated toCOMMISSIONEDusing the updateTaxpayer endpoint.When calling the createTaxpayer endpoint a Location of type
HEAD_OFFICEis automatically created. You can confirm this via the listLocations endpoint.Step 9: OPERATION - Create Location
New customers integrating e-invoicing only may skip this step.
For receipt fiscalization, you need to create a
Locationof typeBRANCHvia the createLocation endpoint for each business location.When you create a
Locationof typeBRANCH, itsstateis initially set toACQUIRED. In order to proceed, you need to change the state toCOMMISSIONEDusing the updateLocation endpoint.Step 10: OPERATION - Create System
The createSystem endpoint is used to create an abstraction of a system used for fiscal operations.
Depending on your setup, the following applies:
-
New customers using only e-invoicing: create a single
E_INVOICE_SERVICESystem (only one per Taxpayer) and link it to theHEAD_OFFICELocation that was automatically created for you in step 8. -
New customers using receipt fiscalization and e-invoicing: create
FISCAL_DEVICESystems for receipts and one additionalE_INVOICE_SERVICESystem (one per Taxpayer). Link theE_INVOICE_SERVICESystem to the Location of typeHEAD_OFFICE, and link theFISCAL_DEVICESystem(s) to a Location typeBRANCH. -
Existing customers with commissioned fiscal devices adding e-invoicing: create one additional
E_INVOICE_SERVICESystem and link it to the Location of typeHEAD_OFFICE. When a Taxpayer is created, a Location of typeHEAD_OFFICEis automatically generated with the same ID. This can be verified by listing your Locations.
When creating a System, its initial state is set to
ACQUIRED. To proceed with the e-invoicing integration process, request commissioning of theE_INVOICE_SERVICESystem using updateSystem.⚠️ImportantAfter a successful commissioning request, the System is in state
COMMISSIONEDand initially in modeDEGRADEDuntil Step 11 is fully completed.-
Step 11: OPERATION - Upload Proof of Ownership
Upload the Proof of Ownership PDF via the createRecord endpoint, using a Record of type
INTENTIONand operation of typeUPLOAD. The submitted document is reviewed and verified, which can take up to 72 hours. Once verification is complete, the System automatically transitions from modeDEGRADEDto modeOPERATIVE.More details on the required document content are provided in the Proof of Ownership section.
Step 12: OPERATION - Create Record
PART A) Intention💡NoteCreating a Record in the E-INVOICE API will always require two subsequent calls: - Part A)
INTENTION- at the start of the e-invoicing process - Part B)TRANSACTION- once the e-invoice data is completeFor each e-invoicing operation, first call the createRecord endpoint to register the intention to issue an electronic invoice.
A Record of type
INTENTIONwill contain the following information:- Association with the
E_INVOICE_SERVICESystem that will be used to issue the e-invoice - Operation of type
TRANSACTION, indicating that the System intends to perform an e-invoicing operation.
Next, call the createRecord endpoint again to create a Record of type
TRANSACTIONand operation typeINVOICE. This transaction is associated with the internal identifier of an already created Record of typeINTENTIONand it contains the electronic invoice data.📘ImportantFor E-INVOICE, the recipient is required to be a
BUSINESStype and theinvoicingblock is required to be populated, otherwise the e-invoice cannot be transmitted. The delivery method and required fields within theinvoicingblock vary by country — please refer to the dedicated country guides below.Once the Transaction is successfully processed, the electronic invoice is created and handled according to the applicable e-invoicing requirements. Country-specific behavior and any additional data requirements are described in the dedicated guides.
⚠️ImportantAll Records created in the LIVE environment are legally valid, therefore, they must always represent real and valid business transactions.
- Association with the
Next Steps
Section titled “Next Steps”Was this page helpful?