Netvisor-kirjanpitointegraatio#
ELT:n kirjanpito tehdään Netvisor:ssa, mutta tehtävien laskutus,
palkanlaskenta ja varastonhallinta tehdään Odoo:ssa. Tämän
sillan rakentaa netvisor_integration -moduuli.
Mitä missäkin suunnassa#
| Suunta | Mitä | Aikataulu | Tila |
|---|---|---|---|
| NV → Odoo | Ostolaskut | Päivittäin 06:00 | ✅ Aktiivinen cron |
| NV → Odoo | Maksu-status | Päivittäin 07:00 | ✅ Aktiivinen cron |
| Odoo → NV | Myyntilaskut | Automaattinen + manuaalinen | ✅ |
| Bi-suuntainen | Asiakkaat sync | Manuaalinen wizard | ✅ |
| Bi-suuntainen | Tuotteet sync | Manuaalinen wizard | ✅ |
| Odoo → NV | Palkanmaksu | Kuukausittain 1. päivä 08:00 | ⚠ Cron pois päältä, manuaalinen aktivointi |
| Odoo → NV | Kulut ostolaskuina | – | ⚠ Cron pois päältä |
Asetukset (vain admin)#
Settings → Netvisor Integration.
Pakolliset credentialsit:
- Partner ID — Netvisorilta saatu kumppanitunnus
- Partner key — Netvisorilta saatu (salainen)
- Customer ID — Käyttäjätunnus joka näkyy Netvisor → Asetukset → API-tunnisteet
- Customer key — Yllä olevan käyttäjän API-avain
- Organisation ID (Y-tunnus) — muodossa
1234567-8 - API base URL — oletus
https://integration.netvisor.fi/— älä muuta paitsi testausta varten
**`Test connection` -nappi** Settings-näkymässä hakee päivän ostolaskut Netvisorista. Antaa OK tai virheviestin. Aja aina kun credentialsit on syötetty / muutettu.
Ostolaskut Netvisorista Odoo:hon#
Cron 06:00 päivittäin hakee eilisen ostolaskut Netvisorista ja luo ne vendor billeinä Odoo:hon. Duplikaatit havaitaan Netvisor-ID:n perusteella.
Käsittely:
- Accounting → Vendor Bills -listalle ilmestyy uusia rivejä muodossa “From Netvisor: 2026-05-23”.
- Kunkin rivin state on
Draft— ei vielä julkaistu. - Toimisto tarkistaa rivit (PO matchaus, tilien jako, kustannusten kohdistus) ja painaa Post.
- Maksu hoidetaan Netvisor-puolella, palaa tieto seuraavalle maksu-sync:lle.
Manuaalinen ajo#
Settings → Netvisor Integration → “Run import now” -nappi. Hakee tämän hetken päivän laskut (joita ei vielä ole). Käytä jos:
- Cron jäi väliin (palvelin alhaalla 06:00 aikaan).
- Haluat testata että integraatio elää.
- Olet juuri syöttänyt credentialsit ja haluat varmistaa.
Maksu-status Netvisorista#
Cron 07:00 päivittäin tarkistaa Netvisorista mitä myyntilaskuja
on maksettu. Vastaavat Odoo-laskut merkitään
payment_state = paid.
Tarkistus on 90 päivän jaksolta — vanhempia maksuja ei seurata enää.
Myyntilaskut Odoo:sta Netvisoriin#
Kun lasku confirmoidaan Odoo:ssa (account.move state = “posted”), se voidaan lähettää Netvisoriin automaattisesti tai manuaalisesti.
Automaattinen lähetys#
Settings → Netvisor → “Auto-send invoices on confirm” -lippu päälle → confirmaation override kutsuu Netvisor-lähetystä.
**Pidä tämä pois päältä kunnes olet testannut manuaalisesti!** Vasta kun tiedät että XML rakentuu oikein ja Netvisor hyväksyy laskut omiin teknisiin tarkistuksiin (Y-tunnukset, VAT, jne.), voit ottaa auto-send:in käyttöön. Muuten saat haitallisia rivejä asiakaslokeihin.
Manuaalinen testi#
- Avaa Accounting → Customer Invoices, valitse yksi confirmoitu lasku.
- Yläosan toimet-valikko → “Send to Netvisor”.
- Onnistuessa:
account_move.netvisor_invoice_idsaa Netvisorin ID:n. Voi tarkistaa Netvisorista että lasku näkyy. - Virheessä: katso chatter — error logitettu sinne.
Resend#
Jos lasku on netvisor_payment_synced=True, järjestelmä estää
uudelleenlähetyksen. Käytä action_resend_to_netvisor() joka
nollaa lipun.
Asiakkaat ja tuotteet sync#
Bi-suuntainen wizard kumpaakin varten.
- Asiakkaat: Odoo Contacts → Netvisor Customer. Matchaus Y-tunnuksella (muille kuin yksityishenkilöille). Yksityishenkilöt matchataan nimellä + osoitteella.
- Tuotteet: Odoo Product → Netvisor Product. Matchaus Odoo-tuotekoodilla (default_code).
Aja kummatkin kerran kuukaudessa tai kun lisätään merkittävästi uutta dataa.
Palkanmaksu (cron pois oletuksena)#
Palkkalaskelmat halutaan tarkistaa ennen Netvisor-lähetystä — siksi cron on oletuksena pois. Vaihtoehdot:
- Manuaalinen lähetys per palkkalaskelma: HR → Payroll → yksittäinen Payslip → “Send to Netvisor”.
- Automaattinen
payslip-done-tilan triggerillä: Settings → Netvisor → “Auto-send payslip on confirm” -lippu. Aktivoituupayslip.action_payslip_done:ssa. - Aktivoi cron: Settings → Technical → Crons → “Send payslips to Netvisor” → Active = True.
Suositus: manuaalisesti aluksi, kunnes vahvistat että XML rakentuu oikein.