diff --git a/.rubocop.yml b/.rubocop.yml
index 944fa5f..6388713 100644
--- a/.rubocop.yml
+++ b/.rubocop.yml
@@ -13,7 +13,10 @@ AllCops:
- "**/*.jb"
Exclude:
- "bin/*"
-Documentation:
+ - "documents/**/*"
+ - "test/fixtures/**/*"
+
+Style/Documentation:
Enabled: false
Layout/LineLength:
Max: 140
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3287a86..6b4619e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,8 +2,14 @@
All changes to the gem are documented here.
+## [1.3.0] - 2022-04-07
+ - checked currently available Print Templates codes
+ - enhanced address sheet printing with ability to print ZPL sheets (templates 200, 201 and 202).
+ Result of `AddressSheetGenerator` now have `pdf_content` and `zpl_content`.
+ - found new(?) API from Czech Post , see `documents/B2B-ZSKService-1.4.0.yaml` and https://www.ceskaposta.cz/napi/b2b.
+
## [1.2.8] - 2022-03-22
- - added new response codes
+ - added new response codes
## [1.2.6] - 2020-10-27
diff --git a/Gemfile.lock b/Gemfile.lock
index 183960e..56bd170 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
- czech_post_b2b_client (1.2.8)
+ czech_post_b2b_client (1.3.0)
ox (~> 2.11)
GEM
diff --git a/README.md b/README.md
index 9798a60..f569731 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,11 @@
# FRESH NEWS
+7.4.2022
+Finally there is some online documentation about nAPI of Czech post (https://www.ceskaposta.cz/napi/b2b)
+Not yet checked if this is the same api we use or new one. Seems that authorization is different.
+
+
+26.8.2020
After full usage in production (vyvolej.to, squared.one), we found that Czech POst have trouble with `parcelServiceSync` (maybe `sendParcels` too). When You try to register package with `:customs_documents`, you get `INVALID_BATCH` response with no error, but with `parcelCode`:
```
diff --git a/documents/API_dokumentace.docx b/documents/API_dokumentace.docx
new file mode 100644
index 0000000..093ccd8
Binary files /dev/null and b/documents/API_dokumentace.docx differ
diff --git a/documents/B2B-ZSKService-1.4.0.yaml b/documents/B2B-ZSKService-1.4.0.yaml
new file mode 100644
index 0000000..2f1ae9f
--- /dev/null
+++ b/documents/B2B-ZSKService-1.4.0.yaml
@@ -0,0 +1,2322 @@
+openapi: 3.0.3
+info:
+ version: 1.4.0
+ title: B2B-ZSKService
+
+servers:
+ - url: http://localhost:8080/restservices/ZSKService/v1
+ description: Development server
+ - url: https://b2b-test.postaonline.cz:444/restservices/ZSKService/v1
+ description: Testing server
+ - url: https://b2b.postaonline.cz:444/restservices/ZSKService/v1
+ description: Production server
+tags:
+ - name: sendParcels
+ - name: parcelData
+ - name: parcelDataDetail
+ - name: letter
+ - name: location
+
+paths:
+ /sendParcels:
+ post:
+ description: Post data of sended parcels.
+ Operation is used for send of parcels data to the processing. In case of successful process result, datas are atomatically obtainded to submitters post office. This accepted parcels are displayed on POL application website.
+ In case of unsuccessful proces with some data mistakes, all the parcels are refused/unaccepted.
+ Response of this operation is object AsncResponse with the uniqe ID (idTransaction), which is necessary for get the result of the processing. /
+
+
+ Operace slouží k předání dat k zásilkám do dalšího zpracování. V případě, že zpracování proběhlo úspěšně, jsou data automaticky
+ předána na podací poštu. Takto přijatá data k zásilkám je možno zobrazit prostřednictvím web aplikace POL. V případě, že
+ při zpracování byla zaznamenána chyba v datech, není do dalšího zpracování přijata ani jedna zásilka.
+ Výstupem této operace je objekt AsyncResponse, který obsahuje jednoznačné ID (idTransaction) potřebné pro zjištění výsledku zpracování
+ operace.
+ summary: Send Parcels.
+ tags:
+ - sendParcels
+ operationId: postSendParcels
+ security:
+ - Api-Token: []
+ HMAC_SHA256_Auth: []
+ Authorization-Timestamp: []
+ Authorization-content-SHA256: []
+ parameters:
+ - name: idContract
+ in: query
+ required: false
+ description: ID CCK of submitter. In case of non-completion, the submitter is the caller./ ID CČK složky podavatele. V případě nevyplnění, je podavatelem volající.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SendParcelsRequest'
+ responses:
+ '202':
+ description: Accepted - ready for processing. / Přijato ke zpracování.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/AsyncResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /sendParcels/idTransaction/{idTransaction}:
+ get:
+ description: Get the result of processing the submitted sendParcels information./
+
+ Operace slouží ke zjištění výsledku zpracování dat předaných prostřednictvím sendParcels.
+
+ summary: Get result of sendParcesls
+ tags:
+ - sendParcels
+ operationId: getSendParcels
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ parameters:
+ - name: idTransaction
+ in: path
+ required: true
+ description: Transaction ID assigned by the B2B module (asynchronous call). / ID transakce přidělené modulem B2B (asynchronní volání).
+ schema:
+ $ref: '#/components/schemas/IdTransaction'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ResultSendParcels'
+ '202':
+ description: Accepted - still being processed . / Stále ve zpracování.
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /sendParcels/stats:
+ get:
+ description: Get statistic informations about sendParcels datas. /
+
+ Operace slouží ke zjištění statistických informací o datech předaných prostřednictvím operace sendParcels.
+ summary: Get stats of sendParcesls
+ tags:
+ - sendParcels
+ operationId: getStatsSendParcels
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ parameters:
+ - name: idContract
+ in: query
+ required: false
+ description: ID CCK of submitter. In case of non-completion, the submitter is the caller./ ID CČK složky podavatele. V případě nevyplnění, je podavatelem volající.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ - name: dateFrom
+ in: query
+ required: true
+ description: Date from. / Datum od.
+ schema:
+ $ref: '#/components/schemas/DateType'
+ - name: dateTo
+ in: query
+ required: true
+ description: Date from. / Datum od.
+ schema:
+ $ref: '#/components/schemas/DateType'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatsSendParcelsResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /parcelStatus:
+ post:
+ description: Get informations about Parcel status. /
+
+ Operace slouží k získání seznamu stavů zásilek.
+ summary: Get status of Parcels
+ tags:
+ - parcelDataDetail
+ operationId: getParcelStatus
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ Authorization-content-SHA256: [ ]
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ParcelStatusRequest'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ParcelStatusResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /parcelDataHistory/parcelID/{parcelID}:
+ get:
+ description: Get informations of parcel history. /
+
+ Získani historie zásilky.
+ summary: Get Parcel Data History.
+ tags:
+ - parcelDataDetail
+ operationId: getParcelDataHistory
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ parameters:
+ - name: parcelID
+ in: path
+ required: true
+ description: ID of parcel. / Čárový kód zásilky.
+ schema:
+ $ref: '#/components/schemas/ParcelCode'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ParcelDataHistoryResult'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+
+ /parcelPrinting:
+ post:
+ description: Get informations for printing of Address labels. /
+
+ Operace slouží k získání adresních štítků.
+ summary: Get info of Address labels.
+ tags:
+ - parcelData
+ operationId: getParcelPrinting
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ Authorization-content-SHA256: [ ]
+ parameters:
+ - name: idContract
+ in: query
+ required: false
+ description: ID CCK of submitter. In case of non-completion, the submitter is the caller./ ID CČK složky podavatele. V případě nevyplnění, je podavatelem volající.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ParcelPrintingRequest'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ParcelPrintingResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+
+ /letterWithCN22:
+ post:
+ description: Post data of sended parcels for OLZ. Asynchronous. /
+
+ Zajišťuje předání dat podaných zásilek pro OLZ. Asynchronní.
+ summary: Send Letter with CN22
+ tags:
+ - letter
+ operationId: postLetter
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ Authorization-content-SHA256: [ ]
+ parameters:
+ - name: idContract
+ in: query
+ required: false
+ description: ID CCK of submitter. In case of non-completion, the submitter is the caller./ ID CČK složky podavatele. V případě nevyplnění, je podavatelem volající.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/LetterRequest'
+ responses:
+ '202':
+ description: Accepted - ready for processing. /
+
+ Přijato ke zpracování.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/AsyncResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /letterWithCN22/idTransaction/{idTransaction}:
+ get:
+ description: Get the result of processing the submitted letterWithCN22 information. /
+
+ Operace slouží ke zjistění výsledku zpracování dat předaných prostřednictvim operace letterWithCN22.
+ summary: Get result of letterWithCN22
+ tags:
+ - letter
+ operationId: getLetter
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ parameters:
+ - name: idTransaction
+ in: path
+ required: true
+ description: Transaction ID assigned by the B2B module (asynchronous call). / ID transakce (pro asynchronní volání).
+ schema:
+ $ref: '#/components/schemas/IdTransaction'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ResultLetter'
+ '202':
+ description: Accepted - still being processed . / Stále ve zpracování.
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /letterWithCN22Printing:
+ post:
+ description: Get informations for printing of LetterWithCN22. /
+
+ Operace slouží k získání dat pro tisk LetterWithCN22.
+ summary: Get info for printing of LetterWithCN22.
+ tags:
+ - letter
+ operationId: getLetterWithCN22Printing
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ Authorization-content-SHA256: [ ]
+ parameters:
+ - name: idContract
+ in: query
+ required: false
+ description: ID CCK of submitter. In case of non-completion, the submitter is the caller./ ID CČK složky podavatele. V případě nevyplnění, je podavatelem volající.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/LetterPrintingRequest'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/LetterPrintingResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /location/idContract/{idContract}:
+ get:
+ description: Get the list transmitter places, addresses, bank informations and contacts. /
+
+ Seznam podacích míst, adres, bankovních spojení a kontaktů.
+
+ summary: Get list of location
+ tags:
+ - location
+ operationId: getLocation
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ parameters:
+ - name: idContract
+ in: path
+ required: true
+ description: ID CCK of submitter. / ID CČK složky podavatele.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/LocationList'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ delete:
+ description: Delete the transmitter place, address, bank informations and contatct. /
+
+ Zruší podací místo včetně adres, bankovních spojení a kontaktů.
+
+ summary: Delete the location
+ tags:
+ - location
+ operationId: deleteLocation
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ parameters:
+ - name: idContract
+ in: path
+ required: true
+ description: ID CCK of submitter. / ID CČK složky podavatele.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ - name: locationNumber
+ in: query
+ required: true
+ description: Number of transmitter place. / Číslo podacího místa.
+ schema:
+ $ref: '#/components/schemas/LocationNumber'
+ responses:
+ '204':
+ description: Successful call - deleted. / Úspěšné volání - smazáno.
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ post:
+ description: Create and save the transmitter place, address, bank informations and contatct. /
+
+ Uloží podací místo včetně adres, bankovních spojení a kontaktů.
+
+ summary: Create the location
+ tags:
+ - location
+ operationId: createLocation
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ Authorization-content-SHA256: [ ]
+ parameters:
+ - name: idContract
+ in: path
+ required: true
+ description: ID CCK of submitter. / ID CČK složky podavatele.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Location'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/LocationCreateResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+ /parcelService:
+ post:
+ description: Make validation and data insert, eventual printing of Address labels./
+
+ Provede validaci a zápis dat, případně generování adresního štítku k zásilce.
+
+ summary: Post Parcel Service Data.
+ tags:
+ - parcelData
+ operationId: sendParcelService
+ security:
+ - Api-Token: [ ]
+ HMAC_SHA256_Auth: [ ]
+ Authorization-Timestamp: [ ]
+ Authorization-content-SHA256: [ ]
+ parameters:
+ - name: idContract
+ in: query
+ required: false
+ description: ID CCK of submitter. In case of non-completion, the submitter is the caller./ ID CČK složky podavatele. V případě nevyplnění, je podavatelem volající.
+ schema:
+ $ref: '#/components/schemas/IdContract'
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ParcelServiceRequest'
+ responses:
+ '200':
+ description: Successful call. / Úspěšné volání.
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ParcelServiceResponse'
+ '400':
+ $ref: '#/components/responses/400Response'
+ '401':
+ $ref: '#/components/responses/401Response'
+ '403':
+ $ref: '#/components/responses/403Response'
+ '404':
+ $ref: '#/components/responses/404Response'
+ default:
+ $ref: '#/components/responses/defaultResponse'
+
+components:
+ securitySchemes:
+ Api-Token:
+ type: apiKey
+ in: header
+ name: Api-Token
+ description: |
+ Authorization and authentication by API key. This key is generated in User application.
+ In the User application is able to delete and generate a new key.
+
+ Autorizace a autentizace pomocí klíče API. Tento klíč je generován v uživatelské aplikaci.
+ V uživatelské aplikaci je možné smazat a vygenerovat nový klíč.
+
+ Example /Příklad:
+ ```
+ Api-Token: 123e4567-e89b-12d3-a456-426614174000
+ ```
+
+
+ HMAC_SHA256_Auth:
+ type: apiKey
+ in: header
+ name: Authorization
+ description: |
+ HMAC_SHA256_Auth is create of nonce (random string) and signature.
+
+ For the requests, the authorization by sercret key is neccessary. This secret key is generated in User application, secretKey is not part of the request.
+ The system of external partner generates 'nonce' - in form UUIDv4.
+ Signature is created as hash HMAC256 of this items:
+ ```
+ Authorization-Content-SHA256;Authorization-Timestamp;nonce
+ ```
+ as first parameter of HMAC function and
+ ```
+ secretKey
+ ```
+ as the second one. The secretKey is in Base64 format.
+
+ In case, that the request doesn't contain any body, the first parameter of HMAC function is created by this items:
+ ```
+ ;Authorization-Timestamp;nonce
+ ```
+
+ /
+
+ HMAC_SHA256_Auth je tvořen pomocí nonce (náhodný řežezec) a signature.
+
+ Pro požadavky je nutná autorizace tajného klíče. Tento tajný klíč je generován v uživatelské aplikaci, tajný klíč není součástí požadavku.
+ Systém externího partnera generuje 'nonce' - ve formátu UUIDv4.
+ Signature se vytvoří jako hash HMAC256 těchto položek:
+ ```
+ Authorization-Content-SHA256;Authorization-Timestamp;nonce
+ ```
+ jako první parametr HMAC funkce a
+ ```
+ secretKey
+ ```
+ jako druhý. SecretKey je ve formátu Base64.
+
+ V případě, že požadavek nemá tělo, je první parametr HMAC funkce tvořen z položek:
+ ```
+ ;Authorization-Timestamp;nonce
+ ```
+
+
+ Example /Příklad:
+ ```
+ Authorization: CP-HMAC-SHA256
+ nonce="74b03ffb-34e1-419e-8c6f-f8275bad9a41",
+ signature="QGBaYeY8loQZXbJRmj91JV2yTwsuBTME6wQhUrEm7mI="
+ ```
+
+
+
+ Authorization-Timestamp:
+ name: Authorization-Timestamp
+ in: header
+ type: apiKey
+ description: |
+ Authorization-Timestamp is used for count of HMAC_SHA256_Auth.The system of external partner generates the timestamp in form 'UTC UNIX Timestamp'.
+ This item must be connected to header as 'Authorization-Timestamp'.
+ This timestamp must be no longer time for 60 second, can't be in the future. The request with invalid timestamp will be refused with response code 401. /
+
+ Authorization-Timestamp je použito pro výpočet HMAC_SHA256_Auth. Systém externího partnera vygeneruje časové razítko ve formátu 'UTC UNIX Timestamp'.
+ Tato položka musí být připojena k hlavičce jako 'Authorization-Timestamp'.
+ Toto časové razítko nesmí být delší než čas 60 sekund, nemůže být v budoucnosti. Požadavek s neplatným časovým razítkem bude odmítnut s kódem odpovědi 401.
+
+ Example: /Příklad:
+ ```
+ Authorization-Timestamp: 1593561601
+ ```
+
+
+ Authorization-content-SHA256:
+ name: Authorization-Content-SHA256
+ in: header
+ type: apiKey
+ description: |
+ SHA256 of body of request. The system of external partner counts the hash SHA256 of 'requestBody' of JSON's body of request.
+ This hash must be connected to header as 'Authorization-Content-SHA256'.
+ In case that the conted hash doesn't agree with the hash of body in the request, request will be refused with response code 401.
+
+ SHA256 těla požadavku. Systém externího partnera počítá hash SHA256 'requestBody' těla požadavku JSON.
+ Tento hash musí být připojen k hlavičce jako 'Authorization-Content-SHA256'.
+ V případě, že tento hash nesouhlasí s hashem těla v požadavku, bude požadavek odmítnut s kódem odpovědi 401.
+
+ Example: / Příklad:
+ ```
+ Authorization-Content-SHA256:
+ f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8
+ ```
+
+
+ parameters:
+ xApiToken:
+ name: Api-Token
+ description: Api-Token - public part of the token, it is generated in User application./ Api-Token - veřejná část tokenu, je generována v Uživatelské aplikaci.
+ in: header
+ required: true
+ schema:
+ type: string
+ example: "123e4567-e89b-12d3-a456-426614174000"
+
+ # HMAC-SHA256 Signing Headers (documentation purpose only)
+ xHMACAuthorization:
+ name: Authorization
+ description: HMAC SHA256 Autorization. / Autorizace HMAC SHA256.
+ in: header
+ required: true
+ schema:
+ type: string
+ minLength: 100
+ maxLength: 255
+ nullable: false
+ example: 'CP-HMAC-SHA256 nonce="74b03ffb-34e1-419e-8c6f-f8275bad9a41",signature="QGBaYeY8loQZXbJRmj91JV2yTwsuBTME6wQhUrEm7mI="'
+
+ xHMACAuthorizationTime:
+ name: Authorization-Timestamp
+ description: UTC Timestamp which is used for count. / UTC Časová značka použitá ve výpočtu.
+ in: header
+ required: true
+ schema:
+ type: integer
+ format: int64
+ minimum: 1593561600
+ maximum: 7952342400
+ nullable: false
+ example: 1593561601
+
+ xHMACAuthorizationContentSHA256:
+ name: Authorization-Content-SHA256
+ description: SHA256 of request body. / SHA256 těla požadavku.
+ in: header
+ required: true
+ schema:
+ type: string
+ minLength: 64
+ maxLength: 64
+ nullable: false
+ example: "f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8"
+
+
+
+ responses:
+ 400Response:
+ description: Incorrect input values, eg blank mandatory parameters.
+ content:
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Error'
+ maxItems: 10
+ 401Response:
+ description: Unauthorized.
+ content:
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Error'
+ maxItems: 10
+ 403Response:
+ description: Forbidden.
+ content:
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Error'
+ maxItems: 10
+ 404Response:
+ description: Not found.
+ content:
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Error'
+ maxItems: 10
+ defaultResponse:
+ description: An unexpected error, such as one of the services in use unavailable.
+ content:
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Error'
+ maxItems: 10
+
+ schemas:
+ SendParcelsRequest:
+ type: object
+ additionalProperties: false
+ required:
+ - parcelHeader
+ properties:
+ parcelHeader:
+ $ref: '#/components/schemas/ParcelHeader'
+ parcelDataList:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelData'
+ maxItems: 1000
+ description: Parcels datas. / Data zásilek.
+
+ ParcelStatusRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ parcelIds:
+ type: array
+ maxItems: 10
+ items:
+ $ref: '#/components/schemas/ParcelCode'
+ language:
+ type: string
+ description: Prefered language answer. / Jazyk zobrazovaných událostí.
+ example: 'CZ'
+ default: 'CZ'
+
+ ParcelPrintingRequest:
+ type: object
+ additionalProperties: false
+ required:
+ - printingHeader
+ - printingData
+ properties:
+ printingHeader:
+ $ref: '#/components/schemas/PrintingHeader'
+ printingData:
+ $ref: '#/components/schemas/PrintingData'
+
+ LetterPrintingRequest:
+ type: object
+ additionalProperties: false
+ required:
+ - printingHeader
+ - printingData
+ properties:
+ printingHeader:
+ $ref: '#/components/schemas/PrintingHeader'
+ printingData:
+ $ref: '#/components/schemas/PrintingData'
+
+ LetterRequest:
+ type: object
+ required:
+ - letterHeader
+ - letterData
+ additionalProperties: false
+ properties:
+ letterHeader:
+ $ref: '#/components/schemas/LetterHeader'
+ letterData:
+ $ref: '#/components/schemas/LetterDataList'
+
+ Location:
+ type: object
+ additionalProperties: false
+ properties:
+ locationName:
+ $ref: '#/components/schemas/LocationName'
+ locationNameAddOn:
+ $ref: '#/components/schemas/LocationNameAddOn'
+ senderAddress:
+ $ref: '#/components/schemas/Address'
+ codAddress:
+ $ref: '#/components/schemas/Address'
+ codBank:
+ $ref: '#/components/schemas/Bank'
+ senderContacts:
+ $ref: '#/components/schemas/Contact'
+
+ LocationList:
+ type: array
+ items:
+ $ref: '#/components/schemas/LocationItem'
+
+ LocationItem:
+ type: object
+ additionalProperties: false
+ properties:
+ locationNumber:
+ $ref: '#/components/schemas/LocationNumber'
+ location:
+ $ref: '#/components/schemas/Location'
+
+ ParcelServiceRequest:
+ type: object
+ required:
+ - parcelServiceHeader
+ additionalProperties: false
+ properties:
+ parcelServiceHeader:
+ $ref: '#/components/schemas/ParcelServiceHeader'
+ parcelServiceData:
+ $ref: '#/components/schemas/ParcelData'
+ multipartParcelData:
+ $ref: '#/components/schemas/AdditionalParcelData'
+ parcelCustomsDocuments:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelCustomsDocuments'
+ maxItems: 3
+
+ AdditionalParcelData:
+ type: array
+ minItems: 1
+ maxItems: 4
+ items:
+ $ref: '#/components/schemas/AddParcelData'
+ description: It uses for multipart parcel, resp. for 2.-5.part of multipart parcel . / Používá se pro vícekusovou zásilku, resp. pro 2.-5.kus vícekusové zásilky.
+
+ AddParcelData:
+ type: object
+ properties:
+ addParcelData:
+ $ref: '#/components/schemas/ParcelParams'
+ addParcelDataServices:
+ $ref: '#/components/schemas/Services'
+
+ ParcelCustomsDocuments:
+ type: object
+ additionalProperties: false
+ properties:
+ recordID:
+ $ref: '#/components/schemas/RecordID'
+ code:
+ type: string
+ description: Type. / Typ.
+ name:
+ type: string
+ description: Name. / Název.
+ id:
+ type: string
+ description: ID. / Id.
+
+ ParcelServiceHeader:
+ type: object
+ additionalProperties: false
+ properties:
+ parcelServiceHeaderCom:
+ $ref: '#/components/schemas/LetterHeader'
+ transmissionEnd:
+ $ref: '#/components/schemas/TransmissionEnd'
+ printParams:
+ $ref: '#/components/schemas/PrintParams'
+ position:
+ $ref: '#/components/schemas/Position'
+
+ PrintParams:
+ type: object
+ additionalProperties: false
+ properties:
+ idForm:
+ $ref: '#/components/schemas/IdForm'
+ shiftHorizontal:
+ $ref: '#/components/schemas/ShiftHorizontal'
+ shiftVertical:
+ $ref: '#/components/schemas/ShiftVertical'
+
+ ParcelStatusResponse:
+ type: object
+ additionalProperties: false
+ description: Parcel Status response. / Výsledek operace Parcel Status.
+ properties:
+ detail:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelStatusDetail'
+
+ ParcelStatusDetail:
+ type: object
+ additionalProperties: false
+ properties:
+ idParcel:
+ $ref: '#/components/schemas/ParcelCode'
+ parcelType:
+ $ref: '#/components/schemas/PrefixParcelCode'
+ weight:
+ $ref: '#/components/schemas/Weight'
+ amount:
+ $ref: '#/components/schemas/Amount'
+ currency:
+ $ref: '#/components/schemas/Currency'
+ parcelsQuantity:
+ $ref: '#/components/schemas/Quantity'
+ depositTo:
+ type: string
+ format: date
+ description: Date format ISO8601. / Datum ve formátu ISO8601.
+ timeDeposit:
+ type: integer
+ description: Deposit time. / Úložní doba.
+ countryOfOrigin:
+ type: string
+ description: Country of origin. / Země původu.
+ countryOfDestination:
+ type: string
+ description: Country of destination. / Země určení.
+ parcelStatuses:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelStatus'
+
+ ParcelPrintingResponse:
+ type: object
+ additionalProperties: false
+ properties:
+ printingHeaderResult:
+ $ref: '#/components/schemas/PrintingHeaderResult'
+ printingDataResult:
+ $ref: '#/components/schemas/PrintingDataResult'
+
+ LetterPrintingResponse:
+ type: object
+ additionalProperties: false
+ properties:
+ printingHeaderResult:
+ $ref: '#/components/schemas/PrintingHeaderResult'
+ printingDataResult:
+ $ref: '#/components/schemas/PrintingDataResult'
+
+ PrintingStatusResponse:
+ type: object
+ additionalProperties: false
+ required:
+ - responseCode
+ - responseText
+ properties:
+ responseCode:
+ type: integer
+ responseText:
+ type: string
+ description: |
+ * 1 - OK - The processing parameter datas are OK. / OK - Data parametru zpracování v pořádku.
+ * 2 - INTERNAL_ERROR - Another system error. / INTERNAL_ERROR - Jiná chyba systému.
+ * 100 - INVALID_PARCEL_CODE - The parcel code is invalid. / INVALID_PARCEL_CODE - Neplatné ID zásilky.
+ * 378 - INVALID_PREFIX_COMBINATION - The parcel is incorrectly assigned to the print template ID. / INVALID_PREFIX_COMBINATION - Zásilka je chybně přiřazená k id tiskové šablony.
+ * 379 - PARCEL_DOES_NOT_MEET_THE_REQUIREMENTS_FORM - The parcel parameters doesn't agree with the conditions of the form./ PARCEL_DOES_NOT_MEET_THE_REQUIREMENTS_FORM - Parametry zásilky nesplňují podmínky požadovaného formuláře.
+ * 380 - NO_CONTRACT_SERVICE_RETURN_RECEIPT - For this form does not exists valid contract for the Advice service./ NO_CONTRACT_SERVICE_RETURN_RECEIPT - K formuláři není sjednaná smlouva ke službě Dodejka.
+
+ LocationCreateResponse:
+ type: object
+ additionalProperties: false
+ properties:
+ locationStateSenderResponse:
+ type: array
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+ locationStateCodResponse:
+ type: array
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+ locationData:
+ $ref: '#/components/schemas/LocationData'
+
+ ParcelServiceResponse:
+ type: object
+ additionalProperties: false
+ properties:
+ responseHeader:
+ $ref: '#/components/schemas/ParcelServiceResponseHeader'
+
+ ParcelServiceResponseHeader:
+ type: object
+ additionalProperties: false
+ properties:
+ resultHeader:
+ $ref: '#/components/schemas/StatusResponseItem'
+ resultParcelData:
+ $ref: '#/components/schemas/ResultSendParcelsListItem'
+ resultParcelCustomsGoods:
+ type: array
+ items:
+ $ref: '#/components/schemas/ResultParcelCustomsGoodsItem'
+ resultParcelCustomsDocument:
+ type: array
+ items:
+ $ref: '#/components/schemas/ResultParcelCustomsDocumentList'
+ responsePrintParams:
+ $ref: '#/components/schemas/ResponsePrintParams'
+
+ ResponsePrintParams:
+ type: object
+ additionalProperties: false
+ properties:
+ file:
+ $ref: '#/components/schemas/PrintingDataResult'
+ printParamsResponse:
+ type: array
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+
+ ResultParcelCustomsDocumentList:
+ type: object
+ additionalProperties: false
+ properties:
+ recordID:
+ $ref: '#/components/schemas/RecordID'
+ customDocumentsResponse:
+ type: array
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+
+ ResultParcelCustomsGoodsItem:
+ type: object
+ additionalProperties: false
+ properties:
+ sequence:
+ $ref: '#/components/schemas/Sequence'
+ customGoodsResponse:
+ type: array
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+
+ ParcelDataHistoryResult:
+ type: object
+ additionalProperties: false
+ properties:
+ parcelDataHistory:
+ $ref: '#/components/schemas/ParcelDataHistory'
+ parcelStatusHistory:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelStatusHistory'
+
+
+ ParcelDataHistory:
+ type: object
+ additionalProperties: false
+ description: Data detail of parcels. / Detail dat zásilky.
+ properties:
+ parcelCode:
+ $ref: '#/components/schemas/ParcelCode'
+ customerID:
+ $ref: '#/components/schemas/CustomerID'
+ name:
+ type: string
+ description: Name./Jméno.
+ example: 'Jan'
+ surname:
+ type: string
+ description: Surname./Příjmení.
+ example: 'Novák'
+ company:
+ type: string
+ description: Company name. / Název společnosti.
+ example: 'The Great Company'
+ aditionAddress:
+ type: string
+ description: Aditional information. / Doplňující informace k názvu adresáta.
+ example: 'Add info'
+ address:
+ $ref: '#/components/schemas/AddressCOMMON'
+ cashOnDelivery:
+ $ref: '#/components/schemas/Amount'
+ insuredValue:
+ $ref: '#/components/schemas/InsuredValue'
+ weight:
+ $ref: '#/components/schemas/Weight'
+ services:
+ $ref: '#/components/schemas/Service'
+ vsVoucher:
+ $ref: '#/components/schemas/VsVoucher'
+ vsParcel:
+ $ref: '#/components/schemas/VsParcel'
+ currency:
+ $ref: '#/components/schemas/Currency'
+ height:
+ $ref: '#/components/schemas/Height'
+ width:
+ $ref: '#/components/schemas/Width'
+ lenght:
+ $ref: '#/components/schemas/Length'
+ volumeWeight:
+ $ref: '#/components/schemas/VolumeWeight'
+ payoutAmount:
+ $ref: '#/components/schemas/PayoutAmount'
+ payoutAmountSum:
+ $ref: '#/components/schemas/PayoutAmountSum'
+ sumWeight:
+ $ref: '#/components/schemas/SumWeight'
+ masterCode:
+ $ref: '#/components/schemas/MasterCode'
+ sequenceParcel:
+ $ref: '#/components/schemas/SequenceParcel'
+ quantityParcel:
+ $ref: '#/components/schemas/QuantityParcel'
+ creditedData:
+ $ref: '#/components/schemas/CreditedData'
+ senderCustCardNum:
+ $ref: '#/components/schemas/CustCardNum'
+
+
+
+
+ ResultSendParcels:
+ type: object
+ additionalProperties: false
+ required:
+ - StatusResponseList
+ properties:
+ StatusResponseList:
+ type: array
+ maxItems: 999
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+ ResultSendParcelsList:
+ $ref: '#/components/schemas/ResultSendParcelsListItem'
+
+ ResultLetter:
+ type: object
+ additionalProperties: false
+ required:
+ - StatusResponseList
+ properties:
+ StatusResponse:
+ type: array
+ maxItems: 999
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+ parcelParamsResult:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelParamsResult'
+ maxItems: 1000
+
+ LetterHeader:
+ type: object
+ additionalProperties: false
+ required:
+ - transmissionDate
+ properties:
+ transmissionDate:
+ $ref: '#/components/schemas/TransmissionDate'
+ customerID:
+ $ref: '#/components/schemas/CustomerID'
+ postCode:
+ $ref: '#/components/schemas/PostCode'
+ contractNumber:
+ $ref: '#/components/schemas/ContractNumber'
+ frankingNumber:
+ $ref: '#/components/schemas/FrankingNumber'
+ senderCustCardNum:
+ $ref: '#/components/schemas/CustCardNum'
+ locationNumber:
+ $ref: '#/components/schemas/LocationNumber'
+
+
+ LocationName:
+ type: string
+ description: Name of location. / Název podacího místa.
+
+ LocationNameAddOn:
+ type: string
+ description: Name of location - addon. / Doplněk názvu podacího místa.
+
+ LetterDataList:
+ type: array
+ items:
+ $ref: '#/components/schemas/LetterData'
+ maxItems: 1000
+ description: Data of letters. / Data k zásilkám.
+
+ LetterData:
+ type: object
+ additionalProperties: false
+ properties:
+ letterParams:
+ $ref: '#/components/schemas/LetterParams'
+ letterAddress:
+ $ref: '#/components/schemas/LetterAddress'
+ letterCustomsDeclaration:
+ $ref: '#/components/schemas/LetterCustomsDeclaration'
+
+ LetterAddress:
+ type: object
+ additionalProperties: false
+ properties:
+ title:
+ $ref: '#/components/schemas/Title'
+ address:
+ $ref: '#/components/schemas/AddressCOMMON'
+ bank:
+ $ref: '#/components/schemas/Bank'
+ contact:
+ $ref: '#/components/schemas/Contact'
+ custCardNum:
+ $ref: '#/components/schemas/CustCardNum'
+ adviceInfo:
+ $ref: '#/components/schemas/adviceInfo'
+
+ LetterCustomsDeclaration:
+ type: object
+ additionalProperties: false
+ properties:
+ category:
+ $ref: '#/components/schemas/Category'
+ note:
+ $ref: '#/components/schemas/Note'
+ customValCur:
+ $ref: '#/components/schemas/CustomValCur'
+ importerRefNum:
+ type: string
+ description: Importer number. / Číslo dovozce.
+ customGoods:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelCustomGoods'
+ maxItems: 99
+
+ LetterParams:
+ type: object
+ additionalProperties: false
+ properties:
+ recordID:
+ $ref: '#/components/schemas/RecordID'
+ parcelCode:
+ $ref: '#/components/schemas/ParcelCode'
+ weight:
+ $ref: '#/components/schemas/Weight'
+ note:
+ $ref: '#/components/schemas/Note'
+ note2:
+ $ref: '#/components/schemas/Note'
+ letterServices:
+ $ref: '#/components/schemas/Services'
+
+ PrintingHeaderResult:
+ type: object
+ additionalProperties: false
+ properties:
+ printingHeader:
+ $ref: '#/components/schemas/PrintingHeader'
+ printingStatusResponse:
+ $ref: '#/components/schemas/PrintingStatusResponse'
+
+ PrintingHeader:
+ type: object
+ additionalProperties: false
+ required:
+ - customerID
+ - shiftHorizontal
+ - shiftVertical
+ properties:
+ customerID:
+ $ref: '#/components/schemas/CustomerID'
+ contractNumber:
+ $ref: '#/components/schemas/IdContract'
+ idForm:
+ $ref: '#/components/schemas/IdForm'
+ shiftHorizontal:
+ $ref: '#/components/schemas/ShiftHorizontal'
+ shiftVertical:
+ $ref: '#/components/schemas/ShiftVertical'
+ position:
+ $ref: '#/components/schemas/Position'
+
+ IdForm:
+ type: integer
+ default: 20
+ description: |
+ * 7 - address label type allonge (simple, independent) / adresní štítek (alonž) - samostatný
+ * 8 - address label type allonge (with cash on delivery voucher) / adresní štítek (alonž) + dobírková poukazka
+ * 10 - cash on delivery voucher type A (simple, independent) / poštovní dobírková poukázka A - samostatná
+ * 11 - cash on delivery voucher type A (3x, for A4 format) / poštovní dobírková poukázka A - 3x (A4)
+ * 12 - cash on delivery voucher type C / poštovní dobírková poukázka C
+ * 20 - address lable (empty - 4x, A4 format) / adresní štítek bianco - 4x (A4)
+ * 21 - address lable (empty, independent) / adresní štítek bianco - samostatný
+ * 22 - envelope 1 - C6 / obálka 1 - C6
+ * 23 - envelope 2 - C5 / obálka 2 - C5
+ * 24 - envelope 3 - B4 / obálka 3 - B4
+ * 25 - envelope 4 - DL without window / obálka 4 - DL bez okenka
+ * 26 - labels for RR - 3x8 (A4 format) / stitky pro RR - 3*8 (A4)
+ * 38 - integrated certificate / integrovany doklad
+ * 39 - address label empty (independent, in width) / adresní štítek bianco - samostatný (na sirku)
+ * 40 - address 3x8 (A4) / adresní udaje 3x8 (A4)
+ * 41 - advice / dodejka
+ * 56 - CN22
+ * 57 - CN23
+ * 58 - Standard parcel abroad (independent) / AS - samostatný Standardni balík do zahraničí
+ * 59 - Standard parcel abroad (4xA4) / AS - 4xA4 Standardni balík do zahraničí
+ * 60 - Valuable parcel abroad (independent) / AS - samostatný Cenny balík do zahraničí
+ * 61 - Valuable parcel abroad (4xA4) / AS - 4xA4 Cenny balík do zahraničí
+ * 62 - EMS abroad (independent) / AS - samostatný EMS do zahraničí
+ * 63 - EMS abroad (2xA4) / AS - 2xA4 EMS do zahraničí
+ * 72 - Harmonized label for IS products (intependent) - usable only for CE prefix parcels / Harmonizovaný štítek pro MZ produkty - samostatný - možno použít pouze pro zásilky s prefixem CE do určených zemí
+ * 73 - Harmonized label for IS products (4xA4) - usable only for CE prefix parcels/ Harmonizovaný štítek pro MZ produkty - 4xA4 - možno použít pouze pro zásilky s prefixem CE do určených zemí
+ * 100 - Harmonized label (empty, 4xA4) / Harmonizovaný štítek bianco - 4x(A4)
+ * 101 - Harmonized label (empty, intependent) / Harmonizovaný štítek bianco - samostatný
+ * 102 - Harmonized label (empty, intependent, in height) / Harmonizovaný štítek bianco - samostatný (na výšku)
+ * 103 - Address lable A6 - 4x
+ * 200 - Harmonized label (empty, Zebra 105x148) / Harmonizovaný štítek bianco - Zebra 105x148
+ * 201 - Harmonized label (empty, Zebra 100x150) / Harmonizovaný štítek bianco - Zebra 100x150
+ * 202 - Harmonized label (empty, Zebra 100x125) / Harmonizovaný štítek bianco - Zebra 100x125
+
+ ShiftHorizontal:
+ type: number
+ description: Value of shift right (in mm). / Hodnota posunu doprava v mm.
+
+ ShiftVertical:
+ type: number
+ description: Value of shift down (in mm). / Hodmota posunu dolů v mm.
+
+ Position:
+ type: number
+ description: Position value. / Hodnota pozice.
+
+ PrintingData:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelCode'
+ maxItems: 500
+ description: Items data. / Položkové údaje.
+
+ PrintingDataResult:
+ type: string
+ format: byte
+ description: PDF file. / Soubor PDF.
+
+ ParcelStatus:
+ type: object
+ additionalProperties: false
+ required:
+ - id
+ - date
+ - text
+ properties:
+ id:
+ type: string
+ description: Status ID. / ID stavu.
+ date:
+ $ref: '#/components/schemas/DateType'
+ text:
+ type: string
+ description: Status text. / Text stavu.
+ postCode:
+ type: string
+ description: Postal code of origin. / PSČ, kde stav nastal.
+ name:
+ type: string
+ description: Office name of origin. / Název provozovny, kde stav nastal.
+
+ ParcelHeader:
+ type: object
+ additionalProperties: false
+ required:
+ - transmissionDate
+ properties:
+ transmissionDate:
+ $ref: '#/components/schemas/TransmissionDate'
+ customerID:
+ $ref: '#/components/schemas/CustomerID'
+ postCode:
+ $ref: '#/components/schemas/PostCode'
+ contractNumber:
+ $ref: '#/components/schemas/ContractNumber'
+ frankingNumber:
+ $ref: '#/components/schemas/FrankingNumber'
+ senderAddress:
+ $ref: '#/components/schemas/Address'
+ codAddress:
+ $ref: '#/components/schemas/Address'
+ codBank:
+ $ref: '#/components/schemas/Bank'
+ senderContacts:
+ $ref: '#/components/schemas/SenderContacts'
+ senderCustCardNum:
+ $ref: '#/components/schemas/CustCardNum'
+ locationNumber:
+ $ref: '#/components/schemas/LocationNumber'
+ transmissionEnd:
+ $ref: '#/components/schemas/TransmissionEnd'
+ goodToAccept:
+ type: boolean
+ description: Indication - accepting of correct datas in case of existing some mistage in the same request./ Indikace, zda mají být v případě výskytu chyby v datech ostatní korektní data přijata do zpracování.
+
+ SenderContacts:
+ type: object
+ additionalProperties: false
+ properties:
+ mobilNumber:
+ $ref: '#/components/schemas/MobilNumber'
+ phoneNumber:
+ $ref: '#/components/schemas/PhoneNumber'
+ emailAddress:
+ $ref: '#/components/schemas/emailAddress'
+
+ CustomerID:
+ type: string
+ maxLength: 6
+ description: Technological number of the transmitter. /Technologické číslo podavatele.
+ example: 'U219'
+
+ TransmissionDate:
+ type: string
+ format: date
+ description: Supposed date of transmission in ISO8601 format. / Předpokládané datum podání.
+ example: '2021-03-28'
+
+ PostCode:
+ type: string
+ maxLength: 5
+ description: Postcode of the filing branch. / PSC podací pošty.
+ example: '28002'
+
+ ContractNumber:
+ type: string
+ maxLength: 10
+ description: Number of the contract. /Číslo zakazky.
+ example: '1021535'
+
+ FrankingNumber:
+ type: string
+ maxLength: 10
+ description: Payout machine number. /Číslo vyplatniho stroje.
+ example: '1'
+
+ LocationNumber:
+ type: integer
+ description: Number of transmitter place. / Číslo podacího místa (jedná se o Číslo podacího místa, pod kterým chce provádět import - v případě využití této položky není třeba uvádět v importních datech údaje odesílatele).
+ example: 1
+
+ LocationData:
+ type: object
+ additionalProperties: false
+ properties:
+ locationNumber:
+ $ref: '#/components/schemas/LocationNumber'
+ locationDataResponseList:
+ type: array
+ items:
+ $ref: '#/components/schemas/LocationDataResponse'
+
+ LocationDataResponse:
+ $ref: '#/components/schemas/StatusResponseItem'
+
+ ParcelData:
+ type: object
+ additionalProperties: false
+ required:
+ - parcelParams
+ - parcelAddress
+ properties:
+ parcelParams:
+ $ref: '#/components/schemas/ParcelParams'
+ parcelServices:
+ $ref: '#/components/schemas/Services'
+ parcelAddress:
+ $ref: '#/components/schemas/ParcelAddress'
+ parcelAddressDocument:
+ $ref: '#/components/schemas/ParcelAddress'
+ parcelCustomsDeclaration:
+ $ref: '#/components/schemas/ParcelCustomsDeclaration'
+
+ ParcelParams:
+ type: object
+ additionalProperties: false
+ required:
+ - recordID
+ - prefixParcelCode
+ properties:
+ recordID:
+ $ref: '#/components/schemas/RecordID'
+ parcelCode:
+ $ref: '#/components/schemas/ParcelCode'
+ masterCode:
+ $ref: '#/components/schemas/MasterCode'
+ prefixParcelCode:
+ $ref: '#/components/schemas/PrefixParcelCode'
+ weight:
+ $ref: '#/components/schemas/Weight'
+ insuredValue:
+ $ref: '#/components/schemas/InsuredValue'
+ amount:
+ $ref: '#/components/schemas/Amount'
+ currency:
+ $ref: '#/components/schemas/Currency'
+ vsVoucher:
+ $ref: '#/components/schemas/VsVoucher'
+ vsParcel:
+ $ref: '#/components/schemas/VsParcel'
+ sequenceParcel:
+ $ref: '#/components/schemas/SequenceParcel'
+ quantityParcel:
+ $ref: '#/components/schemas/QuantityParcel'
+ note:
+ $ref: '#/components/schemas/Note'
+ notePrint:
+ type: string
+ maxLength: 50
+ description: Note for printing. / Poznamka pro tisk.
+ length:
+ $ref: '#/components/schemas/Length'
+ width:
+ $ref: '#/components/schemas/Width'
+ height:
+ $ref: '#/components/schemas/Height'
+ mrn:
+ type: string
+ maxLength: 18
+ description: MRN code. / Kod MRN.
+ example: '15CZ65000021QMDZN0'
+ referenceNumber:
+ type: string
+ maxLength: 30
+ description: Reference number. / Číslo jednací.
+ pallets:
+ type: integer
+ minimum: 1
+ maximum: 99
+ description: Number of pallets. / Počet palet.
+ specSym:
+ type: string
+ maxLength: 10
+ description: Specific symbol. / Specifický symbol.
+ note2:
+ type: string
+ maxLength: 50
+ description: Note no. 2. / Poznámka 2.
+ numSign:
+ type: string
+ maxLength: 30
+ description: Number of documents. / Počet dokumentů.
+ score:
+ type: string
+ maxLength: 30
+ description: Service price calculation. / Nápočet ceny služby.
+ orderNumberZPRO:
+ type: string
+ maxLength: 11
+ description: Number of ZPRO's number. / Číslo objednávky ZPRO.
+ returnNumDays:
+ type: string
+ maxLength: 2
+ description: Number of days for returning the parcel. / Počet dní pro vrácení zásilky.
+
+ MasterCode:
+ type: string
+ maxLength: 13
+ description: Master ID of parcel (for customer services). / ID řídící zásilky pro zákaznické služby.
+ example: 'RR22558874B'
+
+ InsuredValue:
+ type: number
+ format: double
+ minimum: 0.00
+ maximum: 999999999.99
+ description: Insured value. / Udaná cena.
+
+ VsVoucher:
+ type: string
+ pattern: '^\d{1,10}$'
+ description: Variable symbol of voucher. / Variabilní symbol - poukázka.
+
+ VsParcel:
+ type: string
+ pattern: '^\d{1,10}$'
+ description: Variable symbol of parcel. / Variabilní symbol - zásilka.
+
+ SequenceParcel:
+ type: integer
+ minimum: 0
+ maximum: 99
+ description: Order in the case of a multi-part package. / Pořadí v rámci vícekusové zásilky.
+
+ QuantityParcel:
+ type: integer
+ minimum: 0
+ maximum: 99
+ description: Sum of parts in multi-part package. / Celkový Počet zasilek vícekusové zásilky.
+
+ Length:
+ type: integer
+ minimum: 0
+ maximum: 999
+ description: Length. / Délka.
+
+ Width:
+ type: integer
+ minimum: 0
+ maximum: 999
+ description: Width. / Šířka.
+
+ Height:
+ type: integer
+ minimum: 0
+ maximum: 999
+ description: Height. / Výška.
+
+ RecordID:
+ type: string
+ maxLength: 50
+ description: Unique ID of record (recommendation - useful for identification of failed statuses of the records in automatically generating IDs of parcels). / Unikátní ID záznamu (doporučujeme využít pro identifikaci případných chybových stavů u jednotlivých záznamů v případě generování ID zásilek aplikaci)
+ example: '1'
+
+ ParcelCode:
+ type: string
+ maxLength: 13
+ description: Parcel's ID. / ID (čárový kód) zásilky.
+ example: 'BA1234567890A'
+
+ PrefixParcelCode:
+ type: string
+ maxLength: 2
+ description: Prefix of the parcel (type of the parcel). / Typ zásilky (prefix).
+ example: 'BA'
+
+ Weight:
+ type: string
+ pattern: '^((\d{1,5})|(\d{1,5}\.\d{1,3}))$'
+ description: Weight. / Hmotnost.
+ example: '100.20'
+
+ VolumeWeight:
+ type: string
+ pattern: '^((\d{1,5})|(\d{1,5}\.\d{1,3}))$'
+ description: Weight of volume. / Objemová hmotnost.
+ example: '100.20'
+
+ SumWeight:
+ type: string
+ pattern: '^((\d{1,5})|(\d{1,5}\.\d{1,3}))$'
+ description: Sum of weight's of multi-part package. / Součet hmostností vícekusu.
+ example: '100.20'
+
+ Amount:
+ type: number
+ format: double
+ minimum: 0.00
+ maximum: 999999999.99
+ description: Cash on delivery amount. / Dobírka.
+ example: 105.00
+
+ PayoutAmount:
+ type: number
+ format: double
+ minimum: 0.00
+ maximum: 999999999.99
+ description: Payout amount. / Vyplatní částka.
+ example: 225.00
+
+ PayoutAmountSum:
+ type: number
+ format: double
+ minimum: 0.00
+ maximum: 999999999.99
+ description: Sum of payout amounts for multi-part package. / Součet výplatného vícekusové zásilky.
+ example: 225.00
+
+ Currency:
+ type: string
+ default: 'CZK'
+ maxLength: 3
+ description: ISO code of currency of cash on delivery amount. / ISO kód měny dobírky.
+ example: 'CZK'
+
+ Services:
+ type: array
+ minItems: 1
+ items:
+ $ref: '#/components/schemas/Service'
+ description: Required additional services. / Požadované doplňkové služby.
+ example: ['43','44','53']
+
+ Service:
+ type: string
+ description: Required additional service. / Požadovaná doplňková služba.
+ example: '43'
+
+ Note:
+ type: string
+ maxLength: 50
+ description: Note. / Poznámka.
+ example: 'note'
+
+ ParcelAddress:
+ type: object
+ additionalProperties: false
+ properties:
+ recordID:
+ type: string
+ maxLength: 20
+ description: Internal destination of the recipient./ Interni označení adresáta.
+ firstName:
+ type: string
+ description: First name. / Jméno.
+ example: 'John'
+ surname:
+ type: string
+ description: Surname. / Příjmení.
+ example: 'Doe'
+ company:
+ type: string
+ description: Company name. / Název společnosti.
+ example: 'Universal Company'
+ aditionAddress:
+ type: string
+ description: Aditional information. / Doplňující informace k názvu adresáta.
+ example: 'additional info'
+ subject:
+ type: string
+ description: Recipient's type. / Typ adresáta.
+ example: 'type'
+ ic:
+ type: integer
+ description: CIN - company identification number. / IČO - identifikacni Číslo ekonomickych subjektů.
+ example: 08541234
+ dic:
+ type: string
+ description: VATIN - value added tax identification number. / DIČ - daňove identifikacni Číslo.
+ example: 'CZ08541234'
+ specification:
+ type: string
+ description: Specification, eg. birthdate. / Specifikace, např. datum narození.
+ example: 'specification - 01.12.1960'
+ address:
+ $ref: '#/components/schemas/AddressCOMMON'
+ bank:
+ $ref: '#/components/schemas/Bank'
+ mobilNumber:
+ $ref: '#/components/schemas/MobilNumber'
+ phoneNumber:
+ $ref: '#/components/schemas/PhoneNumber'
+ emailAddress:
+ $ref: '#/components/schemas/emailAddress'
+ custCardNum:
+ $ref: '#/components/schemas/CustCardNum'
+ adviceInfo:
+ $ref: '#/components/schemas/adviceInfo'
+
+ CustCardNum:
+ type: string
+ maxLength: 20
+ description: Number of customer card. / Číslo zakaznické karty.
+ example: '1000008444201'
+
+ Address:
+ type: object
+ additionalProperties: false
+ required:
+ - companyName
+ - city
+ - zipCode
+ properties:
+ companyName:
+ type: string
+ description: Name of the company. / Název odesilatele.
+ example: 'Company Alpha and Omega'
+ aditionAddress:
+ type: string
+ description: Added company name information. /Doplňující informace k názvu podavatele.
+ example: 'Branch AAO'
+ street:
+ type: string
+ maxLength: 40
+ description: Street. / Ulice.
+ example: 'V olšinách'
+ houseNumber:
+ type: string
+ maxLength: 6
+ description: Descriptive (house) number. / Číslo popisné.
+ example: '16'
+ sequenceNumber:
+ type: string
+ maxLength: 6
+ description: Orientation (sequence) number. / Číslo orientační.
+ example: '82'
+ cityPart:
+ type: string
+ maxLength: 40
+ description: Part of the city. / Část obce.
+ example: 'Strašnice'
+ city:
+ type: string
+ maxLength: 40
+ description: City. / Obec.
+ example: 'Praha'
+ zipCode:
+ type: string
+ maxLength: 25
+ description: Postal code. / PSČ.
+ example: '10000'
+ isoCountry:
+ type: string
+ maxLength: 2
+ description: ISO code of the country. / ISO kód země.
+ default: 'CZ'
+ example: 'CZ'
+ subIsoCountry:
+ type: string
+ maxLength: 6
+ description: ISO code of the land. / ISO kód území.
+ addressCode:
+ type: integer
+ description: Code of address RUIAN. / Kód adresního místa RUIAN.
+
+ Bank:
+ type: object
+ additionalProperties: false
+ properties:
+ prefixAccount:
+ type: string
+ pattern: '^\d{6}$'
+ maxLength: 6
+ description: Prefix for account. / Predčíslí k účtu.
+ example: '100300'
+ account:
+ type: string
+ pattern: '^\d{10}$'
+ maxLength: 10
+ description: Account number. / Číslo účtu.
+ example: '0011225566'
+ bank:
+ type: string
+ pattern: '^\d{4}$'
+ maxLength: 4
+ description: Bank code. / Kód banky.
+ example: '0100'
+
+ MobilNumber:
+ type: string
+ description: Number of mobile phone. / Mobil.
+ example: '+420732222163'
+
+ PhoneNumber:
+ type: string
+ description: Phone number. / Telefon.
+ example: '+420221132060'
+
+ emailAddress:
+ type: string
+ description: Email address. / Email.
+ example: 'name.surname123@somemaildomain.cz'
+
+ adviceInfo:
+ type: object
+ additionalProperties: false
+ properties:
+ adviceInformationsList:
+ $ref: '#/components/schemas/adviceInformationsList'
+ adviceNote:
+ type: string
+ description: Note for delivery note. / Poznámka k dodejce.
+
+ adviceInformationsList:
+ type: array
+ items:
+ $ref: '#/components/schemas/adviceInformation'
+ maxItems: 6
+ description: Informations no.x to delivery note./ Informace č.x k dodejce.
+
+ adviceInformation:
+ type: string
+ description: Delivery note's information./ Informace k dodejce.
+ example: 'note info'
+
+ AddressCOMMON:
+ type: object
+ additionalProperties: false
+ properties:
+ street:
+ type: string
+ description: Street. / Ulice.
+ example: 'V olšinách'
+ houseNumber:
+ type: string
+ description: Descriptive (house) number. / Číslo popisné.
+ example: '16'
+ sequenceNumber:
+ type: string
+ description: Orientation (sequence) number. / Číslo orientační.
+ example: '82'
+ cityPart:
+ type: string
+ description: Part of the city. / Část obce.
+ example: 'Strašnice'
+ city:
+ type: string
+ description: City. / Obec.
+ example: 'Praha'
+ zipCode:
+ type: string
+ description: Postal code. / PSČ.
+ example: '10000'
+ isoCountry:
+ type: string
+ description: ISO code of the country. / ISO kód země.
+ default: 'CZ'
+ example: 'CZ'
+ subIsoCountry:
+ type: string
+ description: ISO code of the land. / ISO kód území.
+ example: 'ISO land'
+ addressCode:
+ type: integer
+ description: Code of address RUIAN. / Kód adresního místa RUIAN.
+
+ Contact:
+ type: object
+ additionalProperties: false
+ properties:
+ mobilNumber:
+ type: string
+ description: Number of mobile phone. / Mobil.
+ example: '+420732222163'
+ phoneNumber:
+ type: string
+ description: Phone number. / Telefon.
+ example: '+420221132060'
+ emailAddress:
+ type: string
+ description: Email address. / Email.
+ example: 'name.surname123@somemaildomain.cz'
+
+ Title:
+ type: object
+ additionalProperties: false
+ properties:
+ recordID:
+ type: string
+ maxLength: 20
+ description: Internal destination of the recipient./ Interní označení adresáta.
+ example: '1234568'
+ firstName:
+ type: string
+ description: First name. / Jméno.
+ example: 'Jane'
+ surname:
+ type: string
+ description: Surname. / Příjmení.
+ example: 'Doe-Doe'
+ company:
+ type: string
+ description: Company name. / Název společnosti.
+ example: 'The Great Company'
+ aditionAddress:
+ type: string
+ description: Aditional information. / Doplňujici informace k názvu adresáta.
+ example: 'Add info'
+ subject:
+ type: string
+ description: Recipient's type. / Typ adresáta.
+ example: 'type'
+ ic:
+ type: integer
+ description: CIN - company identification number. / IČO - identifikační číslo ekonomických subjektů.
+ example: 1234567
+ dic:
+ type: string
+ description: VATIN - value added tax identification number. / DIC - daňové identifikační Číslo.
+ example: 'CZ1234568'
+ specification:
+ type: string
+ description: Specification, eg. birthdate. / Specifikace, např. datum narození.
+ example: 'spec.info - 01.10.1960'
+
+
+ ParcelCustomsDeclaration:
+ type: object
+ additionalProperties: false
+ required:
+ - category
+ - customValCur
+ - parcelCustomGoods
+ properties:
+ category:
+ $ref: '#/components/schemas/Category'
+ note:
+ $ref: '#/components/schemas/Note'
+ customValCur:
+ $ref: '#/components/schemas/CustomValCur'
+ parcelCustomGoods:
+ type: array
+ items:
+ $ref: '#/components/schemas/ParcelCustomGoods'
+ maxItems: 20
+ description: Datas of customs declaration. / Data celního prohlášení.
+
+ Category:
+ type: string
+ description: Parcel (Letter) category. / Kategorie zásilky.
+ example: '911'
+
+ CustomValCur:
+ type: string
+ description: ISO code of the customs value currency. / ISO kód měny celní hodnoty.
+
+ ParcelCustomGoods:
+ type: object
+ additionalProperties: false
+ required:
+ - sequence
+ - customCont
+ - quantity
+ - weight
+ - customVal
+ - hsCode
+ - iso
+ properties:
+ sequence:
+ $ref: '#/components/schemas/Sequence'
+ customCont:
+ type: string
+ description: Goods description. / Popis zboží.
+ example: 'boty'
+ quantity:
+ $ref: '#/components/schemas/Quantity'
+ weight:
+ $ref: '#/components/schemas/Weight'
+ customVal:
+ type: number
+ format: double
+ description: Custom value. / Celni hodnota.
+ example: 1500
+ hsCode:
+ type: string
+ description: HS code. / HS kód.
+ example: '123456'
+ iso:
+ type: string
+ description: Country of origin of the goods. / Země původu zboží.
+ example: 'CZ'
+
+ Quantity:
+ type: integer
+ description: Quantity. / Množství.
+ example: 1
+
+ Sequence:
+ type: integer
+ description: Sequence. / Pořadí.
+ example: 1
+
+ ResultSendParcelsListItem:
+ type: array
+ maxItems: 1000
+ items:
+ $ref: '#/components/schemas/ParcelParamsResult'
+
+ ParcelParamsResult:
+ type: object
+ additionalProperties: false
+ required:
+ - recordNumber
+ - parcelCode
+ - parcelStateResponse
+ properties:
+ recordNumber:
+ $ref: '#/components/schemas/RecordID'
+ parcelCode:
+ $ref: '#/components/schemas/ParcelCode'
+ parcelStateResponse:
+ $ref: '#/components/schemas/ParcelStateResponse'
+
+ ParcelStateResponse:
+ type: array
+ items:
+ $ref: '#/components/schemas/StatusResponseItem'
+
+
+ StatusResponseItem:
+ type: object
+ additionalProperties: false
+ required:
+ - responseCode
+ - responseText
+ properties:
+ responseCode:
+ type: integer
+ description: Code of failure. / Kód chyby.
+ responseText:
+ type: string
+ description: Description of failure. / Popis chyby.
+
+ StatsSendParcelsResponse:
+ type: object
+ additionalProperties: false
+ required:
+ - importAll
+ - importErr
+ - importOK
+ - parcels
+ properties:
+ importAll:
+ type: integer
+ description: Sum of all imports. /Celkovy počet importů.
+ example: 16
+ importErr:
+ type: integer
+ description: Number of failed imports. /Počet chybných importů.
+ example: 13
+ importOK:
+ type: integer
+ description: Number of accepted imports. /Počet přijatých importů.
+ example: 3
+ parcels:
+ type: integer
+ description: Number of accepted parcels. /Počet přijatých zásilek.
+ example: 43
+
+ AsyncResponse:
+ description: Asynchronous header for B2B response
+ type: object
+ additionalProperties: false
+ properties:
+ idTransaction:
+ $ref: '#/components/schemas/IdTransaction'
+
+ IdTransaction:
+ type: string
+ maxLength: 50
+ description: Transaction ID assigned by the B2B module (asynchronous call). / ID transakce (pro asynchronní volání).
+ example: '28x97-B2B-10a24900bf-4384000-ca12'
+
+ IdContract:
+ type: string
+ description: ID defined for the B2B service of the relevant backend - ID CCK of submitter. / ID CČK složky podavatele.
+ example: '1112223334'
+
+ DateType:
+ type: string
+ format: date
+ description: Date format ISO8601. / Datum ve formátu ISO8601.
+
+ CreditedData:
+ type: object
+ additionalProperties: false
+ description: data of credited cash on delivery
+ properties:
+ deliveryPostCode:
+ type: string
+ maxLength: 5
+ description: The postal code of delivery office that paid the cash on delivery amount. /PSČ dodací pošty, která vyplatila dobírku.
+ example: '12000'
+ deliveryPostOfficeName:
+ type: string
+ description: Name of the delivery office. /Název dodací pošty.
+ example: 'Posta01'
+ paymentDate:
+ type: string
+ format: date
+ description: Date of payment in the delivery post office. / Datum vyplacení dobírky na dodací poště.
+ serialNumber:
+ type: string
+ description: Serial number of cash on delivery PK A. / podací číslo dobírkové PK A z APOSTU
+ serialSubnumber:
+ type: string
+ description: Subnumber of serial number. /Podčíslo podacího čísla.
+ transactionDate:
+ type: string
+ description: Date of the transaction. /Datum převodu.
+
+ ParcelStatusHistory:
+ type: object
+ additionalProperties: false
+ description: Parcel status for parcel history. /Stavy zásilek pro historii zásilky.
+ properties:
+ parcelCode:
+ $ref: '#/components/schemas/ParcelCode'
+ customerID:
+ $ref: '#/components/schemas/CustomerID'
+ date:
+ type: string
+ format: date-time
+ description: Date-time of the status. / Datum a čas vzniku stavu.
+ status:
+ type: string
+ description: Status of the parcel + name of the status. / Stav zásilky + název stavu.
+ statusPostCode:
+ type: string
+ description: Postal code and the post office name of the origin of the status. / PSČ vzniku stavu a název.
+ targetPostCode:
+ type: string
+ description: Postal code of the target. / PSČ cíle.
+
+ TransmissionEnd:
+ type: boolean
+ description: |
+ * Indication for closing tranmission action:
+ * if is not fill this atribute, the transmission of all dates of this request will be automatically closed / V případě, kdy není vůbec uvedeno, je podání pro všechna data předána v rámci tohoto requestu automaticky uzavřeno.
+ * 0 - datas of this request are accepted, but the transmission is not closed. (This is used for continuous sendings of datas by many request. It will be closed by the request with the indication with closed action of submission.) /
+ Data tohoto requestu jsou přijata, ale podání není uzavřeno (slouží pro průběžné zasílání dat jednotlivými requesty, které bude na závěr ukončeno předáním requestu s indikací o uzavření podání).
+ * 1 - datas of this request are accepted and the transmission of the previous datas (with indication transmissionEnd=0) will be closed
+ # Tato funkcionalita byla dočasně pozastavena.
+
+ Error:
+ type: object
+ additionalProperties: false
+ properties:
+ x-request-id:
+ description: Identity uniquelly user transaction
+ type: string
+ example: ID-f81003313285-1592979767076-41-10
+ code:
+ type: integer
+ description: error code
+ example: -50
+ status:
+ type: string
+ description: error description
+ example: '500'
+ message:
+ type: string
+ description: error message
+ example: Internal error
+ moreInfo:
+ type: string
+ description: more info
+ example: Here is better detail of error. It could be some point to documentation or stacktrace and so on.
+ date:
+ type: string
+ example: '2022-02-16T10:48:11+01:00'
+ required:
+ - message
diff --git a/documents/B2B_CP_POL_2020-01-13/APOST_Smluvni podavatel_uziv_dok_v1.46_integrace_20200316-1620.doc b/documents/B2B_CP_POL_2020-01-13/APOST_Smluvni podavatel_uziv_dok_v1.46_integrace_20200316-1620.doc
deleted file mode 100644
index 5c2f173..0000000
Binary files a/documents/B2B_CP_POL_2020-01-13/APOST_Smluvni podavatel_uziv_dok_v1.46_integrace_20200316-1620.doc and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-01-13/Aplikace/B2BClient-1.0.jaro b/documents/B2B_CP_POL_2020-01-13/Aplikace/B2BClient-1.0.jaro
deleted file mode 100644
index 01a02c1..0000000
Binary files a/documents/B2B_CP_POL_2020-01-13/Aplikace/B2BClient-1.0.jaro and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-01-13/Aplikace/psTrustStore.jks b/documents/B2B_CP_POL_2020-01-13/Aplikace/psTrustStore.jks
deleted file mode 100644
index 102d7e5..0000000
Binary files a/documents/B2B_CP_POL_2020-01-13/Aplikace/psTrustStore.jks and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-01-13/CP-B2B-WS-POL-v1.16_123615_20200521-0944.docx b/documents/B2B_CP_POL_2020-01-13/CP-B2B-WS-POL-v1.16_123615_20200521-0944.docx
deleted file mode 100644
index 759b014..0000000
Binary files a/documents/B2B_CP_POL_2020-01-13/CP-B2B-WS-POL-v1.16_123615_20200521-0944.docx and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-01-13/Dokumentace/CP-B2B-WS-POL-v1.16.docx b/documents/B2B_CP_POL_2020-01-13/Dokumentace/CP-B2B-WS-POL-v1.16.docx
deleted file mode 100644
index 85e1cdc..0000000
Binary files a/documents/B2B_CP_POL_2020-01-13/Dokumentace/CP-B2B-WS-POL-v1.16.docx and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-01-13/Dokumentace/ResponseCodes.ods b/documents/B2B_CP_POL_2020-01-13/Dokumentace/ResponseCodes.ods
deleted file mode 100644
index 26785a5..0000000
Binary files a/documents/B2B_CP_POL_2020-01-13/Dokumentace/ResponseCodes.ods and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-01-13/Schema/B2B-POLServices-v1.6.xsd b/documents/B2B_CP_POL_2020-01-13/Schema/B2B-POLServices-v1.6.xsd
deleted file mode 100644
index 2d43e3d..0000000
--- a/documents/B2B_CP_POL_2020-01-13/Schema/B2B-POLServices-v1.6.xsd
+++ /dev/null
@@ -1,1065 +0,0 @@
-
-
-
-
-
- Popis: Schema služeb B2B pro Podani Online
- Authors: Ceska posta
- 06.01.2016 - verze 1.0 - Uvodni
- 05.02.2016 - verze 1.1 - Omezeni poctu opakovani u doParcelData, getParcelState
- 07.03.2016 - verze 1.2 - Zmena typu objektu service, category, note
- 01.06.2016 - verze 1.3 - Doplneny elementy getParcelsPrinting, getParcelsPrintingResponse;
- - zmena simpleType phoneNumberType;
- - uprava doParcelHeader - zmena povinnosti senderAddress, novy nepovinny parametry locationNumber
- 26.05.2017 - verze 1.4 - přidání elementu do doParcelParams
- 07.02.2018 - verze 1.5 - Zmena minOccurs u doParcelData z 1 na 0, pridaní transmissionEnd pod locationNumber
- 23.10.2018 - verze 1.6 - Do popisu idForm v doPrintingHeader doplněny nové formuláře ID 72 a 73
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Statistika importů za požadované období - vstup
-
-
-
-
- Datum od
-
-
-
-
- Datum do
-
-
-
-
-
-
-
-
-
- Statistika importů za požadované období - výstup
-
-
-
-
- Celkový počet importů
-
-
-
-
- Počet chybných importů
-
-
-
-
- Počet přijatých importů
-
-
-
-
- Počet přijatých zásilek
-
-
-
-
-
-
-
-
-
-
-
-
- ID zasilky
-
-
-
-
-
- Jazyk zobrazovanych udalosti. Pokud null, pouzije se cestina.
-
-
-
-
-
-
-
-
-
-
-
- Data zásilky
-
-
-
-
-
-
-
-
-
- Data tisku zásilek
-
-
-
-
- Hlavičkové údaje
-
-
-
-
- Položkové údaje
-
-
-
-
-
-
-
-
-
- Data výsledku tisku (soubor PDF)
-
-
-
-
- Hlavičková data výsledku podání
-
-
-
-
- Data tisku
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Adresa odesílatele
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení adresáta dobírkové částky
-
-
-
-
- Kontakní údaje odesílatele
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Indikace zda uzavřít podání
-
-
-
-
-
-
-
-
-
- Název
-
-
-
-
- Doplňující informace k názvu podavatele
-
-
-
-
- Ulice
-
-
-
-
- Číslo popisné
-
-
-
-
- Číslo orientační
-
-
-
-
- Část obce
-
-
-
-
- Obec
-
-
-
-
- PSČ
-
-
-
-
-
-
-
-
-
-
-
- Předčíslí k účtu
-
-
-
-
- Číslo účtu
-
-
-
-
- Kód banky
-
-
-
-
-
-
-
-
-
- Mobil
-
-
-
-
- Telefon
-
-
-
-
- Email
-
-
-
-
-
-
-
-
-
- Parametry zásilky
-
-
-
-
- Požadované doplňkové služby
-
-
-
-
- Adresát zásilky
-
-
-
-
- Adresát dokumentů
-
-
-
-
- Data celní prohlášky
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- ID zásilky
-
-
-
-
- Typ zásilky (prefix)
-
-
-
-
- Hmotnost
-
-
-
-
- Udaná cena
-
-
-
-
- Dobírka
-
-
-
-
- ISO kód měny dobírky
-
-
-
-
- Variabilní symbol - poukázka
-
-
-
-
- Variabilní symbol - zásilka
-
-
-
-
- Pořadí v rámci vícekusové zásilky
-
-
-
-
- Celkový počet zásilkek vícekusové zásilky
-
-
-
-
- Poznámka
-
-
-
-
- Poznámka pro tisk
-
-
-
-
- Délka
-
-
-
-
- Šířka
-
-
-
-
- Výška
-
-
-
-
- Kód MRN
-
-
-
-
- Číslo jednací
-
-
-
-
- Počet palet
-
-
-
-
- Specifický symbol
-
-
-
-
- Poznámka 2
-
-
-
-
- Počet dokumentů
-
-
-
-
- Nápočet ceny služby
-
-
-
-
- Číslo objednávky ZPRO
-
-
-
-
- Počet dní pro vrácení zásilky
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Kategorie zásilky
-
-
-
-
-
- Poznámka
-
-
-
-
- ISO kód měny celní hodnoty
-
-
-
-
- Popis obsahu zásilky
-
-
-
-
-
-
-
-
-
- Pořadí
-
-
-
-
- Popis zboží
-
-
-
-
- Množství
-
-
-
-
- Hmotnost
-
-
-
-
- Celní hodnota
-
-
-
-
- HS kód
-
-
-
-
- Země původu zboží
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ID zásilky
-
-
-
-
- typ zásilky
-
-
-
-
- hmotnost zásilky
-
-
-
-
- výše dobírky
-
-
-
-
- měna dobírkové částky
-
-
-
-
- pocet kusu
-
-
-
-
- datum uložení do
-
-
-
-
- úložní doba
-
-
-
-
- země původu
-
-
-
-
- země určení
-
-
-
-
- historie stavů
-
-
-
-
-
-
-
-
-
- Stav zásilky
-
-
-
-
-
-
-
-
-
-
- ID stavu
-
-
-
-
- datum stavu
-
-
-
-
- text stavu
-
-
-
-
- psc kde stav nastal
-
-
-
-
- název provozovny kde stav nastal
-
-
-
-
-
-
-
- Hlavičkové údaje tisku zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- ID CČK složky podavatele
-
-
-
-
- ID formuláře
- 7 - adresní štítek (alonž) - samostatný
- 8 - adresní štítek (alonž) + dobírková poukázka A
- 10 - poštovní dobírková poukázka A - samostatná
- 11 - poštovní dobírková poukázka A - 3x (A4)
- 12 - Poštovní dobírková poukázka C
- 13 - Dobírková složenka ČSOB
- 20 - adresní štítek bianco - 4x (A4)
- 21 - adresní štítek bianco - samostatný
- 22 - obálka 1 - C6
- 23 - obálka 2 - C5
- 24 - obálka 3 - B4
- 25 - obálka 4 - DL bez okénka
- 26 - štítky pro RR - 3x8 (A4)
- 38 - Integrovaný doklad
- 39 - adresní štítek bianco - samostatný (na šířku)
- 40 - Adresní údaje 3x8 (A4)
- 41 - Dodejka
- 56 - CN22
- 57 - CN23
- 58 - AŠ - samostatný Standardní balík do zahraničí
- 59 - AŠ - 4xA4 Standardní balík do zahraničí
- 60 - AŠ - samostatný Cenný balík do zahraničí
- 61 - 4xA4 Cenný balík do zahraničí
- 62 - AŠ - samostatný EMS zahraničí
- 63 - AŠ - 2xA4 EMS do zahraničí
- 72 - Harmonizovaný štítek pro MZ produkty – samostatný
- 73 - Harmonizovaný štítek pro MZ produkty – 4x (A4)
-
- Formuláře ID 72 a 73 je možno použít pouze pro zásilky s prefixem CE do zemí AT, DE, FR, GR, HR, CH, IS, LU, LV, NO, PL, SK
-
-
-
-
-
-
- Hodnota posunu doprava v mm
-
-
-
-
- Hodnota posunu dolů v mm
-
-
-
-
- Hodnota pozice
-
-
-
-
-
-
-
- Kolekce ID zásilek
-
-
-
-
- ID zásilky
-
-
-
-
-
-
-
- Hlavičková data výsledku tisku
-
-
-
-
- Vlastní hlavička pro tisk
-
-
-
-
-
- Stav tisku: responseCode responseText Popis
- ==============================================================================================
- 1 OK Data parametrů zpracování v pořádku
- 2 INTERNALL_ERROR Jiná chyba systému
- 100 INVALID_PARCEL_CODE Neplatné ID zásilky
- 378 INVALID_PREFIX_COMBINATION Zásilka je chybně přiřazena k id tiskové šablony
- 379 PARCEL_DOES_NOT_MEET_THE_REQUIREMENTS_FORM Parametry zásilky nesplňují podmínky požadovaného formuláře
- 380 NO_CONTRACT_SERVICE_RETURN_RECEIPT K formuláři není sjednána smlouva ke službě Dodejka
-
-
-
-
-
-
-
-
- Data výsledku tisku (soubor PDF)
-
-
-
-
- Soubor PDF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/documents/B2B_CP_POL_2020-01-13/Schema/B2BCommon-v1.1.xsd b/documents/B2B_CP_POL_2020-01-13/Schema/B2BCommon-v1.1.xsd
deleted file mode 100644
index e8461c3..0000000
--- a/documents/B2B_CP_POL_2020-01-13/Schema/B2BCommon-v1.1.xsd
+++ /dev/null
@@ -1,196 +0,0 @@
-
-
-
-
- Popis: Obecné schéma B2B.
- Authors: Petr Flídr, Jan Blatecký
- 20.10.2013 - verze 1.0 - Úvodní
- 19.08.2014 - verze 1.1 - Oprava namespace
-
-
-
-
-
-
- Data requestu služby B2B
-
-
-
-
-
- Hlavičkové údaje pro B2B
-
-
-
-
-
- Jakákoliv struktura uživatelských elementů. Elementy musí používat vlastní jmenný prostor. (jen v případě pokud jsou požadována vstupní data synchronní služby)
-
-
-
-
- ID transakce, přidělené B2B modulem (je v případě kdy se má vrátit odpověď z přechozího asynchronního volání)
-
-
-
-
-
-
-
-
-
- Datový objekt response, který budou obsahovat všechny služby B2B modulu, které mají vrátit výsledek synchronně
- z backendu, vzhledem k ext. subjektu a backendu.
-
-
-
-
-
-
- Hlavičkové údaje B2B
-
-
-
-
-
- Časové razítko B2B modulu
-
-
-
-
- Datový objekt hlavičky, který byl na vstupu
-
-
-
-
-
-
-
- Jakákoliv struktura uživatelských elementů. Elementy musí používat vlastní jmenný prostor.
-
-
-
-
-
-
-
-
- Datový objekt pro odpověď všech služeb B2B modulu pro vstup dat do backendů - asynchronní volání vzhledem k ext. subjektu a backendu.
-
-
-
-
-
- Hlavičkové údaje B2B
-
-
-
-
-
- ID B2B, které unikátní
-
-
-
-
- Časové razítko, převzetí dat B2B modulem
-
-
-
-
- Předpokládaný čas zpracování backendem
-
-
-
-
- Hlavička, která byla na vstupu
-
-
-
-
-
-
-
-
-
-
-
- Definováno jako element (a ne jen jako pojmenovatý typ)
- => element ve výsledném XML se vždy bude jmenovat takto (umožní XPath adresaci)
- => vygenerovaná třída bude oanotována @XmlRootElement (umožní marshalling)
-
-
-
-
- errorCode errorDetail Popis
- ==============================================================================================
- 1 UNAUTHORIZED_ROLE_ACCESS Klient nemá definovanou požadovanou roli na službu
- 2 UNAUTHORIZED_CONTRACT_ACCES Klient nemá definován ke službě uvedený identifikátor smlouvy
- 3 INTERNAL_ERROR_B2B Interní chyba systému B2B
- 4 INTERNAL_ERROR_DATA Interní chyba aplikace (perzistence)
- 5 INTERNAL_ERROR_BACKEND Interní chyba backendu
- 7 BAD_REQUEST Request nemá očekávaný formát (obvykle text/xml)
- 8 OVERFLOW_MAX_CALL_COUNT Překročen parametr maximálního počtu volání za jeden den pro klienta
- 9 TRY_AGAIN_LATER Překročen parametr maximálního počtu paralelního volání služby
- 10 UNFINISHED_PROCESS Zpracování není ještě ukončeno
-
-
-
-
-
- Error text
-
-
-
-
- Error kód
-
-
-
-
-
-
-
-
-
-
- Datový objekt requestu, který budou obsahovat všechny služby B2B modulu.
-
-
-
-
- ID transakce externího systému
-
-
-
-
- Časové razítko externího systému
-
-
-
-
- ID, které je definované pro službu B2B příslušného backendu
-
-
-
-
-
-
-
- Jakákoliv struktura uživatelských elementů. Elementy musí používat vlastní jmenný prostor.
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/documents/B2B_CP_POL_2020-05-21/B2B-POLServices-v1.8.xsd b/documents/B2B_CP_POL_2020-05-21/B2B-POLServices-v1.8.xsd
deleted file mode 100644
index 23c9356..0000000
--- a/documents/B2B_CP_POL_2020-05-21/B2B-POLServices-v1.8.xsd
+++ /dev/null
@@ -1,2110 +0,0 @@
-
-
-
-
-
- Popis: Schema služeb B2B pro Podani Online
- Authors: Ceska posta
- 06.01.2016 - verze 1.0 - Uvodni
- 05.02.2016 - verze 1.1 - Omezeni poctu opakovani u doParcelData, getParcelState
- 07.03.2016 - verze 1.2 - Zmena typu objektu service, category, note
- 01.06.2016 - verze 1.3 - Doplneny elementy getParcelsPrinting, getParcelsPrintingResponse;
- - zmena simpleType phoneNumberType;
- - uprava doParcelHeader - zmena povinnosti senderAddress, novy nepovinny parametry locationNumber
- 26.05.2017 - verze 1.4 - přidání elementu do doParcelParams
- 07.02.2018 - verze 1.5 - Zmena minOccurs u doParcelData z 1 na 0, pridaní transmissionEnd pod locationNumber
- 23.10.2018 - verze 1.6 - Do popisu idForm v doPrintingHeader doplněny nové formuláře ID 72 a 73
- 21.05.2019 - verze 1.7 - odstraneni patternu pro email, v doPrintingHeader doplněny nové formuláře ID 100,101,102,102,200,201 a 202
- 28.02.2020 - verze 1.8 - pridani novych operaci letterWithCN22, letterWithCN22Result, locationList,locationDelete, locationCreate, parcelServiceSync
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Statistika importů za požadované období - vstup
-
-
-
-
- Datum od
-
-
-
-
- Datum do
-
-
-
-
-
-
-
-
-
- Statistika importů za požadované období - výstup
-
-
-
-
- Celkový počet importů
-
-
-
-
- Počet chybných importů
-
-
-
-
- Počet přijatých importů
-
-
-
-
- Počet přijatých zásilek
-
-
-
-
-
-
-
-
-
-
-
-
- ID zasilky
-
-
-
-
-
- Jazyk zobrazovanych udalosti. Pokud null, pouzije se cestina.
-
-
-
-
-
-
-
-
-
-
-
- Data zásilky
-
-
-
-
-
-
-
-
-
- Data tisku zásilek
-
-
-
-
- Hlavičkové údaje
-
-
-
-
- Položkové údaje
-
-
-
-
-
-
-
-
-
- Data výsledku tisku (soubor PDF)
-
-
-
-
- Hlavičková data výsledku podání
-
-
-
-
- Data tisku
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Adresa odesílatele
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení adresáta dobírkové částky
-
-
-
-
- Kontakní údaje odesílatele
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Indikace zda uzavřít podání
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Seznam podacích míst, adres, bankovních spojení a kontaktů
-
-
-
-
-
-
-
-
-
-
- Seznam podacích míst
-
-
-
-
-
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Název podacího místa
-
-
-
-
- Doplněk podacího místa
-
-
-
-
- Adresa podacího místa
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení podacího místa
-
-
-
-
- Kontakty podacího místa
-
-
-
-
-
-
-
- Zruší podací místo včetně adres, bankovních spojení a kontaktů
-
-
-
-
-
- Číslo podacího místa
-
-
-
-
-
-
-
-
-
-
-
- Id podání zásilek
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
- Číslo podacího místa
-
-
-
-
-
-
-
-
-
- Parametry zásilky
-
-
-
-
- Adresát zásilky
-
-
-
-
- Data celní prohlášky
-
-
-
-
-
-
-
-
-
- Kategorie zásilky
-
-
-
-
-
- Poznámka
-
-
-
-
- ISO kód měny celní hodnoty
-
-
-
-
- Číslo dovozce
-
-
-
-
- Popis obsahu zásilky
-
-
-
-
-
-
-
-
-
- Pořadí
-
-
-
-
- Popis zboží
-
-
-
-
- Množství
-
-
-
-
- Hmotnost
-
-
-
-
- Celní hodnota
-
-
-
-
- HS kód
-
-
-
-
- Země původu zboží
-
-
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- ID zásilky
-
-
-
-
- Hmotnost
-
-
-
-
- Poznámka
-
-
-
-
- Poznámka 2
-
-
-
-
- Požadované doplňkové služby
-
-
-
-
-
-
-
-
-
-
- Uloží podací místo včetně adres, bankovních spojení a kontaktů
-
-
-
-
-
- Název podacího místa
-
-
-
-
- Doplněk podacího místa
-
-
-
-
- Adresa podacího místa
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení podacího místa
-
-
-
-
- Kontakty podacího místa
-
-
-
-
-
-
-
-
-
- Předčíslí k účtu
-
-
-
-
- Číslo účtu
-
-
-
-
- Kód banky
-
-
-
-
-
-
-
-
-
- Mobil
-
-
-
-
- Telefon
-
-
-
-
- Email
-
-
-
-
-
-
-
-
-
- Název
-
-
-
-
- Doplňující informace k názvu podavatele
-
-
-
-
- Ulice
-
-
-
-
- Číslo popisné
-
-
-
-
- Číslo orientační
-
-
-
-
- Část obce
-
-
-
-
- Obec
-
-
-
-
- PSČ
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Číslo podacího místa
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Indikace zda uzavřít podání
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
-
-
-
-
-
-
- Parametry zásilky
-
-
-
-
- Adresát zásilky
-
-
-
-
- Adresát dokumentů
-
-
-
-
- Data celní prohlášky
-
-
-
-
- VVD dokumenty
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- Typ
-
-
-
-
- Název
-
-
-
-
- Id
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- ID zásilky
-
-
-
-
- Typ zásilky (prefix)
-
-
-
-
- Hmotnost
-
-
-
-
- Udaná cena
-
-
-
-
- Dobírka
-
-
-
-
- ISO kód měny dobírky
-
-
-
-
- Variabilní symbol - poukázka
-
-
-
-
- Variabilní symbol - zásilka
-
-
-
-
- Pořadí v rámci vícekusové zásilky
-
-
-
-
- Celkový počet zásilkek vícekusové zásilky
-
-
-
-
- Poznámka
-
-
-
-
- Poznámka pro tisk
-
-
-
-
- Délka
-
-
-
-
- Šířka
-
-
-
-
- Výška
-
-
-
-
- Kód MRN
-
-
-
-
- Číslo jednací
-
-
-
-
- Počet palet
-
-
-
-
- Specifický symbol
-
-
-
-
- Poznámka 2
-
-
-
-
- Počet dokumentů
-
-
-
-
- Nápočet ceny služby
-
-
-
-
- Číslo objednávky ZPRO
-
-
-
-
- Počet dní pro vrácení zásilky
-
-
-
-
- Požadované doplňkové služby
-
-
-
-
-
-
-
-
-
-
-
-
-
- Hlavičkové údaje tisku zásilek
-
-
-
-
- ID formuláře
- 7 - adresní štítek (alonž) - samostatný
- 8 - adresní štítek (alonž) + dobírková poukázka A
- 10 - poštovní dobírková poukázka A - samostatná
- 11 - poštovní dobírková poukázka A - 3x (A4)
- 12 - Poštovní dobírková poukázka C
- 13 - Dobírková složenka ČSOB
- 20 - adresní štítek bianco - 4x (A4)
- 21 - adresní štítek bianco - samostatný
- 22 - obálka 1 - C6
- 23 - obálka 2 - C5
- 24 - obálka 3 - B4
- 25 - obálka 4 - DL bez okénka
- 26 - štítky pro RR - 3x8 (A4)
- 38 - Integrovaný doklad
- 39 - adresní štítek bianco - samostatný (na šířku)
- 40 - Adresní údaje 3x8 (A4)
- 41 - Dodejka
- 56 - CN22 – 1x (A4)
- 57 - CN23 – 1x (A4)
- 58 - CP72 pro standardní MZ balík
- 59 - CP72 pro standardní MZ balík – 2x A4
- 60 - CP72 pro cenný MZ balík
- 61 - CP72 pro cenný MZ balík – 2x A4
- 62 - AŠ - samostatný EMS zahraničí
- 63 - AŠ - 2xA4 EMS do zahraničí
- 72 - Obchodní balík do zahraničí – samostatný
- 73 - Obchodní balík do zahraničí – 4x (A4)
- 74 - CN22 – 4x (A4)
- 75 - CN22 s ČK – 1x (A4)
- 76 - CN22 s ČK – 4x (A4)
-
-
-
-
-
- Hodnota posunu doprava v mm
-
-
-
-
- Hodnota posunu dolů v mm
-
-
-
-
- Hodnota pozice
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Adresa odesílatele
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení adresáta dobírkové částky
-
-
-
-
- Kontakní údaje odesílatele
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Indikace zda uzavřít podání
-
-
-
-
-
-
-
-
-
- Název
-
-
-
-
- Doplňující informace k názvu podavatele
-
-
-
-
- Ulice
-
-
-
-
- Číslo popisné
-
-
-
-
- Číslo orientační
-
-
-
-
- Část obce
-
-
-
-
- Obec
-
-
-
-
- PSČ
-
-
-
-
-
-
-
-
-
-
-
- Předčíslí k účtu
-
-
-
-
- Číslo účtu
-
-
-
-
- Kód banky
-
-
-
-
-
-
-
-
-
- Mobil
-
-
-
-
- Telefon
-
-
-
-
- Email
-
-
-
-
-
-
-
-
-
- Parametry zásilky
-
-
-
-
- Požadované doplňkové služby
-
-
-
-
- Adresát zásilky
-
-
-
-
- Adresát dokumentů
-
-
-
-
- Data celní prohlášky
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- ID zásilky
-
-
-
-
- Typ zásilky (prefix)
-
-
-
-
- Hmotnost
-
-
-
-
- Udaná cena
-
-
-
-
- Dobírka
-
-
-
-
- ISO kód měny dobírky
-
-
-
-
- Variabilní symbol - poukázka
-
-
-
-
- Variabilní symbol - zásilka
-
-
-
-
- Pořadí v rámci vícekusové zásilky
-
-
-
-
- Celkový počet zásilkek vícekusové zásilky
-
-
-
-
- Poznámka
-
-
-
-
- Poznámka pro tisk
-
-
-
-
- Délka
-
-
-
-
- Šířka
-
-
-
-
- Výška
-
-
-
-
- Kód MRN
-
-
-
-
- Číslo jednací
-
-
-
-
- Počet palet
-
-
-
-
- Specifický symbol
-
-
-
-
- Poznámka 2
-
-
-
-
- Počet dokumentů
-
-
-
-
- Nápočet ceny služby
-
-
-
-
- Číslo objednávky ZPRO
-
-
-
-
- Počet dní pro vrácení zásilky
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Kategorie zásilky
-
-
-
-
-
- Poznámka
-
-
-
-
- ISO kód měny celní hodnoty
-
-
-
-
- Popis obsahu zásilky
-
-
-
-
-
-
-
-
-
- Pořadí
-
-
-
-
- Popis zboží
-
-
-
-
- Množství
-
-
-
-
- Hmotnost
-
-
-
-
- Celní hodnota
-
-
-
-
- HS kód
-
-
-
-
- Země původu zboží
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ID zásilky
-
-
-
-
- typ zásilky
-
-
-
-
- hmotnost zásilky
-
-
-
-
- výše dobírky
-
-
-
-
- měna dobírkové částky
-
-
-
-
- pocet kusu
-
-
-
-
- datum uložení do
-
-
-
-
- úložní doba
-
-
-
-
- země původu
-
-
-
-
- země určení
-
-
-
-
- historie stavů
-
-
-
-
-
-
-
-
-
- Stav zásilky
-
-
-
-
-
-
-
-
-
-
- ID stavu
-
-
-
-
- datum stavu
-
-
-
-
- text stavu
-
-
-
-
- psc kde stav nastal
-
-
-
-
- název provozovny kde stav nastal
-
-
-
-
-
-
-
- Hlavičkové údaje tisku zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- ID CČK složky podavatele
-
-
-
-
- ID formuláře
- 7 - adresní štítek (alonž) - samostatný
- 8 - adresní štítek (alonž) + dobírková poukázka A
- 10 - poštovní dobírková poukázka A - samostatná
- 11 - poštovní dobírková poukázka A - 3x (A4)
- 12 - Poštovní dobírková poukázka C
- 13 - Dobírková složenka ČSOB
- 20 - adresní štítek bianco - 4x (A4)
- 21 - adresní štítek bianco - samostatný
- 22 - obálka 1 - C6
- 23 - obálka 2 - C5
- 24 - obálka 3 - B4
- 25 - obálka 4 - DL bez okénka
- 26 - štítky pro RR - 3x8 (A4)
- 38 - Integrovaný doklad
- 39 - adresní štítek bianco - samostatný (na šířku)
- 40 - Adresní údaje 3x8 (A4)
- 41 - Dodejka
- 56 - CN22
- 57 - CN23
- 58 - AŠ - samostatný Standardní balík do zahraničí
- 59 - AŠ - 4xA4 Standardní balík do zahraničí
- 60 - AŠ - samostatný Cenný balík do zahraničí
- 61 - 4xA4 Cenný balík do zahraničí
- 62 - AŠ - samostatný EMS zahraničí
- 63 - AŠ - 2xA4 EMS do zahraničí
- 72 - Harmonizovaný štítek pro MZ produkty – samostatný
- 73 - Harmonizovaný štítek pro MZ produkty – 4x (A4)
- 100 - Harmonizovaný štítek bianco – 4x (A4)
- 101 - Harmonizovaný štítek bianco – samostatný
- 102 - Harmonizovaný štítek bianco – samostatný (na výšku)
- 103 - Adresní štítek A6 – 4x
- 200 - Harmonizovaný štítek bianco - (Zebra - 105x148)
- 201 - Harmonizovaný štítek bianco - (Zebra - 100x150)
- 202 - Harmonizovaný štítek bianco - (Zebra - 100x125)
-
- Formuláře ID 72 a 73 je možno použít pouze pro zásilky s prefixem CE do zemí AT, DE, FR, GR, HR, CH, IS, LU, LV, NO, PL, SK
-
-
-
-
-
-
- Hodnota posunu doprava v mm
-
-
-
-
- Hodnota posunu dolů v mm
-
-
-
-
- Hodnota pozice
-
-
-
-
-
-
-
- Kolekce ID zásilek
-
-
-
-
- ID zásilky
-
-
-
-
-
-
-
- Hlavičková data výsledku tisku
-
-
-
-
- Vlastní hlavička pro tisk
-
-
-
-
-
- Stav tisku: responseCode responseText Popis
- ==============================================================================================
- 1 OK Data parametrů zpracování v pořádku
- 2 INTERNALL_ERROR Jiná chyba systému
- 100 INVALID_PARCEL_CODE Neplatné ID zásilky
- 378 INVALID_PREFIX_COMBINATION Zásilka je chybně přiřazena k id tiskové šablony
- 379 PARCEL_DOES_NOT_MEET_THE_REQUIREMENTS_FORM Parametry zásilky nesplňují podmínky požadovaného formuláře
- 380 NO_CONTRACT_SERVICE_RETURN_RECEIPT K formuláři není sjednána smlouva ke službě Dodejka
-
-
-
-
-
-
-
-
- Data výsledku tisku (soubor PDF)
-
-
-
-
- Soubor PDF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/documents/B2B_CP_POL_2020-05-21/B2BCommon-v1.1.xsd b/documents/B2B_CP_POL_2020-05-21/B2BCommon-v1.1.xsd
deleted file mode 100644
index 70f43b9..0000000
--- a/documents/B2B_CP_POL_2020-05-21/B2BCommon-v1.1.xsd
+++ /dev/null
@@ -1,196 +0,0 @@
-
-
-
-
- Popis: Obecné schéma B2B.
- Authors: Ceska posta
- 20.10.2013 - verze 1.0 - Úvodní
- 19.08.2014 - verze 1.1 - Oprava namespace
-
-
-
-
-
-
- Data requestu služby B2B
-
-
-
-
-
- Hlavičkové údaje pro B2B
-
-
-
-
-
- Jakákoliv struktura uživatelských elementů. Elementy musí používat vlastní jmenný prostor. (jen v případě pokud jsou požadována vstupní data synchronní služby)
-
-
-
-
- ID transakce, přidělené B2B modulem (je v případě kdy se má vrátit odpověď z přechozího asynchronního volání)
-
-
-
-
-
-
-
-
-
- Datový objekt response, který budou obsahovat všechny služby B2B modulu, které mají vrátit výsledek synchronně
- z backendu, vzhledem k ext. subjektu a backendu.
-
-
-
-
-
-
- Hlavičkové údaje B2B
-
-
-
-
-
- Časové razítko B2B modulu
-
-
-
-
- Datový objekt hlavičky, který byl na vstupu
-
-
-
-
-
-
-
- Jakákoliv struktura uživatelských elementů. Elementy musí používat vlastní jmenný prostor.
-
-
-
-
-
-
-
-
- Datový objekt pro odpověď všech služeb B2B modulu pro vstup dat do backendů - asynchronní volání vzhledem k ext. subjektu a backendu.
-
-
-
-
-
- Hlavičkové údaje B2B
-
-
-
-
-
- ID B2B, které unikátní
-
-
-
-
- Časové razítko, převzetí dat B2B modulem
-
-
-
-
- Předpokládaný čas zpracování backendem
-
-
-
-
- Hlavička, která byla na vstupu
-
-
-
-
-
-
-
-
-
-
-
- Definováno jako element (a ne jen jako pojmenovatý typ)
- => element ve výsledném XML se vždy bude jmenovat takto (umožní XPath adresaci)
- => vygenerovaná třída bude oanotována @XmlRootElement (umožní marshalling)
-
-
-
-
- errorCode errorDetail Popis
- ==============================================================================================
- 1 UNAUTHORIZED_ROLE_ACCESS Klient nemá definovanou požadovanou roli na službu
- 2 UNAUTHORIZED_CONTRACT_ACCES Klient nemá definován ke službě uvedený identifikátor smlouvy
- 3 INTERNAL_ERROR_B2B Interní chyba systému B2B
- 4 INTERNAL_ERROR_DATA Interní chyba aplikace (perzistence)
- 5 INTERNAL_ERROR_BACKEND Interní chyba backendu
- 7 BAD_REQUEST Request nemá očekávaný formát (obvykle text/xml)
- 8 OVERFLOW_MAX_CALL_COUNT Překročen parametr maximálního počtu volání za jeden den pro klienta
- 9 TRY_AGAIN_LATER Překročen parametr maximálního počtu paralelního volání služby
- 10 UNFINISHED_PROCESS Zpracování není ještě ukončeno
-
-
-
-
-
- Error text
-
-
-
-
- Error kód
-
-
-
-
-
-
-
-
-
-
- Datový objekt requestu, který budou obsahovat všechny služby B2B modulu.
-
-
-
-
- ID transakce externího systému
-
-
-
-
- Časové razítko externího systému
-
-
-
-
- ID, které je definované pro službu B2B příslušného backendu
-
-
-
-
-
-
-
- Jakákoliv struktura uživatelských elementů. Elementy musí používat vlastní jmenný prostor.
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/documents/B2B_CP_POL_2020-05-21/CP-B2B-WS-POL-v1.16_123615_20200521-0944.docx b/documents/B2B_CP_POL_2020-05-21/CP-B2B-WS-POL-v1.16_123615_20200521-0944.docx
deleted file mode 100644
index 759b014..0000000
Binary files a/documents/B2B_CP_POL_2020-05-21/CP-B2B-WS-POL-v1.16_123615_20200521-0944.docx and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-05-21/response_codes_1.10.xls b/documents/B2B_CP_POL_2020-05-21/response_codes_1.10.xls
deleted file mode 100644
index 88e35b5..0000000
Binary files a/documents/B2B_CP_POL_2020-05-21/response_codes_1.10.xls and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-10-06/B2B-POLServices-v1.16_96802_20201006-1518.xsd b/documents/B2B_CP_POL_2020-10-06/B2B-POLServices-v1.16_96802_20201006-1518.xsd
deleted file mode 100644
index 6b26d89..0000000
--- a/documents/B2B_CP_POL_2020-10-06/B2B-POLServices-v1.16_96802_20201006-1518.xsd
+++ /dev/null
@@ -1,2110 +0,0 @@
-
-
-
-
-
- Popis: Schema služeb B2B pro Podani Online
- Authors: Ceska posta
- 06.01.2016 - verze 1.0 - Uvodni
- 05.02.2016 - verze 1.1 - Omezeni poctu opakovani u doParcelData, getParcelState
- 07.03.2016 - verze 1.2 - Zmena typu objektu service, category, note
- 01.06.2016 - verze 1.3 - Doplneny elementy getParcelsPrinting, getParcelsPrintingResponse;
- - zmena simpleType phoneNumberType;
- - uprava doParcelHeader - zmena povinnosti senderAddress, novy nepovinny parametry locationNumber
- 26.05.2017 - verze 1.4 - přidání elementu do doParcelParams
- 07.02.2018 - verze 1.5 - Zmena minOccurs u doParcelData z 1 na 0, pridaní transmissionEnd pod locationNumber
- 23.10.2018 - verze 1.6 - Do popisu idForm v doPrintingHeader doplněny nové formuláře ID 72 a 73
- 21.05.2019 - verze 1.7 - odstraneni patternu pro email, v doPrintingHeader doplněny nové formuláře ID 100,101,102,102,200,201 a 202
- 28.02.2020 - verze 1.8 - pridani novych operaci letterWithCN22, letterWithCN22Result, locationList,locationDelete, locationCreate, parcelServiceSync
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Statistika importů za požadované období - vstup
-
-
-
-
- Datum od
-
-
-
-
- Datum do
-
-
-
-
-
-
-
-
-
- Statistika importů za požadované období - výstup
-
-
-
-
- Celkový počet importů
-
-
-
-
- Počet chybných importů
-
-
-
-
- Počet přijatých importů
-
-
-
-
- Počet přijatých zásilek
-
-
-
-
-
-
-
-
-
-
-
-
- ID zasilky
-
-
-
-
-
- Jazyk zobrazovanych udalosti. Pokud null, pouzije se cestina.
-
-
-
-
-
-
-
-
-
-
-
- Data zásilky
-
-
-
-
-
-
-
-
-
- Data tisku zásilek
-
-
-
-
- Hlavičkové údaje
-
-
-
-
- Položkové údaje
-
-
-
-
-
-
-
-
-
- Data výsledku tisku (soubor PDF)
-
-
-
-
- Hlavičková data výsledku podání
-
-
-
-
- Data tisku
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Adresa odesílatele
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení adresáta dobírkové částky
-
-
-
-
- Kontakní údaje odesílatele
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Indikace zda uzavřít podání
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Seznam podacích míst, adres, bankovních spojení a kontaktů
-
-
-
-
-
-
-
-
-
-
- Seznam podacích míst
-
-
-
-
-
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Název podacího místa
-
-
-
-
- Doplněk podacího místa
-
-
-
-
- Adresa podacího místa
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení podacího místa
-
-
-
-
- Kontakty podacího místa
-
-
-
-
-
-
-
- Zruší podací místo včetně adres, bankovních spojení a kontaktů
-
-
-
-
-
- Číslo podacího místa
-
-
-
-
-
-
-
-
-
-
-
- Id podání zásilek
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
- Číslo podacího místa
-
-
-
-
-
-
-
-
-
- Parametry zásilky
-
-
-
-
- Adresát zásilky
-
-
-
-
- Data celní prohlášky
-
-
-
-
-
-
-
-
-
- Kategorie zásilky
-
-
-
-
-
- Poznámka
-
-
-
-
- ISO kód měny celní hodnoty
-
-
-
-
- Číslo dovozce
-
-
-
-
- Popis obsahu zásilky
-
-
-
-
-
-
-
-
-
- Pořadí
-
-
-
-
- Popis zboží
-
-
-
-
- Množství
-
-
-
-
- Hmotnost
-
-
-
-
- Celní hodnota
-
-
-
-
- HS kód
-
-
-
-
- Země původu zboží
-
-
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- ID zásilky
-
-
-
-
- Hmotnost
-
-
-
-
- Poznámka
-
-
-
-
- Poznámka 2
-
-
-
-
- Požadované doplňkové služby
-
-
-
-
-
-
-
-
-
-
- Uloží podací místo včetně adres, bankovních spojení a kontaktů
-
-
-
-
-
- Název podacího místa
-
-
-
-
- Doplněk podacího místa
-
-
-
-
- Adresa podacího místa
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení podacího místa
-
-
-
-
- Kontakty podacího místa
-
-
-
-
-
-
-
-
-
- Předčíslí k účtu
-
-
-
-
- Číslo účtu
-
-
-
-
- Kód banky
-
-
-
-
-
-
-
-
-
- Mobil
-
-
-
-
- Telefon
-
-
-
-
- Email
-
-
-
-
-
-
-
-
-
- Název
-
-
-
-
- Doplňující informace k názvu podavatele
-
-
-
-
- Ulice
-
-
-
-
- Číslo popisné
-
-
-
-
- Číslo orientační
-
-
-
-
- Část obce
-
-
-
-
- Obec
-
-
-
-
- PSČ
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Číslo podacího místa
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Indikace zda uzavřít podání
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
-
-
-
-
-
-
- Parametry zásilky
-
-
-
-
- Adresát zásilky
-
-
-
-
- Adresát dokumentů
-
-
-
-
- Data celní prohlášky
-
-
-
-
- VVD dokumenty
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- Typ
-
-
-
-
- Název
-
-
-
-
- Id
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- ID zásilky
-
-
-
-
- Typ zásilky (prefix)
-
-
-
-
- Hmotnost
-
-
-
-
- Udaná cena
-
-
-
-
- Dobírka
-
-
-
-
- ISO kód měny dobírky
-
-
-
-
- Variabilní symbol - poukázka
-
-
-
-
- Variabilní symbol - zásilka
-
-
-
-
- Pořadí v rámci vícekusové zásilky
-
-
-
-
- Celkový počet zásilkek vícekusové zásilky
-
-
-
-
- Poznámka
-
-
-
-
- Poznámka pro tisk
-
-
-
-
- Délka
-
-
-
-
- Šířka
-
-
-
-
- Výška
-
-
-
-
- Kód MRN
-
-
-
-
- Číslo jednací
-
-
-
-
- Počet palet
-
-
-
-
- Specifický symbol
-
-
-
-
- Poznámka 2
-
-
-
-
- Počet dokumentů
-
-
-
-
- Nápočet ceny služby
-
-
-
-
- Číslo objednávky ZPRO
-
-
-
-
- Počet dní pro vrácení zásilky
-
-
-
-
- Požadované doplňkové služby
-
-
-
-
-
-
-
-
-
-
-
-
-
- Hlavičkové údaje tisku zásilek
-
-
-
-
- ID formuláře
- 7 - adresní štítek (alonž) - samostatný
- 8 - adresní štítek (alonž) + dobírková poukázka A
- 10 - poštovní dobírková poukázka A - samostatná
- 11 - poštovní dobírková poukázka A - 3x (A4)
- 12 - Poštovní dobírková poukázka C
- 13 - Dobírková složenka ČSOB
- 20 - adresní štítek bianco - 4x (A4)
- 21 - adresní štítek bianco - samostatný
- 22 - obálka 1 - C6
- 23 - obálka 2 - C5
- 24 - obálka 3 - B4
- 25 - obálka 4 - DL bez okénka
- 26 - štítky pro RR - 3x8 (A4)
- 38 - Integrovaný doklad
- 39 - adresní štítek bianco - samostatný (na šířku)
- 40 - Adresní údaje 3x8 (A4)
- 41 - Dodejka
- 56 - CN22 – 1x (A4)
- 57 - CN23 – 1x (A4)
- 58 - CP72 pro standardní MZ balík
- 59 - CP72 pro standardní MZ balík – 2x A4
- 60 - CP72 pro cenný MZ balík
- 61 - CP72 pro cenný MZ balík – 2x A4
- 62 - AŠ - samostatný EMS zahraničí
- 63 - AŠ - 2xA4 EMS do zahraničí
- 72 - Obchodní balík do zahraničí – samostatný
- 73 - Obchodní balík do zahraničí – 4x (A4)
- 74 - CN22 – 4x (A4)
- 75 - CN22 s ČK – 1x (A4)
- 76 - CN22 s ČK – 4x (A4)
-
-
-
-
-
- Hodnota posunu doprava v mm
-
-
-
-
- Hodnota posunu dolů v mm
-
-
-
-
- Hodnota pozice
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Přepokládané datum podání zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- PSČ podací pošty
-
-
-
-
- Číslo zakázky
-
-
-
-
- Číslo výplatního stroje
-
-
-
-
- Adresa odesílatele
-
-
-
-
- Adresa adresáta dobírkové částky
-
-
-
-
- Bankovní spojení adresáta dobírkové částky
-
-
-
-
- Kontakní údaje odesílatele
-
-
-
-
- Číslo zákaznické karty odesílatele
-
-
-
-
- Číslo podacího místa
-
-
-
-
- Indikace zda uzavřít podání
-
-
-
-
-
-
-
-
-
- Název
-
-
-
-
- Doplňující informace k názvu podavatele
-
-
-
-
- Ulice
-
-
-
-
- Číslo popisné
-
-
-
-
- Číslo orientační
-
-
-
-
- Část obce
-
-
-
-
- Obec
-
-
-
-
- PSČ
-
-
-
-
-
-
-
-
-
-
-
- Předčíslí k účtu
-
-
-
-
- Číslo účtu
-
-
-
-
- Kód banky
-
-
-
-
-
-
-
-
-
- Mobil
-
-
-
-
- Telefon
-
-
-
-
- Email
-
-
-
-
-
-
-
-
-
- Parametry zásilky
-
-
-
-
- Požadované doplňkové služby
-
-
-
-
- Adresát zásilky
-
-
-
-
- Adresát dokumentů
-
-
-
-
- Data celní prohlášky
-
-
-
-
-
-
-
-
-
- ID záznamu
-
-
-
-
- ID zásilky
-
-
-
-
- Typ zásilky (prefix)
-
-
-
-
- Hmotnost
-
-
-
-
- Udaná cena
-
-
-
-
- Dobírka
-
-
-
-
- ISO kód měny dobírky
-
-
-
-
- Variabilní symbol - poukázka
-
-
-
-
- Variabilní symbol - zásilka
-
-
-
-
- Pořadí v rámci vícekusové zásilky
-
-
-
-
- Celkový počet zásilkek vícekusové zásilky
-
-
-
-
- Poznámka
-
-
-
-
- Poznámka pro tisk
-
-
-
-
- Délka
-
-
-
-
- Šířka
-
-
-
-
- Výška
-
-
-
-
- Kód MRN
-
-
-
-
- Číslo jednací
-
-
-
-
- Počet palet
-
-
-
-
- Specifický symbol
-
-
-
-
- Poznámka 2
-
-
-
-
- Počet dokumentů
-
-
-
-
- Nápočet ceny služby
-
-
-
-
- Číslo objednávky ZPRO
-
-
-
-
- Počet dní pro vrácení zásilky
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Kategorie zásilky
-
-
-
-
-
- Poznámka
-
-
-
-
- ISO kód měny celní hodnoty
-
-
-
-
- Popis obsahu zásilky
-
-
-
-
-
-
-
-
-
- Pořadí
-
-
-
-
- Popis zboží
-
-
-
-
- Množství
-
-
-
-
- Hmotnost
-
-
-
-
- Celní hodnota
-
-
-
-
- HS kód
-
-
-
-
- Země původu zboží
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ID zásilky
-
-
-
-
- typ zásilky
-
-
-
-
- hmotnost zásilky
-
-
-
-
- výše dobírky
-
-
-
-
- měna dobírkové částky
-
-
-
-
- pocet kusu
-
-
-
-
- datum uložení do
-
-
-
-
- úložní doba
-
-
-
-
- země původu
-
-
-
-
- země určení
-
-
-
-
- historie stavů
-
-
-
-
-
-
-
-
-
- Stav zásilky
-
-
-
-
-
-
-
-
-
-
- ID stavu
-
-
-
-
- datum stavu
-
-
-
-
- text stavu
-
-
-
-
- psc kde stav nastal
-
-
-
-
- název provozovny kde stav nastal
-
-
-
-
-
-
-
- Hlavičkové údaje tisku zásilek
-
-
-
-
- Technologické číslo podavatele
-
-
-
-
- ID CČK složky podavatele
-
-
-
-
- ID formuláře
- 7 - adresní štítek (alonž) - samostatný
- 8 - adresní štítek (alonž) + dobírková poukázka A
- 10 - poštovní dobírková poukázka A - samostatná
- 11 - poštovní dobírková poukázka A - 3x (A4)
- 12 - Poštovní dobírková poukázka C
- 13 - Dobírková složenka ČSOB
- 20 - adresní štítek bianco - 4x (A4)
- 21 - adresní štítek bianco - samostatný
- 22 - obálka 1 - C6
- 23 - obálka 2 - C5
- 24 - obálka 3 - B4
- 25 - obálka 4 - DL bez okénka
- 26 - štítky pro RR - 3x8 (A4)
- 38 - Integrovaný doklad
- 39 - adresní štítek bianco - samostatný (na šířku)
- 40 - Adresní údaje 3x8 (A4)
- 41 - Dodejka
- 56 - CN22
- 57 - CN23
- 58 - AŠ - samostatný Standardní balík do zahraničí
- 59 - AŠ - 4xA4 Standardní balík do zahraničí
- 60 - AŠ - samostatný Cenný balík do zahraničí
- 61 - 4xA4 Cenný balík do zahraničí
- 62 - AŠ - samostatný EMS zahraničí
- 63 - AŠ - 2xA4 EMS do zahraničí
- 72 - Harmonizovaný štítek pro MZ produkty – samostatný
- 73 - Harmonizovaný štítek pro MZ produkty – 4x (A4)
- 100 - Harmonizovaný štítek bianco – 4x (A4)
- 101 - Harmonizovaný štítek bianco – samostatný
- 102 - Harmonizovaný štítek bianco – samostatný (na výšku)
- 103 - Adresní štítek A6 – 4x
- 200 - Harmonizovaný štítek bianco - (Zebra - 105x148)
- 201 - Harmonizovaný štítek bianco - (Zebra - 100x150)
- 202 - Harmonizovaný štítek bianco - (Zebra - 100x125)
-
- Formuláře ID 72 a 73 je možno použít pouze pro zásilky s prefixem CE do zemí AT, DE, FR, GR, HR, CH, IS, LU, LV, NO, PL, SK
-
-
-
-
-
-
- Hodnota posunu doprava v mm
-
-
-
-
- Hodnota posunu dolů v mm
-
-
-
-
- Hodnota pozice
-
-
-
-
-
-
-
- Kolekce ID zásilek
-
-
-
-
- ID zásilky
-
-
-
-
-
-
-
- Hlavičková data výsledku tisku
-
-
-
-
- Vlastní hlavička pro tisk
-
-
-
-
-
- Stav tisku: responseCode responseText Popis
- ==============================================================================================
- 1 OK Data parametrů zpracování v pořádku
- 2 INTERNALL_ERROR Jiná chyba systému
- 100 INVALID_PARCEL_CODE Neplatné ID zásilky
- 378 INVALID_PREFIX_COMBINATION Zásilka je chybně přiřazena k id tiskové šablony
- 379 PARCEL_DOES_NOT_MEET_THE_REQUIREMENTS_FORM Parametry zásilky nesplňují podmínky požadovaného formuláře
- 380 NO_CONTRACT_SERVICE_RETURN_RECEIPT K formuláři není sjednána smlouva ke službě Dodejka
-
-
-
-
-
-
-
-
- Data výsledku tisku (soubor PDF)
-
-
-
-
- Soubor PDF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/documents/B2B_CP_POL_2020-10-06/CP-B2B-WS-POL-v1.13_96802_20201006-1126.xls b/documents/B2B_CP_POL_2020-10-06/CP-B2B-WS-POL-v1.13_96802_20201006-1126.xls
deleted file mode 100644
index c81ab27..0000000
Binary files a/documents/B2B_CP_POL_2020-10-06/CP-B2B-WS-POL-v1.13_96802_20201006-1126.xls and /dev/null differ
diff --git a/documents/B2B_CP_POL_2020-01-13/Dokumentace/CP-B2B-Client-v1.12.docx b/documents/CP-B2B-Client-v1.12.docx
similarity index 100%
rename from documents/B2B_CP_POL_2020-01-13/Dokumentace/CP-B2B-Client-v1.12.docx
rename to documents/CP-B2B-Client-v1.12.docx
diff --git a/documents/CP-B2B-WS-POL-v1.16.docx b/documents/CP-B2B-WS-POL-v1.16.docx
new file mode 100644
index 0000000..4b926b6
Binary files /dev/null and b/documents/CP-B2B-WS-POL-v1.16.docx differ
diff --git a/documents/Stavy_zasilek.pdf b/documents/Stavy_zasilek.pdf
new file mode 100644
index 0000000..160ddc3
Binary files /dev/null and b/documents/Stavy_zasilek.pdf differ
diff --git a/documents/latest_xsds/response_codes_20201006-1126.xls b/documents/latest_xsds/response_codes_20201006-1126.xls
deleted file mode 100644
index c81ab27..0000000
Binary files a/documents/latest_xsds/response_codes_20201006-1126.xls and /dev/null differ
diff --git a/documents/latest_xsds/response_codes_CP-B2B-WS-POL-v1.21_123615_20220322-1002.xls b/documents/latest_xsds/response_codes_CP-B2B-WS-POL-v1.21_123615_20220322-1002.xls
new file mode 100644
index 0000000..0088821
Binary files /dev/null and b/documents/latest_xsds/response_codes_CP-B2B-WS-POL-v1.21_123615_20220322-1002.xls differ
diff --git a/examples/try_api_calls.rb b/examples/try_api_calls.rb
index 44d553f..18db561 100644
--- a/examples/try_api_calls.rb
+++ b/examples/try_api_calls.rb
@@ -17,7 +17,7 @@ def initialize
def run
@processing_end_time_utc = nil
@transaction_id = nil
- import_parcels = :sync # options: :no, :sync, :async
+ import_parcels = :no # :sync # options: :no, :sync, :async
case import_parcels
when :async
@@ -31,16 +31,16 @@ def run
@parcels = build_parcels_for(existing_parcel_codes)
end
- # print_all_template_sheets_for_parcel_codes # if you need to check available templates for parcel_types
+ print_all_template_sheets_for_parcel_codes # if you need to check available templates for parcel_types
# print address sheets and stick it on right parcels
# sync version get address sheet in response of import
- print_address_sheets(print_options) unless import_parcels == :sync
+ # print_address_sheets(print_options) unless import_parcels == :sync
### here comes the human part: these parcels to post office
- check_and_update_delivery_statuses
- find_out_statistics
+ # check_and_update_delivery_statuses
+ # find_out_statistics
end
def download_xsds
@@ -52,16 +52,22 @@ def download_xsds
def print_selected_combinations
[
- ['RR950397329CZ', 74],
- ['CS229935172CZ', 74],
- ['CS229890414CZ', 72],
- ['CS229935209CZ', 41],
- ['CV200650205CZ', 20],
- ['RR0305100012L', 58],
- ['RR0305100026L', 61]
+ ['BA0305127240L', 200],
+ ['BA0305117707L', 200],
+ ['BA0305127240L', 201],
+ ['BA0305117707L', 201],
+ ['BA0305127240L', 202],
+ ['BA0305117707L', 202]
].each { |p_code, t_id| print_template_for_package(t_id, p_code) }
end
+ def print_multisheets
+ [
+ [%w[BA0305127240L BA0305117707L], 200],
+ [%w[BA0305127240L BA0305117707L], 201]
+ ].each { |p_codes, t_id| print_template_for_packages(t_id, p_codes) }
+ end
+
private
# this is all You need to change, to test gem for Your setup
@@ -70,9 +76,9 @@ def config_hash
{ contract_id: '356936003', # from CP signed contract
customer_id: 'L03051', # from CP signed contract
- certificate_path: File.join(certs_path, 'squared_VCA12032726.pem'),
- private_key_password: nil,
- private_key_path: File.join(certs_path, 'squared_private.key'),
+ certificate_path: File.join(certs_path, 'squared_VCA12032726_2022.pem'),
+ private_key_password: File.read(File.join(certs_path, 'keypass.txt')),
+ private_key_path: File.join(certs_path, 'squared_private_2022.key'),
sending_post_office_code: 12_000 }
end
@@ -80,8 +86,7 @@ def existing_parcel_codes
# If Import of parcels do not work for You yet,
# You can insert parcels in Web PodaniOnline and then use this hack to check some services
- %w[BA0305100216L RR0305100026L RR0305100012L BB0305100012L
- BA0305100114L CV200650205CZ CS229935209CZ RR950397329CZ CS229890414CZ CS229935172CZ CS229935169CZ]
+ %w[RR0305128109L RR0305128090L BA0305127240L BA0305117707L]
end
def sending_data
@@ -225,7 +230,7 @@ def print_address_sheets(options)
if pdf_service.failure?
raise "AddressSheetGenerator failed with errors: #{pdf_service.errors}" if raise_on_failure
else
- save_as_pdf(pdf_service.result.pdf_content, options)
+ save_sheet(result, options)
end
end
@@ -241,12 +246,32 @@ def print_all_template_sheets_for_parcel_codes
def print_template_for_package(t_klass_id, parcel_code)
options = print_options.merge(template_id: t_klass_id, parcel_code: parcel_code)
puts "AddressSheetGenerator [#{parcel_code} , #{t_klass_id}] : #{options}"
- pdf_service = CzechPostB2bClient::Services::AddressSheetsGenerator.call(parcel_codes: [parcel_code],
- options: options)
- if pdf_service.failure?
- save_as_txt(pdf_service.errors.to_s, options)
+ print_service = CzechPostB2bClient::Services::AddressSheetsGenerator.call(parcel_codes: [parcel_code],
+ options: options)
+ if print_service.failure?
+ File.write("#{filename(options)}_no_print.txt", print_service.errors.to_s)
+ else
+ save_sheet(print_service.result, options)
+ end
+ end
+
+ def print_template_for_packages(t_klass_id, parcel_codes)
+ options = print_options.merge(template_id: t_klass_id, parcel_code: parcel_codes.join('_'))
+ puts "AddressSheetGenerator [#{parcel_codes} , #{t_klass_id}] : #{options}"
+ print_service = CzechPostB2bClient::Services::AddressSheetsGenerator.call(parcel_codes: parcel_codes,
+ options: options)
+ if print_service.failure?
+ File.write("#{filename(options)}_no_print.txt", print_service.errors.to_s)
else
- save_as_pdf(pdf_service.result.pdf_content, options)
+ save_sheet(print_service.result, options)
+ end
+ end
+
+ def save_sheet(result, options)
+ if result.zpl_content.nil?
+ File.write("#{filename(options)}.pdf", result.pdf_content)
+ else
+ File.write("#{filename(options)}.zpl", result.zpl_content)
end
end
@@ -281,18 +306,6 @@ def filename(options)
def_str
end
- def save_as_txt(content, options)
- f_name = "#{filename(options)}_no_print.txt"
- puts("saving: #{f_name}")
- File.write(f_name, content)
- end
-
- def save_as_pdf(pdf_content, options)
- f_name = "#{filename(options)}.pdf"
- puts("saving: #{f_name}")
- File.write(f_name, pdf_content)
- end
-
def update_parcels_data_with(updated_parcels_hash)
# TODO: parcels have assigned `code` and `sending_status`
parcels.each do |parcel|
@@ -393,6 +406,7 @@ def short_addressee_data_uk
end
end
-TryApiCalls.new.run
+# TryApiCalls.new.run
# TryApiCalls.new.download_xsds
# TryApiCalls.new.print_selected_combinations
+TryApiCalls.new.print_multisheets
diff --git a/lib/czech_post_b2b_client/printing_templates.rb b/lib/czech_post_b2b_client/printing_templates.rb
index 7d81041..a3c2c9a 100644
--- a/lib/czech_post_b2b_client/printing_templates.rb
+++ b/lib/czech_post_b2b_client/printing_templates.rb
@@ -9,6 +9,10 @@ module PrintingTemplates
class Base
class << self
attr_reader :id, :description, :page_dimensions
+
+ def content_type
+ :pdf
+ end
end
end
@@ -132,12 +136,6 @@ class CODVoucherC < Base
@page_dimensions = 'unverified'
end
- class CODVoucherForCSOB < Base
- @id = 13
- @description = 'Dobírková složenka ČSOB'
- @page_dimensions = 'unverified'
- end
-
class RRLabels3x8 < Base
@id = 26
@description = 'štítky pro RR : 3x8'
@@ -175,29 +173,23 @@ class CN23 < Base
@page_dimensions = 'A5 landscape (210 × 148 mm)'
end
- class CN22FourOnPage < Base
- @id = 74
- @description = 'Celní prohlášení CN22 : 4x (A4)'
- @page_dimensions = 'unverified A4'
- end
-
- class CN22WithCK < Base
- @id = 75
- @description = 'Celní prohlášení CN22 s ČK (A4)'
- @page_dimensions = 'unverified A4'
- end
-
- class CN22WithCKFourOnPage < Base
- @id = 76
- @description = 'Celní prohlášení CN22 s ČK : 4x (A4)'
- @page_dimensions = 'unverified A4'
- end
- end
-
- class CN22FourOnPage < Base
- @id = 74
- @description = 'Celní prohlášení CN22 : 4x'
- @page_dimensions = 'A4 portrait (210 × 297 mm)'
+ # class CN22FourOnPage < Base
+ # @id = 74
+ # @description = 'Celní prohlášení CN22 : 4x (A4)'
+ # @page_dimensions = 'unverified A4'
+ # end
+
+ # class CN22WithCK < Base
+ # @id = 75
+ # @description = 'Celní prohlášení CN22 s ČK (A4)'
+ # @page_dimensions = 'unverified A4'
+ # end
+
+ # class CN22WithCKFourOnPage < Base
+ # @id = 76
+ # @description = 'Celní prohlášení CN22 s ČK : 4x (A4)'
+ # @page_dimensions = 'unverified A4'
+ # end
end
module HarmonizedLabel
@@ -232,20 +224,28 @@ class BiancoPortrait < Base
@description = 'Harmonizovaný štítek bianco - na výšku'
@page_dimensions = 'A6 landscape (148 × 105 mm)'
end
+ end
- class ZebraBianco105x148 < Base
+ module ZebraLabel
+ class Base < CzechPostB2bClient::PrintingTemplates::Base
+ def self.content_type
+ :zpl
+ end
+ end
+
+ class Bianco105x148 < ZebraLabel::Base
@id = 200
@description = 'Harmonizovaný štítek bianco - (Zebra - 105x148); nejde o PDF'
@page_dimensions = 'unverified 105 × 148 mm'
end
- class ZebraBianco100x150 < Base
+ class Bianco100x150 < ZebraLabel::Base
@id = 201
@description = 'Harmonizovaný štítek bianco - (Zebra - 100x150); nejde o PDF'
@page_dimensions = 'unverified 100 × 150 mm'
end
- class ZebraBianco100x125 < Base
+ class Bianco100x125 < ZebraLabel::Base
@id = 202
@description = 'Harmonizovaný štítek bianco - (Zebra - 100x125); nejde o PDF'
@page_dimensions = 'unverified 100 × 125 mm'
@@ -257,5 +257,12 @@ def self.all_classes
base_class = CzechPostB2bClient::PrintingTemplates::Base
ObjectSpace.each_object(base_class.singleton_class).reject { |c| c == base_class }
end
+
+ def self.find(id)
+ klass = all_classes.detect { |k| k.id == id }
+ raise "PrintingTemplate with id: #{id} is unknown!" unless klass
+
+ klass
+ end
end
end
diff --git a/lib/czech_post_b2b_client/response_parsers/get_parcels_printing_parser.rb b/lib/czech_post_b2b_client/response_parsers/get_parcels_printing_parser.rb
index 22f557d..9b6446c 100644
--- a/lib/czech_post_b2b_client/response_parsers/get_parcels_printing_parser.rb
+++ b/lib/czech_post_b2b_client/response_parsers/get_parcels_printing_parser.rb
@@ -8,8 +8,8 @@ class GetParcelsPrintingParser < BaseParser
def build_result
super
@result[:response][:state] = state_hash_from(printing_response_header_result['doPrintingStateResponse'])
- @result[:printings] = { options: options_hash,
- pdf_content: pdf_content }
+ opt_hash = options_hash
+ @result[:printings] = { options: opt_hash }.merge(content_hash(opt_hash[:template_id]))
end
def options_hash
@@ -24,11 +24,23 @@ def options_hash
}
end
- def pdf_content
- pdf_content_encoded = response_root_node.dig('doPrintingDataResult', 'file')
- return nil if pdf_content_encoded.nil?
+ def content_hash(template_id)
+ if zpl_template?(template_id)
+ { zpl_content: response_content.force_encoding('utf-8') }
+ else
+ { pdf_content: response_content }
+ end
+ end
+
+ def zpl_template?(template_id)
+ CzechPostB2bClient::PrintingTemplates.find(template_id).content_type == :zpl
+ end
+
+ def response_content
+ content_encoded = response_root_node.dig('doPrintingDataResult', 'file')
+ return nil if content_encoded.nil?
- ::Base64.decode64(pdf_content_encoded)
+ ::Base64.decode64(content_encoded)
end
def response_root_node_name
diff --git a/lib/czech_post_b2b_client/services/address_sheets_generator.rb b/lib/czech_post_b2b_client/services/address_sheets_generator.rb
index d595b43..415fbe4 100644
--- a/lib/czech_post_b2b_client/services/address_sheets_generator.rb
+++ b/lib/czech_post_b2b_client/services/address_sheets_generator.rb
@@ -5,7 +5,7 @@ module Services
class AddressSheetsGenerator < CzechPostB2bClient::Services::Communicator
attr_reader :parcel_codes, :options
- AddressSheetsGeneratorResult = Struct.new(:pdf_content, :state_text, :state_code, keyword_init: true)
+ AddressSheetsGeneratorResult = Struct.new(:pdf_content, :zpl_content, :state_text, :state_code, keyword_init: true)
def initialize(parcel_codes:, options: {})
super()
@@ -41,6 +41,7 @@ def endpoint_path
def build_result_from(response_hash)
AddressSheetsGeneratorResult.new(pdf_content: response_hash.dig(:printings, :pdf_content),
+ zpl_content: response_hash.dig(:printings, :zpl_content),
state_text: response_hash.dig(:response, :state, :text),
state_code: response_hash.dig(:response, :state, :code))
end
diff --git a/lib/czech_post_b2b_client/version.rb b/lib/czech_post_b2b_client/version.rb
index 49186c5..0aede0a 100644
--- a/lib/czech_post_b2b_client/version.rb
+++ b/lib/czech_post_b2b_client/version.rb
@@ -1,5 +1,5 @@
# frozen_string_literal: true
module CzechPostB2bClient
- VERSION = '1.2.8'
+ VERSION = '1.3.0'
end
diff --git a/test/czech_post_b2b_client_test.rb b/test/czech_post_b2b_client_test.rb
index f859adb..362efb2 100644
--- a/test/czech_post_b2b_client_test.rb
+++ b/test/czech_post_b2b_client_test.rb
@@ -10,7 +10,7 @@ def test_it_has_a_version_number
def test_knows_available_templates
all_templates = CzechPostB2bClient::PrintingTemplates.all_classes.to_a
- assert_equal 38, all_templates.size
+ assert_equal 34, all_templates.size
template_61 = all_templates.detect { |t| t.id == 61 }
assert_equal 'CP72 - cenný balík do zahraničí : 2x', template_61.description
diff --git a/test/fixtures/known_responses/getParcelsPrinting_ok_real.xml b/test/fixtures/known_responses/getParcelsPrinting_ok_real_pdf.xml
similarity index 100%
rename from test/fixtures/known_responses/getParcelsPrinting_ok_real.xml
rename to test/fixtures/known_responses/getParcelsPrinting_ok_real_pdf.xml
diff --git a/test/fixtures/known_responses/getParcelsPrinting_ok_real_zpl.xml b/test/fixtures/known_responses/getParcelsPrinting_ok_real_zpl.xml
new file mode 100644
index 0000000..55108a3
--- /dev/null
+++ b/test/fixtures/known_responses/getParcelsPrinting_ok_real_zpl.xml
@@ -0,0 +1,31 @@
+
+
+
+ 2022-04-07T08:57:27.135Z
+
+ 1
+ 2022-04-07T08:57:26.923+02:00
+ 356936003
+
+
+
+
+
+
+ L03051
+ 356936003
+ 201
+ 0
+ 0
+
+
+ 1
+ OK
+
+
+
+ fkRHTE9HT19DUCwwMjEwNiwwMTgsMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN0ZGRkZGRkZGRkY4MDAwMDAwMUZGRkMwMDAwMDAwRkZGRjAwRkZGRkZGRkZGRkY4MDAwMDAxRkZGRkZDMDAwMDAxRkZGRjgwRkZGRkZGRkZGRkY4MDAwMDBGRkZGRkZGODAwMDAxRkZGRjgwRkZGRkZGRkZGRkY4MDAwMDNGRkZGRkZGRTAwMDAwRkZGRkMwRkZGRkZGRkZGRkY4MDAwMEZGRkZGRkZGRjgwMDAwRkZGRkMwRkZGRkZGRkZGRkYwMDAwM0ZGRkZGRkZGRkMwMDAwRkZGRkMwRkZGRkZGRkZGRkYwMDAwN0ZGRkZGRkZGRkYwMDAwN0ZGRkMwRkZGRkZGRkZGRkYwMDAwRkZGRkZGRkZGRkY4MDAwN0ZGRkMwRkZGRkZGRkZGRkYwMDAzRkZGRkZGRkZGRkZDMDAwN0ZGRkUwRkZGRkZGRkZGRkYwMDA3RkZGRkZGRkZGRkZFMDAwN0ZGRkUwRkZGRkZGRkZGRkUwMDBGRkZGRkZGRkZGRkZGODAwN0ZGRkUwN0ZGRkZGRkZGRkUwMDFGRkZGRkZGRkZGRkZGODAwM0ZGRkUwN0ZGRkZGRkZGRkUwMDNGRkZGRkZGRkZGRkZGQzAwM0ZGRkUwN0ZGRkZGRkZGRkUwMDNGRkZGRkZGRkZGRkZGRTAwM0ZGRkUwN0ZGRkZGRkZGRkUwMDdGRkZGRkZGRkZGRkZGRjAwM0ZGRkUwN0ZGRkZGRkZGRkUwMEZGRkZGRkZGRkZGRkZGRjgwM0ZGRkUwM0ZGRkZGRkZGRkUwMUZGRkZGRkZGRkZGRkZGRjgwM0ZGRkUwM0ZGRkZGRkZGRkUwMUZGRkZGRjgwMUZGRkZGRkMwM0ZGRkUwM0ZGRkZGRkZGRkUwM0ZGRkZGQzAwMDNGRkZGRkUwM0ZGRkUwM0ZGRkZGRkZGRkUwM0ZGRkZGODAwMDBGRkZGRkUwM0ZGRkUwMUZGRkZGRkZGRkUwN0ZGRkZFMDAwMDAzRkZGRkYwM0ZGRkUwMUZGRkZGRkZGRkUwN0ZGRkZDMDAwMDAxRkZGRkYwM0ZGRkUwMUZGRkZGRkZGRkUwRkZGRkY4MDAwMDAwRkZGRkY4N0ZGRkUwMEZGRkZGRkZGRkYwRkZGRkYwMDAwMDAwN0ZGRkY4N0ZGRkUwMEZGRkZGRkZGRkYxRkZGRkUwMDAwMDAwM0ZGRkY4N0ZGRkUwMEZGRkZGRkZGRkYxRkZGRkMwMDAwMDAwMUZGRkZDN0ZGRkMwMDdGRkZGRkZGRkYxRkZGRjgwMDAwMDAwMUZGRkZDN0ZGRkMwMDdGRkZGRkZGRkYxRkZGRjgwMDAwMDAwMEZGRkZDN0ZGRkMwMDdGRkZGRkZGRkY4RkZGRjAwMDAwMDAwMEZGRkZDN0ZGRkMwMDNGRkZGRkZGRkY4RkZGRjAwMDAwMDAwMDdGRkZFN0ZGRkMwMDNGRkZGRkZGRkZDRkZGRjAwMDAwMDAwMDdGRkZFN0ZGRjgwMDFGRkZGRkZGRkZDN0ZGRTAwMDAwMDAwMDdGRkZFM0ZGRjgwMDFGRkZGRkZGRkZDN0ZGRTAwMDAwMDAwMDNGRkZFM0ZGRjgwMDBGRkZGRkZGRkZFM0ZGRTAwMDAwMDAwMDNGRkZFM0ZGRjgwMDBGRkZGRkZGRkZFM0ZGRTAwMDAwMDAwMDNGRkZFM0ZGRjAwMDA3RkZGRkZGRkZGMUZGRTAwMDAwMDAwMDNGRkZFM0ZGRjAwMDA3RkZGRkZGRkZGMEZGRTAwMDAwMDAwMDNGRkZFM0ZGRTAwMDAzRkZGRkZGRkZGOEZGRTAwMDAwMDAwMDNGRkZFM0ZGRTAwMDAxRkZGRkZGRkZGQzdGRTAwMDAwMDAwMDNGRkZFM0ZGRTAwMDAxRkZGRkZGRkZGQzNGRTAwMDAwMDAwMDNGRkZFM0ZGQzAwMDAwRkZGRkZGRkZGRTFGRTAwMDAwMDAwMDdGRkZFM0ZGQzAwMDAwRkZGRkZGRkZGRjFGRjAwMDAwMDAwMDdGRkZFN0ZGODAwMDAwN0ZGRkZGRkZGRjhGRjAwMDAwMDAwMDdGRkZFN0ZGODAwMDAwM0ZGRkZGRkZGRkMzRjAwMDAwMDAwMDdGRkZFN0ZGMDAwMDAwMUZGRkZGRkZGRkUxRjgwMDAwMDAwMEZGRkZDN0ZGMDAwMDAwMUZGRkZGRkZGRkYwRjgwMDAwMDAwMEZGRkZDN0ZFMDAwMDAwMEZGRkZGRkZGRkY4N0MwMDAwMDAwMUZGRkZDN0ZDMDAwMDAwMDdGRkZGRkZGRkZDMUMwMDAwMDAwM0ZGRkY4RkZDMDAwMDAwMDNGRkZGRkZGRkZGMDYwMDAwMDAwM0ZGRkY4RkY4MDAwMDAwMDFGRkZGRkZGRkZGODMwMDAwMDAwN0ZGRkY4RkYwMDAwMDAwMDBGRkZGRkZGRkZGRTAwMDAwMDAwRkZGRkYxRkYwMDAwMDAwMDA3RkZGRkZGRkZGRjgwMDAwMDAzRkZGRkYxRkUwMDAwMDAwMDAzRkZGRkZGRkZGRkUwMDAwMDA3RkZGRkUzRkMwMDAwMDAwMDAxRkZGRkZGRkZGRkY4MDAwMDFGRkZGRkUzRjgwMDAwMDAwMDAwRkZGRkZGRkZGRkZGODAwMDdGRkZGRkM3RjAwMDAwMDAwMDAwN0ZGRkZGRkZGRkZGRkUwN0ZGRkZGRkM3RTAwMDAwMDAwMDAwM0ZGRkZGRkZGRkZGRkZGRkZGRkZGRjhGQzAwMDAwMDAwMDAwMUZGRkZGRkZGRkZGRkZGRkZGRkZGRjFGODAwMDAwMDAwMDAwMEZGRkZGRkZGRkZGRkZGRkZGRkZGRjFGMDAwMDAwMDAwMDAwMDNGRkZGRkZGRkZGRkZGRkZGRkZGRTNFMDAwMDAwMDAwMDAwMDFGRkZGRkZGRkZGRkZGRkZGRkZGQzdDMDAwMDAwMDAwMDAwMDA3RkZGRkZGRkZGRkZGRkZGRkZGOEYwMDAwMDAwMDAwMDAwMDAzRkZGRkZGRkZGRkZGRkZGRkZGMEUwMDAwMDAwMDAwMDAwMDAwRkZGRkZGRkZGRkZGRkZGRkZFMUMwMDAwMDAwMDAwMDAwMDAwM0ZGRkZGRkZGRkZGRkZGRkZDMzAwMDAwMDAwMDAwMDAwMDAwMUZGRkZGRkZGRkZGRkZGRkY4NDAwMDAwMDAwMDAwMDAwMDAwMDdGRkZGRkZGRkZGRkZGRkUwMDAwMDAwMDAwMDAwMDAwMDAwMDFGRkZGRkZGRkZGRkZGRkMwMDAwMDAwMDAwMDAwMDAwMDAwMDAzRkZGRkZGRkZGRkZGRjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwRkZGRkZGRkZGRkZGQzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMUZGRkZGRkZGRkZGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNGRkZGRkZGRkYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxRkZGRkZGRjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEZGRkZDMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDczODAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdGODAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNFMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFFMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEZGQzAwMDAwMDNFMDAwN0MwMDAwMDAwMDAxRkUwMDAwMDAwMUZGRTAwMDAwMDNFMDAwRkMwMDAwMDAwMDAxRkUzRTAwMDAwM0ZGRTAwMDAwMDNFMDAwRjgwMDAwMDAwMDAwRkMzRTAwMDAwN0ZGRTAwMDAwMDNFMDAwRjAwMDAwMDAwMDAwNzgzRTAwMDAwN0UwRTFGQzBGRTNFM0U3RkMwMUY3RTAzRjgwRkU3RkNGRjgwRkMwMDNGRTFGRjNFN0VGRkUwMUZGRjBGRkMzRkY3RkRGRkMwRkMwMDdGRjNGRjNFRkNGRkYwMUZGRjhGRkUzRkY3RkRGRkUwRkMwMEZERkJGRjNFRjhGRkYwMUZGRjlGRkY3RkY3RkRGRkUwRkMwMEY4RkZDMDNGRjBDMUYwMUY4RkJGMUZGQzAzRTE4M0UwRkMwMUZGRkZGRTNGRTAxREYwMUY4RkZFMUZGRkMzRTAzQkUwRkMwMUZGRkJGRjNGRjA3RkYwMUY4RkZFMEZGRkYzRTBGRkUwRkMwMUZGRkJGRkJGRjBGRkYwMUY4RkZFMEZCRkYzRTFGRkUwRkMwMUY4MDBGRkJGRjlGOUYwMUY4RkZFMUY4RkZCRTNGM0UwN0UwRUY4MDIwRkJFRkRGMUYwMUY4RkJGMUZBMEZCRTNFM0UwN0ZGRUZFRkJGRkJFRkRGMUYwMUZGRjlGQkY3RkZCRjNFM0UwM0ZGRUZGRkJGRkJFN0ZGRkYwMUZGRjFGRkY3RkYzRkZGRkUwMUZGRTdGRjNGRjNFM0VGRkYwMUZGRjBGRkU3RkYxRkRGRkUwMDdGODFGRTNGRTNFM0U3RUYwMUZGQzAzRjgzRkMwRkNGREUwMDAwMDAwMDAwMDAwMDAwMDAwMUY4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMUY4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMUY4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMUY4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCn5ER1RFTEVGT04sMDAwNDgsMDAyLDBDMDA2RTAwNkYwMEY3MDBGNzAwRjcwMEZCMDBGQjAwRjgwMEZDMDBGODAwNzgwMDdDMDA3QzAwN0UwMDdFNjAzRjcwM0Y3MDFGQjgwRkI4MEZCODA3RDgwM0Q4MDFDMAp+REdQUk9EX0JBLDAyODg0LDAyOCwwM0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjgwMDBGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQzAwMUYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFFMDAzQzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDcwMDM4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMzgwNzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDdGRkUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3REUwMDAwMDAwMDAwMDdFMDAwMDBDMDYwMDAwN0ZGRjgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNGRTAwMDAwMDAwMDAwN0UwMDAwMEMwNjAwMDA3RkZGQzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM0ZDMDAwMDAwMDAwMDBGQzAwMDAwQzA2MDAwMDdGRkZFMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxRjgwMDAwMDAwMDAwMEY4MDAwMDBDMDYwMDAwN0YzRkYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBGMDAwMDAwMDAwMDAwNzAwMDAwMEMwNjAwMDA3RjA3RjAxRkUwM0U3RTAwN0YwMUYzQ0ZDM0YwMUZGMDNGQzBGOEZDN0UwN0MwMDAwQzA2MDAwMDdGMDdGMDNGRjg3RkZGODFGRkMxRkZFRkMzRjg3RkY4N0ZGMUZGRkU3RTBGQzAwMDBDMDYwMDAwN0YwM0Y4RkZGQzdGRkY4M0ZGRTFGRkVGQzNGOEZGRjhGRkY5RkZGRjdGMEZDMDAwMEMwNjAwMDA3RjAzRjhGRkZFN0ZGRkM3RkZGMUZGRUZDM0Y5RkZGOUZGRjlGRkZGM0YwRjgwMDAwQzA2MDAwMDdGMDNGOUZFRkU3RkZGQ0ZGN0Y5RkZDRkMzRjlGRUZCRjlGOUZGRkYzRjFGODAwMDBDMDYwMDAwN0YwM0Y5Rjg3RjdGMEZFRkUxRjlGQzBGQzNGQkY4MDNGMEZERkMzRjFGOUY4MDAwMEMwNjAwMDA3RjAzRkJGODNGN0YwRkVGQzFGOUY4MEZDM0ZCRjAwM0YwRkRGQzNGMUY5RjAwMDAwQzA2MDAwMDdGMDNGQkYwM0Y3RjBGRkZDMUZERjgwRkMzRkJGMDA3RkZGREZDM0YxRkJGMDAwMDBDMDYwMDAwN0YwM0ZCRjAzRjdGMEZGRkMxRkRGODBGQzNGQkYwMDdGRkZERkMzRjBGRkYwMDAwMEMwNjAwMDA3RjAzRkJGMDNGN0YwRkZGQzFGREY4MEZDM0ZCRjAwN0ZGRkRGQzNGMEZGRTAwMDAwQzA2MDAwMDdGMDdGM0Y4M0Y3RjBGRUZDMUY5RjgwRkMzRkJGMDAzRjAwMUZDM0YwRkZFMDAwMDBDMDYwMDAwN0YwRkYxRjg3RjdGMEZDRkMxRjlGODBGQzNGQkY4MTNGMDAxRkMzRjA3RkMwMDAwMEMwNjAwMDA3RkZGRTFGQzdFN0YxRkNGRTNGOUY4MEZFRkY5RkM3QkY4MzlGQzNGMDdGQzAwMDAwQzA2MDAwMDdGRkZFMUZGRkU3RkZGODdGRkYxRjgwRkZGRjlGRkY5RkZGOUZDM0YwM0ZDMDAwMDBDMDYwMDAwN0ZGRkMwRkZGQzdGRkY4M0ZGRTFGODBGRkZGOEZGRjlGRkY5RkMzRjAzRjgwMDAwMEMwNjAwMDA3RkZGMDA3RkY4N0ZGRjAxRkZDMUY4MDdGRkY4N0ZGOEZGRjlGQzNGMDFGODAwMDAwQzA2MDAwMDdGRkMwMDFGRTA3RjdDMDA3RjAxRjgwM0YxRjAxRkUwM0ZFMEZDM0YwMUYwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDdGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzRjAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwN0YwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNGMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDA3RjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN0UwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDdGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3RTAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwN0YwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdDMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAyMDAwMDAwMDMwMTA0MTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDcwMDAwMDAwMzAzODYzMDAwMDBFMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwNzAwMDAwMDAzMDcwM0UwMDAwMEUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDA3MDAwMDAwMDMwNjAxQzAwMDAwRTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDcwMDAwMDAwMzA0MDA4MDAwMDBFMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwNzAwMDAwMDAzMDAwMDAwMDAwMEUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDA3M0Y4MEZGMDMwQzA3RjgwRkUwRTAzMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDdGRkMzRjc4MzBDMEZCQzNFRjBFMDcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwN0MwRTMwMUMzMEMxQzBDNzAzOEUwRTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDA3ODA2MDAwQzMwQzM4MDA2MDE4RTFDMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDcwMDYwMDBDMzBDMzAwMEUwMENFMzgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwNzAwNzAwMEMzMEM3MDAwQzAwQ0UzMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDA3MDAzMDAwQzMwQzYwMDBDMDBDRTYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDcwMDMwRkZDMzBDNjAwMEZGRkNFRTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwNzAwMzFFN0MzMEM2MDAwRkZGQ0ZGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDA3MDAzMzAwQzMwQzYwMDBDMDAwRjM4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDcwMDc3MDBDMzBDNjAwMEMwMDBGMTgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwNzAwNjYwMEMzMEM3MDAwQzAwMEUxQzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDA3MDA2NzAwQzMwQzMwMDBFMDAwRTBFMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDcwMEUzMDFDMzBDMzgwNDcwMDhFMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwNzgxQzM4M0MzMEMxQzBFMzgxQ0UwNzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDA3RkY4MUZFQzMwQzBGRkMxRkY4RTAzODAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAzRTAwNzg0MzBDMDNFMDA3RTA0MDE4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMwNjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFDMDcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMUMwMzgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzODAzQzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDcwMDFGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxRTAwMEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZDMDAwM0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjgwMAp+REdTTFVaX0wsMDA4MDAsMDEwLDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkY4MDAwMDAwMDAwMDAwMDAwMDNGRjgwMDAwMDAwMDAwMDAwMDAwM0ZGODAwMDAwMDAwMDAwMDAwMDAzRkZGRkZGRkY4MDAwMDAwMDAwMDNGRkZGRkZGRjgwMDAwMDAwMDAwM0ZGRkZGRkZGODAwMDAwMDAwMDAzRkZGRkZGRkY4MDAwMDAwMDAwMDNGRkZGRkZGRjgwMDAwMDAwMDAwM0ZGRkZGRkZGODAwMDAwMDAwMDAzRkZGRkZGRkY4MDAwMDAwMDAwMDNGRkZGRkZGRjgwMDAwMDAwMDAwM0ZGRkZGRkZGODAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMDFDMDAwQzFERkYzODBFRTFFN0Y4N0YzRkZFMzlGRjM4MUVFM0NGRkNGRkJGRkUzOUMwMzgwRUU3OEUxQ0UzQzM4RTM5QzAzODBFRUYxRTFFRTE4Mzg3NzFGRTM4MEVGRTFDMEVGQzAzODc3MUZGMzgxRUZFMUMwRTdGODM4NzcxRkUzODBFRkYxQzBFM0ZDMzgzRTFDMDM4MEVGNzFDMEUwM0MzODNFMUMwMzgwRUU3OUUxQ0UxQzM4M0UxRkYzRkNFRTNDRjNDRjNDMzgxQzFGRjNGRUVFMUU3Rjg3RjgzODFDMUZGM0ZDRUUxRTNGMDNGMDM4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKfkRHSE1PVF9JS08sMDA4MDAsMDEwLDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFGRjgwMDAwMDAwMDAwMDAwMDAwN0ZGRTAwMDAwMDAwMDAwMDAwMDBGRkZGMDAwMDAwMDAwMDAwMDAwMUZGRkY4MDAwMDAwMDAwMDAwMDAzRkZGRkMwMDAwMDAwMDAwMDAwMDdGRUZGRTAwMDAwMDAwMDAwMDAwRkYwMEZGMDAwMDAwMDAwMDAwMDBGRTAwN0YwMDAwMDAwMDAwMDAwMUZDMDAzRjgwMDAwMDAwMDAwMDAxRjgwMDFGODAwMDAwMDAwMDAwMDFGODAwMUY4MDAwMDAwMDAwMDAwMUY4MDAxRjgwMDAwMDAwMDAwMDAxRjAwMDBGQzAwMDAwMDAwMDAwMDFGMDAwMEY4MDAwMDAwMDAwMDAwMUY4MDAwRjgwMDAwMDAwMDAwMDAxRjgwMDFGODAwMDAwMDAwMDAwMDFGODAwMUY4MDAwMDAwMDAwMDAwMUZDMDAzRjgwMDAwMDAwMDAwMDAwRkMwMDNGMDAwMDAwMDAwMDAwMDBGRjAwRkYwMDAwMDAwMDAwMDAwMDdGODFGRTAwMDAwMDAwMDAwMDAwN0ZGRkZFMDAwMDAwMDAwMDAwMDAzRkZGRkMwMDAwMDAwMDAwMDNGRkZGRkZGRkZGRTAwMDAwMDAwN0ZGRkZGRkZGRkZGMDAwMDAwMDBGRkZGRkZGRkZGRkYwMDAwMDAwMEZGRkZGRkZGRkZGRjgwMDAwMDAwRkZGRkZGRkZGRkZGODAwMDAwMDFGREZGRkZGRkZGRkY4MDAwMDAwMUY4MDAwMDAwMDAxRjgwMDAwMDAxRjgwMDAwMDAwMDBGQzAwMDAwMDFGODAwMDAwMDAwMEZDMDAwMDAwM0YwMDAwMDAwMDAwRkUwMDAwMDAzRjAwMDAwMDAwMDA3RTAwMDAwMDdGMDAwMDAwMDAwMDdFMDAwMDAwN0UwMDAwMDAwMDAwN0UwMDAwMDA3RTAwMDAwMDAwMDAzRjAwMDAwMDdFMDAwMDAwMDAwMDNGMDAwMDAwRkMwRjAwMDAwMDAwM0YwMDAwMDBGQzBGMDAwMDAwMDAxRjgwMDAwMEZDMEYwMDAwMDAwMDFGODAwMDAxRjgwRjAwMDAwMDAwMUY4MDAwMDFGODBGMDAwMDAwMDAwRkMwMDAwMUY4MEYwMUMwM0MzODBGQzAwMDAzRjAwRjAzQzBGRkY4MEZDMDAwMDNGMDBGMDdDMUZGRjgwRkUwMDAwM0YwMEYwRjgzRTNGODA3RTAwMDA3RTAwRjFGMDdDMEY4MDdFMDAwMDdFMDBGMUUwNzgwNzgwM0YwMDAwN0UwMEYzQzA3ODA3ODAzRjAwMDBGRTAwRjc4MEYwMDc4MDNGMDAwMEZDMDBGRjgwRjAwNzgwM0Y4MDAwRkMwMEZGQzBGMDA3ODAxRjgwMDFGODAwRkZFMEYwMDc4MDFGODAwMUY4MDBGOUUwRjAwNzgwMEZDMDAxRjgwMEY5RjA3ODA3ODAwRkMwMDFGODAwRjBGMDc4MEY4MDBGQzAwM0YwMDBGMDc4N0MxRjgwMEZFMDAzRjAwMEYwN0MzRkZGODAwN0UwMDdFMDAwRjAzQzFGRjc4MDA3RTAwN0UwMDBGMDNFMEZFNzgwMDdGMDA3RTAwMEYwMUUwMDA3ODAwM0YwMDdFMDAwMDAwMDAwMEYwMDAzRjAwRkMwMDAwMDAwNzAxRjAwMDNGMDBGQzAwMDAwMDA3RkZGMDAwMUY4MUZDMDAwMDAwMDdGRkMwMDAxRjgxRjgwMDAwMDAwMUZGODAwMDFGQzFGODAwMDAwMDAwMDAwMDAwMEZDM0Y4MDAwMDAwMDAwMDAwMDAwRkMzRjAwMDAwMDAwMDAwMDAwMDBGQzNGN0ZGRkZGRkZGRkZGRkZGRkZFM0ZGRkZGRkZGRkZGRkZGRkZGRkU3RkZGRkZGRkZGRkZGRkZGRkZGRTdGRkZGRkZGRkZGRkZGRkZGRkZFN0ZGRkZGRkZGRkZGRkZGRkZGRkUzRkZGRkZGRkZGRkZGRkZGRkZGRTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKfkRHSE1PVE5PU1QsMDA4MDAsMDEwLDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3RkZGRkZGRkZGRkZGRkZGRkMwMEZGRkZGRkZGRkZGRkZGRkZGRjAzQzAwMDAwMDAwMDAwMDAwMDA3ODM4MDAwMDAwMDAwMDAwMDAwMDFDNzAwMDAwMDAwMDAwMDAwMDAwMEM2MDAwMDAwMDAwMDAwMDAwMDAwRUUwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkMwMDAwMDAwMDAwMDAwMDAwMDA2QzAwMDAwMDAwMDAwMDAwMDAwMDZDMDAwMDAwMDAwMDAwMDAwMDAwNkUwMDAwMDAwMDAwMDAwMDAwMDA2RTAwMDAwMDAwMDAwMDAwMDAwMEU3MDAwMDAwMDAwMDAwMDAwMDAwRTc4MDAwMDAwMDAwMDAwMDAwMDFDM0MwMDAwMDAwMDAwMDAwMDAwNzgxRkZGRkZGRkZGRkZGRkZGRkZGMDA3RkZGRkZGRkZGRkZGRkZGRkMwMDAwMDAwMDAwMDAwMDAwMDAwMDAKXlhBCl5MSDAsMF5GUwpeRk80MCw1XlhHTE9HT19DUCwxLDFeRlMKXkZPMjUwLDVeWEdQUk9EX0JBLDEsMV5GUwpeRk82MjAsOTBeQTAsTiwzMF5DSTI4XkZEUFA6IDE0MCAwMF5GUyAocG9kYWNpIHBvc3RhKQpeRk8wLDEyOF5HQjgwMCwwLDFeRlMKXkZPODAsMTI4XkdCMCwzNzAsMV5GUwpeRk8yMCwxNjVeQTBCLE4sMjBeQ0kyOF5GRE9ERVPDjUxBVEVMXkZTCl5GTzUwLDIwMF5BMEIsTiwyMF5DSTI4XkZERnJvbV5GUwpeRk81OTUsMTUwXlhHVEVMRUZPTiwxLDFeRlMKXkZPNjIwLDE1MF5BMCxOLDMzXkNJMjheRkQrNDIwNjA4NTQ0ODk1XkZTCl5GTzk1LDE1MF5BMCxOLDMwXkNJMjheRkRTcXVhcmVkIHMuci5vLl5GUwpeRk85NSwxOTBeQTAsTiwzMF5DSTI4XkZEIF5GUwpeRk85NSwyMzBeQTAsTiwzMF5DSTI4XkZEWmVsZW7DvSBwcnVoIDEwOTEvMTExXkZTCl5GTzk1LDI3MF5BMCxOLDMwXkNJMjheRkQxNDAgMDAgLSBQcmFoYS9LcsSNXkZTCl5GTzAsMzA0XkdCODAwLDAsMV5GUwpeRk8yMCwzNjVeQTBCLE4sMjBeQ0kyOF5GREFEUkVTw4FUXkZTCl5GTzUwLDM5NV5BMEIsTiwyMF5DSTI4XkZEVG9eRlMKXkZPNTk1LDMyMF5YR1RFTEVGT04sMSwxXkZTCl5GTzYyMCwzMjBeQTAsTiwzMF5DSTI4XkZENjA1NzM1NzMyXkZTCl5GTzk1LDMzMF5BMCxOLDMwXkNJMjheRkRLcmVqxI3DrSBNaWxvxaFeRlMKXkZPOTUsMzcwXkEwLE4sMzBeQ0kyOF5GRCBeRlMKXkZPOTUsNDEwXkEwLE4sMzBeQ0kyOF5GRMSMLnAuODleRlMKXkZPOTUsNDUwXkEwLE4sNDBeQ0kyOF5GRDY3NSA3OSAtIFRhc292XkZTCl5GTzAsNDk2XkdCODAwLDAsMV5GUwpeRlggcm92bml0a28gcHJlZCBkb2JpcmtvdT0KXkZPMCw2NTZeR0I4MDAsMCwxXkZTCl5GTzE0LDY3N15YR1NMVVpfTCwxLDFeRlMKXkZPNjE1LDY3N15YR0hNT1RfSUtPLDEsMV5GUwpeRk83MDQsNjc3XlhHSE1PVE5PU1QsMSwxXkZTCl5GTzcwMiw3MjBeQTAsTiwyNl5DSTI4XkZEICAwLjIzMF5GUwpeRk8wLDc3Nl5HQjgwMCwwLDFeRlMKXkZPMTAsNzg1XkEwLE4sMzBeQ0kyOCBeRkRQb3puOl5GUwpeRk84MCw3ODVeQTAsTiwzMF5DSTI4IF5GRCNDWjIyMTgwNjU0XkZTCl5GTzAsODE2XkdCODAwLDAsMV5GUwpeQlkzLDIsMjcwCl5GTzE0MCw4NTBeQkNOLCxOXkZEQkEwMzA1MTI3MjQwTF5GUwpeRk8yOTAsMTEyOF5BMCxOLDM5XkNJMjheRkRCQV5GUwpeRk8zNDAsMTEzNV5BMCxOLDMwXkNJMjheRkQwMzA1MTI3Ml5GUwpeRk80NTUsMTEyOF5BMCxOLDM5XkNJMjheRkQ0MF5GUwpeRk80OTMsMTEzNV5BMCxOLDMwXkNJMjheRkRMXkZTCl5YWgo=
+
+
+
+
diff --git a/test/fixtures/known_responses/parcelServiceSync_with_errors_2.xml b/test/fixtures/known_responses/parcelServiceSync_with_errors_2.xml
new file mode 100644
index 0000000..f2ed6d2
--- /dev/null
+++ b/test/fixtures/known_responses/parcelServiceSync_with_errors_2.xml
@@ -0,0 +1,34 @@
+
+
+
+ 2020-10-27T10:47:44.111Z
+
+ 1
+ 2020-10-27T10:47:42.401+01:00
+ 356936003
+
+
+
+
+
+
+ 19
+ BATCH_INVALID
+
+
+ 62752
+ BX0305100675L
+
+ 408
+ INFO_ADDRESS_WAS_MODIFIED
+
+
+ 310
+ INVALID_PREFIX
+
+
+
+
+
+
+
diff --git a/test/fixtures/known_responses/real_sheet.zpl b/test/fixtures/known_responses/real_sheet.zpl
new file mode 100644
index 0000000..837423d
--- /dev/null
+++ b/test/fixtures/known_responses/real_sheet.zpl
@@ -0,0 +1,48 @@
+~DGLOGO_CP,02106,018,0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007FFFFFFFFFF80000001FFFC0000000FFFF00FFFFFFFFFFF8000001FFFFFC000001FFFF80FFFFFFFFFFF800000FFFFFFF800001FFFF80FFFFFFFFFFF800003FFFFFFFE00000FFFFC0FFFFFFFFFFF80000FFFFFFFFF80000FFFFC0FFFFFFFFFFF00003FFFFFFFFFC0000FFFFC0FFFFFFFFFFF00007FFFFFFFFFF00007FFFC0FFFFFFFFFFF0000FFFFFFFFFFF80007FFFC0FFFFFFFFFFF0003FFFFFFFFFFFC0007FFFE0FFFFFFFFFFF0007FFFFFFFFFFFE0007FFFE0FFFFFFFFFFE000FFFFFFFFFFFFF8007FFFE07FFFFFFFFFE001FFFFFFFFFFFFF8003FFFE07FFFFFFFFFE003FFFFFFFFFFFFFC003FFFE07FFFFFFFFFE003FFFFFFFFFFFFFE003FFFE07FFFFFFFFFE007FFFFFFFFFFFFFF003FFFE07FFFFFFFFFE00FFFFFFFFFFFFFFF803FFFE03FFFFFFFFFE01FFFFFFFFFFFFFFF803FFFE03FFFFFFFFFE01FFFFFF801FFFFFFC03FFFE03FFFFFFFFFE03FFFFFC0003FFFFFE03FFFE03FFFFFFFFFE03FFFFF80000FFFFFE03FFFE01FFFFFFFFFE07FFFFE000003FFFFF03FFFE01FFFFFFFFFE07FFFFC000001FFFFF03FFFE01FFFFFFFFFE0FFFFF8000000FFFFF87FFFE00FFFFFFFFFF0FFFFF00000007FFFF87FFFE00FFFFFFFFFF1FFFFE00000003FFFF87FFFE00FFFFFFFFFF1FFFFC00000001FFFFC7FFFC007FFFFFFFFF1FFFF800000001FFFFC7FFFC007FFFFFFFFF1FFFF800000000FFFFC7FFFC007FFFFFFFFF8FFFF000000000FFFFC7FFFC003FFFFFFFFF8FFFF0000000007FFFE7FFFC003FFFFFFFFFCFFFF0000000007FFFE7FFF8001FFFFFFFFFC7FFE0000000007FFFE3FFF8001FFFFFFFFFC7FFE0000000003FFFE3FFF8000FFFFFFFFFE3FFE0000000003FFFE3FFF8000FFFFFFFFFE3FFE0000000003FFFE3FFF00007FFFFFFFFF1FFE0000000003FFFE3FFF00007FFFFFFFFF0FFE0000000003FFFE3FFE00003FFFFFFFFF8FFE0000000003FFFE3FFE00001FFFFFFFFFC7FE0000000003FFFE3FFE00001FFFFFFFFFC3FE0000000003FFFE3FFC00000FFFFFFFFFE1FE0000000007FFFE3FFC00000FFFFFFFFFF1FF0000000007FFFE7FF8000007FFFFFFFFF8FF0000000007FFFE7FF8000003FFFFFFFFFC3F0000000007FFFE7FF0000001FFFFFFFFFE1F800000000FFFFC7FF0000001FFFFFFFFFF0F800000000FFFFC7FE0000000FFFFFFFFFF87C00000001FFFFC7FC00000007FFFFFFFFFC1C00000003FFFF8FFC00000003FFFFFFFFFF0600000003FFFF8FF800000001FFFFFFFFFF8300000007FFFF8FF000000000FFFFFFFFFFE00000000FFFFF1FF0000000007FFFFFFFFFF80000003FFFFF1FE0000000003FFFFFFFFFFE0000007FFFFE3FC0000000001FFFFFFFFFFF800001FFFFFE3F80000000000FFFFFFFFFFFF80007FFFFFC7F000000000007FFFFFFFFFFFFE07FFFFFFC7E000000000003FFFFFFFFFFFFFFFFFFFFF8FC000000000001FFFFFFFFFFFFFFFFFFFFF1F8000000000000FFFFFFFFFFFFFFFFFFFFF1F00000000000003FFFFFFFFFFFFFFFFFFFE3E00000000000001FFFFFFFFFFFFFFFFFFFC7C000000000000007FFFFFFFFFFFFFFFFFF8F0000000000000003FFFFFFFFFFFFFFFFFF0E0000000000000000FFFFFFFFFFFFFFFFFE1C00000000000000003FFFFFFFFFFFFFFFFC3000000000000000001FFFFFFFFFFFFFFFF840000000000000000007FFFFFFFFFFFFFFE000000000000000000001FFFFFFFFFFFFFFC0000000000000000000003FFFFFFFFFFFFF00000000000000000000000FFFFFFFFFFFFC000000000000000000000001FFFFFFFFFFF00000000000000000000000003FFFFFFFFF0000000000000000000000000001FFFFFFF000000000000000000000000000000FFFFC00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007380000000000000000000000000000000007F80000000000000000000000000000000007F00000000000000000000000000000000003E00000000000000000000000000000000001E0000000000000000000000000000000000FFC0000003E0007C0000000001FE00000001FFE0000003E000FC0000000001FE3E000003FFE0000003E000F80000000000FC3E000007FFE0000003E000F00000000000783E000007E0E1FC0FE3E3E7FC01F7E03F80FE7FCFF80FC003FE1FF3E7EFFE01FFF0FFC3FF7FDFFC0FC007FF3FF3EFCFFF01FFF8FFE3FF7FDFFE0FC00FDFBFF3EF8FFF01FFF9FFF7FF7FDFFE0FC00F8FFC03FF0C1F01F8FBF1FFC03E183E0FC01FFFFFE3FE01DF01F8FFE1FFFC3E03BE0FC01FFFBFF3FF07FF01F8FFE0FFFF3E0FFE0FC01FFFBFFBFF0FFF01F8FFE0FBFF3E1FFE0FC01F800FFBFF9F9F01F8FFE1F8FFBE3F3E07E0EF8020FBEFDF1F01F8FBF1FA0FBE3E3E07FFEFEFBFFBEFDF1F01FFF9FBF7FFBF3E3E03FFEFFFBFFBE7FFFF01FFF1FFF7FF3FFFFE01FFE7FF3FF3E3EFFF01FFF0FFE7FF1FDFFE007F81FE3FE3E3E7EF01FFC03F83FC0FCFDE00000000000000000001F80000000000000000000000000000000001F80000000000000000000000000000000001F80000000000000000000000000000000001F8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+~DGTELEFON,00048,002,0C006E006F00F700F700F700FB00FB00F800FC00F80078007C007C007E007E603F703F701FB80FB80FB807D803D801C0
+~DGPROD_BA,02884,028,03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC001F000000000000000000000000000000000000000000000000001E003C00000000000000000000000000000000000000000000000000070038000000000000000000000000000000000000000000000000000380700000000000000000000000000000000000000000000000000001C0600000000000000000000000000000000000000000000000000001C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600007FFE0000000000000000000000007DE000000000007E00000C0600007FFF8000000000000000000000003FE000000000007E00000C0600007FFFC000000000000000000000003FC00000000000FC00000C0600007FFFE000000000000000000000001F800000000000F800000C0600007F3FF000000000000000000000000F0000000000007000000C0600007F07F01FE03E7E007F01F3CFC3F01FF03FC0F8FC7E07C0000C0600007F07F03FF87FFF81FFC1FFEFC3F87FF87FF1FFFE7E0FC0000C0600007F03F8FFFC7FFF83FFE1FFEFC3F8FFF8FFF9FFFF7F0FC0000C0600007F03F8FFFE7FFFC7FFF1FFEFC3F9FFF9FFF9FFFF3F0F80000C0600007F03F9FEFE7FFFCFF7F9FFCFC3F9FEFBF9F9FFFF3F1F80000C0600007F03F9F87F7F0FEFE1F9FC0FC3FBF803F0FDFC3F1F9F80000C0600007F03FBF83F7F0FEFC1F9F80FC3FBF003F0FDFC3F1F9F00000C0600007F03FBF03F7F0FFFC1FDF80FC3FBF007FFFDFC3F1FBF00000C0600007F03FBF03F7F0FFFC1FDF80FC3FBF007FFFDFC3F0FFF00000C0600007F03FBF03F7F0FFFC1FDF80FC3FBF007FFFDFC3F0FFE00000C0600007F07F3F83F7F0FEFC1F9F80FC3FBF003F001FC3F0FFE00000C0600007F0FF1F87F7F0FCFC1F9F80FC3FBF813F001FC3F07FC00000C0600007FFFE1FC7E7F1FCFE3F9F80FEFF9FC7BF839FC3F07FC00000C0600007FFFE1FFFE7FFF87FFF1F80FFFF9FFF9FFF9FC3F03FC00000C0600007FFFC0FFFC7FFF83FFE1F80FFFF8FFF9FFF9FC3F03F800000C0600007FFF007FF87FFF01FFC1F807FFF87FF8FFF9FC3F01F800000C0600007FFC001FE07F7C007F01F803F1F01FE03FE0FC3F01F000000C06000000000000007F000000000000000000000000000003F000000C06000000000000007F000000000000000000000000000003F000000C06000000000000007F000000000000000000000000000007E000000C06000000000000007F000000000000000000000000000007E000000C06000000000000007F000000000000000000000000000007C000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600002000000030104100000400000000000000000000000000000C0600007000000030386300000E00000000000000000000000000000C0600007000000030703E00000E00000000000000000000000000000C0600007000000030601C00000E00000000000000000000000000000C0600007000000030400800000E00000000000000000000000000000C0600007000000030000000000E00000000000000000000000000000C06000073F80FF030C07F80FE0E03000000000000000000000000000C0600007FFC3F7830C0FBC3EF0E07000000000000000000000000000C0600007C0E301C30C1C0C7038E0E000000000000000000000000000C0600007806000C30C38006018E1C000000000000000000000000000C0600007006000C30C3000E00CE38000000000000000000000000000C0600007007000C30C7000C00CE30000000000000000000000000000C0600007003000C30C6000C00CE60000000000000000000000000000C06000070030FFC30C6000FFFCEE0000000000000000000000000000C06000070031E7C30C6000FFFCFF0000000000000000000000000000C0600007003300C30C6000C000F38000000000000000000000000000C0600007007700C30C6000C000F18000000000000000000000000000C0600007006600C30C7000C000E1C000000000000000000000000000C0600007006700C30C3000E000E0E000000000000000000000000000C060000700E301C30C38047008E06000000000000000000000000000C060000781C383C30C1C0E381CE07000000000000000000000000000C0600007FF81FEC30C0FFC1FF8E03800000000000000000000000000C06000003E0078430C03E007E0401800000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000000C0600000000000000000000000000000000000000000000000000001C0700000000000000000000000000000000000000000000000000001C0380000000000000000000000000000000000000000000000000003803C0000000000000000000000000000000000000000000000000007001F000000000000000000000000000000000000000000000000001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF800
+~DGSLUZ_L,00800,010,00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FF800000000000000003FFFFFFFF800000000003FFFFFFFF800000000003FFFFFFFF800000000003FFFFFFFF800000000003FFFFFFFF800000000003FFFFFFFF800000000003FFFFFFFF800000000003FFFFFFFF800000000003FFFFFFFF80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C01C000C1DFF380EE1E7F87F3FFE39FF381EE3CFFCFFBFFE39C0380EE78E1CE3C38E39C0380EEF1E1EE1838771FE380EFE1C0EFC038771FF381EFE1C0E7F838771FE380EFF1C0E3FC383E1C0380EF71C0E03C383E1C0380EE79E1CE1C383E1FF3FCEE3CF3CF3C381C1FF3FEEE1E7F87F8381C1FF3FCEE1E3F03F03800000000000000000000000000000000000000000000000000000000000000000000000000000000
+~DGHMOT_IKO,00800,010,0000000000000000000000000000000000000000000000001FF800000000000000007FFE0000000000000000FFFF0000000000000001FFFF8000000000000003FFFFC000000000000007FEFFE00000000000000FF00FF00000000000000FE007F00000000000001FC003F80000000000001F8001F80000000000001F8001F80000000000001F8001F80000000000001F0000FC0000000000001F0000F80000000000001F8000F80000000000001F8001F80000000000001F8001F80000000000001FC003F80000000000000FC003F00000000000000FF00FF000000000000007F81FE000000000000007FFFFE000000000000003FFFFC000000000003FFFFFFFFFFE000000007FFFFFFFFFFF00000000FFFFFFFFFFFF00000000FFFFFFFFFFFF80000000FFFFFFFFFFFF80000001FDFFFFFFFFFF80000001F8000000001F80000001F8000000000FC0000001F8000000000FC0000003F0000000000FE0000003F00000000007E0000007F00000000007E0000007E00000000007E0000007E00000000003F0000007E00000000003F000000FC0F000000003F000000FC0F000000001F800000FC0F000000001F800001F80F000000001F800001F80F000000000FC00001F80F01C03C380FC00003F00F03C0FFF80FC00003F00F07C1FFF80FE00003F00F0F83E3F807E00007E00F1F07C0F807E00007E00F1E07807803F00007E00F3C07807803F0000FE00F780F007803F0000FC00FF80F007803F8000FC00FFC0F007801F8001F800FFE0F007801F8001F800F9E0F007800FC001F800F9F07807800FC001F800F0F0780F800FC003F000F0787C1F800FE003F000F07C3FFF8007E007E000F03C1FF78007E007E000F03E0FE78007F007E000F01E00078003F007E0000000000F0003F00FC0000000701F0003F00FC00000007FFF0001F81FC00000007FFC0001F81F800000001FF80001FC1F8000000000000000FC3F8000000000000000FC3F0000000000000000FC3F7FFFFFFFFFFFFFFFFE3FFFFFFFFFFFFFFFFFFE7FFFFFFFFFFFFFFFFFFE7FFFFFFFFFFFFFFFFFFE7FFFFFFFFFFFFFFFFFFE3FFFFFFFFFFFFFFFFFFE0000000000000000000000000000000000000000
+~DGHMOTNOST,00800,010,00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007FFFFFFFFFFFFFFFFC00FFFFFFFFFFFFFFFFFF03C0000000000000000783800000000000000001C7000000000000000000C6000000000000000000EE0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006C0000000000000000006E0000000000000000006E000000000000000000E7000000000000000000E7800000000000000001C3C0000000000000000781FFFFFFFFFFFFFFFFFF007FFFFFFFFFFFFFFFFC000000000000000000000
+^XA
+^LH0,0^FS
+^FO40,5^XGLOGO_CP,1,1^FS
+^FO250,5^XGPROD_BA,1,1^FS
+^FO620,90^A0,N,30^CI28^FDPP: 140 00^FS (podaci posta)
+^FO0,128^GB800,0,1^FS
+^FO80,128^GB0,370,1^FS
+^FO20,165^A0B,N,20^CI28^FDODESÍLATEL^FS
+^FO50,200^A0B,N,20^CI28^FDFrom^FS
+^FO595,150^XGTELEFON,1,1^FS
+^FO620,150^A0,N,33^CI28^FD+420608544895^FS
+^FO95,150^A0,N,30^CI28^FDSquared s.r.o.^FS
+^FO95,190^A0,N,30^CI28^FD ^FS
+^FO95,230^A0,N,30^CI28^FDZelený pruh 1091/111^FS
+^FO95,270^A0,N,30^CI28^FD140 00 - Praha/Krč^FS
+^FO0,304^GB800,0,1^FS
+^FO20,365^A0B,N,20^CI28^FDADRESÁT^FS
+^FO50,395^A0B,N,20^CI28^FDTo^FS
+^FO595,320^XGTELEFON,1,1^FS
+^FO620,320^A0,N,30^CI28^FD605735732^FS
+^FO95,330^A0,N,30^CI28^FDKrejčí Miloš^FS
+^FO95,370^A0,N,30^CI28^FD ^FS
+^FO95,410^A0,N,30^CI28^FDČ.p.89^FS
+^FO95,450^A0,N,40^CI28^FD675 79 - Tasov^FS
+^FO0,496^GB800,0,1^FS
+^FX rovnitko pred dobirkou=
+^FO0,656^GB800,0,1^FS
+^FO14,677^XGSLUZ_L,1,1^FS
+^FO615,677^XGHMOT_IKO,1,1^FS
+^FO704,677^XGHMOTNOST,1,1^FS
+^FO702,720^A0,N,26^CI28^FD 0.230^FS
+^FO0,776^GB800,0,1^FS
+^FO10,785^A0,N,30^CI28 ^FDPozn:^FS
+^FO80,785^A0,N,30^CI28 ^FD#CZ22180654^FS
+^FO0,816^GB800,0,1^FS
+^BY3,2,270
+^FO140,850^BCN,,N^FDBA0305127240L^FS
+^FO290,1128^A0,N,39^CI28^FDBA^FS
+^FO340,1135^A0,N,30^CI28^FD03051272^FS
+^FO455,1128^A0,N,39^CI28^FD40^FS
+^FO493,1135^A0,N,30^CI28^FDL^FS
+^XZ
diff --git a/test/request_builders/get_parcels_printing_builder_test.rb b/test/request_builders/get_parcels_printing_builder_test.rb
index 71ab0cc..955439f 100644
--- a/test/request_builders/get_parcels_printing_builder_test.rb
+++ b/test/request_builders/get_parcels_printing_builder_test.rb
@@ -130,7 +130,7 @@ def test_validate_id_form # rubocop:disable Metrics/AbcSize
def allowed_template_ids
# see CzechPostB2bClient::PrintingTemplates
- [7, 8, 10, 11, 12, 13, 20, 21, 22, 23, 24, 25, 26, 38, 39, 40, 41, 56, 57, 58, 59, 60, 61, 62, 63, 72, 73]
+ [7, 8, 10, 11, 12, 20, 21, 22, 23, 24, 25, 26, 38, 39, 40, 41, 56, 57, 58, 59, 60, 61, 62, 63, 72, 73]
end
end
end
diff --git a/test/response_parsers/get_parcels_printing_parser_test.rb b/test/response_parsers/get_parcels_printing_parser_test.rb
index 07885ac..d2d688c 100644
--- a/test/response_parsers/get_parcels_printing_parser_test.rb
+++ b/test/response_parsers/get_parcels_printing_parser_test.rb
@@ -14,12 +14,12 @@ def test_it_parses_to_correct_structure
compare_structs(expected_ok_struct, parser.result)
end
- def test_it_parses_real_response_to_correct_structure
- parser = CzechPostB2bClient::ResponseParsers::GetParcelsPrintingParser.call(xml: b2b_real_response)
+ def test_it_parses_real_pdf_response_to_correct_structure
+ parser = CzechPostB2bClient::ResponseParsers::GetParcelsPrintingParser.call(xml: b2b_real_pdf_response)
assert parser.success?
- expected_struct = expected_ok_real_struct
+ expected_struct = expected_ok_real_pdf_struct
result_struct = parser.result
# pdf_file_content = result_struct[:printings][:pdf_content]
# File.write('address_sheets.pdf', pdf_file_content)
@@ -27,6 +27,21 @@ def test_it_parses_real_response_to_correct_structure
compare_structs(expected_struct, result_struct)
end
+ def test_it_parses_real_zpl_response_to_correct_structure
+ parser = CzechPostB2bClient::ResponseParsers::GetParcelsPrintingParser.call(xml: b2b_real_zpl_response)
+
+ assert parser.success?, parser.errors
+
+ expected_struct = expected_ok_real_zpl_struct
+ result_struct = parser.result
+
+ puts parser.result
+ # zpl_file_content = result_struct[:printings][:zpl_content]
+ # File.write('address_sheets.zpl', zpl_file_content)
+
+ compare_structs(expected_struct, result_struct)
+ end
+
def test_it_handles_errors_in_response
parser = CzechPostB2bClient::ResponseParsers::GetParcelsPrintingParser.call(xml: b2b_bad_response)
@@ -34,11 +49,19 @@ def test_it_handles_errors_in_response
compare_structs(expected_real_wrong_combination_struct, parser.result)
end
- def compare_structs(expected_struct, actual_struct)
+ def compare_structs(expected_struct, actual_struct) # rubocop:disable Metrics/AbcSize
if expected_struct[:printings][:pdf_content] == DO_NOT_CHECK
expected_struct[:printings].delete(:pdf_content)
actual_struct[:printings].delete(:pdf_content)
end
+
+ if expected_struct[:printings][:zpl_content] == DO_NOT_CHECK
+ expected_struct[:printings].delete(:zpl_content)
+ actual_struct[:printings].delete(:zpl_content)
+ end
+
+ assert_equal expected_struct[:printings][:zpl_content], actual_struct[:printings][:zpl_content]
+ assert_equal expected_struct[:printings][:pdf_content], actual_struct[:printings][:pdf_content]
assert_equal expected_struct, actual_struct
end
@@ -61,7 +84,7 @@ def expected_ok_struct
}
end
- def expected_ok_real_struct
+ def expected_ok_real_pdf_struct
{
printings: {
options: {
@@ -80,6 +103,25 @@ def expected_ok_real_struct
}
end
+ def expected_ok_real_zpl_struct
+ {
+ printings: {
+ options: {
+ customer_id: 'L03051',
+ contract_number: '356936003',
+ template_id: 201, # 'Harmonizovaný štítek bianco - (Zebra - 100x150); nejde o PDF'
+ margin_in_mm: { top: 0, left: 0 },
+ position_order: 0
+ },
+ zpl_content: File.read(File.join(fixtures_dir, 'known_responses', 'real_sheet.zpl'))
+ },
+ request: { created_at: Time.parse('2022-04-07T08:57:26.923+02:00'),
+ contract_id: '356936003',
+ request_id: '1' },
+ response: { created_at: Time.parse('2022-04-07T08:57:27.135Z'), state: { code: 1, text: 'OK' } }
+ }
+ end
+
def expected_real_wrong_combination_struct
{
printings: {
@@ -100,8 +142,12 @@ def expected_real_wrong_combination_struct
}
end
- def b2b_real_response
- fixture_response_xml('getParcelsPrinting_ok_real.xml')
+ def b2b_real_pdf_response
+ fixture_response_xml('getParcelsPrinting_ok_real_pdf.xml')
+ end
+
+ def b2b_real_zpl_response
+ fixture_response_xml('getParcelsPrinting_ok_real_zpl.xml')
end
def b2b_ok_response