ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

AJPES — national corporate registry and matična številka

AJPES (Agencija Republike Slovenije za javnopravne evidence in storitve — Agency for Public Legal Records and Services) is the single national business registry of Slovenia. Every company under Slovenian law is registered there and receives a matična številka (7-digit legal identifier) used as PEPPOL ICD 0177 for e-invoicing. AJPES publishes annual accounts, operates the EU BRIS interconnection, and exposes open APIs for KYC compliance, anti-fraud, and e-business.

History — from the Yugoslav SDK to AJPES 2002

AJPES's history dates back to SDK (Služba družbenega knjigovodstva, Social Bookkeeping Service), a Yugoslav agency founded in 1959 that centralised across all of Yugoslavia the company registry, B2B payments and public accounting. This deeply centralised administrative model survived intact through the 1991 Slovenian independence, simply renamed APP. Its strength lies in one fact: since 1959, every Slovenian company has been identified by a unique and immutable 7-digit matična številka, and every administrative flow (tax, payment, registry, statistics) revolves around that identifier.

The 2002 reform split functions to align with EU standards: the payment agency (becoming UJP, under the Ministry of Finance) on one side, the registry and publication agency (AJPES, under the Ministry of Justice) on the other. But matična številka remained the pivot — that's why eRačun routing is so fluid today: the single identifier serves the AJPES registry, FURS VAT, UJP payment, PEPPOL ICD 0177, and the commercial registry alike.

text ajpes-timeline.txt
1959-1991  | SDK (Služba družbenega knjigovodstva) — Yugoslav social
           | bookkeeping service that maintained the Slovenian
           | corporate registry and centralised payments + public
           | accounting for the Socialist Republic.
           |
1991-2002  | After independence, SDK becomes APP (Agencija za
           | plačilni promet — Payment Traffic Agency), keeping
           | the PRS registry and accounting function.
           |
2002       | Structural reform: APP is split into two autonomous
           | services. The payment function moves to UJP (Uprava za
           | javna plačila — Ministry of Finance). The registry +
           | statistics + publication function moves to AJPES
           | (Agencija RS za javnopravne evidence in storitve),
           | service of the Ministry of Justice.
           |
2004       | EU accession — AJPES aligns with European norms for
           | publication of annual accounts (later Directive
           | 2013/34/EU). PRS becomes interconnected with the EU
           | Business Registers Interconnection System (BRIS).
           |
2014       | AJPES launches its public APIs on ajpes.si — open PRS
           | data, annual accounts, complementary registries
           | (associations, foundations, unions).
           |
2018       | AJPES becomes ICD 0177 relay point for PEPPOL — the
           | 7-digit matična številka is officially recognised as
           | the Slovenian PEPPOL identifier.
           |
2022-2024  | eRegistri modernisation — public portal overhaul,
           | REST API OAuth2, full EU BRIS integration, XBRL open
           | financial data publication.

Governance — Ministry of Justice

AJPES reports to the Ministrstvo za pravosodje RS (Ministry of Justice), which sets it apart from UJP (Ministry of Finance). Technical governance involves the Ministry of Justice (oversight), the Ministry of Digital Transformation (e-gov), FURS (VAT), UJP (payment + PEPPOL Authority), Banka Slovenije (payment system), GZS (chamber of commerce) and SURS (statistics).

AJPES has a public budget but self-funds some activities through paid services (certified commercial extracts, premium API queries, trademark hosting). PRS data is free for public consultation since 2014 (open-data move launched by the Bratušek government).

Technical schema — matična številka, PRS, ICD 0177

The registry rests on three articulated identifiers and a categorisation scheme inherited from SDK:

  • Matična številka — 7 digits, unique, immutable. Assigned at incorporation (notary or e-VEM business portal) and persists across changes of purpose, name, head office.
  • Davčna številka — 8 digits, issued by FURS. SI-prefixed for EU VAT use (SI + davčna).
  • GS1 GLN — 13 digits prefixed 5959 (companies) or 5854 (public entities) for EDIFACT and e-SLOG use.
  • PEPPOL ICD 0177 — official prefix used in PEPPOL iso6523-actorid-upis::0177:NNNNNNN.
  • EU BRIS — AJPES has exposed PRS in the Business Registers Interconnection System since 2017 (Regulation EU 2017/1132).
text ajpes-identifiers-en.txt
# Slovenian identifiers — who does what

  matična številka       7 digits (NNNNNNN)
    Issued by              AJPES (at company incorporation)
    PEPPOL ICD             0177 (officially recognised)
    Use                    Universal company legal identifier,
                           UJP routing, PRS registry, EU BRIS.
    Example                5959876 — Krka tovarna zdravil d.d.

  davčna številka        8 digits (NNNNNNNN, no prefix)
    Issued by              FURS (Finančna uprava RS)
    EU VAT prefix          SI (SI + davčna = SI82646716)
    PEPPOL ICD             9925 (generic VAT)
    Use                    Tax identifier, DDV returns, VIES.

  TIN (Tax ID Number)    Same as davčna številka
    OECD standard         CRS (Common Reporting Standard)
    Tax info exchange     Automatic inter-tax-authority reporting.

  GS1 GLN                13 digits prefixed 5959... or 5854...
    Issued by              GS1 Slovenia (country prefix 595)
    Use                    Retail EDIFACT (Mercator/Spar/Hofer)
                           and public e-SLOG via UJP.
                           5959 = private company
                           5854 = public entity (proračunski uporabnik)

  IBAN                   SI56 + 15 digits (bank + account)
    Issued by              Slovenian commercial banks
    BIC                    8 or 11 char SWIFT code

Comparison — AJPES vs INSEE-SIRENE vs Companies House

DimensionAJPES (Slovenia)INSEE-SIRENE (France)Companies House (UK)
TutelageMin. of JusticeINSEE (Min. of Economy)BIS (Department for Business)
Key identifiermatična številka — 7 immutable digitsSIREN 9 digits + SIRET 14 per establishmentCompany Number 8 chars (prefix SC, NI...)
ScopeAll entities: commercial + associations + publicAll economic entities + non-profitsLimited companies + LLPs
Open dataFree since 2014Free since 2017 (open data)Free since 2015
Annual accountsMandatory — free ajpes.siMandatory (except small SAS), paid data.inpi.frMandatory (except small) — free
PEPPOL ICD0177 (matična)0009 (SIRET)0060 (D-U-N-S) / 0190 UK companies
EU BRISConnected since 2017Connected since 2017No (Brexit)

Adoption — ~190,000 companies, ~3,500 public entities

  • ~190,000 active commercial companies in PRS (2024) — d.d., d.o.o., k.d., s.p. and other forms.
  • ~3,500 public entities (proračunski uporabniki — ministries, občine, JZZ, schools, agencies).
  • ~25,000 associations (društva) and ~5,000 foundations (ustanove) recorded in the complementary registry.
  • ~480,000 annual accounts published/year on ajpes.si — all entities under publication obligation (Financial Transparency Act, ZGD-1).
  • ~12M API queries/year on AJPES public endpoints — banks, KYC services, scoring, audit.

Common pitfalls

  • Confusing matična and davčna številka. Both IDs identify the company but for different purposes. Matična = legal identity (AJPES, registry, PEPPOL 0177). Davčna = tax identity (FURS, VAT, PEPPOL 9925). A PEPPOL Address with the wrong ICD is rejected by UJP.
  • Truncating matična to 6 digits. Some legacy implementations store matična on 6 digits, dropping the final check digit. PRS requires the full 7-digit form.
  • Believing matična changes on transfer or conversion. Wrong: matična is immutable. A d.o.o. becoming d.d. keeps the same ID. Change of control doesn't affect ID. Only dissolution removes the company from PRS.
  • Mixing matična × matična per establishment. Unlike French SIRET, AJPES has no per-establishment ID. All branches of one company share matična. To identify a branch use an internal sub-identifier or a GS1 GLN.
  • Wrong BRIS format. For EU interconnection (BRIS), the Slovenian matična must be prefixed with the Slovenia EUID code: SI001-XXXXXXX. Many foreign operators forget the prefix or use a wrong country code.