Croatia's Fiscalisation 2.0 mandate requires all VAT-registered businesses to exchange structured e-invoices via the Peppol network. For most businesses, this means connecting their existing ERP system to a Peppol Access Point — but the how depends on your ERP, your volume, and your technical resources.
This guide walks through the integration architecture, ERP-specific considerations for the most popular systems in Croatia, the API approach for custom integrations, UBL 2.1 field mapping with Croatian-specific requirements, and a comprehensive testing-to-go-live checklist.
4 ERPs
Covered in this guide
REST API
Primary integration method
UBL 2.1
Required format standard
< 1 Week
Typical integration time
Integration Landscape
The Croatian business landscape uses a diverse set of ERP systems. While multinational companies typically run SAP or Microsoft Dynamics 365, Croatian SMEs often use Pantheon (by DATALAB, widely used in Slovenia and Croatia) or Odoo. Each has different integration paths to the Peppol network.
Regardless of your ERP, the integration architecture follows the same pattern: your ERP generates invoice data → an API or connector maps it to UBL 2.1 → a Peppol Access Point validates and routes the structured invoice → the invoice reaches both your trading partner and the Porezna Uprava (Croatian tax authority) for CTC reporting.
Three Integration Approaches
Your ERP vendor provides a built-in Peppol module. Fastest to deploy but limited to the vendor's implementation.
Best for: SAP (SAP Document Compliance), Pantheon (DATALAB module)
Your ERP connects to an Access Point's REST API. Most flexible — works with any ERP that can make HTTP calls.
Best for: Any ERP, custom systems, multi-ERP environments
A middleware platform (like BizTalk, MuleSoft, or a dedicated connector) sits between your ERP and the Access Point.
Best for: Complex ERP landscapes, legacy systems, high-volume environments
ERP-Specific Guides
Each ERP has its own integration path. Here's what you need to know for the four most popular systems in Croatia.
Pantheon (DATALAB)
Most popular for Croatian SMEsNote: Pantheon's module handles Croatian HUB-3 barcode data and OIB mapping automatically. If you're on Pantheon 9.x, update to 9.4+ for full Fiscalisation 2.0 support.
SAP (S/4HANA & ECC)
Large enterprises & multinationalsNote: SAP S/4HANA users can leverage the standard e-invoicing framework (EDOCUMENT). ECC users typically need CPI middleware or a direct API integration from custom ABAP.
Microsoft Dynamics 365
Mid-market companiesNote: InvoStaq's D365 plugin handles Croatian compliance out of the box — no custom development needed. Installation takes approximately 30 minutes.
Odoo
Growing SME segmentNote: Odoo Community edition users can integrate via the REST API directly. Enterprise users benefit from the native module's tighter integration with Odoo's invoicing workflow.
API Integration Approach
For ERPs without a native Peppol module, or for custom business applications, the REST API approach provides the most flexibility. Here's the typical integration flow.
POST /invoices — Submit an Invoice
Send your invoice data as JSON to the API endpoint. InvoStaq's API accepts a simplified JSON payload (you don't need to construct UBL XML yourself) and handles the mapping to BIS 3.0 format. Include sender/receiver OIB, line items, VAT breakdown, and payment reference.
Automatic Validation
The API runs 200+ validation rules against your invoice data before converting to UBL. Croatian-specific validations include OIB checksum verification, VAT rate validation (25%/13%/5%/0%), required fields for CTC reporting, and business rule checks for credit note references.
Peppol Routing & Delivery
Once validated, InvoStaq routes your invoice through the Peppol network to the recipient's Access Point, identified by their Peppol Participant ID (typically their OIB). You receive a delivery receipt webhook confirming successful transmission.
CTC Reporting to Porezna Uprava
Simultaneously, the API reports the invoice to Croatia's tax authority endpoint for CTC processing. You don't need to implement a separate connection to the tax authority — the API handles this automatically.
Archiving & Retrieval
All invoices are automatically archived in UBL format for 11 years. The GET /invoices/{id} endpoint lets you retrieve any historical invoice, including its original XML, delivery receipts, and tax authority acknowledgment.
UBL 2.1 Mapping
If you're building the UBL 2.1 XML yourself (or need to understand what's happening under the hood), here are the Croatian-specific mapping requirements.
Required Croatian Fields in UBL 2.1
cac:AccountingSupplierParty/cbc:CompanyIDSeller's OIB (11-digit Croatian identification number)
cac:AccountingCustomerParty/cbc:CompanyIDBuyer's OIB
cbc:TaxCurrencyCodeEUR (since Croatia adopted Euro on Jan 1, 2023)
cac:TaxCategory/cbc:PercentStandard 25%, Reduced 13% or 5%, Zero 0%
cac:PaymentMeans/cbc:PaymentIDCroatian payment reference (HUB-3 format: HR00 + model + reference number)
cbc:ProfileIDurn:fdc:peppol.eu:2017:poacc:billing:01:1.0
cbc:CustomizationIDurn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0
The most common mapping errors for Croatian invoices are incorrect OIB format (must be exactly 11 digits with valid checksum), missing payment reference in HUB-3 format, and using the old HRK currency code instead of EUR. InvoStaq's validation catches all of these before the invoice reaches the Peppol network.
Testing & Go-Live
A structured testing approach prevents surprises in production. Here's the recommended go-live checklist for Croatian Peppol integration.
Use InvoStaq's test sandbox to submit invoices without reaching the live Peppol network or tax authority. Validate your JSON payloads, check UBL output, and verify all Croatian fields are correctly mapped.
Send test invoices through the Peppol test network to verify end-to-end delivery. Confirm that your trading partners' test environments receive the invoices correctly and that the response (MDN) comes back.
Verify that the CTC report to the Porezna Uprava test endpoint is generated correctly. Check that the tax authority acknowledgment is received and logged.
Deliberately send invoices with common errors (wrong OIB, missing VAT code, invalid payment reference) to verify your error handling. Ensure your ERP receives clear error messages and can display them to users.
If you process more than 100 invoices per day, run a volume test at 2x your expected peak. Check for rate limiting, timeout handling, and that your ERP's batch processing correctly handles Peppol responses.
Switch from test to production API credentials. Send your first live invoice and verify delivery. Monitor the first 24 hours closely, checking delivery receipts, CTC confirmations, and any validation warnings.
Set up dashboards to track delivery success rate, average processing time, rejection reasons, and CTC submission status. InvoStaq's dashboard provides this out of the box for Croatian compliance.
Common Go-Live Issues in Croatia
Based on our experience with Croatian businesses going live in Q1 2026, the three most common production issues are: (1) trading partners not yet registered in the Peppol SMP — resolve by checking participant lookup before sending; (2) OIB mismatch between your records and your partner's registered ID — align with your partner's finance team; (3) credit notes missing the mandatory reference to the original invoice — ensure your ERP populates the BillingReference field.
Connecting your Croatian ERP to Peppol doesn't have to be complex. Whether you use Pantheon's native module, InvoStaq's D365 or Odoo plugins, or the REST API for custom integration — the path to Fiscalisation 2.0 compliance is well-defined and achievable in days, not months. Start with the sandbox, validate your mappings, and go live with confidence.
Connect Your ERP to Peppol Today
InvoStaq's API and native ERP plugins get your Croatian business Peppol-connected in days. Full Fiscalisation 2.0 compliance, CTC reporting, and 11-year archiving included.