Julkinen verkkokauppa sekä PayPal maksu ominaisuus

Palvelin julkisessa verkossa

Päätettiin lisätä PayPal maksu ominaisuus verkkokauppamme, jotta tämä onnistuisi meidän täytyy siirtää palvelin julkiseen verkkoon. Tilasimme virtuaalipalvelimen DigitalOcean:ilta sillä kyseisen yrityksen palveluita ollaan aikaisemminkin käytetty ja ollaan tyytyväisiä siihen.

Tilattu palvelin sijaitsee Saksassa ja siinä on seuraavat ominaisuudet:

  • 25 Gt SSD levy
  • 1 Tt siirto nopeus
  • Ubuntu server 16.04 LTS käyttöjärjestelmä

Saatiin palvelimen käyttöön hetken odotuksen jälkeen. Otimme palvelimeen PuTTY:n avulla yhteyden (koska DigitalOcean:in konsolillsa ei pysty liittämään tekstiä). Asensimme Odoo 11 community version skriptin avulla:

Odoo asennus kohta
https://opensourceerp2018.wordpress.com/2018/02/16/palvelimen-konfigurointi/

Varmuuskopioitiin meidän koulussa sijaitseva palvelin ja lisättiin se virtuaalipalvelimeen:

Ohje englanniksi
https://opensourceerp2018.wordpress.com/2018/03/14/how-to-backup-your-database-through-the-web-interface/

Domain nimi

Domain nimi ei ole pakollinen, voit jo nyt kirjoittaa selaimen osoite kenttään palvelimen IP numero, mutta se ei anna kovin ammattimaisen kuvan verkkokaupasta.

Harjoitus mielessä me valittiin Tokelaun .tk internet-maakoodia verkkotunnukseen varten. Se on ilmaista ja se löytyi osoitteesta:

http://www.dot.tk/en/index.html?lang=en

Domain nimen tarjosi meille freenom. Domain nimen “ostettua” meidän täytyy mennä takasin vielä DigitalOceaniin lisäämään Domain nimi. Domain nimen lisääminen tapahtuu “Networking” kohdassa mikä sijaitsee ylä-palkissa ei vasemmalla sijaitsevasta palkista.

digitalocean-networking

Palvelimeen pätee edelleen meidän samat käyttäjätunnukset joten voidaan suoraan siirtyä PayPal maksu ominaisuuden lisäämiseen.

PayPal

Ensin lisätään Odoohon PayPal moduulin, moduuli löytyy Website > Configuration > eCommerce > Payment Acquirers
website-settings
PayPal kohdassa näkyy joko “Install” tai “Configure”, asennetaan moduuli jos se ei ole valmiiksi tehty.
Sitten luodaan PayPal tunnus, tunnuksen luominen on aika simppeliä, joten emme kerrota siitä vaan siirrytään suoraan miten PayPal ja Odoon välille saadaan yhteys.

Kirjaudutaan PayPal:iin ja heti kirjautumis ikkunan jälkeen “Summary” sivulla löytyy Seller preferences vasemmalta alhaalta (Selling tools > Seller preferences).
Avautuu “My Profile” asetus näkymä..
paypal-settings

Ensin mennään “Website preferences” asetuksiin. Laitetaan “Auto Return” ominaisuus päälle, “Return URL” kohtaan tulee palvelimen IP osoite, laitetaan “Payment Data Transfer” päälle ja otetaan Identity Token talteen (jos ei se heti ilmesty niin tallenna ja tarkista uudestaan) lopuksi tallennetaan muutokset “Save” painikkeella.

website preferences

Mennään takasin asetuksiin ja tällä kertaa muokataan “Instant Payment Notification (IPN)” asetukset. Klikataan “Edit Settings” ja jälleen kerran laitetaan palvelimen IP osoite annettuun kenttään ja laitetaan “Receive IPN messages (Enabled)” päälle, tallennetaan.
IPN-settings

“My Profile” näkymässä löytyy “PayPal button language encoding” klikataan siihen ja sen jälkeen “More Options”.
PayPal button language encoding

Vaihdetaan “Encoding” kohtaan UTF-8 ja “Yes” seuraavaan kohtaan sekä UTF-8 jos ei ole valmiiksi määritelty.

Mennään PayPal “Summary” näkymään, ja sieltä klikataan hammasratas ikonia
ratata

Sieltä saadaan näkyviin Merchant ID otetaan se talteen. Mennään takasin Odoohon jossa oltiin viimeksi lisäämässä PayPal moduulia, “Edit” painikkeella päästään muokkaamaan. Lisätään PayPal tunnuksen luonnissa käytetty sähköpostiosoite, PayPal Merchant ID ja klikataan “Use PIN” laatikko. PayPal PDT Token kohdan voi unohtaa, tallennetaan.

Seuraavaksi mennään Odoon asetuksin ja aktivoidaan kehittäjä näkymä, Settings > Share the Love > Active the developer mode. Samoin “Settings” sivulla päästään lisäämään jo tässä vaiheessa talteen otettu “Identity Token”, mennään Settings >Technical > Parameters > System Parameters.
parametrit

“Create” painikkeella luodaan uusi parametri, kohtaan “Key” tulee

payment_paypal.pdt_token

ja “Value” kohtaan tulee “Identity Token”, tallennetaan. Mennään takasin PayPal moduuli asetuksiin ja laitetaan moduuli julkiseksi.
go live

Valmista!

Omat näkemykset: Olen yllättynyt kuinka helppoa oli lisätä digitaalinen maksuväline Odoohon. Ei tarvinnut yhtään koodata tai asettaa tietoturva määrittelyitä. Hyvä Odoo!

Advertisements

Suuren määrän datan tuonti

Odoossa voi hyödyntää CSV tai Excel tiedostoja lisätessään esimerkiksi suuria määriä asiakas, myyjä eli tukku profiileja tai tuotteita. Helpoin tapa taulukon luomiseen on käyttää vain Odoon omia Excel templatteja customers.xls ja products.xls, mutta jos taulukon haluaa luoda itse, niin asiakkaat taulukon tulee sisältää seuraavat sarakkeet:

ID, Name, Job Position, Is a CompanyRelated Company/ID, Email, Phone, MobileStreetStreet2, ZIP, City, State, CountryWebsiteTINComment, Internal Reference

ID kenttään kirjataan MYID_000 muodossa ja  Is a company sarakke hyväksyy joko 1 tai 0 arvoja 1 = kyllä ja 0 = ei, jos kentässä on 0 niin täytyy mainita liittyvän yrityksen ID viereiseen riviin.

ja tuotteet taulukon tulee sisältää seuraavat sarakkeet:

ID, Name, Product Type, Sale Price, Cost, Barcode, Vendors/Vendor, Vendors/Price, Description, Internal Reference

Jos otetaan asiakkaat/tukku taulukko esimerkiksi niin, Odoon template löytyy Settings sivulta Implementation kohdasta.

settingsimplementatioin

Klikkaamalla Invoicing (vanhemmissa versiossa Sales) avautuu ikkuna joka auttaa uusia käyttäjiä Odoon käytössä.

Meidän ei tarvitse suorittaa tätä ohjeistusta, vaan siirrytään suoraan

Your Customers kohtaan.

exceltemplate

Tässä täytyy mainita, että tämä sivu ei ole ainoa paikka josta saa kyseisen linkin esiin. Muista implementaatio ohjeista löytyy myös kyseinen template ja products.xls löytyy samalla tavalla ohjeiden kautta.

Itse käytin Libre Office:n taulukkolaskentaohjelmaa ja avattaessa .xls tiedoston ensimmäisenä huomiomme kohdistuu valmiiksi kirjoitettuihin kenttiin. Syynä se että Odoo on luonut kyseisen tiedoston myös testaamista ja harjoittelua varten, eli voimme syöttää tiedoston järjestelmään tällaisenaan ja kyseisten yritysten täytyy löytyä järjestelmästä.

customers excel

Tiedostossa on hyvin selitetty valmiiksi, miten sarakkeet voi muokata ja miten valmis taulukko lähetetään (Import) järjestelmään. 

excel faq

Tiedostoa muokatessa täytyy ottaa huomioon maiden koko nimet esim. lisätessään Venäjää täytyy käyttää nimeä “Russian Federation”, pelkkä “Russia” tuottaa ongelmia, kun lähettää tiedoston. Mielestäni toinen mielenkiintoinen asia on Odoon olemassa oleva lista maista, lista sisältää maat kuten Taiwan, Niue, Cookinsaaret, Palestiina, Etelä Sudan, Vatikaanivaltio, Pohjois-Korea, Ahvenanmaa mutta ei Kosovoa.

Tiedosto täytyy tallentaa CSV tai Excel tiedostona, itse tallensin CSV muodossa ja hyväksyin kaikki oletus asetukset.

onnistunut uploadaus

Onnistuneesti lähetettynä järjestelmä näyttää ladatut kentät, “Everything seems valid.” viestin ja mahdollistaa hieman jopa muokkaamaan, Lähetin järjestelmään painamalla Import painiketta

Oma näkemys: Mielestäni tämä on mainio ominaisuus, säästää paljon aikaa ja itse mieluummin täytän asiakas sekä tavara tietoja käyttäen taulukkolaskentaohjelmaa.

Kustannukset – Expenses moduuli

Kustannukset moduulin avulla voimme seurata yrityksen sisäisiä kustannuksia, jotka vaativat erityistä huomiota, esim. työntekijöiden matka, hotelli tai/sekä koulutus kustannukset.

Moduulissa työntekijä luo oman kustannus lomakkeen, johon hän sitten lisää tiedot, liittää kopiot kuiteista jne. Tämän prosessin jälkeen hän lähettää luodun lomakkeen hyväksyttäväksi managerille. Pyyntö korvaukseen joko hylätään tai hyväksytään. Jos se hyväksytään niin manageri hoitaa hyvityksen työntekijälleen. Tämä on kustannukset moduulin perus käyttöperiaate.

Kustannus moduulin käyttöönotto ja lomakkeen tekeminen

Moduuli otetaan käyttöön “Sovellukset” näkymästä klikkaamalla “Asenna” painiketta.

expenses

Moduulin nykyinen nimi on “Expense Tracker”.

Yläpalkkiin ilmestyy kyseisen moduulin nimi, avaamalla sen pääsemme kustannukset näkymään.

expnsespalkki

kustannukset

Klikkaamalla “Create” painiketta päästään täyttämään kustannus lomaketta.

Lomakkeen luonti on lähes identtinen tuotteen luontiin. Jos manageri ei ole määrittänyt ohjeita tai tehnyt valmiiksi kustannus vaihtoehtoja, niin tämä tarkoittaa käytännössä sitä, että kirjattaessa autolla ajetut kilometrit tähän lomakkeeseen, ne voidaan laittaa “Quantity” kenttään suoraan, vaikka se kuulostaakin hieman oudolta.

(Managerin asetuksiin palataan myöhemmin uudestaan.)

expenselomake

My Expenses to Submit / New

Täällä voimme täyttää perustiedot kustannuksista ja mahdollisia lisätietoja voidaan syöttää “Notes…” kenttään.

lounas

Klikataan “Save” painiketta

tosubmit

  1. Tähän ilmestyy lokipalkki, josta voimme seurata lomaketta.
  2. Tästä voimme seurata missä vaiheessa me olemme lomakkeen kanssa
  3. Klikkaamalla “Submit to manager” painiketta, voimme lähettää lomakkeen managerille.

Tämän jälkeen manageri selvittää onko työntekijän lähettämä lasku korvauskelpoinen.

Oma näkemys: Mielestäni hyvin yksinkertainen moduuli, joka etenee loogisessa järjestyksessä. Lomakkeiden täyttämisessä käytetään samanlaista alustaa kuin muut tuotteet, niin sitä oli hieman outo käyttää. Uskon että oikeassa tilanteessa jokaisen kentän täyttäminen ei ole kuitenkaan välttämätöntä.

Odoo moduulit

CRM – Asiakkuuden hallinta

CRM moduulissa kaikki asiakkaisiin liittyvät tiedot yhdistyvät yhteen paikkaan, jossa niitä voidaan hallita helposti. Odoon CRM moduuli muistuttaa hyvin paljon Trellon (projektinhallintajärjestelmä) “pipeline” nimistä käyttöliittymää.

Pipelinessa on valmiita sarakkeita, joihin käyttäjä voi lisätä esim. tarjouksia, pyyntöjä tai muita sovittuja tapaamisia joita tehdään asiakkaiden kanssa. Pipelinessa tapahtuma siirtyy eteenpäin, kun tietty tavoite saavutettu esim. Asiakkaan kanssa on päästy tapaamiseen ja sovintoon tai se epäonnistuu, jonka jälkeen se peruuntuu.

Pipeline on reaaliaikainen, ja se sopii mainiosti yhteen live-chat moduulin kanssa. Kalenteri- ja yhteystieto-moduulit ovatkin erittäin olennaisia osia CRM kanssa. Nämä kaikki moduulit tulevatkin CRM:n mukana.

Lopuksi CRM tarjoaa myös taulukkonäkymiä, jotka se luo automaattisesti perustuen nykyisiin tilaisuuksiin.

 

crm näkymä

Live-chat moduulissa on myös mahdollista lähettää tiedostoja.

live-chat.JPG

 

 

 

 

Odoo asennus

09.02.2018

Käytössämme on Haaga-Helia servulan hp tietokone, jonka ominaisuudet ovat:

Machine name: DTPERUSWIN
Machine Id: {0BD4580D-2B81-4D9D-BB82-A16D2C4430B9}
Operating System: Windows 10 Pro 64-bit (10.0, Build 15063) (15063.rs2_release.170317-1834)
Language: English (Regional Setting: English)
System Manufacturer: HP
System Model: HP ProDesk 600 G3 MT
BIOS: Default System BIOS
Processor: Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz (4 CPUs), ~3.4GHz
Memory: 32768MB RAM
Available OS Memory: 32648MB RAM
Page File: 3545MB used, 29101MB available
Windows Dir: C:\Windows
DirectX Version: DirectX 12
DX Setup Parameters: Not found
User DPI Setting: Using System DPI
System DPI Setting: 96 DPI (100 percent)
DWM DPI Scaling: Disabled
Miracast: Available, with HDCP
Microsoft Graphics Hybrid: Not Supported


Asensimme Odoon Oracle VM VirtualBox:iin jossa on:

Muisti: 1024 MB
Tallennustila: 8 MB
———————————————————————————————————————-

Koska tällä kurssilla keskitytään avoimen lähdekoodin toiminnanohjausjärjestelmiin, niin emme käy läpi Xubuntun asennusta.

Ensin päivitimme Xubuntun:

sudo apt update && sudo apt upgrade

Seuraavaksi konfiguroimme UFW palomuurin:

sudo ufw allow ssh
sudo ufw allow 8069/tcp
sudo ufw enable

Sitten asensimme PostgreSQL tietokannan ja palvelimen kirjastot:

sudo apt install git python-pip postgresql postgresql-server-dev-9.5 python-all-dev python-dev python-setuptools libxml2-dev libxslt1-dev libevent-dev libsasl2-dev libldap2-dev pkg-config libtiff5-dev libjpeg8-dev libjpeg-dev zlib1g-dev libfreetype6-dev liblcms2-dev liblcms2-utils libwebp-dev tcl8.6-dev tk8.6-dev python-tk libyaml-dev fontconfig

PostgreSQL käyttäjän luonti

Vaihdettiin käyttäjäksi postgres:

sudo su – postgres
createuser odoo -U postgres -dRSP

Annettiin vahva salasana. Painettiin CTRL+D ja poistuttiin postgre:stä.

Odoo käyttäjän luonti

sudo adduser –system –home=/opt/odoo –group odoo

Sitten luotiin Odoo loki tiedosto komennolla:

sudo mkdir /var/log/odoo

Odoon asennus

sudo git clone https://www.github.com/odoo/odoo –depth 1 –branch 10.0 –single-branch /opt/odoo

sudo pip install -r /opt/odoo/doc/requirements.txt

sudo pip install -r /opt/odoo/requirements.txt

sudo curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash –

sudo apt install -y nodejs

“npm” ei ole valmiiksi asennettuna Xubuntu 16.04.3:ssa, joten se tuli asentaa ennen kuin jatkettin eteenpäin.

sudo apt-get install npm

sudo npm install -g less less-plugin-clean-css

Vakaa Wkhtmltopdf

cd /tmp

sudo wget https://downloads.wkhtmltopdf.org/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb

sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb

sudo cp /usr/local/bin/wkhtmltopdf /usr/bin

sudo cp /usr/local/bin/wkhtmltoimage /usr/bin

Odoo palvelimen säätö

sudo cp /opt/odoo/debian/odoo.conf /etc/odoo-server.conf

Sitten muokattiin odoo-server.conf tiedoston sisältö seuraavanlaiseksi:

sudoedit /etc/odoo-server.conf

[options]
admin_passwd = admin
db_host = False
db_port = False
db_user = odoo
db_password = FALSE
addons_path = /opt/odoo/addons
;Uncomment the following line to enable a custom log
;logfile = /var/log/odoo/odoo-server.log
xmlrpc_port = 8069

Odoo palvelun luonti

Luotiin uusi tiedosto komennolla:

sudoedit /lib/systemd/system/odoo-server.service

Tiedoston sisällöksi tuli:

[Unit]
Description=Odoo Open Source ERP and CRM
Requires=postgresql.service
After=network.target postgresql.service

[Service]
Type=simple
PermissionsStartOnly=true
SyslogIdentifier=odoo-server
User=odoo
Group=odoo
ExecStart=/opt/odoo/odoo-bin --config=/etc/odoo-server.conf --addons-path=/opt/odoo/addons/
WorkingDirectory=/opt/odoo/
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

Tiedostojen omistajuus ja käyttöoikeudet

sudo chmod 755 /lib/systemd/system/odoo-server.service

sudo chown root: /lib/systemd/system/odoo-server.service

sudo chown -R odoo: /opt/odoo/

sudo chown odoo:root /var/log/odoo

sudo chown odoo: /etc/odoo-server.conf

sudo chmod 640 /etc/odoo-server.conf

Palvelimen testaus

sudo systemctl start odoo-server

sudo systemctl status odoo-server

sudo journalctl -u postgresql

sudo systemctl stop odoo-server

sudo systemctl status odoo-server

status

Salli Odoo palvelu

sudo systemctl enable odoo-server

sudo journalctl -u odoo-server

Poistuimme painamalla CTRL+C

Odoon testaus

Kirjoittimme URL palkkiin palvelimen IP-osoitteen ja sen perään :8069 porttinumero. Pääsimme Odoon tietokannan luontivaiheeseen:

alkunäkymä

Tämän jälkeen Odoon päänäkymä näytti keskeneräiseltä. Virhe ilmoituksesta selvisi, että tämä johtui jonkun tiedoston puuttumisesta. Pikaisen googletuksen jälkeen huomasimme, että tiedosto oli kyllä olemassa, mutta nimi oli vain erillainen Odoo versio 10 ja 11 välillä.

ln -s /usr/bin/nodejs /usr/bin/node

Vaihtamalla nimeä Odoo toimi normaalisti.

Komento historia:

history

oppurtunity

Lähteet:

Odoo asennusohje: https://linode.com/docs/websites/cms/install-odoo-10-on-ubuntu-16-04/

Node virhe: https://github.com/nodejs/node-v0.x-archive/issues/3911