Matkailijamyynti

Sisällysluettelo

Tax free- eli matkailijamyynti

Tällä ominaisuudella tarkoitetaan toimintoa, jossa ei-EU -matkaajalle (esim. venäläiset) annetaan tosite, jolla hän saa kauppaan palatessaan arvonlisaveron palautuksen tullin leimattua tositetta vastaan takaisin. Välistä peritään mahd. myyjän palkkio.

Asiasta löytyy dokumentaatiota:

Tax free-toiminnon käyttöönotto

  • Matkailijamyyntiä voi käyttää vain veroluokilla 1-12. Alvpalautukset eivät toimi muilla veroluokilla.
  • Kassalla tarvitaan matkustajamyynnin tositepohja. (kassalla 1 on esim. matkmyynti00001.rtm. Tämän voi löytää SKJ tiedostopalvelimelta). Tarkastetaan pohjan sisältö yhdessä kauppiaan kanssa. Kauppias on vastuussa matkailijamyyntitositteen tietosisällöstä.
  • Kassalle perustetaan näppäimet alv-palautus ja lähete. Lähete -näppäimen ominaisuudeksi annetaan ym. pohja ja valitaan matkailijamyynti -ruksi.
  • Kassan yleisasetuksiin ilmoitetaan asetukset.
    • Matkustajamyynnin raja eli pienin summa verollisena, josta alv -palautus annetaan (0/tyhjä = ei rajaa).
    • Alv-palautuksen tuotenumero, jota käytetään sekä alv -palautukseen että palkkioon.
    • Myyjän kulujen tyyppi, josta tuettuna on kaksi vaihtoehtoa. Kulut ovat joko alvpalautuksen sentit (2,35 -> 0,35) tai määritetty prosentti verosta (0 - 100%).
    • Viivakoodin loppumerkki, joka pitää olla myös kassan näppäimissä kytkettynä ALV -palautustoimintoon. Jos loppumerkki on määritetty, niin skannaamalla viivakoodi käynnistyy alv-palautus automaattisesti, muutoin alv -palautusnäppäintä on aina painettava erikseen.

Lisäksi käytettävään veroluokkaan tulee määritellä Alv pal. ulosmaksun ID, sekä ko. ulosmaksu tulee määritellä kassajärjestelmän yleisasetuksista (Tiedosto -> Asetukset -> Muut -välilehti. Määrittelyksi riittää ulosmaksun nimi esim. "Matkailijamyynti").

Mikäli matkailijamyyntitositteen lomakepohjaa (.rtm) tarvitsee muokata, tulee se tehdä kassan A4 -kuitin muokkauksen kautta, avaamalla .rtm ReportBuilderiin.

Ketjuympäristön käyttöönotto

Jos matkailijamyyntiä käsitellään ketjuympäristössä s.e. yhdessä myymälässä tulostetulle matkustajatositteelle voidaan tehdä palautus toisessa myymälässä, tulee ketjuympäristö laittaa kuntoon. Tämä ketjunohjaus toimii webpalveluperiaatteella.

Tärkeää kassanumeroinneista ja tositenumeroinneista Tällaisessa ympäristössä kassoilla ei saa olla samoja kassanumeroita. Eli kassa tulee myymälään 1 numeroida esim. 00101, 00101 00102 ja myymälään 2 00201, 00202, 00203 jne. Matkustajatositteen yksilöivänä avaimena toimii kassa- ja tositenumero (esim. 0000112345). Tositenumeroiden pitää näin ollen olla kokoajan juoksevia.

Keskuspalvelimen asennus

  • Ao. ohje apachella - korvaa se IIS:llä
  • (Tarvitaan apache 2.2 ja PHP 5.X. Nämä saat helpoiten xampp paketilla. (apachefriends.org))
  • Palvelimelle pitää olla pääsy ulkoa jostain portista esim. 80, 8000 tms. Tämä portti pitää määritellä apachen httpd.conf:n.
  • Palvelimelle olisi suotavaa hankkia kiinteä ulkoinen ip tai sitten järjestää vpn-tunnelointi myymälistä palvelimeen.
    Palvelimen apachen htdocs-kansioon asennetaan skjinterface.php, jonka saa testipalvelimelta (testi.skj.fi).
  • Palvelimen keskuskantaan määritellään jokin käyttäjätunnus ja salasana, jota käytetään webin kautta kirjautumiseen.
  • Määritellään skjinterface_configure.php myymälänumerot, joissa matkustajatositemyynti tai alv-palautus on mahdollinen (ohjelma saa ne myös ketjupalvelimen myymalat- taulusta, mutta kiinteä määrittely on hieman nopeampi).
  • Kun keskuspalvelimen ohjelmia päivitetään, tulee siksi aikaa pysäyttää apache (net stop apache2.2 / net start apache2.2), jotta ddf:t voidaan kopioida.
  • Huomatkaa, että tietokanta johon keskuspalvelimella tiedot päivitetään, ei välttämättä tarvitse olla SKJ:n virallinen ketjuohjauskanta. Tällä hetkellä tämä palvelu käyttää vain matkustajatosite -taulua. Mutta ei siitä ole haittaakaan. Toisaalta, kannan irroittaminen omakseen mahdollistaa sen siirtämisen johonkin ylläpidettyyn serveriympäristöön, jos kauppiaan keskuspalvelin ei sellainen ole.

Myymälän asennus

  • Myymälään tarvitaan skjinterface_server.exe.
    • Jos asetuksien muokkaus antaa Pvlomake1 tms. vastaavan virheen niin poista drm.dll ja tarvittaessa boottaa kone
  • Sen asetuksiin määrätään seuraavat asetukset (huomaa että ensin pitää valita kenttä ja sitten painaa muokkaa).
    • Laskunumeroväli (ei merkitystä, mutta antaa virheilmoituksen jos ei ole määrätty. Tätä käytetään vain nettitiedon varausjärjestelmässä).
    • Lähetä päivityksiä tästä kannasta.
    • Skj palvelimen tiedot. Tämä tarkoittaa http -osoitetta keskuspalvelimeen. Samalla rivillle ilmoitetaan myös kanta, salasana ja käyttäjätunnus. Esim. jos keskuspalvelin pyörii osoitteessa keskus.firma.fi ja portissa 8000. Käyttäjätunnus web, salasana access ja kanta ketju olisi rivi seuraava http://keskus.firma.fi:8000/skjinterface.php;ketju;access;web
    • Ruksaa matkustajatosite.
  • skjinterface_server pitää pyöriä myymälän jollain koneella, mutta vain yhdellä. Sen tehtävä on:
    • välittää uudet matkustajatositteet kassalta keskuspalvelimelle.
    • päivittää offline-tiedot keskuspalvelimelle. Offline tarkoittaa tässä sitä, että keskuspalvelimeen ei ole saatu alv -palautuksessa yhteyttä, eli ei tarkoita myymälän offline -tilaa.
    • Noutaa muiden myymälöiden muuttuneet matkustajatositetiedot.
  • skjinterface_server tekee oletuksen yhteydenottokierroksen 30 sekunnin päästä edellisen päättymisestä. Tämä voi olla tähän käyttöön turhan pieni väli. Väliä voidaan säätää käsin skjinterface.ini -tiedostossa, joka sijaitsee samassa kansiossa kuin ohjelma. Arvo ilmoitetaan sekunteina. Alla on esimerkki.
skjinterface.ini
[SKJINTERFACE]
PAIVITYSVALI=60


Ohjelmiston toiminta ketjuympäristössä

Kun matkustajatosite tulostetaan, siitä tulee tietue myymälän matkustajamyynti -tauluun. Kassa ei välitä niitä eteenpäin. skjinterface_server.exe tarkastaa sellaiset tietueet, joita ei ole välitetty ketjuun (valitettyketjuun=0) ja lisäksi joiden myymälä on oma myymälä ja lähettää ko. tapahtumat keskuspalvelimelle. Keskuspalvelin vastaanottaa tietueen ja merkkaa sen vastaanotetuksi ko. aikaleimalla.

Samalla skjinterface_server välittää uudet serverin offline -tilassa tehdyt palautukset myymälästä keskuskantaan. Eli tilanteet, joissa alv-palautuksen yhteydessä ei saada yhteyttä keskuspalvelimeen, mutta tieto löytyy omasta kannasta.

Näiden jälkeen skjinterface_server.exe noutaa muiden myymälöiden keskuspalvelimelle kirjaamat uudet matkailijamyynti tositteet sekä muiden myymälien tekemät alv-palautukset.

skjinterface_server.exe:n virheet

skjinterface server kirjoittaa skjinterface.log. Sinne tulee ainakin havaitut virheet ja tehdyt toimet.

  • Btrieve error 8020 mikäli käytössä on pervasive 10 tai uudempi, poista drm.dll tiedosto winskj-kansiosta.
  • Socket Error # 10061 Connection refused. luultavammin apache ei ole päällä tai annettu portti on väärä.
  • Socket Error # 10060 Connection timed out. Tulee mm. siinä tilanteessa, kun yrittää yhteyttä väärään ip -osoitteeseen.
  • Unknown Protocol todennäköisesti palvelimen osoite ei ala http:// tai https://.

Toiminta kassalla

Matkustajatosite tulostetaan kahdella eri kriteerillä. Jos asiakas on kanta-asiakas, jolle on merkattu matkustajatosite -ruksi päälle tarjoaa ohjelma automaattista mahdollisuutta tulostaa matkustajatosite. Toinen tapa on tulostaa se jälkikuitin omaisesti lähete-toiminolla.

Alv -palautus toimii joko skannaammalla tositteen viivakoodi tai näppäilemällä numerosarjan viivakoodin alapuolelta ja painamalla alv-palautus -näppäintä.

Mikäli matkailijamyyntitosite halutaan tulostaa aikaisemmin myydystä tositteesta, voidaan ennen Matkailijamyynti -nappulaa painamista syöttää tositenumero. Huomioitavaa kuitenkin, että tositteet ovat kassakohtaisia, joten matkailijamyyntitosite tulee tulostaa siltä kassalta, jolla ko. tosite on alunperin myyty.

Ohjelman toiminta raportoinnin kannalta

Kun tositteesta pyydetään matkustajatosite, tieto siitä merkataan tositteelle. Tällä perusteella saadaan tilastoitua paljonko on kokonaisuudessaan matkailijamyyntiä.

Alv -palautuksen yhteydessä ohjelma palauttaa yhdellä tuotteella jokaiselle verokannalle alkuperäisen verollisen myynnin ja myy sitten verottoman myynnin. Tämän jälkeen myydään mahdollinen myyjän palkkio verollisena annetulla tuotteella.

Esimerkki:

  1. Alkuperäinen tosite, jossa:
    1. 122€ 22% ALV myyntiä
    2. 224€ 12% ALV myyntiä
    3. Josta ALV:n osuus 46€
  2. Pyydetään matkustajatosite -> Tositteelle merkataan k.o tieto, matkailijamyyntiä 346€ (verollisena)
  3. Alv-palautus
    1. ALV-PALAUTUSTUOTE -122€
    2. ALV-PALAUTUSTUOTE +100€
    3. ALV-PALAUTUSTUOTE -224€
    4. ALV-PALAUTUSTUOTE +200€
    5. ALV-PALAUTUSTUOTE=(-46€)
    6. MYYJÄN PALKKIO 2,20€

Lopputulos:

  • Alkuperäisillä tuotteilla on oikea verollinen myynti.
  • ALV -PALAUTUSTUOTE -tuotteella on alkuperäisten tuotteiden veron osuuden verran negatiivista myyntiä.

Jossain järjestelmissä ohjelma palauttaa koko matkustajatositteen ja myy sen verollisena, mutta tässä ratkaisussa se ei ketjunohjauksen kannalta ole järkevää.

Mikäli kauppiaalla on kirjanpitoliittymä käytössä, alv -palautus tiliöityy yhdelle tilille ja verokantainen erottelu tulee verokoodin kautta.