Chi instrada questa azienda — in ogni paese
Prima di emettere una fattura bisogna sapere dove va, e quel «dove» non è mai l'azienda: è la piattaforma che riceve per suo conto. Ogni paese risponde a questa domanda, ma non nello stesso modo, ed è questa differenza a decidere se la risposta sia una ricerca o un elenco.
La Francia risponde da un registro chiuso. La DGFiP accredita un insieme finito di Plateformes Agréées e l'annuaire del PPF instrada su un matriculePlateforme di quattro cifre. Quel numero da solo non dice nulla: la risposta è quindi una congiunzione — che nessuno pubblicava prima che lo facessimo noi.
Peppol risponde in tempo reale. Non esiste alcun registro di piattaforme accreditate da consultare: è l'identificativo del partecipante stesso a risolversi, tramite DNS e poi HTTP, fino all'access point che lo serve — e il certificato di quell'access point nomina la società che lo gestisce. Nessun elenco da mantenere, e mai obsoleto.
Risolvi un identificativo
Indica un identificativo di partecipante Peppol — schema:valore, ad esempio 0208:0848934496 (Belgio) o 0192:991825827 (Norvegia) — e questa interrogazione chiede alla rete chi lo instrada, adesso.
Chi instrada questo partecipante?
Chiama GET /v1/portability/access-point/{participantId}. La tua chiave resta in questo browser e non viene inviata da nessuna parte se non all'API.
Tutti i paesi
Il numero di partecipanti e gli schemi di identificativi sono misurati, non asseriti: ogni riga deriva da un'interrogazione della Peppol Directory paese per paese, contando gli schemi che le registrazioni reali usano davvero. Un paese a zero non ha registrazioni — non è un paese che abbiamo mancato di interrogare.
| Paese | Partecipanti | Schemi di identificativi in uso | Registro di operatori |
|---|
Come si ottiene la risposta in tempo reale
Tre passaggi, e l'ultimo è quello che nomina davvero una società:
- SML — DNS. L'identificativo viene reso minuscolo, sottoposto ad hash SHA-256, codificato in Base32 e interrogato come record
NAPTR. Il campo regexp del record nomina l'SMP che serve il partecipante:"!.*!https://smp.example.net!". - SMP — HTTP.
GET <smp>/iso6523-actorid-upis::<id>elenca ogni tipo di documento che il partecipante accetta, ciascuno con i propri service metadata. - Il certificato dell'endpoint. I service metadata portano il certificato X.509 dell'access point, e il suo subject è la risposta:
CN=POP000016, OU=PEPPOL PRODUCTION AP, O=B2Brouter Global SL, C=ES.Oè la ragione sociale,CNl'identificativo Peppol dell'access point.
La zona è cambiata, e una documentazione obsoleta non porta da nessuna parte. OpenPeppol ha ritirato edelivery.tech.ec.europa.eu insieme al vecchio schema CNAME/MD5; dal 19 marzo 2026 la produzione è participant.sml.prod.tech.peppol.org con NAPTR/SHA-256. Interrogare la zona ritirata restituisce NXDOMAIN per ogni partecipante della rete — il che assomiglia esattamente a «nessuno li instrada». Qui vengono tentati entrambi gli schemi, e la risposta indica quale ha risposto.
Una conseguenza da tenere a mente: il paese dell'access point spesso non è quello dell'azienda. Una società belga instradata da un operatore spagnolo, una svedese da uno finlandese — è normale, e ricorda utilmente che il mercato delle piattaforme è europeo più che nazionale.
Dove invece esiste un registro
Alcuni paesi accreditano gli operatori e ne pubblicano l'elenco. Lì vale lo schema francese — un nome, uno stato e di solito un codice — e la risposta può essere una pagina anziché una ricerca:
| Paese | Cosa registra l'autorità |
|---|
La Francia è l'unico caso sviluppato per intero — tutte le 166 Plateformes Agréées unite al matricule su cui ciascuna instrada, con la prova di ogni numero. Gli altri sono elencati perché si sappia che un registro esiste; non li abbiamo integrati.
Dall'API
# chi instrada questa società belga?
curl -H "X-API-Key: $FLOWIE_API_KEY" \
https://api.get-flowie.com/v1/portability/access-point/0208:0848934496
# la Francia, dal registro
curl -H "X-API-Key: $FLOWIE_API_KEY" \
https://api.get-flowie.com/v1/portability/annuaire/350422622
# e chi c'è dietro un matricule francese
curl -H "X-API-Key: $FLOWIE_API_KEY" \
"https://api.get-flowie.com/v1/portability/platforms?matricule=0003"
La risposta dell'access point porta apName, apPeppolId, apCountry, smpUrl, endpointUrl, transportProfile, documentTypeCount, certificateExpiresOn e resolvedVia. Un partecipante che nessuno instrada risponde 200 con error valorizzato, non 404: «non registrato» è una risposta, non un errore.
La tabella qui sopra legge un asset statico — assets/routing-directory.json — se vuoi la mappa per paese senza chiamare nulla.
Riferimenti
- Peppol Policy for use of Identifiers — gli schemi di identificativi dei partecipanti conteggiati nella tabella qui sopra.
- Peppol CNAME to NAPTR Migration (v1.0.0, aprile 2025) — il cambio di zona e di hashing in vigore dal 19 marzo 2026.
- Francia · Plateformes Agréées — la risposta per registro, per intero.
- Panoramica conformità — obblighi e scadenze per tutti i paesi.