V tomto článku se dozvíte, jak dotazovat různé vlastnosti jednotlivých zemí a také jak je vyhledat v Cloudu RetailForce. Na konci článku najdete vysvětlení jednotlivých prvků fiscalCountryProperties.
Abychom ilustrovali nezbytné implementace pro vaši implementaci, byly vytvořeny vlastnosti zemí (FiscalCountryProperties). Ty ukazují, které části celkového rozhraní musí být pro každou zemi minimálně implementovány.
Vlastnosti zemí jsou k dispozici od verze V1.2.12 (s výjimkou klienta od verze V1.2.13).
Vyhledání vlastností zemí v Cloudu
K vlastnostem zemí lze přistupovat v Cloud portálu pod následujícím odkazem:
https://portal.retailforce.cloud/information/fiscal-country
Pro přístup k FiscalCountryProperties musíte být přihlášeni do portálu.
Vyhledání vlastností jednotlivých zemí v klientovi
Vlastnosti jednotlivých zemí lze vyhledat také prostřednictvím programu. To umožňuje reagovat na různé vlastnosti jednotlivých zemí přímo v pokladním programu.
Příklad: určitý typ dokladu není v dané zemi povolen a proto není podporován.
Dotazování prostřednictvím přímé implementace (NuGet)
Chcete-li dotazovat všechny existující vlastnosti všech zemí, lze zavolat následující metodu:
List<IFiscalCountryProperties> TrustedFiscalModul.GetFiscalCountryPropertiesList()Dotazování prostřednictvím klienta
REST službu
V rámci REST služby existují 2 koncové body pro dotazování na vlastnosti zemí:
GET /api/v1/information/countryPropertiesTuto metodu lze použít k dotazu na vlastnosti konkrétní země.
/api/v1/information/client/{clientId}/countryPropertiesTuto metodu lze použít k dotazu na vlastnosti země pro konkrétního klienta.
Klient služby Fiscal Service
V klientovi fiskální služby (.NET Standard 2.0 a .NET Framework 2) jsou k dispozici následující metody pro dotazování na vlastnosti země.
FiscalCountryProperties GetFiscalCountryProperties(FiscalCountry fiscalCountry)Tuto metodu lze použít k dotazování na vlastnosti země pro konkrétní zemi.
FiscalCountryProperties GetFiscalCountryProperties(Guid clientId)Tuto metodu lze použít k dotazování na vlastnosti země pro konkrétního klienta.
fiscalCountryProperties – Vysvětlení
fiscalCountryProperties obsahují data, která mají čistě informativní charakter, stejně jako informace relevantní pro implementaci.
Informativní údaje jsou ve sloupci „Typ“ označeny jako INFO. Údaje, které je třeba zohlednit při implementaci, jsou označeny jako „RFI“ (relevantní pro implementaci).
| fiscalCountryProperty | Typ |
Popis |
| fiscalCountry | INFO |
označuje příslušnou zemi. Pokud jsou vlastnosti fiscalCountryProperties dotazovány pomocí GET /api/v1/information/client/{clientId}/countryProperties, je uvedena země přiřazená danému klientovi. |
| countryModuleVersion | INFO |
Aktuální verze modulu Trusted Fiscal Country Module v rámci middlewaru (relevantní pro země, ve kterých musí být certifikována konkrétní verze softwaru; např. Francie). |
| certificationType | INFO |
Určuje, zda je v dané zemi vyžadována certifikace fiskální komponenty, případně co je třeba certifikovat. „mandatory“ – Certifikace nadřazeného systému (např. pokladny) je povinná. V tomto případě musí pokladna projít certifikačním nebo schvalovacím procesem. „miniPOS“ – Certifikace je povinná, ale je splněna již certifikovanou komponentou, kterou lze integrovat do middlewaru RetailForce. „notNecessary“ – Certifikace předchozího systému není vyžadována. |
| fiscalLineInterface | RFI |
„true“ – v dané zemi musí být data odesílána řádek po řádku, např. na fiskální tiskárnu.
„false“ – Rozhraní založené na dokumentech (bez tisku po jednotlivých řádcích).
|
| fiscalisationType | INFO |
Určuje typ fiskalizace. „fiscalPrinter“ – Fiskalizace je založena na certifikované fiskální tiskárně nebo certifikovaném fiskálním pokladním systému.
„online“ – Fiskalizace prostřednictvím online systémů místních daňových úřadů.
„signature“ – Fiskalizace prostřednictvím podepsání údajů na účtence pomocí digitálního certifikátu uloženého ve fiskalizační službě.
„signatureWithOnline“ – fiskalizace prostřednictvím vytváření podpisů a online přenosu dat daňovým úřadům.
|
| podporovaná prostředí | RFI |
Určuje, které prostředí je podporováno: „local“ – lokální instalace fiskálního middlewaru (lokálně na pokladním systému, na serveru prodejny atd.)
„cloud“ – fiskální middleware je k dispozici jako hostovaná cloudová služba na adrese https://fiscalisation.retailforce.cloud/.
|
| podporované typy platforem | RFI |
Určuje, které operační systémy/platformy jsou podporovány. „linux“
„windows“
„ios“
„android“
|
| podporovaná legislativa | INFO |
Určuje, které právní požadavky jsou podporovány a jaké jsou jejich verze. Např. pro Řecko: „myData v1.x.x“ |
| typy daňových dokladů | RFI |
Typy dokumentů, které mají být v dané zemi „fiskalizovány“. Musí být například zpracovány předepsanou hardwarovou komponentou, podepsány atd. „documentTypes“ uvedené pod „fiscalDocumentTypes“ jsou v příslušné zemi automaticky zpracovány (např. podepsány) službou fiskalizace v souladu s právními předpisy o fiskalizaci. Tyto typy dokumentů MUSÍ být předány fiskalizační službě v příslušné zemi, za předpokladu, že je podporuje nadřazený systém („pokladna“). |
| supportedDocumentTypes | RFI |
Seznam typů dokumentů podporovaných v jednotlivých zemích. Kromě „fiscalDocumentTypes“ MOHOU být do fiskalizační služby předány i typy dokumentů uvedené v položce „supportedDocumentTypes“. Tyto typy dokumentů jsou tzv. „nefiskální“ dokumenty, tj. dokumenty, které nejsou „fiskalizovány“ (např. podepsány). |
| notSupportedDocumentTypes | RFI |
Seznam typů dokumentů, které nejsou v dané zemi podporovány. „DocumentTypes“ uvedené v sekci „notSupportedDocumentTypes“ nelze odeslat do služby fiskalizace v dané zemi. Důvodem může být technická nemožnost nebo předpisy/zákony specifické pro danou zemi. Pokud je „notSupportedDocumentType“ odeslán do služby fiskalizace, ta odpoví chybovou zprávou („documentType není podporován!“). Nadřazený systém by neměl tyto typy dokumentů v dané zemi povolit. |
| podporované typy plateb | RFI |
Seznam platebních metod podporovaných (akceptovaných) v dané zemi. Tyto platební metody lze v dané zemi používat. Nadřazený systém by měl uživateli pokladny nabízet pouze platební metody podporované v dané zemi. |
| nepodporované způsoby platby | RFI |
Seznam platebních metod, které nejsou v dané zemi podporovány (nebo nejsou povoleny). Nadřazený systém by měl v dané zemi potlačit nepodporované způsoby platby. |
| overpaymentNotAllowed | RFI |
Seznam platebních metod (paymentTypes), u nichž není v dané zemi povoleno přeplatit dlužnou částku. Příklady: Celková částka na účtence = 38,50 EUR
Tyto transakce nejsou v některých zemích povoleny (tj. nelze je odeslat do fiskalizačního systému). To znamená, že částky plateb („payment.amount“) musí vždy odpovídat hrubé celkové částce položek („grossValue“ všech „positions“) a nesmí být převáděny žádné záporné částky plateb. |
| supportedBusinessTransactionTypes | RFI |
Seznam typů obchodních případů podporovaných v jednotlivých zemích. Tyto obchodní případy lze v dané zemi použít, na rozdíl od typů „notSupportedBusinessTransactionTypes“. |
| notSupportedBusinessTransactionTypes | RFI |
Seznam typů obchodních případů, které nejsou v dané zemi podporovány (nebo nejsou povoleny). Tyto obchodní případy nelze v dané zemi použít a zdrojový systém by je měl potlačit a nepředávat službě pro fiskální účely. |
| supportedVatDefinitions | RFI |
Podrobné informace o sazbách Vat podporovaných v jednotlivých zemích. Toto pole obsahuje následující informace:
|
| companyIdentification | RFI |
Informace o tom, které identifikátory společnosti je třeba v dané zemi použít. |
| zobrazeníZákazníkaPovinné | RFI |
„není povinné“ – Zobrazení zákazníka není vyžadováno (není povinné). „povinné (bez RF)“ – Zobrazení zákazníka je povinné, ale není řízeno prostřednictvím middlewaru RetailForce. Řízení provádí automaticky příslušný fiskální systém (např. automaticky fiskální tiskárna). „povinné (RF)“ – Zobrazení zákazníka je povinné a je řízeno prostřednictvím middlewaru RetailForce.
„nepovoleno“ – Použití zákaznického displeje je v této zemi zakázáno. |
| terminalSlaveSupported | RFI |
Určuje, zda musí být vstupní zařízení v dané zemi registrována („true“ / „false“). Vstupní zařízení nejsou samostatnými záznamovými systémy. Další informace naleznete v části: Architektury elektronických záznamových systémů (EAS) |
| auditLogMandatory | RFI |
„true“ – v dané zemi existuje povinnost vést technický deník (auditní protokol) (v tomto případě je součástí licence RF).
„false“ – neexistuje požadavek na vedení technického deníku (není součástí licence).
|
| mustRecordDocumentReprint | RFI |
„true“ – v dané zemi musí být povinně zaznamenán dotisk dokumentu.
„false“ – Opětovný tisk dokumentu nemusí být povinně zaznamenán. |
| reprintAllowedDomain | RFI |
„terminal“ – Dokument lze znovu vytisknout pouze na téže pokladně, na které byl vystaven původní dokument. „store“ – Opětovný tisk dokladu je povolen pouze v rámci téže pobočky/prodejny, kde byl vystaven i původní doklad.
„all“ – Opětovný tisk dokladu lze provést na jiné pokladně i v jiné pobočce/prodejně téže společnosti.
|
| mustSendClosingPerDay | RFI |
„true“ – denní uzávěrka (Z-report) musí být generována jednou denně.
„false“ – denní uzávěrka není vyžadována. |
| maximální hodinový interval pro uzavření | RFI |
Udává časové období od posledního denního uzavření, v jehož rámci musí proběhnout další denní uzavření (např. do 24 hodin). Po uplynutí tohoto období služba fiskalizace odmítá každý dokument kromě denního uzavření („documentType“: „[99] = EndOfDay“) se stavovým kódem HTTP 400, dokud nebude denní uzavření uloženo. Před prvním denním uzavřením neplatí žádné omezení. „-1“ – není nastaveno. |
| returnAndSaleBehavior | RFI |
Určuje, zda lze na účtence (dokumentu) současně zaznamenat prodej i vrácení zboží. „oneReceiptAllowed“ – povoleno (prodeje a vrácené zboží lze na jedné účtence uvádět společně).
„oneReceiptAllowedPerVatRate“ – tržby a vrácené zboží lze zaznamenat na jedné (stejné) účtence, pokud mají hrubé součty všech sazeb Vat na účtence stejné znaménko (všechny kladné nebo všechny záporné). „multiReceipt“ – Prodeje a vrácené zboží musí být zaznamenány na různých účtenkách.
„NoReturnAllowed“ – v dané zemi není možné zpracovávat vrácené zboží prostřednictvím fiskalizačního systému. V těchto zemích se vrácené zboží často zpracovává pomocí speciálních formulářů nebo podobných prostředků v účetním oddělení. |
| returnDomainAllowed | RFI |
Kde lze zakoupené zboží vrátit? „terminal“ – Zboží lze vrátit pouze na stejné pokladně (vydání dokladu), na které byl původní prodej uskutečněn. „store“ – Zboží lze vrátit pouze ve stejné pobočce/prodejně (vydání účtenky), kde byl původní prodej uskutečněn. „all“ – Zboží lze vrátit i v jiných pobočkách téže společnosti. |
| returnReferenceBehavior | RFI |
Odkaz na doklad pro vrácení zboží „single“ – v případě vrácení zboží lze odkazovat pouze na JEDEN předchozí dokument (prodejní doklad o vrácených službách nebo zboží).
„multiple“ – v případě vrácení zboží lze odkazovat na více předchozích dokumentů (více prodejních dokladů, pokud se vrací více služeb nebo zboží z více nákupů).
|
| printFiscalDocumentNumber | RFI |
Určuje, zda musí být na dokladech vytištěn prvek „fiscalDocumentNumber“ z „fiscalResponse“ příslušné země.
|
| taxFreeVat |
|
|
| getCloudArchiveAccessLicense |
|
Vrací licenci nezbytnou pro cloudové archivování daňových údajů. |
| surchargesPossible | RFI |
„true“ – v dané zemi jsou povoleny příplatky za zboží nebo služby.
„false“ – Cenové příplatky nejsou povoleny. |
| trainingModeAllowed | RFI |
Uvádí, zda služba fiskalizace pro danou zemi podporuje trénovací/demo režim „true“ – povoleno.
„false“ – tréninkový/demo režim není podporován. Služba fiskalizace odmítne každý doklad s „isTraining“: true (chyba validace „Tréninková účtenka není v této zemi povolena.“). |
| netValuePositionCalculation | RFI |
„true“ – Součet jednotlivých položek se vypočítává na základě čisté částky (netValue) (např. Québec/Kanada). „false“ – Součet jednotlivých položek se počítá na základě hrubé částky (grossValue) (výchozí nastavení). |
| mustSendCanceledPosition | RFI |
„true“ – Položky, které byly zadány, ale následně nebyly zahrnuty do dokumentu, musí být odeslány v datové části (JSON). „false“ – Položky, které byly zadány, ale následně nebyly do dokumentu zahrnuty, nemusí být odeslány. Poznámka: Další informace najdete v článku „Odesílání pozic smazaných položek“. |
| startDocumentType | RFI |
Určuje typ počátečního dokumentu v příslušné zemi. Relevantní pouze v případě, že nadřazený systém při inicializaci NEPOUŽÍVÁ funkci GET /api/v1/transactions/document/{clientId}/start a příslušný počáteční dokument generuje sám. |
| supportedPayOutTypes | RFI |
Seznam typů výplat podporovaných v dané zemi. Položky uvedené pod „supportedPayOutTypes“ lze/je nutné specifikovat pro výplaty („documentType“: „[10] = PayOut“ a „businessTransactionType“: „[10] = PayOut“). |
| notSupportedPayOutTypes | RFI |
Seznam typů výplat, které nejsou v dané zemi podporovány (nebo nejsou povoleny). |
| fiscalModuleCalculatesTaxRates | RFI |
Uvádí, zda jsou sazby Vat vypočítávány příslušným fiskalizačním modulem dané země. „true“ – Sazby Vat vypočítává fiskalizační modul. „false“ – sazby Vat musí vypočítat pokladna. |
| přípustné znaky v čísle prodejny (regex) | RFI |
Povolený regulární výraz pro číslo prodejny (číslo pobočky) |
| terminalNumberValidCharsRegex | RFI |
Povolený regulární výraz pro číslo terminálu (číslo pokladny) |
| fiscalRegions | RFI |
Údaj o daňových oblastech, pokud se v dané zemi uplatňují. |
| amountDecimalPlaces | RFI |
Určuje, zda a kolik desetinných míst musí být zahrnuto v dokumentu JSON zasílaném do fiskálního middlewaru při odesílání částek / součtů. Platí pro všechny specifikace hodnot v užitečném obsahu („GrossValue“, „NetValue“, „TaxValue“, „Amount“ atd.) |
| entityParameters |
|
Určuje, které parametry musí být uloženy pro které entity portálu. |
| legalForms | RFI |
Seznam právních forem společností dostupných v dané zemi. |
| povinná klasifikace typu položky | RFI |
V některých zemích je vyžadována podrobnější specifikace určitých položek. Pokud je hodnota této vlastnosti „true“, musí být pro příslušné položky v dané zemi nastaveny hodnoty uvedené v `supportedItemTypeClassification` (vlastnost itemTypeClassification musí být odpovídajícím způsobem nastavena v objektu positions). |
| supportedItemTypeClassification | RFI |
Určuje, které položky musí být v dané zemi zvlášť označeny (v objektu positions musí být odpovídajícím způsobem nastavena vlastnost itemTypeClassification). |
| documentTypeBusinessTransactionTypeSupport | RFI |
Informace o tom, které typy obchodních transakcí (BusinessTransactionTypes) lze kombinovat s kterými typy dokumentů (documentTypes). |
Tento článek byl přeložen automaticky.
Komentáře
0 komentářů
Prosím přihlaste se, abyste mohli napsat komentář.