Registrace organizací na Peppol přes Enrollment API: služby, oprávnění a hooky v jednom volání.
Enrollment API je jednotné řešení pro registraci nové strany v síti Peppol. V jediném API volání nakonfigurujete službu Peppol, přidělíte uživatelům správná oprávnění a volitelně nastavíte hooky. Tento článek popisuje endpoint, tři části enrollment a zrušení registrace.
Enrollment API vyžaduje roli ApManager. ApUser nemůže enrollment provést. Před začátkem ověřte, zda Vaše API credentials mají správnou roli.
PUT /api/v1-beta/{partyId}/enroll
{partyId} je identifikátor Peppol registrované strany ve formátu schemeID:identifier (např. 0106:12345678).
Tělo požadavku obsahuje tři sekce: Services, Party authorizations a Hooks.
V sekci Services aktivujete službu Peppol pro stranu. Nakonfigurujete SMP capabilities (jaké typy dokumentů může strana přijímat) a volitelně businessCard pro publikaci v Peppol Directory.
{
"services": {
"peppol": {
"capabilities": {
"invoices": "on",
"invoiceResponse": "on",
"orderOnly": "inherited"
},
"businessCard": {
"names": "Bedrijfsnaam B.V.",
"geoInfo": "Utrecht, NL",
"email": "info@bedrijf.nl"
}
}
}
}
BusinessCard je volitelná, ale doporučená. Bez businessCard není strana vyhledatelná v Peppol Directory, i když je SMP registrace aktivní.
Zde přidělíte jednoho nebo více uživatelů straně a definujete jejich oprávnění. Každá zaregistrovaná strana musí být propojena minimálně s jedním ApUser.
{
"partyAuthorizations": [
{
"userId": "gebruiker@bedrijf.nl",
"permissions": {
"canSendDocument": true,
"canReceiveDocument": true,
"canRemoveDocument": true,
"canManageHook": true
}
}
]
}
canSendDocumentcanReceiveDocumentcanRemoveDocumentcanManageHookVolitelně můžete přímo registrovat hooky pro novou stranu. Je to praktické, pokud při registraci již víte, jaké notifikace budou potřeba, například webhook pro přijímané faktury.
{
"hooks": [
{
"action": "https://api.bedrijf.nl/webhooks/invoices",
"topics": ["InvoiceReceived"]
},
{
"action": "mailto:facturatie@bedrijf.nl",
"topics": ["InvoiceReceived"]
}
]
}
Kompletní enrollment požadavek kombinující všechny tři části:
{
"services": {
"peppol": {
"capabilities": {
"invoices": "on",
"invoiceResponse": "on"
},
"businessCard": {
"names": "Voorbeeld B.V.",
"geoInfo": "Amsterdam, NL"
}
}
},
"partyAuthorizations": [
{
"userId": "api-user@voorbeeld.nl",
"permissions": {
"canSendDocument": true,
"canReceiveDocument": true,
"canRemoveDocument": false,
"canManageHook": true
}
}
],
"hooks": [
{
"action": "https://api.voorbeeld.nl/leren/peppol/incoming",
"topics": ["InvoiceReceived"]
}
]
}
Pro úplnou deregistraci strany (včetně všech služeb, oprávnění a hooků) použijte:
DELETE /api/v1-beta/{partyId}/enroll
Po zrušení není strana v síti Peppol více dosažitelná a všechny propojené hooky a autorizace se odstraní.
Enrollment API je beta endpoint (v1-beta). Funkcionalita je stabilní, ale endpoint se může v budoucích verzích změnit. Při otázkách k beta statusu kontaktujte TechSupport.
Mějte také na paměti, že SMP registrace po enrollment může trvat několik minut, než se synchronizuje v celé síti Peppol. Je to vlastnost SML/SMP protokolu.
Chcete převzít existující registrace od jiného poskytovatele? Přečtěte si článek o migraci na eConnect.
Vyzkoušejte to v API