Standard elektronické fakturace

Transkript

Standard elektronické fakturace
Datum vydání: duben 2014
Poslední aktualizace: duben 2015
Přehled aktualizací
POŘADÍ
DATUM
AKTUALIZACE
strana
1.
Duben 2015
21
OBSAH ZMĚN
Úprava typu položky SubDocumentType v kapitole 4.3.3 a 4.3.4
Datum vydání: duben 2014, aktualizace duben 2015
2/86
Obsah:
1
2
3
4
ÚVOD ...............................................................................................................................................................................................5
VYUŽITÍ A VÝCHODISKA ...................................................................................................................................................................6
ROZSAH A PRAVIDLA .......................................................................................................................................................................9
POPIS .............................................................................................................................................................................................12
4.1
AKTIVACE/DEAKTIVACE SLUŽBY .........................................................................................................................................12
4.1.1
Aktivace/deaktivace služby ze strany výstavce .............................................................................................................12
4.1.2
Aktivace/deaktivace služby ze strany banky..................................................................................................................14
4.2
VÝMĚNA DAT......................................................................................................................................................................17
4.2.1
Zaslání e-faktur a e-dokumentů do EB (výstavce → banka) ..........................................................................................17
4.3
PŘEDÁVANÁ DATA .............................................................................................................................................................19
4.3.1
E-faktura ve formátu XML (B2C-ISDOC 6.0) ...................................................................................................................19
4.3.2
E-dokument ve formátu XML (B2C-ISDOC 6.0) ..............................................................................................................21
4.3.3
E-faktura ve formátu PDF s metadaty v hlavičce ...........................................................................................................22
4.3.4
E-dokument ve formátu PDF s metadaty v hlavičce ......................................................................................................22
4.3.5
Použité číselníky ............................................................................................................................................................23
4.3.6
Potvrzení o přijetí dokumentů zaslaných do EB (banka → výstavce) ............................................................................24
5 DEFINICE WEBOVÝCH SLUŽEB PRO KOMUNIKACI SE SYSTÉMY BANKY .........................................................................................28
5.1
DATOVÉ TYPY .....................................................................................................................................................................28
5.2
KOMUNIKACE S WEBOVÝMI SLUŽBAMI .............................................................................................................................28
5.2.1
Přenosové protokoly .....................................................................................................................................................28
5.2.2
Přílohy zpráv ..................................................................................................................................................................28
5.3
ZABEZPEČNÍ A AUTENTIZACE WS .......................................................................................................................................28
5.3.1
Varianta 1 – Základní úroveň zabezpečení ....................................................................................................................28
5.3.2
Varianta 2 - Zvýšená úroveň zabezpečení .....................................................................................................................28
6 PŘEDÁVÁNÍ ŽÁDOSTÍ O AKTIVACI ZE STRANY BANKY A NOTIFIKAČNÍCH REPORTŮ PROSTŘEDNICTVÍM DOWNLOAD WEBOVÉ
SLUŽBY (DOWNLOADWS) ......................................................................................................................................................................30
6.1
OPERACE PRO HROMADNÉ STAHOVÁNÍ DOKUMENTŮ .....................................................................................................30
6.1.1
Hlavička .........................................................................................................................................................................30
6.1.2
Popis parametrů požadavku ..........................................................................................................................................30
6.1.3
Popis parametrů odpovědi ............................................................................................................................................31
6.2
OPERACE PRO OZNAČENÍ DOKUMENTŮ K OPĚTOVNÉMU STAŽENÍ ..................................................................................31
6.2.1
Operace pro označení dokumentů pomocí časového intervalu ....................................................................................32
6.2.2
Popis parametrů odpovědi markDocumentsByTimeRange ...........................................................................................32
6.3
NEÚSPĚŠNÉ VOLÁNÍ OPERACÍ SLUŽBY ...............................................................................................................................32
7 PŘEDÁVÁNÍ E-FAKTUR, E-DOKUMENTŮ A ODPOVĚDÍ NA ŽÁDOSTI O AKTIVACI PROSTŘEDNICTVÍM UPLOAD WEBOVÉ SLUŽBY
(UPLOADWS) .........................................................................................................................................................................................34
7.1
HLAVIČKA METODY ............................................................................................................................................................34
7.2
POPIS PARAMETRŮ ............................................................................................................................................................34
7.3
NÁVRATOVÉ KÓDY SLUŽBY ................................................................................................................................................35
7.3.1
Úspěšné volání služby....................................................................................................................................................35
7.3.2
Neúspěšné volání služby ...............................................................................................................................................35
8 KOMUNIKAČNÍ KANÁL SFTP ..........................................................................................................................................................37
8.1
KOMUNIKAČNÍ PROTOKOL SFTP ........................................................................................................................................37
8.2
ZABEZPEČENÍ SFTP ............................................................................................................................................................37
8.2.1
Varianta 1 - Základní úroveň zabezpečení .....................................................................................................................37
8.2.2
Varianta 2 - Zvýšená úroveň zabezpečení .....................................................................................................................37
9 PŘENOS DAT POMOCÍ ISDS............................................................................................................................................................38
10
PŘÍLOHY .....................................................................................................................................................................................39
10.1
Příloha č. 1 - Definice struktury žádosti o aktivaci (deaktivaci) služby ze strany banky ......................................................39
10.2
Příloha č. 2 - Definice struktury odpovědi výstavce na žádost o aktivaci (deaktivaci) služby ze strany banky ...................41
10.3
Příloha č. 3 – Definice struktury dávky ...............................................................................................................................43
10.3.1
Příklady dávek ...............................................................................................................................................................44
10.4
Příloha č. 4 - Definice struktury podkladů k platbě zaslaná výstavcem ..............................................................................45
10.5
Příloha č. 5 - Definice struktury e-dokumentů ...................................................................................................................59
10.6
Příloha č. 6 - Definice struktury notifikačního reportu o přijetí dokumentů do EB ............................................................66
10.7
Příloha č. 7 – WSDL pro UploadWS ....................................................................................................................................69
10.7.1
Příklady volání UploadWS .............................................................................................................................................71
10.8
Příloha č. 8 – WSDL pro DownloadWS ...............................................................................................................................77
10.8.1
Příklady volání DownloadWS .........................................................................................................................................80
10.9
Příloha č. 9 – WSDL pro WS UserAccountStatus ...............................................................................................................83
Datum vydání: duben 2014, aktualizace duben 2015
3/86
Použité zkratky
Název
B2C
B2C-ISDOC 6.0
BIC
DÁVKA
DOKUMENT
EB
E-DOKUMENT
E-FAKTURA
IBAN
IDENTIFIKÁTOR NA
STRANĚ VÝSTAVCE
ISDOC
ISDS
JPÚ
KONCOVÝ
SPOTŘEBITEL
(ZÁKAZNÍK, KLIENT)
SFTP
VÝSTAVCE
WS
Popis
Business-To-Customer/Consumer – v kontextu tohoto dokumentu se jedná o
elektronickou komunikaci mezi výstavci a koncovými spotřebiteli prostřednictvím
kanálů EB
krátká struktura XML vycházející z plného formátu ISDOC 6.0
Bank Identifier Code
XML soubor obsahující ZIP jednotlivých předávaných dokumentů
primárně znamená e-faktura nebo e-dokument, ale též aktivační/deaktivační zpráva
elektronické bankovnictví
jakýkoli dokument bez platební instrukce (smlouva, informace, potvrzení, ...)
jakýkoli dokument s platební instrukcí (faktura, zálohová platba, výzva k platbě...)
International Bank Account Number
Jedná se o položku „ClientOnTargetConsolidator“ - např. zákaznické číslo, číslo
smlouvy, číslo odběrného místa, variabilní symbol, spojovací číslo, číslo odběratele
apod.
Information System Document - standard pro elektronickou fakturaci v ČR, který
definovalo sdružení SPIS (nyní ICT Unie)
informační systém datových schránek
jednorázový příkaz k úhradě
klient příslušné banky s možností přijímat dokumenty prostřednictvím
elektronického bankovnictví
Secure File Transfer Protocol
Společnost, která je u příslušné banky registrována jako společnost, která může
zasílat do EB dokumenty pro koncové spotřebitele.
webová služba
Datum vydání: duben 2014, aktualizace duben 2015
4/86
1
ÚVOD
Elektronická fakturace je moderní způsob předávání daňových dokladů. Jedná se o formu komunikace
opírající se o platné zákony České republiky zrovnoprávňující elektronickou a listinnou formu fakturace, a to
zejména:

Zákon o elektronickém podpisu 227/2000 Sb., novelizovaný zákonem č. 440/2004 Sb, který určuje
původ a pravost dokumentů,

Zákon o dani z přidané hodnoty 235/2004 Sb., který definuje elektronickou fakturaci novelizovaný
s účinností k 1. 1. 2013 (naplnění závazku harmonizovat národní legislativu ČR s evropskou směrnicí
2010/45/EU o elektronické fakturaci).
Tento standard ČBA (dále jen „Standard“) popisuje rozhraní pro zasílání e-faktur a e-dokumentů koncovým
spotřebitelům do aplikací elektronického bankovnictví. Standard si klade za cíl zejména:

usnadnit elektronickou fakturaci a elektronickou komunikaci obecně mezi výstavci dokumentů a
jejich zákazníky, příjemci dokumentů a

zajistit jednotný otevřený přístup všem účastníkům trhu v ekosystému elektronické fakturace při
zasílání dokumentů do elektronického bankovnictví (dále jen „EB“), tj. výstavcům faktur včetně
jejich dodavatelů informačních systémů, poskytovatelům řešení, tak pro banky.
Datum vydání: duben 2014, aktualizace duben 2015
5/86
2
VYUŽITÍ A VÝCHODISKA
Praktické využití standardu pro elektronickou fakturaci spočívá především v přenosu platebních údajů bez
zásahu lidského faktoru a jejich doručení do EB prostřednictvím elektronických faktur. Klient pak po
přihlášení do elektronického bankovnictví pouze zkontroluje údaje, či případně ještě prověří detail faktury
v příloze, a automaticky vygenerovaný platební příkaz odešle ke zpracování standardním procesem
autorizace platby. Tím se jednak zvýší komfort pro klienty, ale také sníží počet chybně zadaných plateb.
Banky jsou tradičně vnímány jako důvěryhodné instituce s vysokým stupněm zabezpečení. A proto standard
bude navíc klientům bank umožňovat i příjem neplatebních dokumentů, čímž výstavcům a příjemcům
umožní a především usnadní elektronickou komunikaci do zabezpečeného a důvěryhodného prostředí
s možností archivace. Klienti elektronického bankovnictví tak budou mít všechny důležité dokumenty na
jednom zabezpečeném místě.
ČBA tímto krokem chce podpořit rozšíření a akceptaci elektronických faktur v ČR.
Datum vydání: duben 2014, aktualizace duben 2015
6/86
Datum vydání: duben 2014, aktualizace duben 2015
7/86
Popis rozhraní vychází z těchto požadavků:

standardizace zasílání e-faktur a e-dokumentů koncovým spotřebitelům do aplikací elektronického
bankovnictví

využití stávajících technologických standardů
o
Při přípravě standardu ČBA spolupracovala v oblasti výměny dat s ICT Unií, Pracovní
skupinou pro elektronické standardy výměny dat, která definovala a spravuje ISDOC,
formát elektronické fakturace v ČR.

neomezování žádného účastníka trhu v poskytování služby

umožnění přenosu nezbytných a nejčastěji používaných atributů tuzemské platby

umožnění předávání informací v rámci procesu nastavení a zrušení služby a přenosu dat

zohlednění současného stavu B2C elektronické fakturace
Datum vydání: duben 2014, aktualizace duben 2015
8/86
3
ROZSAH A PRAVIDLA
Popis rozhraní je specifikací technických parametrů pro účely předávání platebních údajů a dokumentů
elektronickou cestou mezi výstavcem a bankou, a to zejména pro účely předvyplnění platebního příkazu.
Popis rozhraní definuje:
1. komunikační protokoly,
2. formáty pro zasílání platebních údajů včetně jejich obsahu - zejména platebních instrukcí, faktur a
dalších neplatebních dokumentů výstavců do EB.
Oblasti Popisu rozhraní:
I. Nastavení/zrušení služby
Ia. Aktivace/deaktivace služby ze strany výstavce
a) žádost o aktivaci/deaktivaci (výstavce → banka)
b) odpověď na žádost o aktivaci/deaktivaci (banka → výstavce)
Ib. Aktivace/deaktivace služby ze strany banky
a) žádost o aktivaci/deaktivaci (banka → výstavce)
b) odpověď na žádost o aktivaci/deaktivaci (výstavce → banka)
II. Výměna dat
a) Zaslání podkladů k platbě a doručení e-faktur a e-dokumentů do EB (výstavce → banka)
b) Potvrzení o přijetí e-faktur a e-dokumentů do EB (banka → výstavce)
Datum vydání: duben 2014, aktualizace duben 2015
9/86
Aktivace služby
Klient si službu může aktivovat, pokud banka a výstavce službu nabízí. Způsoby aktivace jsou:

na straně banky ve svém EB,

na straně výstavce.
Identifikátor příjemce dokumentů
Jako identifikátor v komunikaci mezi bankou a výstavcem se používají vždy dva údaje:

identifikátor na straně výstavce (např. zákaznické číslo, číslo smlouvy, číslo odběrného místa apod.);
v případě více identifikátorů jsou tyto identifikátory odděleny technickým znakem pomlčky “-“

číslo bankovního účtu zákazníka (pod kterým si aktivoval službu).
Bankami přijímané typy formátů zasílaných dokumentů a příloh:

Zjednodušený formát B2C-ISDOC 6.0 a vyšší nebo ISDOC 6.0 a nebo vyšší
o

Do EB je možné zasílat maximálně jednu přílohu, a to pouze ve formátu PDF, tj.:

platební řádek (např. výzva k platbě) bez přílohy nebo

jednu přílohu (např. faktura) ve formátu PDF,
PDF s metadaty.
Typy dokumentů
Do EB lze zasílat dokumenty v max. velikosti 400kB:

e-faktury - dokument s platební instrukcí (faktury, výzvy k platbě, zálohy, upomínky...)

e-dokumenty - dokument bez platební instrukce (smlouvy, potvrzení, informace...).
K identifikaci dokumentů slouží:

číselníky pro typ dokumentu e-faktura,

číselník pro typ dokumentu e-dokument.
Identifikace dokumentu

V případě ISDOC a B2C-ISDOC je možné zjistit identifikaci dokumentu, tj. zda se jedná o e-fakturu či
e-dokument, z příslušného hlavního (rootového) elementu <Invoice> nebo <CommonDocument>.

U strukturovaných dat, stejně jako u PDF s daty v hlavičce, je možné rozlišit e-fakturu a e-dokument
podle obsahu elementu <DocumentType>. Je-li vyplněn hodnotou dle číselníku (např. 1 Faktura –
daňový doklad), jedná se o e-fakturu. Je-li DocumentType =0, jedná se o e-dokument dále
specifikovaný v elementu <SubDocumentType>.
Generování jednorázových platebních příkazů k úhradě (JPÚ)
Datum vydání: duben 2014, aktualizace duben 2015
10/86
Generování JPÚ v EB je dáno číselníky pro typ dokladu e-faktura (resp. hodnotou znaménka částky
k zaplacení).
Platební kalendář / zálohové platby (implementace této funkcionality záleží na dané bance)
Do EB je možné zasílat i předpisy zálohových plateb v počtu 1-12, a to maximálně na následujících 12
měsíců. Z důvodu častých změn záloh je však doporučováno posílat předpis záloh na 3 měsíce.
Datum vydání: duben 2014, aktualizace duben 2015
11/86
4
POPIS
Tato kapitola popisuje procesy a obsah dat spojenými s daným způsobem aktivace a deaktivace služby a
výměnu dat mezi výstavcem a bankou.
4.1
AKTIVACE/DEAKTIVACE SLUŽBY
4.1.1
Aktivace/deaktivace služby ze strany výstavce
Aktivace a deaktivace služby ze strany výstavce je řešena následovně:
Způsob komunikace: WS na straně banky (WSDL 1.1). Definice WS viz WSDL Příloha č. 10.9.
Formát: SOAP XML zpráva
Zabezpečení a autentizace WS je shodné se zabezpečením definovaným v kapitole 5.3.
4.1.1.1
Žádost o aktivaci / deaktivaci nebo zjištění stavu účtu (výstavce → banka)
Struktura žádosti o aktivaci/deaktivaci služby nebo o zjištění stavu účtu ze strany výstavce:
Popis jednotlivých elementů:
- BankAccountID je povinná položka, která obsahuje buď právě element ClientBankAccount nebo
právě ClientIBANBankAccount, nikdy ne oba elementy současně.
ClientBankAccount – číslo účtu vždy v délce 20 znaků, ve formátu:
předčíslí účtu (pozice 1-6) – doplněné 0 z leva na 6 znaků
číslo účtu (pozice 7-16) - doplněné 0 z leva na 10 znaků
Datum vydání: duben 2014, aktualizace duben 2015
12/86
kód banky (pozice 17-20) - doplněné 0 z leva na 4 znaky
ClientIBANBankAccount – Obsahuje elementy IBAN a BIC dle příslušných pravidel.
Pokud je v requestu obsažený element ClientIBANBankAccount, jsou
elementy IBAN a BIC povinné.
-
ChangeAction je povinná položka přesně specifikující o jaký požadavek se jedná. Může nabývat
hodnot:
0 = Deactivate – Deaktivace zasílání dokumentů pro uvedený bankovní účet a
ClientOnTargetConsolidator
1 = Activate - Aktivace zasílání dokumentů pro uvedený bankovní účet a
ClientOnTargetConsolidator
2 = CheckStatus – Kontrola možnosti aktivace zasílání dokumentů pro uvedený bankovní
účet a ClientOnTargetConsolidator
-
ClientOnTargetConsolidator je povinná položka obsahující identifikátor v systémech výstavce
-
StatusCode – nepovinné, informace o iniciátorovi změny. S použitím tohoto atributu se počítá
pouze v případě deaktivace, která může být vyvolána výstavcem bez aktivního souhlasu klienta
např. při ukončení smluvního vztahu.
StatusCode
1
2
-
4.1.1.2
Popis
Změna na žádost klienta
Změna na žádost výstavce
TraceID je povinná položka obsahující jedinečný identifikátor (např. GUID) jednoznačně
identifikující u výstavce konkrétní volání. Tento string může být max. 40 znaků dlouhý. Povolené
znaky jsou a..z, A..Z a 0..9. Pro zajištění unikátnosti doporučujeme používat min. 10 znaků.
Odpověď na žádost o aktivaci / deaktivaci nebo o zjištění stavu účtu (výstavce → banka)
Struktura odpovědi na žádost o aktivaci/deaktivaci služby nebo o zjištění stavu účtu ze strany výstavce:
Návratové kódy v poli Status:
Status
0
1
2
Popis
OK, změna proběhla úspěšně.
Účet může využívat službu a pro dané
ClientOnTargetConsolidator je aktivní. Lze poslat e-fakturu nebo
e-dokument.
Účet může využívat službu a pro dané
ClientOnTargetConsolidator je neaktivní. V tomto okamžiku
nelze poslat e-fakturu ani e-dokument, status se musí změnit.
Datum vydání: duben 2014, aktualizace duben 2015
13/86
3
-1
Účet má službu zablokovanou. Nelze poslat e-fakturu ani edokument. Také nelze změnit status klienta ze strany výstavce.
Chyba, response obsahuje element
StatusErrorDescription, kde je chyba vydefinována.
Návratové chybové kódy v elementu StatusErrorDescription pro Status -1:
ErrorCode
-1
-2
-3
-4
4.1.2
ErrorDescription
Neexistující nebo zablokovaný účet
výstavce
Nevalidní request
Účet klienta nebyl nalezen
-5
Pro účet klienta nebylo nalezeno
ClientOnTargetConsolidator pro
deaktivaci
Nebylo možno změnit status u klienta
-6
Status klienta byl již změněn
-1000
Vnitřní chyba systému banky
Vysvětlení
Výstavce použil špatné jméno/heslo nebo
má účet zablokovaný.
Request není správně vyplněn.
Účet klienta nebyl v systému banky
nalezen nebo neumožňuje službu.
Pro zadanou kombinaci účtu klienta a
SupplierID nebyl nalezen záznam, který
by umožnil deaktivaci.
Status klienta pro požadované SupplierID
nebylo možné změnit. Možnost změny
může být blokována.
Status klienta pro zadané SupplierID je již
změněn na požadovanou hodnotu.
Nespecifikovaný problém v systémech
banky. Služba je nyní nedostupná.
Aktivace/deaktivace služby ze strany banky
Aktivace a deaktivace služby ze strany banky je řešena následovně:
Způsob komunikace: WS na straně banky (WSDL 1.1)
Formát: XML
4.1.2.1
Źádost o aktivaci/deaktivaci (banka → výstavce)
Grafické schéma struktury žádosti o aktivaci/deaktivaci služby ze strany banky (XSD viz Příloha č. 10.1):
Datum vydání: duben 2014, aktualizace duben 2015
14/86
Datum vydání: duben 2014, aktualizace duben 2015
15/86
4.1.2.2
Odpověď na žádost o aktivaci / deaktivaci (výstavce → banka)
Grafické schéma struktury odpovědi výstavce na žádost o aktivaci/deaktivaci služby ze strany banky (XSD viz
Příloha č. 10.2):
Datum vydání: duben 2014, aktualizace duben 2015
16/86
4.1.2.3
Číselník pro důvod neprovedení aktivace služby na straně výstavce
Pokud je element Activated = 1, elementy StatusCode a StatusDescription nejsou v XML obsaženy. Pokud je element
Activated = 0, elementy StatusCode a StatusDescription jsou vyplněny dle následující tabulky:
StatusCode
StatusDescription
Význam
01
Služba je již aktivní
Klient se opakovaně snaží zaktivovat již aktivní službu u výstavce.
04
Zákaz aktivace služby
Výstavce si nepřeje z jakéhokoli důvodu službu zákazníkovi aktivovat.
05
Odmítnutí klientem
Zákazník změnil své rozhodnutí nebo nesouhlasí s aktivací služby jinou osobou a
vyjádřil tak svůj nesouhlas s aktivací služby na straně výstavce.
06
Klient neexistuje
Klient uvedl chybné / neexistující číslo zákazníka při aktivaci.
07
Klient ukončil vztah s výstavcem
Klient ukončil vztah s výstavcem.
08
Nekompatibilní služba
Klient má u výstavce sjednán produkt/službu u kterého není možné službu zřídit
nebo má klient aktivovanou jinou službu a není možné mít současně aktivní jak
službu výstavce tak službu banky.
Pozn.
Pokud v jeden den klient podal více požadavků na aktivaci/deaktivaci, tak výstavce rozliší poslední status na základě
časového údaje obsaženého v položce „Created“.
Dále, doba čekání na reakci ze strany výstavce na požadavek aktivace je omezena časovou lhůtou 62 dnů. Do této
lhůty je výstavce povinován bance poskytnou na požadavek opověď.
4.2
VÝMĚNA DAT
Tato podkapitola řeší zasílání dokumentů do EB a potvrzování jejich přijetí.
4.2.1
Zaslání e-faktur a e-dokumentů do EB (výstavce → banka)
Způsob komunikace:

WS (WSDL verze 1.1)

SFTP

ISDS (implementace tohoto způsobu komunikace je na dohodě s danou bankou)
Formát dokumentů:

XML (B2C-ISDOC 6.0 / ISDOC 6.0) a PDF s grafickým obrazem dokumentu nebo

pouze XML (B2C-ISDOC 6.0/ ISDOC 6.0) nebo

PDF s metadaty v hlavičce obsahujícími identifikační či případně i fakturační údaje.
Výstavce může zasílat dokumenty buď jednotlivě nebo v dávce.
Datum vydání: duben 2014, aktualizace duben 2015
17/86
4.2.1.1
Definice dávky předávaných dokumentů
Dávka pro přenos dokumentů od výstavce do banky příjemce bude vytvořena ve formě XML souboru (XSD
viz Příloha č. 10.3). Maximální celková velikost dávky (výsledného XML souboru) je 2GB pro přenos pomocí
WS a SFTP protokolu, 10 MB pro přenos kanálem Datových schránek (ISDS) – viz vyhláška č. 194/2009 Sb.
Jmenná konvence pro dávky je „jm_davky.XML“, přičemž jméno_dávky musí být pokaždé pro daného
výstavce unikátní. Platné znaky jsou: [a..z], [A..Z], [0..9]. Extenze je pevně „XML“. Nesplnění konvence je
reportovanou chybou dávky (chybová hláška 10036; dávka se v bance nezpracuje).
4.2.1.2
Popis položek struktury dávky
Grafické schéma struktury dávky:
SupplierID BatchVersion –
CreationTime -
Hash SignedHash -
Batch -
ID výstavce dávky.
Určuje verzi dávky s ohledem na případné další rozšíření. Aktuální hodnota = 1
Informativní datum čas vytvoření dávky. Získává se ze systémového času stroje,
který měl by být synchronizovaný (UTC+01:00).
Formát: YYYY-MM-DD HH:MM:SS (např. 2014-02-11 14:25:15)
Obsahuje hash otisk ze ZIP souboru v base64 (kódování UTF-8). Aktuální hodnota
metody hash funkce = SHA256
Obsahuje hash otisk ze ZIP souboru v base64 (kódování UTF-8). Aktuální hodnota
metody hash funkce = SHA256. Tento Hash je podepsaný kvalifikovaným
certifikátem. Podepsaný hash je převeden do base64.
Obsahuje zip soubor s jednotlivými dokumenty převedeným následně pomocí
base64 (kódování UTF-8) na ASCII.
Datum vydání: duben 2014, aktualizace duben 2015
18/86
4.3
PŘEDÁVANÁ DATA
Jak už bylo uvedeno výše, mohou být strukturovaná data e-faktur a e-dokumentů předávaná do EB buď ve
formátu ISDOC 6.0 nebo vyšším nebo ve zjednodušeném XML formátu B2C-ISDOC 6.0 nebo vyšším.
Struktura B2C-ISDOC 6.0 je odvozena zúžením formátu ISDOC 6.0 (viz www.isdoc.cz) a definice položek je
v obou formátech shodná, a to i co do eventuálních číselníků, které jsou pro položky v plném formátu
ISDOC definovány. Některé položky nepovinné v základním formátu ISDOC mohou být v odvozeném
formátu B2C-ISDOC povinné.
4.3.1
E-faktura ve formátu XML (B2C-ISDOC 6.0)
Grafické schéma struktury podkladů k platbě zaslaná výstavcem ve formátu B2C-ISDOC (XSD viz Příloha č.
10.4):
Datum vydání: duben 2014, aktualizace duben 2015
19/86
Datum vydání: duben 2014, aktualizace duben 2015
20/86
4.3.2
E-dokument ve formátu XML (B2C-ISDOC 6.0)
Grafické schéma struktury dat e-dokumentu B2C-ISDOC zasílaného výstavcem (XSD viz Příloha č. 10.5):
Datum vydání: duben 2014, aktualizace duben 2015
21/86
4.3.3
E-faktura ve formátu PDF s metadaty v hlavičce
Definice množiny položek pro metadata PDF pro e-faktury:
Název položky
DocumentType (=1, …6)
SubDocumentType
TargetConsolidator
ClientOnTargetConsolidator
ClientBankAccount
DocumentID
UUID
IssueDate
Note
LocalCurrency
SupplierID
CustomerName
PayableAmount
ParcialPayment
PaidAmount01
PaymentMeansCode01
PaymentDueDate01
BankAccount01
BankCode01
Name01
IBAN01
BIC01
VariableSymbol01
ConstantSymbol01
SpecificSymbol01
….
Typ položky
Integer
String
String
String
String
String
String
Date
String
String
String
String
Decimal
Boolean
Decimal
Integer
Date
String
String
String
String
String
String
String
String
PaidAmount12
PaymentMeansCode12
PaymentDueDate12
BankAccount12
BankCode12
Name12
IBAN12
BIC12
VariableSymbol12
ConstantSymbol12
SpecificSymbol12
Decimal
Integer
Date
String
String
String
String
String
String
String
String
4.3.4
Ekvivalent v B2C-ISDOC
DocumentType
SubDocumentType
TargetConsolidator
ClientOnTargetConsolidator
ClientBankAccount
ID
UUID
IssueDate
Note
LocalCurrency
AccountingSuplierParty/Party/PartyIdentification/ID
AccountingCustomerParty/Party/PartyName/Name
LegalMonetaryTotal/PayableAmount
PaymentMeans/Payment ParcialPayment=False (default=true)
PaymentMeans/Payment/PaidAmount
PaymentMeans/Payment/PaymentMeansCode
PaymentMeans/Payment/Details/PaymentDueDate
PaymentMeans/Payment/Details/BankAccount/ID
PaymentMeans/Payment/Details/BankAccount/BankCode
PaymentMeans/Payment/Details/BankAccount/Name
PaymentMeans/Payment/Details/BankAccount/IBAN
PaymentMeans/Payment/Details/BankAccount/BIC
PaymentMeans/Payment/Details/VariableSymbol
PaymentMeans/Payment/Details/ConstantSymbol
PaymentMeans/Payment/Details/SpecificSymbol
Položky od PaidAmountNN až SpecificSymbolNN se až 12x opakují.
NN nabývá hodnot 01,02,…,12.
PaymentMeans/Payment/PaidAmount
PaymentMeans/Payment/PaymentMeansCode
PaymentMeans/Payment/Details/PaymentDueDate
PaymentMeans/Payment/Details/BankAccount/ID
PaymentMeans/Payment/Details/BankAccount/BankCode
PaymentMeans/Payment/Details/BankAccount/Name
PaymentMeans/Payment/Details/BankAccount/IBAN
PaymentMeans/Payment/Details/BankAccount/BIC
PaymentMeans/Payment/Details/VariableSymbol
PaymentMeans/Payment/Details/ConstantSymbol
PaymentMeans/Payment/Details/SpecificSymbol
E-dokument ve formátu PDF s metadaty v hlavičce
Název položky
DocumentType (= 0)
SubDocumentType
TargetConsolidator
ClientOnTargetConsolidator
ClientBankAccount
DocumentID
UUID
IssueDate
Note
SupplierID
CustomerName
Typ položky
Integer
String
String
String
String
String
String
Date
String
String
String
Ekvivalent v B2C-ISDOC
DocumentType
SubDocumentType
TargetConsolidator
ClientOnTargetConsolidator
ClientBankAccount
ID
UUID
IssueDate
Note
AccountingSuplierParty/Party/PartyIdentification/ID
AccountingCustomerParty/Party/PartyName/Name
Datum vydání: duben 2014, aktualizace duben 2015
22/86
4.3.5
Použité číselníky
4.3.5.1
Číselníky pro typ dokumentu e-faktura
Typ dokladu
(DocumentType
v dokumentu Invoice)
Popis dokladu
(SubDocumentType
v dokumentu Invoice)
Znaménko u
částky k
zaplacení
1 Faktura – daňový doklad
1 Faktura bez vyúčtování
záloh
+/-
Poznámka
Generování JPÚ
“+“ Faktura bez
vyúčtování záloh
ANO
2 Doplatek - Faktura s
vyúčtováním záloh
“+“ Doplatek - Faktura s
vyúčtováním záloh
ANO
3 Přeplatek - Faktura s
vyúčtováním záloh
“-“ Přeplatek - Faktura
s vyúčtováním záloh
NE
4 Upomínka (nedaňová
platební)
"+" Upomínka
ANO
2 Opravný daňový doklad
(dobropis)
-
NE
3 Opravný daňový doklad
(vrubopis)
+
ANO
+
ANO
+
ANO
-
NE
4 Zálohová faktura
(nedaňový zálohový list)
5 Zálohová faktura (nedaňový
zálohový list)
6 Výzva k platbě
7 Zálohová platba
5 Daňový doklad při přijetí
platby (daňový zálohový
list)
6 Opravný daňový doklad
při přijetí platby (dobropis
daňového zálohového
listu)
Pozn.
V případě, že e-faktura je hrazena jinou platební metodou, tak v částce k zaplacení je očekávána hodnota
0,- Kč. Vedle částky k zaplacení se bude předávat i celková částka v poli PayableAmount v metadatech PDF
resp. XML elementu Invoice/LegalMonetaryTotal/PayableAmount, nicméně předávání a zobrazování
celkové částky v EB závisí na dané bance.
4.3.5.2
Číselník pro typ dokumentu e-dokument plněný do položky SubDocumentType.
Kód
0
A
DP
DR
DS
DZ
S
SM
U1
U2
Název dokumentu
Dokument (neplatební dokument bez rozlišení)
Avízo
Daňové potvrzení, Daňový doklad k přijaté platbě
Detailní rozpis
Dopis o stornu
Dopis o změně
Sdělení, informace
Smlouva, dodatek smlouvy
1. Upomínka (neplatební)
2. Upomínka (neplatební)
Datum vydání: duben 2014, aktualizace duben 2015
23/86
Kód
VS
VV
ZA
4.3.6
Název dokumentu
Dopis ve výročí smlouvy
Vyúčtování (neplatební)
Zápočet, platba zápočtem – nedaňový doklad
Potvrzení o přijetí dokumentů zaslaných do EB (banka → výstavce)
Komunikační kanál:

WS, SFTP, e-mail – pro banku implementačně povinné komunikační kanály a volitelné pro výstavce

ISDS – pro banku implementačně volitelný komunikační kanál
Formát: XML
Potvrzení o přijetí dokumentů zaslaných do EB nebo-li notifikační report je XML soubor, ve kterém jsou
předávány výstavci informace o stavu zpracování jak dávky tak jednotlivých faktur v dávce obsažených.
Grafické schéma XML struktury potvrzení o přijetí dávek a dokumentů zaslaných do EB (XSD viz Příloha č.
10.6)
Datum vydání: duben 2014, aktualizace duben 2015
24/86
V položce BatchName je předáváno jméno dávky zaslané výstavcem bance. Toto jméno musí být od
jednoho výstavce, stejně jako UUID dokumentu, unikátní.
Jeden notifikační report může notifikovat více dávek a více jednotlivých dokumentů, což je zajištěno
opakováním elementu Notification.
Příklad notifikace chybné dávky:
<?xml version="1.0" encoding="UTF-8"?>
<Message>
<Notification>
<BankCode>0300</BankCode>
<SupplierID>12345678</SupplierID>
<Batch>
<BatchName>Davka_20140130_1100.xml</BatchName>
<StatusCode>10036</StatusCode>
<StatusDescription> Nekorektní dávka.</StatusDescription>
<DeliveryDate>2014-01-30T11:30:12Z</DeliveryDate>
</Batch>
</Notification>
</Message>
Mezi elementy Batch a Document se v jedné notifikaci jedná o výlučný výběr (choice), což znamená, že je
v daném elementu <Notification> notifikována buď dávka a nebo dokument (e-faktura, e-dokument). To
znamená, že pokud je notifikován dokument, element Batch chybí.
Příklad notifikace dvou faktur:
<?xml version="1.0" encoding="UTF-8"?>
<Message>
<Notification>
<BankCode>0800</BankCode>
<SupplierID>12345678</SupplierID>
<Document>
<DocumentID>FA111111</DocumentID>
<UUID>39140CEC-1939-4164-98D7-C355F9D31665</UUID>
<Status>
<StatusCode>10000</StatusCode>
<StatusDescription> Dokument úspěšně importován </StatusDescription>
<DeliveryDate>2014-01-30T11:50:10Z</DeliveryDate>
</Status>
</Document>
</Notification>
<Notification>
<BankCode>0800</BankCode>
<SupplierID>12345678</SupplierID>
<Document>
<DocumentID>FA111112</DocumentID>
<UUID>6940AD61-4D10-4BAC-802A-98773B344FBF</UUID>
<Status>
<StatusCode>10004</StatusCode>
<StatusDescription>Nezadáno datum splatnosti / platnosti </StatusDescription>
<DeliveryDate>2014-01-30T11:50:15Z</DeliveryDate>
</Status>
</Document>
</Notification>
</Message>
Datum vydání: duben 2014, aktualizace duben 2015
25/86
Do standardu je zahrnuta nepovinná možnost informovat výstavce o tom, že klient dokument nejen
obdržel, ale i přečetl (resp. otevřel). To je umožněno přes výlučný výběr (choice) mezi elementy Status a
ReadingDate.
Datum vydání: duben 2014, aktualizace duben 2015
26/86
Příklad notifikace o přečtení dokumentu z předchozí notifikace:
<?xml version="1.0" encoding="UTF-8"?>
<Message>
<Notification>
<BankCode>0300</BankCode>
<SupplierID>12345678</SupplierID>
<Document>
<DocumentID>FA111111</DocumentID>
<UUID>39140CEC-1939-4164-98D7-C355F9D31665</UUID>
<ReadingDate>2014-01-30T17:20:35Z </ReadingDate>
</Document>
</Notification>
</Message>
4.3.6.1
Číselník stavů zpracování dokumentů zaslaných do EB
StatusCode
10000
Text stavu
Dokument úspěšně importován
10001
Neplatné číslo účtu klienta
10002
10003
10004
10006
10007
10008
10011
10012
10015
10016
10018
10019
10020
10023
10024
10025
10029
10030
10031
10032
10033
10035
10036
10041
10042
10043
10044
10047
10048
Neplatný kód banky klienta
Nezadána fakturovaná částka k zaplacení u e-faktury
Nezadáno datum splatnosti / platnosti
Neplatná identifikace výstavce
Nesprávný/neúplný formát dat
Neplatný elektronický podpis
Neplatné číslo účtu výstavce
Neplatný kód banky výstavce
Neplatná fakturovaná částka
Neplatné datum splatnosti
Neplatný Variabilní symbol
Neplatný Konstantní symbol
Neplatný Specifický symbol
Dokument překročil velikost 400KB
Neplatný formát faktury
Klient nemá k účtu EB
Neplatný prefix čísla účtu výstavce
Neplatný IBAN výstavce
Neplatný prefix čísla účtu klienta
Neplatný IBAN klienta
Neplatný obsah položky typu e-dokumentu (není v seznamu povolených hodnot číselníku)
Neplatná měna
Nekorektní dávka
Číslo účtu klienta není vyplněno
IBAN klienta nepatří k účtu
Nevyplněn účet výstavce
IBAN výstavce nepatří k účtu
Popis dokumentu (položka note) příliš dlouhá nebo nekorektní
Příliš velká dávka (nad 2GB)
Datum vydání: duben 2014, aktualizace duben 2015
27/86
5
DEFINICE WEBOVÝCH SLUŽEB PRO KOMUNIKACI SE SYSTÉMY BANKY
Cílem této specifikace je definovat obecné vlastnosti webových služeb pro komunikaci mezi výstavcem a
bankou.
5.1
DATOVÉ TYPY
Datové typy používané v této specifikaci vycházejí z primitivních a odvozených datových typů v definici XML
Schema. Konkrétně:
 Datový typ string je dán definicí http://www.w3.org/TR/xmlschema-2/#string
 Integer je dán http://www.w3.org/TR/xmlschema-2/#integer
 Base64Binary je dán http://www.w3.org/TR/xmlschema-2/#base64Binary
 DateTime je dán http://www.w3.org/TR/xmlschema-2/#dateTime
Ostatní datové typy jsou vždy složenými datovými typy z již definovaných typů.
5.2
KOMUNIKACE S WEBOVÝMI SLUŽBAMI
V této kapitole jsou shrnuty základní vlastnosti komunikace s webovými službami.
5.2.1
Přenosové protokoly
Služby budou dostupné prostřednictvím protokolu SOAP 1.2 nad protokolem HTTP 1.1 a budou využívat
přenosového kódování chunked.
5.2.2
Přílohy zpráv
Dokumenty budou poslány uživateli ve formě:
 XML souborů dle příslušného schématu typu XML Schema

PDF soubory nebo PDF soubory s fakturačními údaji v metadatech
Tyto soubory budou zasílány v elementech SOAP zprávy odpovědi. Pro optimalizaci přenosu bude použito
kódování metodou MTOM (Message Transmission Optimaliation Mechanism).
5.3
ZABEZPEČNÍ A AUTENTIZACE WS
Standard umožňuje více variant/úrovní zabezpečení. Konkrétní realizace bude dána dohodou mezi
výstavcem a bankou.
5.3.1
Varianta 1 – Základní úroveň zabezpečení
Webové služby budou komunikovat prostřednictvím two-way SSL tj. přes protokol HTTPS s dodatečnou
autentizací jménem a heslem na úrovni protokolu SOAP v těle zprávy. Server banky i klientská aplikace
výstavce se budou identifikovat certifikátem od akreditované certifikační autority.
5.3.2
Varianta 2 - Zvýšená úroveň zabezpečení
Webové služby budou komunikovat prostřednictvím one-way SSL tj. přes protokol HTTPS s použitím
serverového certifikátu na straně banky.
Datum vydání: duben 2014, aktualizace duben 2015
28/86
Zabezpečení zprávy se bude řídit dle standardu WS-Security (WSS)
(http://en.wikipedia.org/wiki/WS-Security,
https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wss)
Podporované standardy WS-Security:
a. X.509 certificates tokens (autentizace pomocí elektronického podpisu dle standardu
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0.pdf )
Konkrétní implementace vyššího zabezpečení má dopady do definice WS, WSDL konkrétní služby tedy bude
pro vyšší zabezpečení potřeba příslušně upravit.
Datum vydání: duben 2014, aktualizace duben 2015
29/86
6
PŘEDÁVÁNÍ ŽÁDOSTÍ O AKTIVACI ZE STRANY BANKY A NOTIFIKAČNÍCH
REPORTŮ PROSTŘEDNICTVÍM DOWNLOAD WEBOVÉ SLUŽBY (DOWNLOADWS)
Cílem této specifikace je definovat webovou službu DownloadWS (definice WS viz WSDL Příloha č. 10.8),
která umožní stahování souborů ve formě strukturovaných dat ze systému bank do systému výstavců
dokumentů. Jedná se o strukturovaná data žádostí o aktivaci/deaktivaci k elektronickému zasílání
dokumentů do EB (přihláška/odhláška) a notifikačních reportů. Dále v textu bude obojí označováno
pojmem dokument.
6.1
OPERACE PRO HROMADNÉ STAHOVÁNÍ DOKUMENTŮ
Operace umožní výstavci hromadně stáhnout všechny nové dokumenty daného typu a formátu.
Maximální počet dokumentů, které tato operace umožní stáhnout při jednom volání je 500. Výstavce má
možnost tuto hodnotu snížit uvedením nepovinného parametru.
Návratem operace budou dokumenty odpovídající parametrům požadavku. Odpověď bude také obsahovat
informace o počtu právě přenášených dokumentů a o počtu nových dokumentů daného typu a formátu,
které jsou aktuálně dostupné na serveru.
6.1.1
Hlavička

public
DocumentsResponse
getNewDocuments(DocumentsRequest
documentsRequest)-
Objekty
documentsResponse a documentsRequest zapouzdřují data požadavku a odpovědi.
6.1.2
Popis parametrů požadavku

DocumentsRequest documentsRequest – Objekt zapouzdřující data požadavku. Skládá se z credentials,
documentType, formatType, maxDocumentsNumber a attachment.

Credentials credentials

String username – Uživatelské jméno.

String password – Uživatelské heslo.

Integer documentType
– Obsahuje údaje potřebné k autentifikaci výstavce a ověření jeho práv
k užívání této služby. Skládá se z username a password.
– Identifikuje požadovaný typ dokumentu. Povolené hodnoty a jim
odpovídající typy jsou uvedeny v následující tabulce:
Hodnota
1
2
Typ dokumentu
Aktivace/Deaktivace
Notifikační report
Datum vydání: duben 2014, aktualizace duben 2015
30/86

1
Identifikuje požadovaný formát dokumentu. Povolené hodnoty a jim
odpovídající formáty jsou uvedeny v následující tabulce.
Integer formatType –
Hodnota
1

6.1.3
6.2
Formát dokumentu
XML
– Udává maximální počet dokumentů, který může operace zaslat v
odpovědi. Hodnota maxDocumentsNumber musí být v rozmezí 1 – 500 včetně. Parametr
maxDocumentsNumber je nepovinný. Pokud není uveden, operace vrátí maximálně 500
dokumentů.
Integer maxDocumentsNumber
Popis parametrů odpovědi

DocumentsResponse

Integer remainingDocumentsNumber

Integer responseDocumentsNumber – Udává počet dokumentů přenášených v odpovědi.

Document[] documents

Integer documentId – Jedinečný identifikátor dokumentu.

String fileName – Název souboru.

Base64Binary dataHandler
documentsResponse – Objekt zapouzdřující data odpovědi. Skládá se
z remainingDocumentsNumber, responseDocumentsNumber a libovolného počtu opakování
documents.
– Hodnota udávající, kolik nových dokumentů požadovaného
typu a formátu se ještě na serveru nachází.
– Zapouzdřuje jeden dokument a potřebné metainformace. Skládá se z
documentId, fileName a dataHandler.
– Element zapouzdřující přenášený XML dokument definovaný
příslušným XSD dle typu dokumentu
OPERACE PRO OZNAČENÍ DOKUMENTŮ K OPĚTOVNÉMU STAŽENÍ
Z předchozí zkušenosti vyplývá, že dochází k situacím, kdy výstavce nepřijme zasílaná data korektně. Je tedy
užitečné implementovat metodu, která by umožnila v systému banky označit zvolené dokumenty, které již
byly jednou staženy, speciálním příznakem umožňujícím jejich opětovné stažení předchozí operací
getNewDocuments().
V požadavku výstavce specifikuje dokumenty, které žádá opakovaně stáhnout. V odpovědi obdrží informaci
o tom, kolik dokumentů vyhovovalo jeho požadavkům a je připraveno pro opakované stažení.
1
Teoreticky není tento parametr nutný. Do budoucna ale může vzniknout požadavek na jiné formáty než XML, a pak nebude nutné
měnit volání WS, ale pouze se rozšíří obor hodnot parametru formatType o další hodnotu.
Datum vydání: duben 2014, aktualizace duben 2015
31/86
6.2.1
Operace pro označení dokumentů pomocí časového intervalu
Označí ke stažení všechny dokumenty, které byly přijaty systémem od odesílatele ve zvoleném časovém
intervalu.
6.2.1.1
Hlavička

public MarkDocumentsResponse markDocumentsByTimeRange(MarkDocumentsByTimeRangeRequest
MarkDocumentsByTimeRangeRequest) - Objekty markDocumentsResponse a
markDocumentsByTimeRangeRequest zapouzdřují data požadavku a odpovědi.
6.2.1.2

Popis parametrů požadavku
MarkDocumentsByTimeRangeRequest markDocumentsByTimeRangeRequest
– Objekt zapouzdřující data
požadavku. Skládá se z credentials, dateFrom a dateTo.

Credentials credentials

String username
– Uživatelské jméno.

String password
– Uživatelské heslo.

DateTime dateFrom

DateTime dateTo
6.2.2
– Obsahuje údaje potřebné k autentifikaci uživatele a ověření jeho práv
k užívání této služby. Skládá se z username a password.
– Datum a čas udávající spodní hranici časového intervalu.
– Datum a čas udávající horní hranici časového intervalu.
Popis parametrů odpovědi markDocumentsByTimeRange

MarkDocumentsResponse markDocumentsResponse
– Objekt zapouzdřující data odpovědi. Skládá se
z hodnoty markedDocumentsNumber.

Integer markedDocumentsNumber – Udává počet dokumentů, které vyhovovaly požadavku a byly
označeny příznakem umožňujícím jejich opakované stažení.
6.3
NEÚSPĚŠNÉ VOLÁNÍ OPERACÍ SLUŽBY
Datum vydání: duben 2014, aktualizace duben 2015
32/86
Neúspěšné volání operací služby zaviněná nekorektními vstupními SOAP zprávami či výjimkou při běhu
služby jsou signalizována na úrovni HTTP protokolu takovým stavovým kódem, který nejlépe odpovídá
povaze chyby, která nastala. Význam stavových kódů HTTP protokolu je definován v RFC 2616.
V těle návratové SOAP zprávy vrátí služba SOAP element Fault typu Fault nesoucí informace o chybě.
Datový typ Fault včetně významu jeho prvků jsou definovány v http://www.w3.org/2003/05/soapenvelope/ a http://www.w3.org/TR/2003/REC-soap12-part1-20030624/#soapfault.

Fault Fault – datový typ nesoucí informace o chybě


Faultcode – chybový kód
Reason – popis chyby

Detail – podrobné informace o chybě
Podrobné informace o chybě v elementu detail jsou uloženy v datové struktuře DownloadFault.

DownloadFault downloadFault – návratový kód


Integer errorCode – chybový kód
String errorDescription – popis chyby
errorCode
Popis
-1
-2
-3
-4
-5
-6
-1000
Chyba autentizace uživatele
Chyba autorizace uživatele
Neplatně určené časové rozmezí
Příliš mnoho požadavků na server
Neplatný formát dokumentu
Neplatný typ dokumentu
Jiná chyba
Datum vydání: duben 2014, aktualizace duben 2015
33/86
7
PŘEDÁVÁNÍ E-FAKTUR, E-DOKUMENTŮ A ODPOVĚDÍ NA ŽÁDOSTI O AKTIVACI
PROSTŘEDNICTVÍM UPLOAD WEBOVÉ SLUŽBY (UPLOADWS)
Cílem této specifikace je definovat webovou službu UploadWS (Definice WS viz WSDL Příloha č. 10.7), která
umožní zasílání souborů ve formě strukturovaných dat ze systému výstavců dokumentů do systémů bank.
Jedná se o strukturovaná data dokumentů (e-faktur, e-dokumentů) a odpovědí na žádosti o
aktivaci/deaktivaci (přihláška/odhláška) k elektronickému zasílání dokumentů do EB. Dále v textu bude
obojí označováno pojmem dokument.
7.1
HLAVIČKA METODY

7.2
public UploadResponse upload(UploadRequest request)
POPIS PARAMETRŮ

UploadRequest request – objekt požadavku na upload. Je složen z:

FileContainer [ ] attachments – seznam příloh pro upload.



Credentials credentials – údaje pro autentizaci



2
2
String name – jedinečné jméno přílohy
String dataHandler – data přílohy kódovaná v base64
String username – uživatelské jméno
String password – heslo
FileContainer document – container obsahující dokument pro upload

String name – jméno dokumentu

String dataHandler – data dokumentu kódovaná v base64
Přílohy k určitým strukturovaným datům musí mít jedinečné neduplicitní názvy.
Datum vydání: duben 2014, aktualizace duben 2015
34/86
7.3
NÁVRATOVÉ KÓDY SLUŽBY
7.3.1
Úspěšné volání služby
V případě úspěšného volání služby je stavovou hodnotou přenosového protokolu HTTP hodnota 200 OK.
V SOAP zprávě odpovědi je úspěšnost volání potvrzena stavovým kódem v návratovém elementu typu
UploadResponse.

UploadResponse return – návratový objekt


Integer code – stavový kód
String details – nepovinný popis stavového kódu
Code
0
Popis
Operace byla úspěšně dokončena
Upload Webová služba nevaliduje formální správnost přenášeného dokumentu. Případná chyba v tomto
dokumentu nebude výstavci prostřednictvím UploadWS nikterak signalizována. Pro signalizaci tohoto typu
chyb je definován notifikační report.
7.3.2
Neúspěšné volání služby
Neúspěšné volání služby zaviněná nekorektní vstupní SOAP zprávou či výjimkou při běhu služby jsou
signalizována na úrovni HTTP protokolu takovým stavovým kódem, který nejlépe odpovídá povaze chyby,
která nastala. Význam stavových kódů HTTP protokolu je definován v RFC 2616.
V těle návratové SOAP zprávy vrátí služba SOAP element Fault typu Fault nesoucí informace o chybě.
Datový typ Fault včetně významu jeho prvků jsou definovány v http://www.w3.org/2003/05/soapenvelope/ a http://www.w3.org/TR/2003/REC-soap12-part1-20030624/#soapfault.

Fault Fault – datový typ nesoucí informace o chybě


Faultcode – chybový kód
Reason – popis chyby

Detail – podrobné informace o chybě
Podrobné informace o chybě v elementu detail jsou uloženy v datové struktuře UploadFault.

UploadFault uploadFault – návratový kód


Integer errorCode – chybový kód
String errorDescription – popis chyby
Datum vydání: duben 2014, aktualizace duben 2015
35/86
errorCode
-1
-2
-3
-4
-5
-1000
Popis
Chyba autentizace uživatele
Chyba autorizace uživatele
Neplatný dokument
Příliš mnoho požadavků na server
Duplicitní názvy příloh
Jiná chyba
Všechny uvedené chyby mají za důsledek fakt, že přenášený dokument včetně případných příloh nebyl WS
přijat. Výstavce je o neúspěchu a jeho příčinách informován na úrovni SOAP nebo HTPP a je jeho
odpovědností, aby se po odstranění příčin problému pokusil daný dokument a jeho případné přílohy znovu
odeslat na UploadWS.
Datum vydání: duben 2014, aktualizace duben 2015
36/86
8
KOMUNIKAČNÍ KANÁL SFTP
V této kapitole jsou shrnuty základní vlastnosti SFTP komunikace.
8.1
KOMUNIKAČNÍ PROTOKOL SFTP
Pro SFTP komunikaci bude použitý SSHv2 File Transfer Protocol.
8.2
ZABEZPEČENÍ SFTP
Standard umožňuje více variant/úrovní zabezpečení. Konkrétní realizace je dána dohodou mezi
výstavcem a bankou.
8.2.1
Varianta 1 - Základní úroveň zabezpečení

8.2.2
Autentifikace prostřednictvím RSA veřejných klíčů
Varianta 2 - Zvýšená úroveň zabezpečení



Autentifikace prostřednictvím RSA veřejných klíčů nebo pomocí uživatelského jména a
hesla
Při této variantě je možné předávat dokumenty pouze dávkou
PKI podpis dávky certifikátem registrovaným u dané banky. Dávka s nevalidním PKI
podpisem bude systémem na straně banky odmítnuta a nebude zpracována.
Podporované formáty podpisu jsou:
 CMS (Cryptographic Message Syntax dle standardu
http://tools.ietf.org/html/rfc5652)
 PKCS#7
Datum vydání: duben 2014, aktualizace duben 2015
37/86
9
PŘENOS DAT POMOCÍ ISDS
Přenos cestou ISDS se děje na základě zákona č. 300/2008 Sb., o elektronických úkonech a autorizované
konverzi dokumentů.
Pro přenos dat mezi výstavcem a bankou se dle postavení subjektů komunikace využívá:
- tzv. „Poštovní datová zpráva“ dle §18a zákona č.300/2008 Sb., včetně varianty tzv. „Odpovědní
datová zpráva“,
- „Datová zpráva“ podle §19 zákona č.300/2008 Sb.
Strukturu a další náležitosti „datové zprávy“ i „poštovní datové zprávy“ určuje tzv. „Technická příloha č. 1“
Provozního řádu ISDS. Dávky i jednotlivé dokumenty se přenáší jako přílohy takto definované obálky. Počet
a příloh „zpráv“ není standardem ČBA nijak omezen.
Datové formáty přenášených dávek i jednotlivých dokumentů (tj. PDF a XML), dle tohoto standardu ČBA,
odpovídají povoleným formátům v Příloze č. 3 vyhlášky č. 194/2009 Sb., o stanovení podrobností užívání a
provozování informačního systému datových schránek.
Datum vydání: duben 2014, aktualizace duben 2015
38/86
10 PŘÍLOHY
10.1 Příloha č. 1 - Definice struktury žádosti o aktivaci (deaktivaci) služby ze strany banky
<?xml version="1.0" encoding="UTF-8"?>
<!-Schéma pro B2C aktivace a deaktivace ze strany banky.
Vytvořeno za použití některých položek z ISDOC 6.0. vytvořeného ICT UNIE o.s.
Schema for B2C activations and deactivations from bank side.
Some items from ISDOC 6.0. of ICT UNIE o.s. were used.
Permission to use, copy, modify and distribute this schema and its
documentation for any purpose and without fee is hereby granted in
perpetuity, provided that the above copyright notice and this paragraph
appear in all copies. The copyright holders make no representation about the
suitability of the schema for any purpose. It is provided "as is" without
expressed or implied warranty.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Message">
<xs:annotation>
<xs:documentation xml:lang="cs">Kořenový element.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Subscription" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Element aktivace/deaktivace</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:choice>
<xs:element name="ClientBankAccount " type="xs:string" nillable="false">
<xs:annotation>
<xs:documentation xml:lang="cs">Kompletní číslo bankovního účtu příjemce faktury, tj. předčíslí (6znaků), číslo účtu (10 znaků) a kód banky (4 znaky)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientIBANBankAccount">
<xs:annotation>
<xs:documentation>Kompletní číslo bankovního účtu příjemce faktury ve formátu IBAN a BIC.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="BIC" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Kód banky podle ISO 9362, tzv. SWIFT kód</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IBAN" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Mezinárodní číslo účtu (IBAN)</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
39/86
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:element name="SupplierID" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace příjemce aktivace. IČ odesílatele faktur.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientOnTargetConsolidator" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikátor nebo kombinace více různých identifikátorů klienta v systému výstavce faktur. Tedy např. číslo smluvního účtu.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Activate" type="xs:integer">
<xs:annotation>
<xs:documentation xml:lang="cs">Aktivace – 1 / Deaktivace – 0</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Created" type="xs:dateTime">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum aktivace nebo deaktivace ve formátu YYYY-MM-DDTHH:MM:SSZ. Čas je v časové zóně UTC.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="refNumTran" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Referenční číslo transakce banky
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Datum vydání: duben 2014, aktualizace duben 2015
40/86
10.2 Příloha č. 2 - Definice struktury odpovědi výstavce na žádost o aktivaci (deaktivaci) služby ze strany banky
<?xml version="1.0" encoding="UTF-8"?>
<!-Schéma pro B2C odpovědi na aktivace a deaktivace ze strany banky.
Vytvořeno za použití některých položek z ISDOC 6.0. vytvořeného ICT UNIE o.s.
Schema for B2C answers on activations and deactivations from bank side.
Some items from ISDOC 6.0. of ICT UNIE o.s. were used.
Permission to use, copy, modify and distribute this schema and its
documentation for any purpose and without fee is hereby granted in
perpetuity, provided that the above copyright notice and this paragraph
appear in all copies. The copyright holders make no representation about the
suitability of the schema for any purpose. It is provided "as is" without
expressed or implied warranty.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="Message">
<xs:annotation>
<xs:documentation xml:lang="cs">Kořenový element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ActivationAnswer" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Element aktivace/deaktivace</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:choice>
<xs:element name="ClientBankAccount " type="xs:string" nillable="false">
<xs:annotation>
<xs:documentation xml:lang="cs">Kompletní číslo bankovního účtu příjemce faktury, tj. předčíslí (6znaků), číslo účtu (10 znaků) a kód banky (4 znaky)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientIBANBankAccount">
<xs:annotation>
<xs:documentation>Kompletní číslo bankovního účtu příjemce faktury ve formátu IBAN a BIC.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="BIC" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Kód banky podle ISO 9362, tzv. SWIFT kód</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IBAN" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Mezinárodní číslo účtu (IBAN)</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
Datum vydání: duben 2014, aktualizace duben 2015
41/86
</xs:complexType>
</xs:element>
</xs:choice>
<xs:element name="SupplierID" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace příjemce aktivace. IČ odesílatele faktur.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientOnTargetConsolidator" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikátor nebo kombinace více různých identifikátorů klienta v systému výstavce faktur. Tedy např. číslo smluvního účtu.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Activated" type="xs:integer">
<xs:annotation>
<xs:documentation xml:lang="cs">Aktivováno – 1 / Neaktivováno – 0</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StatusCode" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Důvod neaktivace</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StatusDescription" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Důvod neaktivace</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Created" type="xs:dateTime">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum aktivace nebo deaktivace ve formátu YYYY-MM-DDTHH:MM:SSZ. Čas je v časové zóně UTC.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="refNumTran" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Referenční číslo transakce.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Datum vydání: duben 2014, aktualizace duben 2015
42/86
10.3 Příloha č. 3 – Definice struktury dávky
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="EBPPBatch">
<xs:complexType>
<xs:sequence>
<xs:element name="Header">
<xs:complexType>
<xs:sequence>
<xs:element name="SupplierID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([0-9]){8}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element type="xs:positiveInteger" name="BatchVersion"/>
<xs:element type="xs:dateTime" name="CreationTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Data">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:base64Binary" name="Hash"/>
<xs:element type="xs:base64Binary" name="Batch"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Datum vydání: duben 2014, aktualizace duben 2015
43/86
10.3.1
Příklady dávek
Příklad podepsané dávky
<EBPPBatch>
<Header>
<SupplierID>{id vystavce}</ SupplierID>
<BatchVersion>{verze davky}</BatchVersion>
<CreationTime>{datum a cas vytvoreni davky}</CreationTime>
</Header>
<Data>
<SignedHash>{Podepsaný hash otisk ze ZIP souboru v base64, kodovani UTF-8}</SignedHash>
<Batch>{zip v base64, kodovani UTF-8}</Batch>
</Data>
</EBPPBatch>
Příklad nepodepsané dávky
<EBPPBatch>
<Header>
<SupplierID>{id vystavce}</ SupplierID>
<BatchVersion>{verze davky}</BatchVersion>
<CreationTime>{datum a cas vytvoreni davky}</CreationTime>
</Header>
<Data>
<Hash>{hash otisk ze ZIP souboru v base64, kodovani UTF-8}</Hash>
<Batch>{zip v base64, kodovani UTF-8}</Batch>
</Data>
</EBPPBatch>
Datum vydání: duben 2014, aktualizace duben 2015
44/86
10.4 Příloha č. 4 - Definice struktury podkladů k platbě zaslaná výstavcem
<?xml version="1.0" encoding="UTF-8"?>
<!-Schéma pro B2C fakturu. Vytvořeno na bázi ISDOC 6.0. vytvořeného ICT UNIE o.s.
Schema for B2C invoice. Based on ISDOC 6.0. of ICT UNIE o.s.
Permission to use, copy, modify and distribute this schema and its
documentation for any purpose and without fee is hereby granted in
perpetuity, provided that the above copyright notice and this paragraph
appear in all copies. The copyright holders make no representation about the
suitability of the schema for any purpose. It is provided "as is" without
expressed or implied warranty.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://isdoc.cz/namespace/2013" xmlns:isdoc="http://isdoc.cz/namespace/2013" targetNamespace="http://isdoc.cz/namespace/2013"
elementFormDefault="qualified" version="6.0" xml:lang="cs">
<xs:simpleType name="VersionType">
<xs:annotation>
<xs:documentation xml:lang="cs">Číslo verze ISDOC</xs:documentation>
<xs:documentation xml:lang="en">ISDOC version number</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]+\.[0-9]+(\.[0-9]+)?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DocumentTypeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Typ dokumentu</xs:documentation>
<xs:documentation xml:lang="en">Document type</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:enumeration value="1">
<xs:annotation>
<xs:documentation xml:lang="cs">Faktura - daňový doklad</xs:documentation>
<xs:documentation xml:lang="en">invoice</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="2">
<xs:annotation>
<xs:documentation xml:lang="cs">Opravný daňový doklad (dobropis)</xs:documentation>
<xs:documentation xml:lang="en">credit note</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="3">
<xs:annotation>
<xs:documentation xml:lang="cs">Opravný daňový doklad (vrubopis)</xs:documentation>
<xs:documentation xml:lang="en">debit note</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="4">
Datum vydání: duben 2014, aktualizace duben 2015
45/86
<xs:annotation>
<xs:documentation xml:lang="cs">Zálohová faktura (nedaňový zálohový list)</xs:documentation>
<xs:documentation xml:lang="en">proforma invoice (no VAT)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="5">
<xs:annotation>
<xs:documentation xml:lang="cs">Daňový doklad při přijetí platby (daňový zálohový list)</xs:documentation>
<xs:documentation xml:lang="en">advance invoice (with VAT)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="6">
<xs:annotation>
<xs:documentation xml:lang="cs">Opravný daňový doklad při přijetí platby (dobropis DZL)</xs:documentation>
<xs:documentation xml:lang="en">credit note for advance invoice (with VAT)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="7">
<xs:annotation>
<xs:documentation xml:lang="cs">Zjednodušený daňový doklad</xs:documentation>
<xs:documentation xml:lang="en">simplified tax document</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SubDocumentTypeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Podrobnější typ dokumentu. Číselník udržuje a zveřejňuje subjekt identifikovaný v SubDocumentTypeOrigin.</xs:documentation>
<xs:documentation xml:lang="en">Document subtype. Codelist is maintained and published by subject specified in SubDocumentTypeOrigin.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="SubDocumentTypeOriginType">
<xs:annotation>
<xs:documentation xml:lang="cs">Správce číselníku podrobnějšího typu dokumentu.</xs:documentation>
<xs:documentation xml:lang="en">Maintainer of subdocument type code list.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="TargetConsolidatorType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace cílového konsolidátora. Číselník je rozšířený číselník kódů bank a udržuje a zveřejňuje ho ČBA, používá se převážně v B2C systémech velkých výstavců
faktur.</xs:documentation>
<xs:documentation xml:lang="en">Identification of target consolidator. Values are extended list of bank codes maintained and published by ČBA.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="ClientOnTargetConsolidatorType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace klienta v systému výstavce, používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Client identification in the issuer system. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
</xs:annotation>
Datum vydání: duben 2014, aktualizace duben 2015
46/86
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="ClientBankAccountType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kompletní číslo bankovního účtu příjemce faktury včetně kódu banky. Používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Complete bank account number of invoice receiver. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="IDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Unikátní identifikátor</xs:documentation>
<xs:documentation xml:lang="en">Unique identifier</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="UUIDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Unikátní identifikátor GUID</xs:documentation>
<xs:documentation xml:lang="en">Unique GUID identifier</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="IssueDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum vystavení</xs:documentation>
<xs:documentation xml:lang="en">Issue date</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:date"/>
</xs:simpleType>
<xs:complexType name="NoteType">
<xs:annotation>
<xs:documentation xml:lang="cs">Poznámka</xs:documentation>
<xs:documentation xml:lang="en">Note</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="languageID" type="xs:language" use="optional">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikátor použitého jazyka (např. "cs" pro češtinu)</xs:documentation>
<xs:documentation xml:lang="en">Language identifier (e.g. "en" for English)</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="LastValidDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum konce platnosti smlouvy</xs:documentation>
<xs:documentation xml:lang="en">Date until contract is valid</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
47/86
</xs:annotation>
<xs:restriction base="xs:date"/>
</xs:simpleType>
<xs:complexType name="SupplementsListType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kolekce příloh dokladu. Jedna z nich může být náhled, je označena pomocí preview="true"</xs:documentation>
<xs:documentation xml:lang="en">Collection of document attachments. Exactly one attachment can be document preview marked by preview="true"</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Supplement" type="SupplementType">
<xs:annotation>
<xs:documentation xml:lang="cs">Příloha dokladu</xs:documentation>
<xs:documentation xml:lang="en">Document attachment</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SupplementType">
<xs:annotation>
<xs:documentation xml:lang="cs">Příloha dokladu</xs:documentation>
<xs:documentation xml:lang="en">Document attachment</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Filename" type="FilenameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Jméno a cesta k souboru</xs:documentation>
<xs:documentation xml:lang="en">File name and path</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DigestMethod" type="DigestMethodType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace metody použité při výpočtu otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest method identification</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DigestValue" type="DigestValueType">
<xs:annotation>
<xs:documentation xml:lang="cs">Hodnota otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest value</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="preview" type="BooleanType">
<xs:annotation>
<xs:documentation xml:lang="cs">Je daná příloha náhledem dokladu</xs:documentation>
<xs:documentation xml:lang="en">Is this attachment document preview</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="FilenameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Jméno a cesta k souboru</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
48/86
<xs:documentation xml:lang="en">File name and path</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:complexType name="DigestMethodType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace metody použité při výpočtu otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest method identification</xs:documentation>
</xs:annotation>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikátory jednotlivých algoritmů jsou definovány v http://www.w3.org/TR/xmldsig-core/#sec-AlgID</xs:documentation>
<xs:documentation xml:lang="en">Algorithm identifiers are defined in http://www.w3.org/TR/xmldsig-core/#sec-AlgID</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="DigestValueType">
<xs:annotation>
<xs:documentation xml:lang="cs">Hodnota otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest value</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="BooleanType">
<xs:annotation>
<xs:documentation xml:lang="cs">Typ boolean, dovolené hodnoty jsou jen "true" a "false", tj. není podporováno "0" a "1" jako u zabudovaného typu xs:boolean</xs:documentation>
<xs:documentation xml:lang="en">Boolean datatype. Permitted values are only "true" and "false". Values "0" and "1" which are in a value space of built-in xs:boolean type are not supported</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:boolean">
<xs:pattern value="true|false"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="UserIDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Uživatelské číslo firmy/provozovny</xs:documentation>
<xs:documentation xml:lang="en">User defined company/workplace number</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="NameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Název</xs:documentation>
<xs:documentation xml:lang="en">A character string that constitutes the distinctive designation of a person, place, thing or concept</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="CurrencyCodeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kód měny</xs:documentation>
<xs:documentation xml:lang="en">Currency code</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
Datum vydání: duben 2014, aktualizace duben 2015
49/86
<xs:length value="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AmountType">
<xs:annotation>
<xs:documentation xml:lang="cs">Částka</xs:documentation>
<xs:documentation xml:lang="en">Amount</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:decimal"/>
</xs:simpleType>
<xs:simpleType name="DescriptionType">
<xs:annotation>
<xs:documentation xml:lang="cs">Popis položky</xs:documentation>
<xs:documentation xml:lang="en">Item description</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="VariableSymbolType">
<xs:annotation>
<xs:documentation xml:lang="cs">Variabilní symbol</xs:documentation>
<xs:documentation xml:lang="en">Variable symbol (distinctive symbol of payment, typically number of invoice). Used for payment inside of the Czech Republic.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="PaymentMeansCodeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Způsob platby</xs:documentation>
<xs:documentation xml:lang="en">The set of valid means of paying the debt incurred</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:enumeration value="10">
<xs:annotation>
<xs:documentation xml:lang="cs">Platba v hotovosti</xs:documentation>
<xs:documentation xml:lang="en">Cash payment</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="20">
<xs:annotation>
<xs:documentation xml:lang="cs">Platba šekem</xs:documentation>
<xs:documentation xml:lang="en">Cheque payment</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="31">
<xs:annotation>
<xs:documentation xml:lang="cs">Credit transfer</xs:documentation>
<xs:documentation xml:lang="en">Credit transfer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42">
<xs:annotation>
<xs:documentation xml:lang="cs">Převod na účet</xs:documentation>
<xs:documentation xml:lang="en">Money transfer to an account</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
50/86
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="48">
<xs:annotation>
<xs:documentation xml:lang="cs">Platba kartou</xs:documentation>
<xs:documentation xml:lang="en">Card payment</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="49">
<xs:annotation>
<xs:documentation xml:lang="cs">Direct debit</xs:documentation>
<xs:documentation xml:lang="en">Direct debit</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="50">
<xs:annotation>
<xs:documentation xml:lang="cs">Platba dobírkou</xs:documentation>
<xs:documentation xml:lang="en">Payment by postgiro</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="97">
<xs:annotation>
<xs:documentation xml:lang="cs">Zaúčtování mezi partnery</xs:documentation>
<xs:documentation xml:lang="en">Composition between partners</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="PaymentDueDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum splatnosti</xs:documentation>
<xs:documentation xml:lang="en">Due date</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:date"/>
</xs:simpleType>
<xs:simpleType name="BankCodeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kód lokální banky</xs:documentation>
<xs:documentation xml:lang="en">Bank code</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="IBANType">
<xs:annotation>
<xs:documentation xml:lang="cs">Mezinárodní číslo účtu (IBAN)</xs:documentation>
<xs:documentation xml:lang="en">International bank account number (IBAN)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="BICType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kód banky podle ISO 9362, tzv. SWIFT kód</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
51/86
<xs:documentation xml:lang="en">Bank identifier code as defined in ISO 9362</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="ConstantSymbolType">
<xs:annotation>
<xs:documentation xml:lang="cs">Konstantní symbol nebo platební titul</xs:documentation>
<xs:documentation xml:lang="en">Constant symbol (used for payment inside of the Czech Republic)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="SpecificSymbolType">
<xs:annotation>
<xs:documentation xml:lang="cs">Specifický symbol</xs:documentation>
<xs:documentation xml:lang="en">Specific symbol (used for payment inside of the Czech Republic)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:group name="BankAccount">
<xs:annotation>
<xs:documentation xml:lang="cs">Informace o bankovním účtu</xs:documentation>
<xs:documentation xml:lang="en">Information about a bank account</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:sequence>
<xs:element name="ID" type="IDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Číslo účtu lokální banky</xs:documentation>
<xs:documentation xml:lang="en">Account number</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BankCode" type="BankCodeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kód lokální banky</xs:documentation>
<xs:documentation xml:lang="en">Bank code</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Name" type="NameType" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Název</xs:documentation>
<xs:documentation xml:lang="en">A character string that constitutes the distinctive designation of a person, place, thing or concept</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:sequence>
<xs:element name="IBAN" type="IBANType">
<xs:annotation>
<xs:documentation xml:lang="cs">Mezinárodní číslo účtu (IBAN)</xs:documentation>
<xs:documentation xml:lang="en">International bank account number (IBAN)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BIC" type="BICType">
Datum vydání: duben 2014, aktualizace duben 2015
52/86
<xs:annotation>
<xs:documentation xml:lang="cs">Kód banky podle ISO 9362, tzv. SWIFT kód</xs:documentation>
<xs:documentation xml:lang="en">Bank identifier code as defined in ISO 9362</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:choice>
</xs:group>
<xs:element name="Invoice">
<xs:annotation>
<xs:documentation xml:lang="cs">Hlavní element dokumentu, jeho subtyp viz položka DocumentType</xs:documentation>
<xs:documentation xml:lang="en">Document root element, subtype is stored in DocumentType element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="DocumentType" type="DocumentTypeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Typ dokumentu</xs:documentation>
<xs:documentation xml:lang="en">Document type</xs:documentation>
</xs:annotation>
</xs:element>
<xs:sequence minOccurs="0">
<xs:element name="SubDocumentType" type="SubDocumentTypeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Podrobnější typ dokumentu. Číselník udržuje a zveřejňuje subjekt identifikovaný v SubDocumentTypeOrigin.</xs:documentation>
<xs:documentation xml:lang="en">Document subtype. Codelist is maintained and published by subject specified in SubDocumentTypeOrigin.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SubDocumentTypeOrigin" type="SubDocumentTypeOriginType">
<xs:annotation>
<xs:documentation xml:lang="cs">Správce číselníku podrobnějšího typu dokumentu.</xs:documentation>
<xs:documentation xml:lang="en">Maintainer of subdocument type code list.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:element name="TargetConsolidator" type="TargetConsolidatorType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace cílového konsolidátora. Číselník je rozšířený číselník kódů bank a udržuje a zveřejňuje ho ČBA, používá se převážně v B2C systémech velkých výstavců
faktur.</xs:documentation>
<xs:documentation xml:lang="en">Identification of target consolidator. Values are extended list of bank codes maintained and published by ČBA.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientOnTargetConsolidator" type="ClientOnTargetConsolidatorType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace klienta v systému výstavce, používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Client identification in the issuer system. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientBankAccount" type="ClientBankAccountType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kompletní číslo bankovního účtu příjemce faktury včetně kódu banky. Používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Complete bank account number of invoice receiver. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
53/86
</xs:annotation>
</xs:element>
<xs:element name="ID" type="IDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Lidsky čitelné číslo dokladu</xs:documentation>
<xs:documentation xml:lang="en">Human readable document number</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UUID" type="UUIDType">
<xs:annotation>
<xs:documentation xml:lang="cs">GUID identifikace od emitujícího systému</xs:documentation>
<xs:documentation xml:lang="en">GUID identifier produced by emitting system</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IssueDate" type="IssueDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum vystavení</xs:documentation>
<xs:documentation xml:lang="en">Issue date</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Note" type="NoteType">
<xs:annotation>
<xs:documentation xml:lang="cs">Poznámka</xs:documentation>
<xs:documentation xml:lang="en">Note</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="LocalCurrencyCode" type="CurrencyCodeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kód měny</xs:documentation>
<xs:documentation xml:lang="en">Currency code</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AccountingSupplierParty">
<xs:annotation>
<xs:documentation xml:lang="cs">Dodavatel, účetní jednotka</xs:documentation>
<xs:documentation xml:lang="en">Supplier, accounting entity in Commercial Register</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Party">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace subjektu</xs:documentation>
<xs:documentation xml:lang="en">Information about an organization, sub-organization, or individual fulfilling a role in a business process.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="PartyIdentification">
<xs:annotation>
<xs:documentation xml:lang="cs">Element identifikačních položek subjektu (firmy)</xs:documentation>
<xs:documentation xml:lang="en">Information about a party's identification.</xs:documentation>
</xs:annotation>
<xs:complexType>
Datum vydání: duben 2014, aktualizace duben 2015
54/86
<xs:sequence>
<xs:element name="ID" type="IDType">
<xs:annotation>
<xs:documentation xml:lang="cs">IČ</xs:documentation>
<xs:documentation xml:lang="en">Company identification number</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AccountingCustomerParty">
<xs:annotation>
<xs:documentation xml:lang="cs">Příjemce, účetní jednotka</xs:documentation>
<xs:documentation xml:lang="en">Customer, accounting entity in Commercial Register</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Party">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace subjektu</xs:documentation>
<xs:documentation xml:lang="en">Information about an organization, sub-organization, or individual fulfilling a role in a business process.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="PartyName">
<xs:annotation>
<xs:documentation xml:lang="cs">Název subjektu</xs:documentation>
<xs:documentation xml:lang="en">Information about a party's name.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="NameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Název</xs:documentation>
<xs:documentation xml:lang="en">A character string that constitutes the distinctive designation of a person, place, thing or concept</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
Datum vydání: duben 2014, aktualizace duben 2015
55/86
<xs:element name="LegalMonetaryTotal">
<xs:annotation>
<xs:documentation xml:lang="cs">Kolekce celkových částek na dokladu končící položkou částka k zaplacení</xs:documentation>
<xs:documentation xml:lang="en">Collection of total amounts on document ending with payable amount</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="PayableAmount" type="AmountType">
<xs:annotation>
<xs:documentation xml:lang="cs">K zaplacení v tuzemské měně</xs:documentation>
<xs:documentation xml:lang="en">Payable amount in a local currency</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PaymentMeans">
<xs:annotation>
<xs:documentation xml:lang="cs">Kolekce plateb</xs:documentation>
<xs:documentation xml:lang="en">Information about payment means</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Payment" maxOccurs="12">
<xs:annotation>
<xs:documentation xml:lang="cs">Platba</xs:documentation>
<xs:documentation xml:lang="en">Information directly relating to a specific payment</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="PaidAmount" type="AmountType">
<xs:annotation>
<xs:documentation xml:lang="cs">Částka k zaplacení</xs:documentation>
<xs:documentation xml:lang="en">Amount to be paid</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PaymentMeansCode" type="PaymentMeansCodeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Způsob platby</xs:documentation>
<xs:documentation xml:lang="en">The set of valid means of paying the debt incurred</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Details">
<xs:annotation>
<xs:documentation xml:lang="cs">Podrobnosti o platbě</xs:documentation>
<xs:documentation xml:lang="en">Payment details</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:annotation>
<xs:documentation xml:lang="cs">Platba převodem</xs:documentation>
<xs:documentation xml:lang="en">Money transfer</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
56/86
</xs:annotation>
<xs:element name="PaymentDueDate" type="PaymentDueDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum splatnosti</xs:documentation>
<xs:documentation xml:lang="en">Due date</xs:documentation>
</xs:annotation>
</xs:element>
<xs:group ref="BankAccount"/>
<xs:element name="VariableSymbol" type="VariableSymbolType" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Variabilní symbol</xs:documentation>
<xs:documentation xml:lang="en">Variable symbol (distinctive symbol of payment, typically number of invoice). Used for payment inside of the Czech Republic.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ConstantSymbol" type="ConstantSymbolType" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Konstantní symbol nebo platební titul</xs:documentation>
<xs:documentation xml:lang="en">Constant symbol (used for payment inside of the Czech Republic)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SpecificSymbol" type="SpecificSymbolType" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Specifický symbol</xs:documentation>
<xs:documentation xml:lang="en">Specific symbol (used for payment inside of the Czech Republic)</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="partialPayment" type="BooleanType">
<xs:annotation>
<xs:documentation xml:lang="cs">Je povolena částečná platba</xs:documentation>
<xs:documentation xml:lang="en">Flag indicating that partial payment is permitted</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SupplementsList" type="SupplementsListType" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Kolekce příloh dokladu. Jedna z nich může být náhled, je označena pomocí preview="true"</xs:documentation>
<xs:documentation xml:lang="en">Collection of document attachments. Exactly one attachment can be document preview marked by preview="true"</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="version" type="VersionType" use="required">
<xs:annotation>
<xs:documentation xml:lang="cs">Číslo verze B2C-ISDOC</xs:documentation>
<xs:documentation xml:lang="en">ISDOC version number</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
57/86
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>
Datum vydání: duben 2014, aktualizace duben 2015
58/86
10.5 Příloha č. 5 - Definice struktury e-dokumentů
<?xml version="1.0" encoding="UTF-8"?>
<!-Schéma pro B2C e-dokument. Vytvořeno na bázi ISDOC 6.0. vytvořeného ICT UNIE o.s.
Schema for B2C e-document. Based on ISDOC 6.0. of ICT UNIE o.s.
Permission to use, copy, modify and distribute this schema and its
documentation for any purpose and without fee is hereby granted in
perpetuity, provided that the above copyright notice and this paragraph
appear in all copies. The copyright holders make no representation about the
suitability of the schema for any purpose. It is provided "as is" without
expressed or implied warranty.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://isdoc.cz/namespace/2013" xmlns:isdoc="http://isdoc.cz/namespace/2013" targetNamespace="http://isdoc.cz/namespace/2013"
elementFormDefault="qualified" version="6.0" xml:lang="cs">
<xs:simpleType name="VersionType">
<xs:annotation>
<xs:documentation xml:lang="cs">Číslo verze ISDOC</xs:documentation>
<xs:documentation xml:lang="en">ISDOC version number</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]+\.[0-9]+(\.[0-9]+)?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SubDocumentTypeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Podrobnější typ dokumentu. Číselník udržuje a zveřejňuje subjekt identifikovaný v SubDocumentTypeOrigin.</xs:documentation>
<xs:documentation xml:lang="en">Document subtype. Codelist is maintained and published by subject specified in SubDocumentTypeOrigin.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="SubDocumentTypeOriginType">
<xs:annotation>
<xs:documentation xml:lang="cs">Správce číselníku podrobnějšího typu dokumentu.</xs:documentation>
<xs:documentation xml:lang="en">Maintainer of subdocument type code list.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="TargetConsolidatorType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace cílového konsolidátora. Číselník je rozšířený číselník kódů bank a udržuje a zveřejňuje ho ČBA, používá se převážně v B2C systémech velkých výstavců
faktur.</xs:documentation>
<xs:documentation xml:lang="en">Identification of target consolidator. Values are extended list of bank codes maintained and published by ČBA.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="ClientOnTargetConsolidatorType">
Datum vydání: duben 2014, aktualizace duben 2015
59/86
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace klienta v systému výstavce, používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Client identification in the issuer system. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="ClientBankAccountType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kompletní číslo bankovního účtu příjemce faktury včetně kódu banky. Používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Complete bank account number of invoice receiver. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="IDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Unikátní identifikátor</xs:documentation>
<xs:documentation xml:lang="en">Unique identifier</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="UUIDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Unikátní identifikátor GUID</xs:documentation>
<xs:documentation xml:lang="en">Unique GUID identifier</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="IssueDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum vystavení</xs:documentation>
<xs:documentation xml:lang="en">Issue date</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:date"/>
</xs:simpleType>
<xs:complexType name="NoteType">
<xs:annotation>
<xs:documentation xml:lang="cs">Poznámka</xs:documentation>
<xs:documentation xml:lang="en">Note</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:extension base="xs:string"/>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="LastValidDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum konce platnosti dokumentu</xs:documentation>
<xs:documentation xml:lang="en">Date until document is valid</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:date"/>
</xs:simpleType>
Datum vydání: duben 2014, aktualizace duben 2015
60/86
<xs:complexType name="SupplementsListType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kolekce příloh dokladu. Jedna z nich může být náhled, je označena pomocí preview="true"</xs:documentation>
<xs:documentation xml:lang="en">Collection of document attachments. Exactly one attachment can be document preview marked by preview="true"</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Supplement" type="SupplementType">
<xs:annotation>
<xs:documentation xml:lang="cs">Příloha dokladu</xs:documentation>
<xs:documentation xml:lang="en">Document attachment</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SupplementType">
<xs:annotation>
<xs:documentation xml:lang="cs">Příloha dokladu</xs:documentation>
<xs:documentation xml:lang="en">Document attachment</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Filename" type="FilenameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Jméno a cesta k souboru</xs:documentation>
<xs:documentation xml:lang="en">File name and path</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DigestMethod" type="DigestMethodType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace metody použité při výpočtu otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest method identification</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DigestValue" type="DigestValueType">
<xs:annotation>
<xs:documentation xml:lang="cs">Hodnota otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest value</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="preview" type="BooleanType">
<xs:annotation>
<xs:documentation xml:lang="cs">Je daná příloha náhledem dokladu</xs:documentation>
<xs:documentation xml:lang="en">Is this attachment document preview</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="FilenameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Jméno a cesta k souboru</xs:documentation>
<xs:documentation xml:lang="en">File name and path</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
Datum vydání: duben 2014, aktualizace duben 2015
61/86
</xs:simpleType>
<xs:complexType name="DigestMethodType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace metody použité při výpočtu otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest method identification</xs:documentation>
</xs:annotation>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikátory jednotlivých algoritmů jsou definovány v http://www.w3.org/TR/xmldsig-core/#sec-AlgID</xs:documentation>
<xs:documentation xml:lang="en">Algorithm identifiers are defined in http://www.w3.org/TR/xmldsig-core/#sec-AlgID</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:simpleType name="DigestValueType">
<xs:annotation>
<xs:documentation xml:lang="cs">Hodnota otisku přílohy</xs:documentation>
<xs:documentation xml:lang="en">Attachment digest value</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="BooleanType">
<xs:annotation>
<xs:documentation xml:lang="cs">Typ boolean, dovolené hodnoty jsou jen "true" a "false", tj. není podporováno "0" a "1" jako u zabudovaného typu xs:boolean</xs:documentation>
<xs:documentation xml:lang="en">Boolean datatype. Permitted values are only "true" and "false". Values "0" and "1" which are in a value space of built-in xs:boolean type are not supported</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:boolean">
<xs:pattern value="true|false"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Název</xs:documentation>
<xs:documentation xml:lang="en">A character string that constitutes the distinctive designation of a person, place, thing or concept</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="CommonDocument">
<xs:annotation>
<xs:documentation xml:lang="cs">Hlavní element dokumentu, jeho subtyp viz položka DocumentType</xs:documentation>
<xs:documentation xml:lang="en">Document root element, subtype is stored in DocumentType element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="SubDocumentType" type="SubDocumentTypeType">
<xs:annotation>
<xs:documentation xml:lang="cs">Podrobnější typ dokumentu. Číselník udržuje a zveřejňuje subjekt identifikovaný v SubDocumentTypeOrigin.</xs:documentation>
<xs:documentation xml:lang="en">Document subtype. Codelist is maintained and published by subject specified in SubDocumentTypeOrigin.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SubDocumentTypeOrigin" type="SubDocumentTypeOriginType">
<xs:annotation>
<xs:documentation xml:lang="cs">Správce číselníku podrobnějšího typu dokumentu.</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
62/86
<xs:documentation xml:lang="en">Maintainer of subdocument type code list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="TargetConsolidator" type="TargetConsolidatorType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace cílového konsolidátora. Číselník je rozšířený číselník kódů bank a udržuje a zveřejňuje ho ČBA, používá se převážně v B2C systémech velkých výstavců
faktur.</xs:documentation>
<xs:documentation xml:lang="en">Identification of target consolidator. Values are extended list of bank codes maintained and published by ČBA.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientOnTargetConsolidator" type="ClientOnTargetConsolidatorType">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace klienta v systému výstavce, používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Client identification in the issuer system. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ClientBankAccount" type="ClientBankAccountType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kompletní číslo bankovního účtu příjemce faktury včetně kódu banky. Používá se převážně v B2C systémech velkých výstavců faktur.</xs:documentation>
<xs:documentation xml:lang="en">Complete bank account number of invoice receiver. Used mainly in B2C systems of companies issuing large volume of invoices.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ID" type="IDType">
<xs:annotation>
<xs:documentation xml:lang="cs">Lidsky čitelné číslo dokladu</xs:documentation>
<xs:documentation xml:lang="en">Human readable document number</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UUID" type="UUIDType">
<xs:annotation>
<xs:documentation xml:lang="cs">GUID identifikace od emitujícího systému</xs:documentation>
<xs:documentation xml:lang="en">GUID identifier produced by emitting system</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IssueDate" type="IssueDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum vystavení</xs:documentation>
<xs:documentation xml:lang="en">Issue date</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="LastValidDate" type="LastValidDateType">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum konce platnosti dokumentu</xs:documentation>
<xs:documentation xml:lang="en">Date until document is valid</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Note">
<xs:annotation>
<xs:documentation xml:lang="cs">Poznámka</xs:documentation>
<xs:documentation xml:lang="en">Note</xs:documentation>
</xs:annotation>
<xs:complexType>
Datum vydání: duben 2014, aktualizace duben 2015
63/86
<xs:complexContent>
<xs:extension base="NoteType">
<xs:attribute name="languageID" type="xs:language" use="optional">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikátor použitého jazyka (např. "cs" pro češtinu)</xs:documentation>
<xs:documentation xml:lang="en">Language identifier (e.g. "en" for English)</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="AccountingSupplierParty">
<xs:annotation>
<xs:documentation xml:lang="cs">Dodavatel, účetní jednotka</xs:documentation>
<xs:documentation xml:lang="en">Supplier, accounting entity in Commercial Register</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Party">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace subjektu</xs:documentation>
<xs:documentation xml:lang="en">Information about an organization, sub-organization, or individual fulfilling a role in a business process.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="PartyIdentification">
<xs:annotation>
<xs:documentation xml:lang="cs">Element identifikačních položek subjektu (firmy)</xs:documentation>
<xs:documentation xml:lang="en">Information about a party's identification.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="IDType">
<xs:annotation>
<xs:documentation xml:lang="cs">IČ</xs:documentation>
<xs:documentation xml:lang="en">Company identification number</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AccountingCustomerParty">
<xs:annotation>
<xs:documentation xml:lang="cs">Příjemce, účetní jednotka</xs:documentation>
<xs:documentation xml:lang="en">Customer, accounting entity in Commercial Register</xs:documentation>
Datum vydání: duben 2014, aktualizace duben 2015
64/86
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Party">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace subjektu</xs:documentation>
<xs:documentation xml:lang="en">Information about an organization, sub-organization, or individual fulfilling a role in a business process.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="PartyName">
<xs:annotation>
<xs:documentation xml:lang="cs">Název subjektu</xs:documentation>
<xs:documentation xml:lang="en">Information about a party's name.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="NameType">
<xs:annotation>
<xs:documentation xml:lang="cs">Název</xs:documentation>
<xs:documentation xml:lang="en">A character string that constitutes the distinctive designation of a person, place, thing or concept</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SupplementsList" type="SupplementsListType">
<xs:annotation>
<xs:documentation xml:lang="cs">Kolekce příloh dokladu. Jedna z nich může být náhled, je označena pomocí preview="true"</xs:documentation>
<xs:documentation xml:lang="en">Collection of document attachments. Exactly one attachment can be document preview marked by preview="true"</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="version" type="VersionType" use="required">
<xs:annotation>
<xs:documentation xml:lang="cs">Číslo verze B2C-ISDOC</xs:documentation>
<xs:documentation xml:lang="en">ISDOC version number</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>
Datum vydání: duben 2014, aktualizace duben 2015
65/86
10.6 Příloha č. 6 - Definice struktury notifikačního reportu o přijetí dokumentů do EB
<?xml version="1.0" encoding="UTF-8"?>
<!-Schéma pro B2C notifikační reporty.
Vytvořeno za použití některých položek z ISDOC 6.0. vytvořeného ICT UNIE o.s.
Schema for B2C notification reports.
Some items from ISDOC 6.0. of ICT UNIE o.s. were used.
Permission to use, copy, modify and distribute this schema and its
documentation for any purpose and without fee is hereby granted in
perpetuity, provided that the above copyright notice and this paragraph
appear in all copies. The copyright holders make no representation about the
suitability of the schema for any purpose. It is provided "as is" without
expressed or implied warranty.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="Message">
<xs:annotation>
<xs:documentation xml:lang="cs">Kořenový element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Notification" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Notifikační zpráva</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="BankCode" type="xs:string">
<xs:annotation>
<xs:documentation>Kód přijímající banky</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SupplierID" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">IČ výstavce</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element name="Batch">
<xs:annotation>
<xs:documentation>Sekce stavu dávky</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="BatchName" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Unikátní jméno souboru dávky</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StatusCode" type="xs:integer">
Datum vydání: duben 2014, aktualizace duben 2015
66/86
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace stavu zpracování</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StatusDescription" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Popis stavu zpracování</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DeliveryDate" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum a čas zpracování ve formátu YYYY-MM-DDTHH:MM:SSZ. Čas je v časové zóně UTC.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Document">
<xs:annotation>
<xs:documentation>Sekce stavu jednotlivých dokumentů</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="DocumentID" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Lidsky čitelné číslo dokladu</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UUID" type="xs:string" nillable="false">
<xs:annotation>
<xs:documentation xml:lang="cs">GUID identifikace od emitujícího systému</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element name="Status">
<xs:complexType>
<xs:sequence>
<xs:element name="StatusCode" type="xs:integer">
<xs:annotation>
<xs:documentation xml:lang="cs">Identifikace stavu zpracování</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StatusDescription" type="xs:string">
<xs:annotation>
<xs:documentation xml:lang="cs">Popis stavu zpracování</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DeliveryDate" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum a čas zpracování ve formátu YYYY-MM-DDTHH:MM:SSZ. Čas je v časové zóně UTC.</xs:documentation>
</xs:annotation>
</xs:element>
Datum vydání: duben 2014, aktualizace duben 2015
67/86
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ReadingDate" type="xs:dateTime">
<xs:annotation>
<xs:documentation xml:lang="cs">Datum a čas přečtení ve formátu YYYY-MM-DDTHH:MM:SSZ. Čas je v časové zóně UTC.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Datum vydání: duben 2014, aktualizace duben 2015
68/86
10.7 Příloha č. 7 – WSDL pro UploadWS
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://b2c.czech-ba.cz/UploadWS/xsd"
name="UploadWSDefinitions" targetNamespace="http://b2c.czech-ba.cz/UploadWS/xsd">
<wsdl:documentation>UploadWS</wsdl:documentation>
<wsdl:types>
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://b2c.czech-ba.cz/UploadWS/xsd">
<xs:element name="UploadRequest" type="tns:UploadRequest"/>
<xs:complexType name="UploadRequest">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="attachments" nillable="true" type="tns:FileContainer"/>
<xs:element maxOccurs="1" minOccurs="1" name="credentials" nillable="false" type="tns:Credentials"/>
<xs:element maxOccurs="1" minOccurs="1" name="document" nillable="false" type="tns:FileContainer"/>
</xs:sequence>
</xs:complexType>
<xs:element name="UploadResponse" type="tns:UploadResponse"/>
<xs:complexType name="UploadResponse">
<xs:sequence>
<xs:element maxOccurs="1" minOccurs="1" name="code" nillable="false" type="xs:integer"/>
<xs:element maxOccurs="1" minOccurs="0" name="details" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="UploadFault" type="tns:UploadFault"/>
<xs:complexType name="UploadFault">
<xs:sequence>
<xs:element maxOccurs="1" minOccurs="1" name="errorCode" nillable="false" type="xs:integer"/>
<xs:element maxOccurs="1" minOccurs="0" name="errorDescription" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="FileContainer" type="tns:FileContainer"/>
<xs:complexType name="FileContainer">
<xs:sequence>
<xs:element maxOccurs="1" minOccurs="1" name="dataHandler" nillable="false" type="xs:base64Binary"/>
<xs:element maxOccurs="1" minOccurs="1" name="fileName" nillable="false" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Credentials" type="tns:Credentials"/>
<xs:complexType name="Credentials">
<xs:sequence>
<xs:element maxOccurs="1" minOccurs="1" name="password" nillable="false" type="xs:string"/>
<xs:element maxOccurs="1" minOccurs="1" name="username" nillable="false" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
</wsdl:types>
<wsdl:message name="UploadRequestMessage">
<wsdl:part name="request" element="tns:UploadRequest">
</wsdl:part>
</wsdl:message>
<wsdl:message name="UploadResponseMessage">
Datum vydání: duben 2014, aktualizace duben 2015
69/86
<wsdl:part name="response" element="tns:UploadResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="UploadFaultException">
<wsdl:part name="exception" element="tns:UploadFault">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="UploadWSPortType">
<wsdl:operation name="upload">
<wsdl:input message="tns:UploadRequestMessage"/>
<wsdl:output message="tns:UploadResponseMessage"/>
<wsdl:fault name="uploadFaultException" message="tns:UploadFaultException"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="UploadWSBinding" type="tns:UploadWSPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="upload">
<soap:operation soapAction="http://b2c.czech-ba.cz/UploadWS/upload" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="uploadFaultException">
<soap:fault name="uploadFaultException" use="literal"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="UploadWS">
<wsdl:port name="UploadWSPort" binding="tns:UploadWSBinding">
<soap:address location="https://b2c.czech-ba.cz:443/webservices/UploadWS"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Datum vydání: duben 2014, aktualizace duben 2015
70/86
10.7.1
Příklady volání UploadWS
Všechny příklady byly vytvořeny pomocí generovaného clienta z WSDL pomocí SOAP UI. Server byl vygenerován a spuštěn na lokálním stroji. Služby byly spuštěny na lokální instalaci aplikačního serveru GlassFish 4.
Adresa, na které byly služby lokálně dostupné byla: http://WL2001235:8080/
Klient i serverová část byly nastaveny v souladu s požadavky na přenos pomocí MTOM a všechny přenosy probíhali v kódování chunked.
10.7.1.1
Request se samotným XML souborem
POST http://WL2001235:8080/UploadWS/NewWebServiceFromWSDL HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: multipart/related; type="application/xop+xml"; start="<[email protected]>"; start-info="text/xml"; boundary="----=_Part_24_359150494.1391175421571"
SOAPAction: "http://b2c.czech-ba.cz/UploadWS/upload"
MIME-Version: 1.0
Transfer-Encoding: chunked
Host: WL2001235:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
------=_Part_24_359150494.1391175421571
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-ID: <[email protected]>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://b2c.czech-ba.cz/UploadWS/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:UploadRequest>
<xsd:credentials>
<xsd:password>user_password</xsd:password>
<xsd:username>user_username</xsd:username>
</xsd:credentials>
<xsd:document>
<xsd:dataHandler><inc:Include href="cid:document.xml" xmlns:inc="http://www.w3.org/2004/08/xop/include"/></xsd:dataHandler>
<xsd:fileName>document.xml</xsd:fileName>
</xsd:document>
</xsd:UploadRequest>
</soapenv:Body>
</soapenv:Envelope>
------=_Part_24_359150494.1391175421571
Content-Type: text/xml; charset=us-ascii; name=document.xml
Content-Transfer-Encoding: 7bit
Content-ID: <document.xml>
Content-Disposition: attachment; name="document.xml"; filename="document.xml"
<?xml version="1.0" encoding="UTF-8"?>
<Data>
This is a simple XML file.
</Data>
------=_Part_24_359150494.1391175421571--
Datum vydání: duben 2014, aktualizace duben 2015
71/86
10.7.1.2
Request s XML a PDF v příloze
POST http://WL2001235:8080/UploadWS/NewWebServiceFromWSDL HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: multipart/related; type="application/xop+xml"; start="<[email protected]>"; start-info="text/xml"; boundary="----=_Part_14_1621051412.1391173583494"
SOAPAction: "http://b2c.czech-ba.cz/UploadWS/upload"
MIME-Version: 1.0
Transfer-Encoding: chunked
Host: WL2001235:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
------=_Part_14_1621051412.1391173583494
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-ID: <[email protected]>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://b2c.czech-ba.cz/UploadWS/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:UploadRequest>
<!--Zero or more repetitions:-->
<xsd:attachments>
<xsd:dataHandler><inc:Include href="cid:attachment.pdf" xmlns:inc="http://www.w3.org/2004/08/xop/include"/></xsd:dataHandler>
<xsd:fileName>attachment.pdf</xsd:fileName>
</xsd:attachments>
<xsd:credentials>
<xsd:password>user_password</xsd:password>
<xsd:username>user_username</xsd:username>
</xsd:credentials>
<xsd:document>
<xsd:dataHandler><inc:Include href="cid:document.xml" xmlns:inc="http://www.w3.org/2004/08/xop/include"/></xsd:dataHandler>
<xsd:fileName>document.xml</xsd:fileName>
</xsd:document>
</xsd:UploadRequest>
</soapenv:Body>
</soapenv:Envelope>
------=_Part_14_1621051412.1391173583494
Content-Type: multipart/mixed;
boundary="----=_Part_15_1578095711.1391173583505"; name=document.xml
Content-Transfer-Encoding: binary
Content-ID: <document.xml>
Content-Disposition: attachment; name="document.xml"; filename="document.xml"
------=_Part_15_1578095711.1391173583505
Content-ID: <document.xml>
Content-Disposition: attachment; name="document.xml"; filename="document.xml"
<?xml version="1.0" encoding="UTF-8"?>
<Data>
Datum vydání: duben 2014, aktualizace duben 2015
72/86
This is a simple XML file.
</Data>
------=_Part_15_1578095711.1391173583505
Content-ID: <attachment.pdf>
Content-Disposition: attachment; name="attachment.pdf"; filename="attachment.pdf"
%PDF-1.4
%âăĎÓ
3 0 obj
<<
/Producer (PDF-XChange 3.60.0114 \(Windows XP\))
/CreationDate (D:20080905105110+01'00')
>>
endobj
5 0 obj
<<
/Type /FontDescriptor
/FontName /ArialMT
/Flags 32
/FontBBox [-665 -325 2028 1006]
/MissingWidth 278
/StemH 78
/StemV 78
/ItalicAngle 0
/CapHeight 716
/XHeight 519
/Ascent 905
/Descent -212
/Leading 150
/MaxWidth 2000
/AvgWidth 441
>>
endobj
6 0 obj
<<
/Type /Font
/Subtype /TrueType
/BaseFont /ArialMT
/FirstChar 32
/LastChar 117
/Encoding /WinAnsiEncoding
/FontDescriptor 5 0 R
/Widths [ 278 0 0 0 0 0 0 0 0 0 0 0 0 0
278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 722 0 611 0 0 0 0 0 0 0
0 0 667 0 0 0 611 0 0 0 0 0 0 0 0 0
0 0 0 556 0 500 556 556 0 0 556 222 0 0 222 833
556 556 556 0 0 500 278 556]>>
endobj
7 0 obj
<<
Datum vydání: duben 2014, aktualizace duben 2015
73/86
/Filter [/FlateDecode]
/Length 128
>>
stream
xÚ-Š»Â0
10.7.1.3
Request se samotným PDF
POST http://WL2001235:8080/UploadWS/NewWebServiceFromWSDL HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: multipart/related; type="application/xop+xml"; start="<[email protected]>"; start-info="text/xml"; boundary="----=_Part_33_2064770809.1391175751217"
SOAPAction: "http://b2c.czech-ba.cz/UploadWS/upload"
MIME-Version: 1.0
Transfer-Encoding: chunked
Host: WL2001235:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
------=_Part_33_2064770809.1391175751217
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-ID: <[email protected]>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://b2c.czech-ba.cz/UploadWS/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:UploadRequest>
<xsd:credentials>
<xsd:password>user_password</xsd:password>
<xsd:username>user_username</xsd:username>
</xsd:credentials>
<xsd:document>
<xsd:dataHandler><inc:Include href="cid:document.pdf" xmlns:inc="http://www.w3.org/2004/08/xop/include"/></xsd:dataHandler>
<xsd:fileName>document.pdf</xsd:fileName>
</xsd:document>
</xsd:UploadRequest>
</soapenv:Body>
</soapenv:Envelope>
------=_Part_33_2064770809.1391175751217
Content-Type: application/pdf; name=document.pdf
Content-Transfer-Encoding: binary
Content-ID: <document.pdf>
Content-Disposition: attachment; name="document.pdf"; filename="document.pdf"
%PDF-1.4
%âăĎÓ
3 0 obj
<<
/Producer (PDF-XChange 3.60.0114 \(Windows XP\))
/CreationDate (D:20080905105110+01'00')
Datum vydání: duben 2014, aktualizace duben 2015
74/86
>>
endobj
5 0 obj
<<
/Type /FontDescriptor
/FontName /ArialMT
/Flags 32
/FontBBox [-665 -325 2028 1006]
/MissingWidth 278
/StemH 78
/StemV 78
/ItalicAngle 0
/CapHeight 716
/XHeight 519
/Ascent 905
/Descent -212
/Leading 150
/MaxWidth 2000
/AvgWidth 441
>>
endobj
6 0 obj
<<
/Type /Font
/Subtype /TrueType
/BaseFont /ArialMT
/FirstChar 32
/LastChar 117
/Encoding /WinAnsiEncoding
/FontDescriptor 5 0 R
/Widths [ 278 0 0 0 0 0 0 0 0 0 0 0 0 0
278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 722 0 611 0 0 0 0 0 0 0
0 0 667 0 0 0 611 0 0 0 0 0 0 0 0 0
0 0 0 556 0 500 556 556 0 0 556 222 0 0 222 833
556 556 556 0 0 500 278 556]>>
endobj
7 0 obj
<<
/Filter [/FlateDecode]
/Length 128
>>
stream
xÚ-Š»Â0
10.7.1.4
OK response
HTTP/1.1 200 OK
Server: grizzly/2.3.1
Content-Type: text/xml;charset=utf-8
Date: Fri, 31 Jan 2014 13:06:23 GMT
Datum vydání: duben 2014, aktualizace duben 2015
75/86
Transfer-Encoding: chunked
<?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<UploadResponse xmlns="http://b2c.czech-ba.cz/UploadWS/xsd">
<code>0</code>
</UploadResponse>
</S:Body>
</S:Envelope>
10.7.1.5
Failure response
HTTP/1.1 500 Internal Server Error
Server: grizzly/2.3.1
Content-Type: text/xml;charset=utf-8
Date: Fri, 31 Jan 2014 23:41:39 GMT
Connection: close
Transfer-Encoding: chunked
<?xml version='1.0' encoding='UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope">
<faultcode>S:Server</faultcode>
<faultstring>Test upload web service with exception...</faultstring>
<detail>
<UploadFault:UploadFault xmlns:UploadFault="http://b2c.czech-ba.cz/UploadWS/xsd" xmlns="http://b2c.czech-ba.cz/UploadWS/xsd">
<errorCode>-3</errorCode>
<details>Neplatný dokument</details>
</UploadFault:UploadFault>
</detail>
</S:Fault>
</S:Body>
</S:Envelope>
Datum vydání: duben 2014, aktualizace duben 2015
76/86
10.8 Příloha č. 8 – WSDL pro DownloadWS
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://b2c.czech-ba.cz/DownloadWS/xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="DownloadNewDocuments" targetNamespace="http://b2c.czech-ba.cz/DownloadWS/xsd">
<wsdl:types>
<xsd:schema targetNamespace="http://b2c.czech-ba.cz/DownloadWS/xsd">
<xsd:element name="DocumentsRequest" type="tns:DocumentsRequest"/>
<xsd:complexType name="DocumentsRequest">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="credentials" type="tns:Credentials"/>
<xsd:element maxOccurs="1" minOccurs="1" name="documentType" type="xsd:integer"/>
<xsd:element maxOccurs="1" minOccurs="1" name="formatType" type="xsd:integer"/>
<xsd:element maxOccurs="1" minOccurs="0" name="maxDocumentsNumber" type="xsd:integer"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="DocumentsResponse" type="tns:DocumentsResponse"/>
<xsd:complexType name="DocumentsResponse">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="remainingDocumentsNumber" type="xsd:integer"/>
<xsd:element maxOccurs="1" minOccurs="1" name="responseDocumentsNumber" type="xsd:integer"/>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="documents" type="tns:Document"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Credentials">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="username" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="password" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Document">
<xsd:sequence>
<xsd:element name="documentId" type="xsd:integer"/>
<xsd:element name="fileName" type="xsd:string"/>
<xsd:element name="dataHandler" type="xsd:base64Binary"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="MarkDocumentsByTimeRangeRequest" type="tns:MarkDocumentsByTimeRangeRequest"/>
<xsd:complexType name="MarkDocumentsByTimeRangeRequest">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="credentials" type="tns:Credentials"/>
<xsd:element maxOccurs="1" minOccurs="1" name="dateFrom" type="xsd:dateTime"/>
<xsd:element maxOccurs="1" minOccurs="1" name="dateTo" type="xsd:dateTime"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="MarkDocumentsResponse" type="tns:MarkDocumentsResponse"/>
<xsd:complexType name="MarkDocumentsResponse">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="markedDocumentsNumber" type="xsd:integer"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="DownloadFault" type="tns:DownloadFault"/>
<xsd:complexType name="DownloadFault">
Datum vydání: duben 2014, aktualizace duben 2015
77/86
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="errorCode" nillable="false" type="xsd:integer"/>
<xsd:element maxOccurs="1" minOccurs="0" name="errorDescription" nillable="true" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="DocumentsRequestMessage">
<wsdl:part name="request" element="tns:DocumentsRequest"/>
</wsdl:message>
<wsdl:message name="DocumentsResponseMessage">
<wsdl:part name="response" element="tns:DocumentsResponse"/>
</wsdl:message>
<wsdl:message name="MarkDocumentsByTimeRangeRequestMessage">
<wsdl:part name="request" element="tns:MarkDocumentsByTimeRangeRequest"/>
</wsdl:message>
<wsdl:message name="MarkDocumentsByTimeRangeResponseMessage">
<wsdl:part name="response" element="tns:MarkDocumentsResponse"/>
</wsdl:message>
<wsdl:message name="DownloadFaultException">
<wsdl:part name="exception" element="tns:DownloadFault"/>
</wsdl:message>
<wsdl:portType name="DownloadWSPortType">
<wsdl:operation name="getNewDocuments">
<wsdl:input message="tns:DocumentsRequestMessage"/>
<wsdl:output message="tns:DocumentsResponseMessage"/>
<wsdl:fault name="downloadFaultException" message="tns:DownloadFaultException"/>
</wsdl:operation>
<wsdl:operation name="markDocumentsByTimeRange">
<wsdl:input message="tns:MarkDocumentsByTimeRangeRequestMessage"/>
<wsdl:output message="tns:MarkDocumentsByTimeRangeResponseMessage"/>
<wsdl:fault name="downloadFaultException" message="tns:DownloadFaultException"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="DownloadWSBinding" type="tns:DownloadWSPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="getNewDocuments">
<soap:operation soapAction="http://b2c.czech-ba.cz/DownloadWS/getNewDocuments" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="downloadFaultException">
<soap:fault name="downloadFaultException" use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="markDocumentsByTimeRange">
<soap:operation soapAction="http://b2c.czech-ba.cz/DownloadWS/markDocumentsByTimeRange" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
Datum vydání: duben 2014, aktualizace duben 2015
78/86
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="downloadFaultException">
<soap:fault name="downloadFaultException" use="literal"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="DownloadWS">
<wsdl:port name="DownloadWSSOAP" binding="tns:DownloadWSBinding">
<soap:address location="https://b2c.czech-ba.cz:443/webservices/DownloadWS"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Datum vydání: duben 2014, aktualizace duben 2015
79/86
10.8.1
Příklady volání DownloadWS
Všechny příklady byly vytvořeny pomocí generovaného clienta z WSDL pomocí SOAP UI. Server byl vygenerován a spuštěn na lokálním stroji. Služby byly spuštěny na lokální instalaci aplikačního serveru GlassFish 4.
Adresa, na které byly služby lokálně dostupné byla: http://WL2001235:8080/
Klient i serverová část byly nastaveny v souladu s požadavky na přenos pomocí MTOM a všechny přenosy probíhali v kódování chunked.
10.8.1.1
Request se žádostí o nové dokumenty
POST http://WL2001235:8080/DownloadWS/DownloadServiceFromWSDL HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "http://b2c.czech-ba.cz/DownloadWS/getNewDocuments"
Transfer-Encoding: chunked
Host: WL2001235:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://b2c.czech-ba.cz/DownloadWS/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:DocumentsRequest>
<credentials>
<username>username</username>
<password>password</password>
</credentials>
<documentType>2</documentType>
<formatType>1</formatType>
<!--Optional:-->
<maxDocumentsNumber>100</maxDocumentsNumber>
</xsd:DocumentsRequest>
</soapenv:Body>
</soapenv:Envelope>
10.8.1.2
OK response na žádost o nové dokumenty
HTTP/1.1 200 OK
Server: grizzly/2.3.1
Content-Type: text/xml;charset=utf-8
Date: Fri, 31 Jan 2014 13:58:17 GMT
Transfer-Encoding: chunked
<?xml version='1.0' encoding='UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:DocumentsResponse xmlns:ns2="http://b2c.czech-ba.cz/DownloadWS/xsd">
<remainingDocumentsNumber>0</remainingDocumentsNumber>
<responseDocumentsNumber>1</responseDocumentsNumber>
<documents>
<documentId>10</documentId>
<fileName>MyFirstDocument.xml</fileName>
Datum vydání: duben 2014, aktualizace duben 2015
80/86
<dataHandler>AAAAAAAAAAAAAAAAAAAAAAAAAAA=</dataHandler>
</documents>
</ns2:DocumentsResponse>
</S:Body>
</S:Envelope>
10.8.1.3
Failure response na žádost o nové dokumenty
HTTP/1.1 500 Internal Server Error
Server: grizzly/2.3.1
Content-Type: text/xml;charset=utf-8
Date: Fri, 31 Jan 2014 23:41:39 GMT
Connection: close
Transfer-Encoding: chunked
<?xml version='1.0' encoding='UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope">
<faultcode>S:Server</faultcode>
<faultstring>Test download web service with exception...</faultstring>
<detail>
<DownloadFault:DownloadFault xmlns:DownloadFault="http://b2c.czech-ba.cz/DownloadWS/xsd" xmlns="http://b2c.czech-ba.cz/DownloadWS/xsd">
<errorCode>-1</errorCode>
<details>Chyba autentizace uživatele</details>
</DownloadFault:DownloadFault>
</detail>
</S:Fault>
</S:Body>
</S:Envelope>
10.8.1.4
Request se žádostí označit dokumenty pro opětovné stažení dokumentů
POST http://WL2001235:8080/DownloadWS/DownloadServiceFromWSDL HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "http://b2c.czech-ba.cz/DownloadWS/markDocumentsByTimeRange"
Transfer-Encoding: chunked
Host: WL2001235:8080
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://b2c.czech-ba.cz/DownloadWS/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:MarkDocumentsByTimeRangeRequest>
<credentials>
<username>username</username>
<password>password</password>
</credentials>
<dateFrom>2013-05-30T09:30:10-06:00</dateFrom>
Datum vydání: duben 2014, aktualizace duben 2015
81/86
<dateTo>2014-05-30T09:30:10-06:00</dateTo>
</xsd:MarkDocumentsByTimeRangeRequest>
</soapenv:Body>
</soapenv:Envelope>
10.8.1.5
OK response na žádost označit dokumenty pro opětovné stažení dokumentů
HTTP/1.1 200 OK
Server: grizzly/2.3.1
Content-Type: text/xml;charset=utf-8
Date: Fri, 31 Jan 2014 14:00:39 GMT
Transfer-Encoding: chunked
<?xml version='1.0' encoding='UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:MarkDocumentsResponse xmlns:ns2="http://b2c.czech-ba.cz/DownloadWS/xsd">
<markedDocumentsNumber>10</markedDocumentsNumber>
</ns2:MarkDocumentsResponse>
</S:Body>
</S:Envelope>
10.8.1.6
Failure response na žádost označit dokumenty pro opětovné stažení dokumentů
HTTP/1.1 500 Internal Server Error
Server: grizzly/2.3.1
Content-Type: text/xml;charset=utf-8
Date: Fri, 31 Jan 2014 23:41:39 GMT
Connection: close
Transfer-Encoding: chunked
<?xml version='1.0' encoding='UTF-8'?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope">
<faultcode>S:Server</faultcode>
<faultstring>Test download web service with exception...</faultstring>
<detail>
<DownloadFault:DownloadFault xmlns:DownloadFault="http://b2c.czech-ba.cz/DownloadWS/xsd" xmlns="http://b2c.czech-ba.cz/DownloadWS/xsd">
<errorCode>-1</errorCode>
<details>Chyba autentizace uživatele</details>
</DownloadFault:DownloadFault>
</detail>
</S:Fault>
</S:Body>
</S:Envelope>
Datum vydání: duben 2014, aktualizace duben 2015
82/86
10.9
Příloha č. 9 – WSDL pro WS UserAccountStatus
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:tns="http://b2c.czech-ba.cz/UserAccount/2014/Service"
xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsu="http://docs.oasisopen.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="UserAccountStatusService" targetNamespace="http://b2c.czechba.cz/UserAccount/2014/Service" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<xs:schema elementFormDefault="qualified" targetNamespace="http://b2c.czech-ba.cz/UserAccount/2014/Service" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://b2c.czech-ba.cz/UserAccount/2014/Types" />
<xs:element name="UserAccountStatus">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q1="http://b2c.czech-ba.cz/UserAccount/2014/Types" maxOccurs="1" name="request" nillable="false" type="q1:UserAccountStatusRequest" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UserAccountStatusResponse">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q2="http://b2c.czech-ba.cz/UserAccount/2014/Types" maxOccurs="1" name="UserAccountStatusResult" nillable="false" type="q2:UserAccountStatusResponse" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="anyType" nillable="false" type="xs:anyType" />
<xs:element name="anyURI" nillable="false" type="xs:anyURI" />
<xs:element name="base64Binary" nillable="false" type="xs:base64Binary" />
<xs:element name="boolean" nillable="false" type="xs:boolean" />
<xs:element name="byte" nillable="false" type="xs:byte" />
<xs:element name="dateTime" nillable="false" type="xs:dateTime" />
<xs:element name="decimal" nillable="false" type="xs:decimal" />
<xs:element name="double" nillable="false" type="xs:double" />
<xs:element name="float" nillable="false" type="xs:float" />
<xs:element name="int" nillable="false" type="xs:int" />
<xs:element name="long" nillable="false" type="xs:long" />
<xs:element name="QName" nillable="false" type="xs:QName" />
<xs:element name="short" nillable="false" type="xs:short" />
<xs:element name="string" nillable="false" type="xs:string" />
<xs:element name="unsignedByte" nillable="false" type="xs:unsignedByte" />
<xs:element name="unsignedInt" nillable="false" type="xs:unsignedInt" />
<xs:element name="unsignedLong" nillable="false" type="xs:unsignedLong" />
<xs:element name="unsignedShort" nillable="false" type="xs:unsignedShort" />
<xs:element name="char" nillable="false" type="tns:char" />
<xs:simpleType name="char">
<xs:restriction base="xs:int" />
</xs:simpleType>
<xs:element name="duration" nillable="false" type="tns:duration" />
Datum vydání: duben 2014, aktualizace duben 2015
83/86
<xs:simpleType name="duration">
<xs:restriction base="xs:duration">
<xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
<xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
<xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
</xs:restriction>
</xs:simpleType>
<xs:element name="guid" nillable="false" type="tns:guid" />
<xs:simpleType name="guid">
<xs:restriction base="xs:string">
<xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
</xs:restriction>
</xs:simpleType>
<xs:attribute name="FactoryType" type="xs:QName" />
<xs:attribute name="Id" type="xs:ID" />
<xs:attribute name="Ref" type="xs:IDREF" />
</xs:schema>
<xs:schema xmlns:tns="http://b2c.czech-ba.cz/UserAccount/2014/Types" elementFormDefault="qualified" targetNamespace="http://b2c.czech-ba.cz/UserAccount/2014/Types"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="UserAccountStatusRequest">
<xs:sequence>
<xs:element maxOccurs="1" name="Credentials" nillable="false" type="tns:PublisherCredentials" />
<xs:element maxOccurs="1" name="RequestData" nillable="false" type="tns:ChangeRequestData" />
</xs:sequence>
</xs:complexType>
<xs:element name="UserAccountStatusRequest" nillable="false" type="tns:UserAccountStatusRequest" />
<xs:complexType name="PublisherCredentials">
<xs:sequence>
<xs:element maxOccurs="1" name="UserName" nillable="false" type="xs:string" />
<xs:element maxOccurs="1" name="UserPassword" nillable="false" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="PublisherCredentials" nillable="false" type="tns:PublisherCredentials" />
<xs:complexType name="ChangeRequestData">
<xs:sequence>
<xs:element maxOccurs="1" name="BankAccountID" nillable="false" type="tns:BankAccountID" />
<xs:element maxOccurs="1" name="ChangeAction">
<xs:annotation>
<xs:documentation>0=Deactivate, 1=Activate, 2= CheckStatus</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element maxOccurs="1" name="ClientOnTargetConsolidator" nillable="false" type="xs:string" >
<xs:annotation>
<xs:documentation>Referencni cislo vystavce v systemech banky</xs:documentation>
</xs:annotation>
</xs:element>
Datum vydání: duben 2014, aktualizace duben 2015
84/86
<xs:element maxOccurs="1" name="StatusCode">
<xs:annotation>
<xs:documentation>Iniciator deaktivace. 1=na zadost klienta, 2=na zadost vystavce</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element maxOccurs="1" name="StatusCodeSpecified" type="xs:boolean" />
<xs:element maxOccurs="1" name="TraceID" nillable="false" >
<xs:annotation>
<xs:documentation></xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Za-z0-9]{1,40}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="ChangeRequestData" nillable="false" type="tns:ChangeRequestData" />
<xs:complexType name="BankAccountID">
<xs:sequence>
<xs:choice>
<xs:element name="ClientBankAccount">
<xs:annotation>
<xs:documentation>
Cislo uctu(6,10,4) v delce 20 znaku - predcisli, cislo uctu, kod banky - kazda cast doplnena na prislusnou delku 0 zleva (pr:00012300000001230300)
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{20}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ClientIBANBankAccount" type="tns:ClientIBANBankAccount"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:element name="BankAccountID" nillable="false" type="tns:BankAccountID" />
<xs:complexType name="ClientIBANBankAccount">
<xs:sequence>
<xs:element maxOccurs="1" name="BIC" nillable="false" type="xs:string" />
<xs:element maxOccurs="1" name="IBAN" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="ClientIBANBankAccount" nillable="true" type="tns:ClientIBANBankAccount" />
Datum vydání: duben 2014, aktualizace duben 2015
85/86
<xs:complexType name="UserAccountStatusResponse">
<xs:sequence>
<xs:element maxOccurs="1" name="Status" type="xs:int" />
<xs:element maxOccurs="1" name="StatusErrorDescription" nillable="true" type="tns:ErrorStatus" />
</xs:sequence>
</xs:complexType>
<xs:element name="UserAccountStatusResponse" nillable="true" type="tns:UserAccountStatusResponse" />
<xs:complexType name="ErrorStatus">
<xs:sequence>
<xs:element maxOccurs="1" name="ErrorCode" type="xs:int" />
<xs:element maxOccurs="1" name="ErrorDescription" nillable="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:element name="ErrorStatus" nillable="true" type="tns:ErrorStatus" />
</xs:schema>
</wsdl:types>
<wsdl:message name="UserAccountStatusReq">
<wsdl:part name="parameters" element="tns:UserAccountStatus" />
</wsdl:message>
<wsdl:message name="UserAccountStatusRes">
<wsdl:part name="parameters" element="tns:UserAccountStatusResponse" />
</wsdl:message>
<wsdl:portType name="UserAccountStatusPortType">
<wsdl:operation name="UserAccountStatus">
<wsdl:input message="tns:UserAccountStatusReq" />
<wsdl:output message="tns:UserAccountStatusRes" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="UserAccountStatusPortTypeBinding" type="tns:UserAccountStatusPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="UserAccountStatus">
<soap:operation soapAction="UserAccountStatus" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="UserAccountStatusService">
<wsdl:port name="UserAccountStatusPortTypeBindingPort" binding="tns:UserAccountStatusPortTypeBinding">
<soap:address location="https://b2c.czech-ba.cz:443/webservices/UserAccountStatus/" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Datum vydání: duben 2014, aktualizace duben 2015
86/86

Podobné dokumenty

webová služba pro posílání dávek dat do DB NOR a

webová služba pro posílání dávek dat do DB NOR a Přesný popis fungování NORu je uveden – v metodice NOR - „Závazné pokyny NZIS - Národní onkologický registr 1/2006, ÚZIS ČR“. Původní fungování bylo založeno na předávání stanovených podkladů v pap...

Více

Informace o stahovacích službách pro INSPIRE téma Zeměpisná

Informace o stahovacích službách pro INSPIRE téma Zeměpisná předpisů (zákon č. 123/1998 Sb., o právu na informace o životním prostředí, a č.200/1994, o zeměměřictví, v platných zněních). Služby jsou implementovány podle prováděcích pravidel INSPIRE. Stahova...

Více

G-Service

G-Service Web service base classes The base classes are mentioned below. They are used in almost all methods of service. Geis CZ s.r.o. Zemská 211/I 337 01 Ejpovice Czech Republic

Více

XML schémata

XML schémata Vytvoření a použití typu pro měnové

Více

- Příručka programátora Webové služby

- Příručka programátora Webové služby Ve všech operacích, které provádíte, můžete použít svůj unikátní referenční údaj (číslo objednávky, faktury, výdejky) jako ID záznamu. Později můžete sledovat svou přepravu pomocí této reference. P...

Více

DatoveRozhrani_ISORRVD-EVAL_091210

DatoveRozhrani_ISORRVD-EVAL_091210 vystavena v DMZ komunikační brána (aplikace Communic) zajišťující připojení jiných aplikací v síti veřejného Internetu nebo jiných podnikových sítí. Podmínkou pro připojované aplikace je implementa...

Více

Implementace standardu Sensor Observation Service

Implementace standardu Sensor Observation Service Webová služba • = softwarový systém umožňující interakci dvou strojů na síti • popsána ve strojově zpracovatelném formátu (WSDL) • ostatní stroje komunikují způsobem uvedeném v popisu služby (např...

Více

Tutoriál Web Services - Masarykova univerzita

Tutoriál Web Services - Masarykova univerzita Adresace • v jednom serveru může být více služeb • v gSOAP pouze jedna • nalezení služby v Apache Axis

Více

Webové služby

Webové služby zpracovatelném formátu (specificky WSDL). Ostatní systémy interagují s webovou službou způsobem předepsaným jejím popisem za pomoci SOAP zpráv, typicky dopravovaných použitím HTTP s XML serializací...

Více