Oppstart: Mars 2022
Utviklingstid: ca. 2 måneder
Arbeidstid: 60 timer
MHDA Invest AS fra Oslo har alltid ønsket å starte med eget SaaS (Programvare som tjeneste) prosjekt som de passivt kan tjene på ved at kundene kjøper abonnementer.
Etter en grundig markedsundersøkelse har de valgt en nisje med fokus på digital signering av dokumenter der flere parter er involvert og skal varsles. I denne nisjen finnes det en relativt stor engelskspråklig konkurranse, men de fleste verktøy har veldig vage rammer og beskrivelser på features. Webapplikasjonen til MHDA Invest AS skal være målrettet for å utføre kun enkel signering av avtaler mellom flere parter. Når alle parter har signert, skal avtalen "låses" og sendes ut som PDF til alle involverte. Dette skal skje gjennom et minimalistisk, men brukervennlig grensesnitt, uten overflødige features. Dette er et prosjekt som sikter mot en nisje innen en annen nisje.
Spesifikasjoner vi fikk fra MHDA Invest AS var følgende:
Sluttkunden som skal bruke SaaS webapplikasjonen, er en person som skal opprette og sende ut kontrakter som deretter skal signeres digitalt av mottakere. For å kunne bruke applikasjonen må det registreres en konto på siden. Da får man tilgang til et dashboard, der ny avtale kan opprettes gjennom en innebygd online teksteditor med autosave-funksjon. Deretter skal signerende parter legges inn med e-post, firmainfo og eventuelt telefonnummer. Det er mulig å velge at signerende part må gjennom et ekstra steg i signeringsprosessen der de får en SMS med kode, og må skrive inn denne koden for å godkjenne signaturen.
Når avtalen er klar og signerende parter er lagt inn, kan sluttkunden sende avtalen til alle parter gjennom e-post. Mottakerne kan deretter åpne e-posten, lese avtalen og digitalt signere den ved å klikke på en knapp, eventuelt med ekstra SMS autorisasjon.
For å kunne sende avtalen må et abonnement være aktivt, og dette kan kjøpes gjennom Stripe. Beløpet blir automatisk trukket hvert år. Sluttkunden får én måned gratis bruk etter å ha oppgitt bankkortdetaljer, beløpet blir ikke trukket om man annullerer abonnementet innen én måned.
Når alle har signert sendes det ut en PDF-fil til alle signerende parter. Nederst i dokumentet er alle digitale signaturer lagt til, med meta-info som IP-adresser, nettleser og operativsystem brukt til signering. Det ligger også en logg med datoer på alle hendelser, som utsendelse av avtalen, når hver part har signert osv.
MHDA Invest som eier av dette systemet, får også en egen administratorkonto, der de har tilgang til logg over alle hendelser på nettsiden, blant annet info om e-poster, SMS og betalinger. Dette kan brukes til å løse problemer om sluttkunden ikke får e-post, SMS eller har problemer med betalingen. Administrator får også tilgang til en oversikt over alle brukere. Her kan det legges inn nye brukere, og gamle brukere kan slettes. Det er også mulig å aktivere tilgang manuelt utenfor Stripe, noe som åpner for å fakturere noen kunder for tjenesten direkte.
Fordi webapplikasjonen skal håndtere potensielt sensitive kundedata, ønskes det en god sikkerhet på serveren og applikasjonen. Vi har gått for en dedikert serverløsning på en VPS-server på DigitalOcean. Serveren kjører Ubuntu med automatiske sikkerhetsoppdateringer og NGINX programvare med PHP. For ekstra lag av sikkerhet, har vi konfigurert Cloudflare WAF, dette skal sikre mot hackerangrep og bots.
På prosjektets hoveddomene ligger det en landingside i Wordpress som kunden selv har satt opp. Webapplikasjonen vår ligger på en separat server og på et separat "app." subdomene. På denne måten har vi separert landing- og markedsføringsside fra kjernefunksjonene til SaaS webservice som blir solgt. Dette øker sikkerheten og sparer også kunden for utviklingskostnader. Landingsiden kan utvikles in-house eller gjennom en underleverandør som spesialiserer seg på landingsider.
Webapplikasjonen skulle bestå av ulike administrative paneler, derfor har vi foreslått et større CSS framework, det velkjente Bootstrap, men med et kjøpt theme, slik at webappen får et unikt preg.
Webappen er programmert i ren PHP kode uten framework (frameworkless), mens åpenkildekode-biblioteker som er nødvendige hentes gjennom Composer. Små forbedringer i front-end som autosave-funksjonen har vi programmert i jQuery.
For å integrere abonnementer og betalinger har vi brukt Stripe Checkout. E-post sendes gjennom en ekstern e-postleverandør, Mailgun, mens for SMS har vi integrert Plivo.