Visma Business klassisk-integrasjon¶
Visma Business klassisk (også kalt "Visma Business desktop", on-premise VB) er Visma sin tradisjonelle ERP-løsning. ePortal integrerer mot klassisk via PortalConnector WinService — Konti sin Windows-tjeneste som kjører hos kunden, leser/skriver Visma Business via VBS (Visma Business Service, SOAP) og direkte SQL mot VB-databasen, og kommuniserer med ePortal-API via ePortal sitt åpne integrasjons-endepunkt.
Type: Windows-tjeneste hos kunden (
PortalConnector Service), kommuniserer med VB via VBS SOAP og direkte SQL Server Konfig-lokasjon:%CommonApplicationData%\PortalConnector Service\Settings.xml(lokalt på kundens server). Konfigureres med GUI-enPortalConnector Config.exe. Ikke i Konti Connect i ePortal — der finnes ingenVismaBusinessClassic-adapter. Repo (intern):c:\Users\JarleLjosnes\source\repos\ePortal - PortalConnector WinService(kun tilgjengelig for Konti-utviklere) Legacy: Visma Business klassisk fases gradvis ut til fordel for Visma Business NXT. Ny integrasjon bør planlegge migrering på sikt.
Hva integrasjonen synker¶
| Retning | Entitet | Frekvens |
|---|---|---|
| ePortal → Visma | Ordrelinjer (timer, materialer) | Per godkjenning / hver time |
| ePortal → Visma | Fakturaer | Per godkjenning |
| Visma → ePortal | Kunder | Daglig |
| Visma → ePortal | Leverandører | Daglig |
| Visma → ePortal | Kontoplan | Ved konfigurasjons-endring |
Tilgang¶
| Hvem | Hva trengs |
|---|---|
| Hos kunden | Visma Business klassisk-installasjon med PortalConnector-tilgang |
| Hos Konti | Administrator-tilgang til Konti Connect + PortalConnector-konfigurasjon |
| Nettverk | IP-whitelist mellom Konti-infrastruktur og kundens Visma-server |
Forutsetninger¶
- Visma Business klassisk-installasjon (typisk versjon 16.x eller 17.x)
- PortalConnector WinService installert hos kunden (Konti leverer)
- VBS (Visma Business Service) installert og konfigurert med GenericService-endepunkt
- Egen SQL Server-bruker som har tilgang til Visma sin database (typisk
F<klientnr>) - VPN eller IP-whitelist mellom Konti og kundens nettverk for fjern-vedlikehold
- Visma-bruker for integrasjonen med tilgang til relevante moduler
Konfigurasjon — feltforklaring¶
Alle konfig-felter lagres i Settings.xml på kundens server (%CommonApplicationData%\PortalConnector Service\Settings.xml). Hemmeligheter (passord, brukere) lagres som AES-kryptert tekst. Verifisering for Konti-utviklere: feltene er definert i PortalConnector Service/bin/Debug/Settings.xml og admin-GUI-feltene i PortalConnector Config/frmSettings.Designer.cs (intern repo: ePortal - PortalConnector WinService).
ePortal-API-tilkobling¶
| Felt | Type | Påkrevd | Hva det betyr |
|---|---|---|---|
APIKEY |
GUID | Ja | Konti genererer denne. Identifiserer kundens PortalConnector mot ePortal-API |
PortalUser |
String (kryptert) | Ja | ePortal-bruker som PortalConnector logger inn som ved push av master-data |
PortalPwd |
String (kryptert) | Ja | Passord til PortalUser |
SQL Server (direkte tilgang til Visma-DB)¶
| Felt | Type | Påkrevd | Hva det betyr |
|---|---|---|---|
SQLServer |
String | Ja | SQL Server host + port + instans, f.eks. 900visb-sql02\VISMA,1449 |
SQL_VB_DB |
String | Ja | Visma Business-databasens navn, typisk F<klientnr> (eks. F0441) |
SQL_VB_User |
String (kryptert) | Ja | SQL Server-bruker med tilgang til VB-databasen |
SQL_VB_Pwd |
String (kryptert) | Ja | Passord |
SQL_VL_DB |
String | Nei | Visma Lønn-database (<Klient>VLData). Påkrevd hvis Sync_VL=true |
SQL_VL_User |
String (kryptert) | Nei | Visma Lønn SQL-bruker |
SQL_VL_Pwd |
String (kryptert) | Nei | Visma Lønn-passord |
VBS (Visma Business Service SOAP)¶
| Felt | Type | Påkrevd | Hva det betyr |
|---|---|---|---|
VBS_Address |
URL | Ja | VBS GenericService-endepunkt, f.eks. http://900visb-app02:2001/GenericService |
VBS_DNSCert |
String | Nei | Sertifikat-DNS-navn for VBS-TLS (hvis TLS aktivert) |
VB_ClientNo |
Integer | Ja | Visma Business klient-nummer (eks. 441) |
VB_User |
String (kryptert) | Ja | VB-applikasjons-bruker for VBS-kall |
VB_Pwd |
String (kryptert) | Ja | VB-applikasjons-passord |
Synkroniserings-flagg¶
| Felt | Type | Default | Hva det betyr |
|---|---|---|---|
Sync_VB |
Boolean | True |
Aktiverer push av master-data og ordre fra ePortal til Visma Business |
Sync_VL |
Boolean | False |
Aktiverer Visma Lønn-synkronisering (lønnsregistreringer) |
Sync_EPortal |
Boolean | True |
Aktiverer pull av kunder/leverandører/kontoplan fra VB til ePortal |
Sync_Prod |
Boolean | True |
Aktiverer produkt-synkronisering |
Sync_Wagereg |
Boolean | False |
Aktiverer eksport av lønnsregistreringer (wv_Time_WageReg) til Visma Lønn |
OrdSyncCustOnly |
Boolean | True |
Ved True: ordre eksporteres kun for kunder som er aktivt synket (filtrerer bort ad-hoc-kunder) |
Wagereg2Erp |
Integer | 0 |
Hvilken modul lønnsregistreringer skal til (0=ikke send, andre verdier dirigerer mellom flere ERP-mål) |
Bilag (voucher) og forretningslogikk¶
| Felt | Type | Default | Hva det betyr |
|---|---|---|---|
StdVoucherSerie |
Integer | 1 |
Standard bilagsserie i VB for ePortal-genererte bilag |
StdVoucherType |
Integer | 600 |
Standard bilagstype (typisk avskrivnings-/diverse-bilag) |
Automatic_Batch_Updates |
Boolean | True |
Ved True: PortalConnector kjører "bokfør"-mutasjonen automatisk etter at bilag er opprettet |
Unblock_Projects |
Boolean | True |
Ved True: avskrivnings-prosjekter låses opp midlertidig under bilags-eksport og låses igjen etterpå (tilsvarende EnableProjectBlocking i NXT-bilagsadapteren) |
BIG-flagg (klient-spesifikke)¶
| Felt | Type | Hva det betyr |
|---|---|---|
VB_BIG_2, VB_BIG_3, VB_BIG_6, VB_BIG_8 |
Boolean | Per-klient flagg for spesielle BIG-installasjoner. Disse styrer alternative feltmappinger og eksport-rutiner — kontakt Konti for veiledning per kunde |
Tidsstyring¶
| Felt | Type | Default | Hva det betyr |
|---|---|---|---|
SyncInterval |
String ("<n> - <unit>") |
5 - min |
Hovedkjøreintervall for master-data og ordre |
SyncInterval2 |
String | 10 - min |
Sekundær-intervall for tunge jobber |
LogLevel |
Integer (0–4) | 0 |
Loggnivå. 0=normal, 4=verbose |
TestMode |
Boolean | (tom) | Når True: skriver ikke til Visma — logger kun hva som ville blitt sendt |
E-post-varsling¶
| Felt | Type | Hva det betyr |
|---|---|---|
SMTP |
String | SMTP-server for varsler |
AdminEmail |
String | Mottaker for kritiske feilvarsler |
Trimble-integrasjon (kjøres inne i PortalConnector)¶
PortalConnector kan også synke kostnader og materialer mot Trimble NIM/NIS/Cityworks i tillegg til Visma — disse feltene er felles for legacy-installasjoner:
| Felt | Hva det betyr |
|---|---|
TrimbleAPI |
Aktiver Trimble-synk (True/False) |
TrimbleServiceURL, TrimbleServiceUser, TrimbleServicePassword, TrimbleServiceCompany |
NIM-credentials |
TrimbleNisPlanServiceURL, TrimbleNisPlanServiceUser, TrimbleNisPlanServicePassword, TrimbleNisPlanServiceCompany |
NIS Plan-credentials |
TrimbleRestAPIUsername, TrimbleRestAPIPassword, TrimbleRestAPIURL |
Cityworks REST-credentials |
TrimbleStockDebitAccount, TrimbleStockCreditAccount, TrimbleStockUsageAccount, TrimbleStockBalanceAccount |
GL-kontoer for lagerbevegelse |
Nye installasjoner bør bruke ePortal sine Trimble-adaptere i stedet for PortalConnector-Trimble — de er mer fleksible og kjører i ePortal-API-skyen.
Slik gjør du — oppsett¶
1. Konti installerer PortalConnector¶
PortalConnector-tjenesten installeres hos kunden (server-installasjon):
- Windows-tjeneste (
PortalConnector Service) - Kjører som dedikert tjeneste-konto med tilgang til VB SQL Server-databasen
- Krever Microsoft .NET Framework 4.8 (klassisk Windows-runtime)
Dette krever vanligvis fysisk eller fjern-tilgang til kundens infrastruktur — kontakt Konti for hjelp.
2. Konfigurer via PortalConnector Config.exe¶
På kundens server:
- Start
PortalConnector Config.exesom administrator - Fyll ut feltene som beskrevet i tabellene over (verdier krypteres ved lagring)
- Klikk Lagre — XML-filen oppdateres og tjenesten må restartes for at endringene skal tre i kraft
3. Sett ePortal-API-nøkkel¶
I ePortal-Sysadmin → kundens domene: noter API-nøkkelen som identifiserer PortalConnector. Lim den inn i APIKEY-feltet i PortalConnector Config.
4. Kultur-håndtering — VIKTIG¶
Visma Business parser tall basert på trådens kultur. Tjenesten er konfigurert til InvariantCulture internt for å hindre desimal-parser-feil (per release v2.91.0 bug-fix).
Symptom hvis kultur er feil: beløp blåst opp med 10000 (f.eks. 5064,00 → 50 640 000,00) ved engelsk kultur. Fikset ved at
Program.cssetterCultureInfo.DefaultThreadCurrentCulture = CultureInfo.InvariantCultureved oppstart.
5. Start tjenesten og kjør test¶
- Start
PortalConnector Servicefra services.msc - Verifiser at den starter uten feil i Windows Event Log
- Kjør første synkronisering manuelt fra Config-UIet — typisk 1-2 testkunder + 1 testfaktura — og verifiser i Visma
Konfigurasjon — viktige innstillinger¶
Ordre-linjer¶
- Antall, kostpris, pris og rabatt-% parses kulturuavhengig (
InvariantCulture) - Sett
decimal-kolonner i Visma med 4 desimaler hvor mulig (matcher ePortal sin presisjon for priser)
Schedule¶
Konfigureres via SyncInterval og SyncInterval2. Avhenger av nettverks-stabilitet og IP-whitelist:
- Master-data: typisk 5–10 min
- Fakturaer: per godkjenning eller hver time
Feilsøking via PortalConnector-logg¶
PortalConnector skriver en detaljert logg lokalt på kundens server (%CommonApplicationData%\PortalConnector Service\Logs\). Konti har fjern-tilgang for å hente loggen ved behov.
Sikkerhet¶
- API-nøkkel mellom Konti Connect og PortalConnector lagres kryptert
- VPN/whitelist mellom Konti og kundens nettverk
- Aldri eksponer PortalConnector-endepunkt på offentlig nett
- Roter API-nøkkel ved konfigurasjons-endringer eller ved mistenkt kompromittering
- Visma-konto for integrasjonen bør være dedikert service-konto
Vanlige problemer¶
"Beløp er for høyt (10000x feil)"¶
Klassisk kultur-bug. Sjekk at PortalConnector kjører med InvariantCulture — fikset i release v2.91.0. Hvis problemet vedvarer: bekreft at oppgraderingen er rullet ut.
PortalConnector svarer ikke¶
- Sjekk at Windows-tjenesten kjører hos kunden
- Sjekk nettverks-/VPN-tilgang
- Sjekk firewall-regler
- Konti har fjern-tilgang for å starte tjenesten
"ODBC-feil mot Visma"¶
PortalConnector kunne ikke nå Visma sin database. Sjekk:
- Visma-server er oppe
- ODBC-tilkobling fungerer
- Tjeneste-konto har tilgang
- Visma-firmanummer er riktig
Master-data synker tregt¶
Klassisk-integrasjonen er SOAP-basert og treg sammenlignet med NXT (GraphQL). Vurder migrering til NXT for store volumer.
Mismatch mellom Visma og ePortal¶
Manuell endring direkte i Visma (utenfor integrasjonen) kan skape avvik. Bruk Konti Connect-loggen til å spore hva som ble synket sist.
Migrering til NXT¶
Når kunden går over til Visma Business NXT:
- Kjør parallell test mot NXT-API
- Sammenligne kontoplaner og master-data
- Verifiser at fakturaflyt fungerer mot NXT
- Bytte ordre/faktura-eksport over til NXT
- Beholde klassisk for historikk-rapportering en stund
- Stopp klassisk-integrasjonen og avinstaller PortalConnector
Konti har migrerings-rutine — kontakt support før du starter.
Relaterte sider¶
- Konti Connect-modulen
- Integrasjoner — oversikt
- Visma Business NXT — moderne, anbefalt
- Visma.net — SaaS-alternativ