Den här anvisningen går igenom principer för användning av Netvisors programgränssnittstjänst och stegen för att bygga en Netvisor-integration ur partnerprogrammets perspektiv. Beskrivningen av partnerprogrammet innehåller information om hur integrationspartner kan beställa en testmiljö samt en checklista för nya partner. I principerna för användning av programgränssnittstjänsten beskrivs praxis och metoder som behövs för att kommunicera med gränssnittet.

För nya genomförare av integrationer
Bli partner
Checklista för nya partner
Testmiljö
Programgränssnittsbibliotek
Kontaktsätt
Datasäkerhet och identifiering

För nya genomförare av integrationer

Du kan integrera en extern app i Netvisor via vårt Web service-gränssnitt, som möjliggör tvåvägsdataöverföring mellan system.

Genom att bygga ett integrationsgränssnitt med Netvisor och bli vår programpartner får du bland annat följande fördelar:

  • Fri tillgång till partnerprogrammet och affärsfrihet
  • Väldokumenterat API och anvisningar
  • Synlighet på marknadsplatsen
  • En gemenskap som stöd för utvecklingsarbete och marknadsföring
  • En växande och färdig kundbas

Du har även tillgång till Visma Solutions Community, en samarbets- och kommunikationskanal som används av våra kunder, partner och anställda.

Netvisor Developer Community är ett support- och diskussionsforum för utvecklare och tekniker. Här meddelar vi också alla uppdateringar i Netvisors programgränssnitt. Vi erbjuder även möjlighet till brainstorming om gränssnitt.

Du hittar mer information om förmåner och fördelar med att vara vår programpartner och om partnernivåer i vår Materialbank för programpartner

Vad betyder programpartnerskap?

När du vill integrera dina tjänster för att fungera tillsammans med Vismas SaaS-lösningar eller vill utveckla ny affärsverksamhet baserat på dem kan du gå med i programmet genom att fylla i Visma Solutions Programpartnerskap-formuläret.

Genom att bli vår programpartner får du hjälp med att genomföra integrationen bland annat i form av en webbversion för programvarudokumentation, ett Microsoft vb.net/.NETv2-programgränssnittsbibliotek för att underlätta genomförande av integrationen samt en egen miljö för att testa och utveckla programvara i vår utvecklingsmiljö. 

Programgränssnittsbiblioteket är en modellimplementering som är avsedd att underlätta genomförandet av en integration och kan fritt modifieras och utökas. Programgränssnittsbiblioteket är inte en färdig implementering och omfattar inte alla gränssnittsresurser. Programgränssnittsbiblioteket uppdateras inte längre, så det kan innehålla föråldrade data och fungerar inte nödvändigtvis som sådant.

Om du har frågor om programpartnerskapets innehåll eller om att bli partner, skicka ett e-postmeddelande till partner.solutions@visma.com

Vårt Partnerstöd svarar på frågor om programgränssnittets tekniska funktionalitet på adressen kumppanituki.netvisor@visma.com. 

Checklista för nya partner

Vårt mål är att erbjuda våra partner ett effektivt och snabbt sätt att testa en blivande integration och säkra en högklassig övergång till produktionen. Kontakta vårt partnerstöd vid problem.

  1. Kontrollera om Netvisors gränssnitt möjliggör en integration. Vid behov kan du konsultera vårt partnerstöd.
  2. Välj den nivå av partnerskap som passar bäst för dig. Du hittar partnerprogrammets nivåer och mer information om partnerskapets förmåner och fördelar i vår Materialbank för programpartner
  3. Bli partner genom att fylla i formuläret nedan. Med samma formulär kan du beställa ett test-ID och en testmiljö. Vi skickar ID och instruktioner för testmiljön till den e-postadress som anges i formuläret. Om du väljer Partner som partnerskapsnivå skickar vi dig ett separat avtal att signera med Visma Sign.
  4. Logga in i Netvisor och bekanta dig med testmiljön du fått. Om det behövs kan du också göra ändringar i standardinställningar och tjänster.
  5. För att kunna genomföra integrationen ska du skapa programgränssnitts-ID och bevilja behörighet till gränssnittsresurserna.
  6. Läs "Datasäkerhet och identifiering.pdf" som du fick som e-postbilaga i anslutning till ditt test-ID.
  7. Skicka en begäran om Hämta kundlista-resursen (customerlist.nv) för att säkerställa att MAC-beräkningen utförs korrekt och att du lyckas identifiera dig i gränssnittet.
  8. Om du behöver testmaterial för Netvisor, använd skriptet DemoDataGenerator.vb.
  9. Gå genom Best practise-verksamhetsmodellerna här.
  10. Testa din implementering noggrant när den är färdig.
  11. Meddela vårt partnerstöd (partnersupport.netvisor@visma.com) när integrationen är testad och färdig. Berätta i meddelandet hur integrationen genomförts för resursernas del. 
  12. Efter meddelandet validerar partnerstödet integrationens genomförande och levererar nödvändiga användaruppgifter för produktionsmiljön.
  13. För att ta i bruk gränssnittet i kundens Netvisor behöver du programgränssnitts-ID av kunden, som skapas enligt denna anvisning. Kunden måste också aktivera programgränssnittstjänsten i Netvisor och tillåta användningen av gränssnittet i vyn Behörigheter till gränssnittsresurser. Läs mer i vår anvisning Bevilja och återkalla behörighet till gränssnittsresurser.

Testmiljö

Produktionsmiljön är inte till för testning; testa därför alla implementeringar och förändringar i testmiljön testas innan de förs till produktion. Vi rekommenderar inte att du använder faktiska och känsliga data i testmiljön. I testfasen är det värt att fästa särskild uppmärksamhet vid hantering av prestanda och datasäkerhet. 

När ni får användaruppgifterna för testmiljön är den helt tom. Ni kan skapa data antingen manuellt via användargränssnittet eller importera kunder, produkter och verifikation i csv-format via Netvisors interna verktyg.

Om ni har möjlighet att använda vår WSClient kan ni även använda skriptet NetvisorDemoDataGenerator.vb för att generera testdata.

Skriptet i fråga genererar:
– Några produkter, kunder och leverantörer (tio av vardera)
Kontonummer för leverantörer (börjar med någon huvudbanks inledande nummer, till vilket en identifierare läggs till i slutet)
– Försäljningsfakturor + deras bokföringsverifikationer (10 st/mån. * 12 mån.)
– Inköpsfakturor + deras redovisningsverifikationer (10 st/mån. * 12 mån.) + någon PDF-bilaga
– Bokföringstransaktioner för flera kostnadskonton, redovisning = kostnadskonto debet AN 1910 Bankkonto Kredit-
konton mellan 7000–7999. Med andra ord, 7000 debet moms 8–22 och 1910 kredit

Partnerstödet kan även köra skriptet i er miljö.

Programgränssnittsbibliotek

Vi erbjuder även ett Programgränssnittsbibliotek. Programgränssnittsbiblioteket är en modellimplementering som är avsedd att underlätta genomförandet av en integration och kan fritt modifieras och utökas. Programgränssnittsbiblioteket är inte en färdig implementering och omfattar inte alla gränssnittsresurser. Programgränssnittsbiblioteket uppdateras inte längre, så det kan innehålla föråldrade data och fungerar inte nödvändigtvis som sådant.

Netvisor erbjuder sina integrationspartner .NET-verktyg för att använda programgränssnittet. Biblioteket omfattar material som skapats genom olika transaktioner och gränssnittsanrop samt skickade och hanterade svarsmeddelanden.
Du hittar programgränssnittsbiblioteket under Visma Solutions Oy:s GitHub-konto.

Kontaktsätt

Netvisors Web Service-programgränssnitt följer REST-modellen. Kommunikation mellan klientprogrammet och servern sker via HTTP-anrop. Gränssnittet är dubbelriktat och transaktionsbaserat.
Vid import av data skapar det sändande systemet ett XML-meddelande som beskriver materialet och skickar det till Netvisor genom en HTTP-förfrågan. Den valda resursen definierar typen av integrationstransaktion. I vissa transaktioner får användaren identifierande data från det tillagda materialet för senare användning.
När du exporterar material utåt från Netvisor behöver du inte skicka ett XML-meddelande. Förfrågan riktas till önskad resurs och begränsas vid behov enligt de parametrar som tillåts av resursen i fråga. Transaktionen som begärts i svaret presenteras för användaren i XML-format.

Alla svar som skickas av gränssnittet är i XML-format och innehåller alltid ett ResponseStatus-element, från vilket du kan tolka om förfrågan lyckats. Vid felsituationer förmedlas även en felförklaring och typen av fel. Ett lyckat svar har "OK" och ett felaktigt svar har "FAILED"som standardsvar inuti Status-elementet. Se separat felhanteringsguide för felsituationer.

Exempelsvar på en lyckad förfrågan:
<Root>
<ResponseStatus>
<Status>OK</Status>
<TimeStamp>01.01.2018 12:00:00</TimeStamp>
</ResponseStatus>
<Replies>
<InsertedDataIdentifier>1802</InsertedDataIdentifier>
</Replies>
</Root>

Datasäkerhet och identifiering

För detaljerad dokumentation om gränssnittsidentifiering, kontakta Netvisors partnersupport i samband med leveransen av testmiljön. Instruktionerna på den här sidan är avsedda att stödja det, men förklarar inte i sig identifieringens logik. Ta därför först del av punkten: För nya genomförare av integrationer

Observera att kunden alltid måste tillhandahålla programgränssnitts-ID till de som genomför integrationen och tillåta gränssnittsresurserna i Netvisor för att identifiering och materialöverföring ska lyckas.

Programgränssnittets datasäkerhet har genomförts på två olika sätt:

1. Krypterad anslutning
Kommunikation till produktions- och testmiljön för integrationstjänsten sker via krypterade anslutningar (HTTPS).

2. Envägskryptering av identifieringsuppgifter
De identifieringsuppgifter som skickas till integrationstjänsten krypteras genom att skapa en kontrollsumma för dem, från vilken ursprungliga ID:n inte kan återskapas.

Identifiering
Gränssnittet identifierar integrationsbegäran på basis av titeluppgifterna i HTTP-titlarna och den MAC-kod som beräknats utifrån dessa. Klientprogrammet måste skriva alla titlar i varje HTTP-begäran det skickar. Om inte alla nödvändiga titlar har givits returnerar gränssnittet ett felmeddelande om misslyckad identifiering med förklaringar. Fel under identifiering kan kännas igen på standardmeddelandet AUTHENTICATION_FAILED före felförklaringen.

Målföretaget måste tillåta gränssnittsresurser för att tillåta anrop till gränssnittet.

PHP-exempel för att skapa en MAC-kod och HTTP-titlar. I PHP-exemplets MAC-beräkning förekommer userKey två gånger, vilket hänvisar till användarens gränssnitts-ID.
MAC-beräkning:

2019-09-05_11-59-38.png

HTTP-titlar att skicka:

2019-09-05_12-00-16.png

Python-exempel för att skapa en MAC-kod och HTTP-titlar.
MAC-beräkning, med SHA256-beräkning:Screenshot_2.png

HTTP-titlar att skicka, notera att den angivna MACHashCalculationAlgorithm-titeln och dess värde "SHA256" som teckensträng krävs för att SHA256 MAC-beräkningen ska godkännas:

http-otsikot2.PNG




Hjälpte det här svaret? Ja Nej

Send feedback
Synd att vi inte kunde vara till hjälp. Hjälp oss förbättra denna artikel med din feedback.