W niniejszym artykule dowiedzą się Państwo, jak wyszukiwać różne właściwości poszczególnych krajów, a także jak je odnaleźć w RetailForce Cloud. Na końcu artykułu znajduje się objaśnienie poszczególnych elementów właściwości fiscalCountryProperties.
W celu zilustrowania niezbędnych elementów implementacji dla Państwa rozwiązania utworzono właściwości krajów (fiscalCountryProperties). Pokazują one, które części całego interfejsu należy co najmniej zaimplementować dla każdego kraju.
Właściwości krajowe są dostępne od wersji V1.2.12 (z wyjątkiem klienta od wersji V1.2.13).
Wyszukiwanie właściwości krajowych w Cloud
Dostęp do właściwości krajowych można uzyskać w portalu Cloud pod następującym linkiem:
https://portal.retailforce.cloud/information/fiscal-country
Aby uzyskać dostęp do właściwości fiscalCountryProperties, należy zalogować się do portalu.
Wyszukiwanie właściwości krajowych w kliencie
Właściwości krajów można również sprawdzić za pośrednictwem programu. Umożliwia to reagowanie na różne właściwości krajów w programie kasowym.
Przykład: dany typ dokumentu nie jest dozwolony w danym kraju i w związku z tym nie jest obsługiwany.
Wypytanie poprzez bezpośrednią implementację (nuget)
Aby uzyskać wszystkie istniejące właściwości krajów, można wywołać następującą metodę:
List<IFiscalCountryProperties> TrustedFiscalModul.GetFiscalCountryPropertiesList()Zapytanie za pośrednictwem klienta
usługi REST
W usłudze REST dostępne są dwa punkty końcowe służące do wyszukiwania właściwości krajów:
GET /api/v1/information/countryPropertiesMetodę tę można wykorzystać do wyszukania właściwości danego kraju.
/api/v1/information/client/{clientId}/countryPropertiesMetodę tę można wykorzystać do wyszukania właściwości kraju dla danego klienta.
Client usługi Fiscal Service
W clientie usługi Fiscal Service (.NET Standard 2.0 i .NET Framework 2) dostępne są następujące metody służące do wyszukiwania właściwości kraju.
FiscalCountryProperties GetFiscalCountryProperties(FiscalCountry fiscalCountry)Metoda ta służy do pobierania właściwości kraju dla danego kraju.
FiscalCountryProperties GetFiscalCountryProperties(Guid clientId)Metoda ta służy do pobierania właściwości kraju dla danego klienta.
fiscalCountryProperties – objaśnienie
Właściwości fiscalCountryProperties zawierają dane o charakterze wyłącznie informacyjnym, a także informacje istotne dla wdrożenia.
Dane informacyjne są oznaczone jako „INFO” w kolumnie „Typ”. Dane, które należy uwzględnić podczas wdrażania, są oznaczone jako „RFI” (istotne dla wdrożenia).
| fiscalCountryProperties | Typ | Opis |
| fiscalCountry | INFO |
wskazuje odpowiedni kraj. W przypadku wysłania zapytania o właściwości fiscalCountryProperties za pomocą metody GET /api/v1/information/client/{clientId}/countryProperties podawany jest kraj przypisany do danego klienta. |
| countryModuleVersion | INFO | Aktualna wersja modułu Trusted Fiscal Country w middleware (istotne w przypadku krajów, w których wymagana jest certyfikacja konkretnej wersji oprogramowania; np. we Francji). |
| certificationType | INFO |
Określa, czy w danym kraju wymagana jest certyfikacja komponentu fiskalnego, lub co podlega certyfikacji. „mandatory” – Certyfikacja systemu nadrzędnego (np. kasy fiskalnej) jest obowiązkowa. W tym przypadku kasa fiskalna musi przejść proces certyfikacji lub zatwierdzenia. „miniPOS” – Certyfikacja jest obowiązkowa, ale wymóg ten spełnia już certyfikowany komponent, który można zintegrować z RetailForce Middleware. „notNecessary” – Certyfikacja systemu nadrzędnego nie jest wymagana. |
| fiscalLineInterface | RFI |
„true” – w danym kraju dane muszą być przesyłane wiersz po wierszu, np. do drukarki fiskalnej.
„false” – interfejs oparty na dokumentach (brak drukowania wiersz po wierszu).
|
| fiscalisationType | INFO |
Określa rodzaj fiskalizacji. „fiscalPrinter” – Fiskalizacja opiera się na certyfikowanej drukarce fiskalnej lub certyfikowanym systemie kas fiskalnych.
„online” – Rejestracja fiskalna odbywa się za pośrednictwem systemów internetowych lokalnych organów podatkowych.
„signature” – Rejestracja fiskalna poprzez podpisywanie danych paragonów przy użyciu certyfikatu cyfrowego przechowywanego w usłudze rejestracji fiskalnej.
„signatureWithOnline” – fiskalizacja poprzez tworzenie podpisów i przesyłanie danych online do organów podatkowych.
|
| obsługiwane środowiska | RFI |
Określa, które środowisko jest obsługiwane: „local” – lokalna instalacja middleware do celów fiskalnych (lokalnie w systemie POS, na serwerze sklepu itp.)
„cloud” – middleware do celów fiskalnych jest dostępne jako usługa w chmurze pod adresem https://fiscalisation.retailforce.cloud/.
|
| obsługiwane typy platform | RFI |
Określa, które systemy operacyjne/platformy są obsługiwane. „linux”
„windows”
„ios”
„android”
|
| obsługiwane przepisy prawne | INFORMACJA |
Określa, które wymogi prawne są obsługiwane oraz ich wersje. Np. w przypadku Grecji: „myDATA v1.x.x” |
| typy dokumentów podatkowych | RFI |
Typy dokumentów, które mają zostać poddane „fiskalizacji” w danym kraju. Muszą one na przykład zostać przetworzone przez wymagany komponent sprzętowy, podpisane itp. „documentTypes” wymienione w sekcji „fiscalDocumentTypes” są automatycznie przetwarzane (np. podpisywane) w danym kraju przez serwis fiskalizacji zgodnie z przepisami dotyczącymi fiskalizacji. Typy tych dokumentów MUSZĄ zostać przekazane do serwisu fiskalizacji w danym kraju, pod warunkiem że system źródłowy („kasa fiskalna”) je obsługuje. |
| supportedDocumentTypes | RFI |
Lista typów dokumentów obsługiwanych w poszczególnych krajach. Oprócz „fiscalDocumentTypes” typy dokumentów wymienione w sekcji „supportedDocumentTypes” MOGĄ być przekazywane do serwisu fiskalizacyjnego. Typy tych dokumentów to tzw. dokumenty „niefiskalne”, tj. takie, które nie są „poddane fiskalizacji” (np. podpisane). |
| notSupportedDocumentTypes | RFI |
Lista typów dokumentów nieobsługiwanych w danym kraju. DocumentTypes wymienione w sekcji „notSupportedDocumentTypes” nie mogą być przekazywane do serwisu fiskalizacji w danym kraju. Przyczyną tego może być niemożliwość techniczna lub przepisy/ustawy obowiązujące w danym kraju. W przypadku przesłania „notSupportedDocumentType” do serwisu fiskalizacji otrzyma Pan/Pani komunikat o błędzie („documentType not supported!”). System źródłowy nie powinien dopuszczać tych typów dokumentów w danym kraju. |
| supportedPaymentTypes | RFI |
Lista metod płatności obsługiwanych (akceptowanych) w danym kraju. Metody te mogą być stosowane w danym kraju. System nadrzędny powinien oferować użytkownikowi kasy wyłącznie metody płatności obsługiwane w danym kraju. |
| nieobsługiwaneMetodyPłatności | RFI |
Lista metod płatności, które nie są obsługiwane (lub nie są dozwolone) w danym kraju. System nadrzędny powinien wyłączyć metody płatności, które nie są obsługiwane w danym kraju. |
| overpaymentNotAllowed | RFI |
Lista metod płatności (PaymentTypes), w przypadku których w danym kraju niedopuszczalne jest dokonanie płatności w kwocie wyższej niż należna. Przykłady: Suma na paragonie = 38,50 EUR
Transakcje tego typu są niedozwolone w niektórych krajach (co oznacza, że nie mogą zostać przesłane do systemu fiskalizacji). Oznacza to, że kwoty płatności („payment.amount”) muszą zawsze odpowiadać sumie brutto pozycji („GrossValue” wszystkich „pozycji”), a nie wolno przekazywać ujemnych kwot płatności. |
| supportedBusinessTransactionTypes | RFI |
Lista typów transakcji biznesowych obsługiwanych w poszczególnych krajach. W odróżnieniu od notSupportedBusinessTransactionTypes, te przypadki biznesowe mogą być wykorzystywane w danym kraju. |
| notSupportedBusinessTransactionTypes | RFI |
Lista typów przypadków biznesowych, które nie są obsługiwane (lub nie są dozwolone) w danym kraju. Wymienione przypadki biznesowe nie mogą być stosowane w danym kraju i powinny zostać pominięte przez system źródłowy oraz nie powinny być przekazywane do serwisu fiskalnego. |
| supportedVatDefinitions | RFI |
Szczegółowe informacje na temat stawek Vat obsługiwanych w poszczególnych krajach. Ta tablica zawiera następujące informacje:
|
| companyIdentification | RFI | Informacje dotyczące identyfikatorów firm, które należy stosować w danym kraju. |
| customerDisplayMandatory | RFI |
„nieobowiązkowe” – wyświetlanie danych klienta nie jest wymagane (brak obowiązku). „obowiązkowe (bez RF)” – Wyświetlanie danych klienta jest obowiązkowe, ale nie jest kontrolowane za pośrednictwem RetailForce Middleware. Kontrola odbywa się automatycznie przez odpowiedni system fiskalny (np. automatycznie przez drukarkę fiskalną). „obowiązkowe (RF)” – Wykorzystanie wyświetlacza klienta jest obowiązkowe i jest kontrolowane za pośrednictwem RetailForce Middleware.
„niedozwolone” – Korzystanie z wyświetlacza klienta jest zabronione w tym kraju. |
| terminalSlaveSupported | RFI |
Określa, czy urządzenia wejściowe muszą być zarejestrowane w danym kraju („true” / „false”). Urządzenia wejściowe nie są samodzielnymi systemami rejestrującymi. Więcej informacji można znaleźć w sekcji: Architektury elektronicznych systemów rejestrujących (EAS) |
| auditLogMandatory | RFI |
„true” – w danym kraju obowiązuje wymóg prowadzenia dziennika technicznego (dziennika audytowego) (w tym przypadku uwzględnionego w licencji RF).
„false” – nie ma wymogu prowadzenia dziennika technicznego (nie jest on uwzględniony w licencji).
|
| mustRecordDocumentReprint | RFI |
„true” – w danym kraju ponowne wydrukowanie dokumentu musi być obowiązkowo rejestrowane.
„false” – Ponowne wydrukowanie dokumentu nie musi być rejestrowane jako obowiązkowe. |
| reprintAllowedDomain | RFI |
„terminal” – Dokument może zostać ponownie wydrukowany wyłącznie na tej samej kasie, na której wystawiono dokument oryginalny. „store” – Ponowne wydrukowanie dokumentu może nastąpić wyłącznie w tym samym oddziale/sklepie, w którym wystawiono dokument oryginalny.
„wszystkie” – Ponowne wydrukowanie dokumentu może nastąpić zarówno na innej kasie, jak i w innym oddziale/sklepie tej samej firmy.
|
| mustSendClosingPerDay | RFI |
„true” – raz dziennie musi być generowane zamknięcie dzienne (raport Z).
„false” – nie ma wymogu sporządzania dziennego zamknięcia. |
| maksymalny przedział czasowy w godzinach dla zamknięcia | RFI |
Wskazuje okres czasu od momentu dziennego otwarcia kasy, w którym musi nastąpić dzienne zamknięcie (np. w ciągu 24 godzin). „-1” – nieustalone. |
| returnAndSaleBehavior | RFI |
Określ, czy na jednym paragonie (dokumencie) można jednocześnie rejestrować sprzedaż i zwroty. „oneReceiptAllowed” – dozwolone (sprzedaż i zwroty mogą być wykazane łącznie na jednym paragonie).
„oneReceiptAllowedVat” – o ile kwota podatku Vat pozostaje dodatnia, sprzedaż i zwroty mogą być rejestrowane na jednym (tym samym) paragonie. „multiReceipt” – sprzedaż i zwroty muszą być rejestrowane na różnych paragonach.
„NoReturnAllowed” – w danym kraju przetwarzanie zwrotów za pośrednictwem systemu fiskalizacji nie jest możliwe. W krajach tych zwroty są często obsługiwane za pomocą specjalnych formularzy lub podobnych dokumentów w dziale księgowości. |
| returnDomainAllowed | RFI |
Gdzie można zwrócić zakupione towary? „terminal” – Towary można przyjąć z powrotem wyłącznie w tej samej kasie (wystawienie paragonu), w której dokonano pierwotnej sprzedaży. „store” – Towary można zwrócić wyłącznie w tym samym oddziale/sklepie (miejscu wystawienia paragonu), w którym dokonano pierwotnej sprzedaży. „wszystkie” – Towary można również zwrócić do innych oddziałów tej samej firmy. |
| returnReferenceBehavior | RFI |
Odniesienie do dokumentu w przypadku zwrotów „single” – w przypadku zwrotów można odwołać się wyłącznie do JEDNEGO poprzedniego dokumentu (dokumentu sprzedaży zwracanych usług lub towarów).
„multiple” – w przypadku zwrotów dopuszczalne jest odwołanie się do wielu poprzednich dokumentów (wielu paragonów sprzedaży, jeśli zwracanych jest wiele usług lub towarów pochodzących z wielu zakupów).
|
| printFiscalDocumentNumber | RFI |
Określa, czy element „fiscalDocumentNumber” z „fiscalResponse” odpowiedniego kraju musi zostać wydrukowany na dokumentach.
|
| taxFreeVat | ||
| getCloudArchiveAccessLicense | Zwraca licencję niezbędną do archiwizacji danych fiskalnych w Cloud. | |
| surchargesPossible | RFI |
„true” – w danym kraju dopuszczalne jest naliczanie opłat dodatkowych od towarów lub usług.
„false” – naliczanie dopłat do cen jest niedozwolone. |
| trainingModeAllowed | RFI |
Wskazuje, czy w danym kraju dozwolony jest tryb szkoleniowy/demonstracyjny kasy fiskalnej „true” – dozwolone.
„false” – kasa nie może posiadać trybu szkoleniowego ani demonstracyjnego. |
| netValuePositionCalculation | RFI |
„true” – Suma poszczególnych pozycji jest obliczana na podstawie kwoty netto (NetValue) (np. w prowincji Québec w Kanadzie). „false” – Suma poszczególnych pozycji jest obliczana na podstawie kwoty brutto (GrossValue) (ustawienie domyślne). |
| mustSendCanceledPosition | RFI |
„true” – Pozycje, które zostały wprowadzone, ale nie zostały następnie uwzględnione w dokumencie, muszą zostać przesłane w payload (JSON). „false” – Pozycje, które zostały wprowadzone, ale nie zostały następnie uwzględnione w dokumencie, nie muszą być przesyłane. Uwaga: Więcej informacji można znaleźć w artykule „Przesyłanie pozycji usuniętych pozycji”. |
| startDocumentType | RFI |
Określa typ dokumentu początkowego w danym kraju. Ma to znaczenie tylko wtedy, gdy system nadrzędny NIE korzysta z funkcji GET /api/v1/transactions/document/{clientId}/start podczas inicjalizacji i sam generuje odpowiedni dokument początkowy. |
| supportedPayOutTypes | RFI |
Lista typów wypłat obsługiwanych w danym kraju. Pozycje wymienione w sekcji „supportedPayOutTypes” mogą/muszą być określone dla wypłat („documentType”: „[10] = PayOut” oraz „BusinessTransactionType”: „[10] = PayOut”). |
| notSupportedPayOutTypes | RFI | Lista rodzajów wypłat, które nie są obsługiwane (lub nie są dozwolone) w danym kraju. |
| fiscalModuleCalculatesTaxRates | RFI |
Wskazuje, czy stawki Vat są obliczane przez odpowiedni moduł fiskalny danego kraju. „true” – moduł fiskalny oblicza stawki Vat. „false” – stawki Vat musi obliczać kasa fiskalna. |
| storeNumberValidCharsRegex | RFI | Dopuszczalny wyrażenie regularne dla numeru sklepu (numeru oddziału) |
| terminalNumberValidCharsRegex | RFI | Dopuszczalny wyrażenie regularne dla numeru terminala (numeru kasy fiskalnej) |
| fiscalRegions | RFI | Wskazanie regionów podatkowych, o ile ma to zastosowanie w danym kraju. |
| liczba_miejsc_po_przecinku | RFI |
Określa, czy oraz ile miejsc po przecinku należy uwzględnić w dokumencie JSON przesyłanym do oprogramowania middleware (Fiscal Middleware) podczas przekazywania kwot / sum. Dotyczy wszystkich specyfikacji wartości w payload („GrossValue”, „NetValue”, „TaxValue”, „Amount” itp.) |
| entityParameters | Określa, które parametry należy zapisać dla poszczególnych encji portalu. | |
| legalForms | RFI | Lista form prawnych spółek dostępnych w danym kraju. |
| itemTypeClassificationRequired | RFI | W niektórych krajach wymagana jest bardziej szczegółowa specyfikacja niektórych pozycji. Jeśli wartość tej właściwości wynosi „true”, dla odpowiednich pozycji w danym kraju należy ustawić wartości określone w `supportedItemTypeClassification` (właściwość ItemTypeClassification musi zostać odpowiednio ustawiona w obiekcie positions). |
| supportedItemTypeClassification | RFI | Określa, które pozycje muszą być specjalnie oznaczone w danym kraju (w obiekcie „positions” należy odpowiednio ustawić właściwość „ItemTypeClassification”). |
| documentTypeBusinessTransactionTypeSupport | RFI | Informacje dotyczące tego, które BusinessTransactionTypes można łączyć z poszczególnymi typami dokumentów (documentTypes). |
Ten artykuł został przetłumaczony automatycznie.
Komentarze
Komentarze: 0
Zaloguj się, aby dodać komentarz.