
Peppol je mezinárodní otevřená síť B2B, která organizacím umožňuje efektivní výměnu strukturovaných obchodních dokumentů, jako jsou objednávky a faktury.
Porozumění technickým specifikacím a procesu implementace Peppol je pro vývojáře zásadní pro vytváření robustních systémů, které zvyšují efektivitu organizace. Tato příručka popisuje klíčové pojmy a technické pokyny pro vývojáře, kteří chtějí začít používat elektronické objednávky pomocí Peppol.
Co je Peppol?
Peppol (Pan-European Public Procurement Online) je rámec, který standardizuje elektronickou výměnu dokumentů mezi podniky a veřejnými organizacemi. Nejedná se o ERP systém, portál ani platformu pro zadávání veřejných zakázek, ale o protokol umožňující interoperabilitu mezi různými systémy.
Peppol používá model čtyř rohů, což znamená, že každá organizace se připojuje k síti prostřednictvím svého vybraného poskytovatele přístupového bodu Peppol, což eliminuje potřebu sladit poskytovatele služeb s obchodními partnery.

Hlavní rysy systému Peppol jsou:
- Standardizace: Společný jazyk pro obchodní dokumenty napříč odvětvími.
- Interoperabilita: Kompatibilita mezi systémy po celém světě.
- Škálovatelnost: Snadné propojení s novými partnery bez nutnosti dalšího vývoje.
Peppol nabízí vývojářům rámec pro integraci strukturovaného elektronického zpracování objednávek do stávajících obchodních procesů.
Začínáme s objednávkou Peppol
Zavedení elektronických objednávek v systému Peppol vyžaduje porozumění jeho specifikacím obchodní interoperability (BIS), syntaxi zpráv a požadavkům na výměnu dat.
Zde je přehled šesti základních kroků a technických aspektů, které je třeba zohlednit.
1. Porozumění základním prvkům
Vývojáři implementující faktury Peppol musí rozumět tomu, jak správně vyplňovat prvky cbc podle pokynů Peppol BIS, aby zajistili soulad dokumentů a úspěšný přenos.
V kontextu Peppol a syntaxe UBL (Universal Business Language) pro faktury znamená cbc zkratku Common Basic (společné základní Basic ). Tyto předdefinované datové prvky v rámci schématu UBL představují základní, opakovaně použitelné stavební bloky obchodních dokumentů, jako jsou faktury, objednávky a zprávy o odeslání.
Klíčové vlastnosti prvků cbc
- Jednoduché datové typy: prvky cbc jsou obvykle atomické a představují jednoduchá data, jako je text, číselné hodnoty, data nebo kódy.
- Basic : Zachycují základní, přímočaré údaje, jako jsou identifikátory, data, peněžní částky nebo popisy.
- Opakovaná použitelnost: Tyto komponenty jsou navrženy tak, aby byly opakovaně použitelné v různých typech dokumentů UBL.
2. Pro objednávky vyberte profil Peppol BIS.
Peppol podporuje tři základní specifikace, nazývané také profily, pro procesy objednávek. Každý BIS je navržen pro konkrétní případy použití a obchodní partneři se musí dohodnout, který z nich budou používat.
BIS Order Only: Pro jednoduché zadávání objednávek bez odpovědi dodavatele.
BIS Ordering: Zahrnuje odpovědi na objednávky s potvrzením přijetí, zamítnutí nebo částečného přijetí.
BIS Despatch Advice: Informuje kupujícího o podrobnostech zásilky.
3. Pochopte syntaxi objednávky Peppol
Transakce Peppol Order (T01) se řídí standardu UBL (Universal Business Language) .
Aby mohli vývojáři efektivně implementovat Peppol, musí důkladně rozumět tomu, jak vyplňovat prvky cbc v souladu s pokyny Peppol BIS, a zajistit tak jak soulad s předpisy, tak hladký přenos. Dodržování požadované syntaxe pro všechny prvky dokumentu je zásadní, protože odchylky od validačních pravidel Peppol mohou vést k chybám, které naruší proces objednávky.
Zde je několik příkladů základních prvků objednávkových dokumentů:
| Prvek UBL | Popis |
| cbc:ID | Jedinečný identifikátor objednávky. |
| cbc:Kód typu objednávky | Určuje typ objednávky, například nákupní objednávku. |
| cbc:Kód měny dokumentu | Označuje měnu (např. „EUR“). |
| cac:Platnost | Označuje datum vypršení platnosti objednávky. |
Charakteristiky prvků cbc
Zobrazení dat: Prvky cbc obvykle představují jednotlivá datová pole, což usnadňuje jejich použití a ověřování.
Atributy: Některé prvky cbc obsahují atributy, jako je currencyID (pro částky) nebo unitCode (pro množství).
Povinné/volitelné: Pokyny Peppol BIS (Business Interoperability Specification) určují, které prvky cbc jsou povinné, volitelné nebo podmíněně povinné.
Srovnání s cac (společné agregované komponenty)
Zatímco cbc představuje základní komponenty, cac (Common Aggregate Components) se používá pro komplexní datové struktury, které seskupují související prvky cbc a další prvky cac. Například cac:Party seskupuje všechny informace o obchodní entitě, jako je její název, adresa a identifikátory.
Další podrobnosti o konkrétních prvcích cbc používaných v objednávkách Peppol UBL naleznete v oficiální BIS Ordering Peppol BIS Ordering .
3. Integrujte se s přístupovým bodem Peppol
Transakce Peppol jsou distribuovány prostřednictvím certifikovaných přístupových bodů Peppol, nazývaných také poskytovatelé služeb Peppol. Jako vývojář musí vaše aplikace pro přenos a příjem dokumentů komunikovat s API poskytovatele. Přístupové body řeší technickou složitost směrování zpráv mezi obchodními partnery.
Další informace o přístupu k objednávkám Peppol prostřednictvím rozhraní API pro objednávky.
4. Implementujte ověřování a zpracování chyb
Validace zajišťuje soulad s pravidly Peppol a požadavky BIS. Zavést robustní kontrolní mechanismy pro identifikaci chyb před přenosem. Například zkontrolovat povinná pole, jako jsou cbc:ID a cbc:DocumentCurrencyCode. Ověřte formáty dat, včetně dat, měn a identifikátorů.
Ověření formátu je integrováno a automatizováno pro uživatele přístupového bodu Peppol společnosti Qvalia.
5. Testování v prostředí sandboxu
Před nasazením řešení otestujte integraci v testovacím prostředí poskytovaném vaším poskytovatelem přístupového bodu. To vám umožní simulovat různé scénáře, jako je odesílání objednávek, přijímání odpovědí a správa zpráv o odeslání zásilky.
Technické informace: Struktura objednávek Peppol
Objednávky Peppol se opírají o schémata UBL založená na XML. Níže je uveden stručný přehled klíčových prvků struktury objednávky:
Záhlaví dokumentu
Záhlaví obsahuje důležité metadata o objednávce.
| Prvek UBL | Popis |
| <cbc:ID> | Jedinečný identifikátor objednávkového dokladu (např. „1234567“). |
| <cbc:IssueDate> | Datum vystavení objednávky (např. „2024-08-14“). |
| <cbc:OrderTypeCode> | Označuje typ objednávky, kde „220“ obvykle představuje nákupní objednávku. |
| <cbc:DocumentCurrencyCode> | Určuje měnu použitou v objednávkovém dokladu (např. „EUR“). |
Informace o kupujícím a prodávajícím
Kupující a prodávající jsou definováni pomocí segmentů cac:BuyerCustomerParty a cac:SellerSupplierParty.
| Prvek UBL | Popis |
| <cac:BuyerCustomerParty> | Zastupuje kupujícího v transakci a obsahuje podrobnosti o zákaznické straně. |
| <cac:Party> | Poskytuje informace o kupující straně, jako jsou identifikátory a jména. |
| <cbc:EndpointID schemeID=”0088″> | Elektronická adresa kupujícího, kde „schemeID“ určuje typ identifikátoru (v tomto případě např. „GLN“). |
| <cac:PartyName> | Obsahuje obchodní jméno kupujícího. |
| <cbc:Name> | Určuje jméno kupujícího (např. „Jméno kupujícího“). |
Objednávkové řádky
Každá řádka objednávky specifikuje položky, množství a ceny.
| Prvek UBL | Popis |
| <cac:OrderLine> | Představuje jednotlivou položku v objednávce, obsahující podrobnosti o položce a jejím množství. |
| <cbc:ID> | Jedinečný identifikátor řádku objednávky (např. „1“). |
| <cbc:Quantity unitCode=”EA”> | Určuje množství položek v řádku objednávky, kde „unitCode“ definuje měrnou jednotku (např. „50“ jednotek, měřeno v „každé“). |
| <cac:Item> | Obsahuje podrobnosti o objednané položce. |
| <cbc:Name> | Název nebo popis položky (např. „Název produktu“). |
| <cac:SellersItemIdentification> | Poskytuje identifikátor prodejce pro danou položku. |
| <cbc:ID> | Jedinečný identifikátor produktu prodávajícího (např. „87654321“). |
Pokročilé funkce: Dokumenty s informacemi o odeslání
BIS Despatch Advice umožňuje dodavatelům informovat odběratele o podrobnostech zásilky.
Zpráva může obsahovat:
| Prvek UBL | Popis |
| <cac:DespatchAdvice> | Kořenový prvek představující celý dokument Despatch Advice, který slouží k informování příjemce o podrobnostech zásilky. |
| <cbc:ID> | Jedinečný identifikátor pro dokument s oznámením o odeslání (např. „654321“) |
| <cbc:IssueDate> | Datum vystavení dokladu o odeslání zásilky (např. „2024-08-20“) |
| <cac:Delivery> | Obsahuje podrobnosti o doručení zásilky. |
| <cac:DeliveryLocation> | Určuje místo, kam má být zásilka doručena. |
<cbc:ID> (uvnitř DeliveryLocation) | Jedinečný identifikátor místa dodání (např. „ID skladu“). |
| <cbc:Name> | Název místa dodání (např. „Název skladu“). |
Osvědčené postupy pro vývojáře
Dodržujte pokyny Peppol BIS: Vždy dodržujte oficiální dokumentaci Peppol BIS, abyste zajistili soulad s předpisy.
Zohledněte místní odlišnosti: Ačkoli je Peppol globálním standardem, některé sektory nebo regiony mohou vyžadovat specifické úpravy.
Automatizujte ověřování: Před přenosem implementujte automatické kontroly syntaxe a obsahu.
Zabezpečte data: Zajistěte, aby všechna přenášená data byla v souladu s GDPR a dalšími předpisy na ochranu osobních údajů.
Peppol poskytuje robustní rámec pro elektronické objednávky, který podnikům umožňuje zefektivnit provoz a zlepšit přesnost dat. Pro vývojáře je pochopení technických specifikací Peppol BIS, schémat UBL a integrace přístupových bodů zásadní pro vytváření škálovatelných a efektivních řešení.
