Slovenia — FURS Sandbox Onboarding
Operational guide for getting test credentials at the FURS davčne blagajne sandbox.
| Property | Value |
|---|---|
| Authority | FURS (Finančna uprava Republike Slovenije) |
| Sandbox base URL | https://blagajne-test.fu.gov.si:9002 |
| Cost | Free |
| Time to provision | 1-2 weeks (cert delivery is the bottleneck) |
| Identity required | Slovenian taxpayer registration |
Steps
- On the FURS portal at
edavki.durs.sioreDavki, register a business premise (davčna blagajna). Note the assignedbusiness_premise_id. - Register an electronic device for that premise. Note the
electronic_device_id. - Request a test PFX certificate from FURS via the portal. Cert is delivered along with a password.
- Save the PFX file and password securely.
- Validate with a small
InvoiceRequestJWS-signed POST to the sandbox.
GitHub secrets to set
SI_FURS_TAX_NUMBER
SI_FURS_BUSINESS_PREMISE_ID
SI_FURS_ELECTRONIC_DEVICE_ID
SI_FURS_PFX_BASE64 # PFX content, base64-encoded
SI_FURS_PFX_PASSWORD
Gotchas
- mTLS is required — must present the cert in the TLS handshake AND sign the JWS payload with the same key. Both layers.
- ZOI is computed locally with RSA-SHA256 + MD5. Cache the loaded RSA key after first PFX load — don't reload per request, that's a latency hit.
- EOR is returned synchronously by FURS within ~1s typical. Adapter uses sync-with-fallback (per fi-rah) so consumer receipts get EOR before customer leaves; on FURS outage falls back to 48h offline grace.
- Test cert can be re-issued if compromised; production cert is per-taxpayer with longer renewal cycles.
- The portal walks you through pre-registration of business premise and device — these are required BEFORE submission tests work. Don't skip this step.
Non-resident path
Slovenian taxpayer registration is required for the production flow. There is no foreign-software-vendor track at FURS.
- For sandbox, foreign software vendors typically use a
davčni zastopnik(fiscal representative). Slovenian accounting firms specialise in this and arrange a test taxpayer plus a test PFX cert on the platform's behalf. - Cheapest dev path: Slovenian fiscal representative — budget ~€100-400/month plus one-off setup. 2-4 weeks to first credentials.
- Production. Two routes: (1) Slovenian VAT registration or branch for serving local merchants directly; or (2) the platform-as-intermediary model where each merchant registers themselves and we just integrate against their FURS profile. The intermediary model is the cheaper default and matches the platform pattern used elsewhere in the cluster.
Related
- Research doc: slovenia.md
- Adapter crate:
rust/adapters/slovenia/ - Sandbox tests:
rust/adapters/slovenia/tests/sandbox.rs