Sist oppdatert: 2025-08-25
EDI-integrasjon med Opter
I denne artikkelen
Opter er et system for transportledelse i sanntid.
Hvis du ikke har Opter, og hvis partneren din har Opter, kan dere koble sammen transportadministrasjonssystemene deres ved hjelp av en EDI-integrasjon (EDI-kobling), som gir følgende funksjoner:
-
Dere kan enkelt sende oppdrag til hverandre.
-
Du får en ordrebekreftelse, slik at du ser om underleverandøren har mottatt oppdraget.
-
Når en ordre endrer status i ett system, endrer den også status i det andre systemet.
-
Leveringsbevis (POD) sendes automatisk mellom systemene.
Integrasjoner settes opp i Opter-kundenes egne installasjoner av Opter. Det finnes ingen sentral nedlasting for alle Opter-kunder.
Denne artikkelen beskriver hvilke data Opter kan sende og motta samt hvilke transportmetoder og filformater som støttes. Her kan du også finne informasjon om ordreservice, en webtjeneste hvor en samarbeidspartner kan opprette ordrer i Opter-kundens system. Hvis du ikke finner det du leter etter i denne artikkelen, kan du kontakte , så finner vi en løsning sammen.
Begrep:
-
EDI (Electronic Data Interchange): EDI er en overføring av strukturert informasjon i henhold til et avtalt format. En EDI-integrasjon må være skreddersydd for den eksporten eller importen som skal gjøres, og informasjonen som skal eksporteres eller importeres må være i riktig format.
-
Opter-kunde: Samarbeidspartneren som har Opters transportledelsessystem.
-
POD (Proof of Delivery): Leveringsbevis. I Opter brukes for eksempel leveringsbevistypene Levert, Ny adresse og Ingen hjemme.
-
Status: Under en statusoppdatering sendes statuser på ordrer, for eksempel Lastet og Losset, mellom systemene.
Sende data til Opter
Format
For at Opter-kunden skal kunne sende og motta data via EDI, er det nødvendig å bestemme hvordan overføringen av ordredokumentet skal se ut. Opter kan lese ordredokumenter i formatene XML, EDIFACT, JSON, CSV og andre tekstfiler med statiske skilletegn/avgrensere. Opter kan håndtere forskjellige tegnkodinger. Kontakt hvis du har spørsmål om format.
For at dataene skal leses inn i Opter, må Opters EDI-team sette opp en EDI-forbindelse som tolker informasjonen fra samarbeidspartnerens system. Til dette trenger EDI-teamet å motta en eksempelfil i et av formatene ovenfor og gjerne en spesifikasjon på det formatet som samarbeidspartneren bruker.
Hvis du ikke har ditt eget format, kan du gjøre ett av følgende:
-
bruke Opters REST API Mer informasjon er tilgjengelig i kall via REST API nedenfor
-
sende XML-filer i standard Opter-format Du finner XML-skjemaet her: https://download.opter.com/xsd/. Bruk alltid den nyeste versjonen av order.xsd.
Hvis du bruker Opters XML-format, må den som oppretter filen, rette seg etter hvordan Opter-kunden vil at ordren skal se ut.
Selv om man bruker samme XML-standard for integrasjon med flere ulike Opter-kunder, kan det variere betydelig hvordan Opter-kundene ønsker at dataene skal presenteres, da alle har ulike måter å jobbe på. Dere må da foreta disse tilpasningene. Hvis man bruker et eget format, tar Opter seg av tilpasningene. Kontakt og be om eksempler og dokumentasjon for mer informasjon.
Dataoverføring
Det vanligste er å dele en lagringsplass på internett hvor begge parter kan få tilgang til hverandres ordrer og statusfiler. Til dette kan du for eksempel bruke en FTP-server. FTP-serveren settes opp av Opter-kundens IT-ansvarlige eller tilsvarende person hos EDI-samarbeidspartneren. FTP-opplysningene blir deretter sendt til Opters EDI-team på . Etter at Opter har lastet ned filen fra FTP-serveren, slettes den, men det er også mulig å arkivere filen eller flytte den til en annen mappe etter at den er lest inn.
Det er en mer detaljert beskrivelse av hvordan du setter opp FTP-tjenesten som vi kan sende til den som er ansvarlig for konfigurasjonen. Kontakt .
Opter har støtte for lasting av filer via FTP, SFTP og FTPS:
-
FTP: Kommunikasjon foregår ukryptert over internett.
-
SFTP: Opter kan koble til SFTP-tjenester med brukernavn/passord eller med SSH-autentisering med privat nøkkel (både med og uten passordbeskyttet nøkkel). Det er også mulig å kombinere autentisering med privat nøkkel med passordautentisering.
-
FTPS: Opter kan bare koble til FTPS eksplisitt på standardporter (21), ikke implisitte.
EDI-samarbeidspartnerens system skal støtte de protokollene som brukes, noe som ikke alltid er tilfelle. Noen har krav om at kommunikasjonen skal være kryptert, mens andre har eldre systemer, hvor FTP er det eneste du kan bruke.
Det er også mulig å sende ordre- og statusgrunnlag til Opters kunder via et REST API.
Forutsetninger
Kontakt for å:
-
be dem om å sette opp integrasjonen
-
få en API-nøkkel. (Den som skal bruke API-et trenger en API-nøkkel).
Gå til swagger-dokumentasjonen
-
Swagger-dokumentasjonen for API-et finner du på samme nettadresse som kundenettsiden, men med «/api» til slutt:
-
Hvis du kjører Opter Cloud:
https://<ert företagsnamn><land>.opter.cloud/api/index.html
Eksempel: Hvis firmanavnet ditt i Opter er «budfirmaet» og landet er Norge, bruker du ”https://budfirmanse.opter.cloud/api/index.html”
-
Hvis du har egen server:
https://<ditt firmanavn eller IP-adresse>.<land>/api/index.html
Eksempel: Hvis firmanavnet ditt i Opter er «budfirmaet» og landet er Norge, bruker du
«https://budfirmaet.no/api/index.html» eller «https://123.45.678.901/api/index.html»
Hvis du ikke finner swagger-dokumentasjonen for API-et, kan du kontakte EDI-teamet på .
-
-
Øverst i høyre hjørne på nettsiden er rullegardinmenyen Select a definition. Velg «Opter EDI API v1».
Bruk av datamodellen
Hvis du vil importere API-et til et verktøy som Postman, finner du datamodellen for API-et øverst på swagger-nettsiden.
Eksempel og beskrivelse av parametrene
På https://download.opter.com/json/ kan du finne eksempler på hvordan JSON-strukturen til en ordrebestilling kan se ut. Du kan ta utgangspunkt i et eksempel, men deretter tilpasse det til din organisasjon.
https://download.opter.com/json/opterOrderBookingJsonSchema1.0.json beskriver alle parametrenes funksjon og format.
API-kallet kan se slik ut:
curl --location 'https://opterkunden.opter.cloud/api/textedi' \
--header 'Content-Type: application/json' \
--header 'x-api-key: placeholder' \
--data-raw '{jsonhere}'
Prøv å bruke API-et
Hvis du vil teste API-et, kan du bruke et testprogram som f.eks. Postman.
Ordrebooking
Når filen er importert ved hjelp av en av transportmetodene ovenfor, opprettes en ny ordre i Opter. Ordren inneholder den informasjonen som Opter-kunden i samråd med oss har vurdert som relevant for å kunne gjennomføre transporten.
Vi anbefaler å inkludere følgende informasjon i ordren som er opprettet i Opter:
-
Adresser (nødvendig)
En henteadresse og en leveringsadresse må oppgis. Det må være fysiske adresser og ikke koordinater, GLN-nummer eller UN/LOCODE-stedskoder da Opter ikke har oppslag på denne typen adresser. Adressen må inneholde gateadresse (det vil si gatenavn og -nummer, postboks går fint å sende), postnummer og poststed. Ofte er også et navn (på en person eller et selskap), en landskode (ISO 3166) og mulig kontaktinformasjon inkludert.
I spesielle unntakstilfeller trenger du ikke oppgi adresse, men da må det avtales med Opter-kunden hvordan dette skal håndteres. Et eksempel kan være om ordrene alltid har faste adresser.
-
Kundenummer (valgfritt/krav)
Med kunde menes den betalende kunden i Opter. Det er mulig å angi et fast kundenummer på integrasjonen slik at det ikke trenger å sendes. Hvis flere kunder håndteres i samme integrasjon, må imidlertid kundenummeret inkluderes. Vi anbefaler at kundenummeret alltid inkluderes i dokumentasjonen som sendes til Opter-kunden.
-
Tjeneste (valgfritt)
Ofte har man avtalt med den som utfører transporten å ha en eller annen form for tjeneste (for eksempel «partigods», «stykkgods») som man bestiller. Det må da være med i dokumentasjonen for at det skal bli riktig tjeneste på ordren i Opter. Det er også mulig å spesifisere en standardtjeneste som brukes på alle ordrer. Da trenger ikke tjenesten inngå i dokumentasjonen.
Det er også mulig å sette tjenesten på ordren i Opter basert på andre parametere. Det er i så fall en justering EDI-avdelingen gjør ut fra dokumentasjonen.
-
Dimensjoner/kolli (valgfritt)
Mange Opter-kunder priser sine forsendelser basert på vekt og volum som inngår i dokumentet. Du må avtale med Opter-kunden om du skal jobbe på ordrenivå eller kollinivå. Hvis dere jobber på ordrenivå, bør totalvekt og volum spesifiseres for hele ordren. Hvis du jobber på kollinivå, bør dimensjonene til hvert enkelt kolli spesifiseres slik at de kan vises korrekt i Opter.
Dersom ordren inkluderer farlig gods, bør det spesifiseres med klasse og dimensjoner.
Opter kan lese følgende dimensjoner på både ordre- og kollinivå:
-
vekt
-
volum
-
lastemeter
-
palleplass.
Følgende dimensjoner kan bare angis på kollinivå:
-
lengde
-
bredde
-
høyde.
-
Det er mulig å inkludere tilleggsinformasjon i tillegg til det som er beskrevet ovenfor. I så fall blir vi enige om det før vi setter opp integrasjonen.
Kravene til databasen kan variere fra Opter-kunde til Opter-kunde siden ikke alle jobber på samme måte, men så lenge dataene inngår i databasen, kan vi foreta tilpasninger for hver enkelt Opter-kunde. Dersom du har valgt å bruke Opters XML-format, må du gjøre disse tilpasningene selv.
Endring av eksisterende ordre
Det er mulig å gjøre endringer i en eksisterende ordre som Opter-kunden har mottatt. Det forutsetter at dokumentet som skal endre den eksisterende ordren, inneholder en av de unike ID-ene som identifiserer ordren, og som ble brukt da den ble opprettet (for eksempel fraktbrevnummer eller ordrenummer). Dokumentasjonen bør også inneholde en indikator på at det er en endring, og ikke en ny ordre, for å gjøre det enklere for Opter-kunden.
Du må avtale med Opter-kunden om det skal være tillatt å endre eksisterende ordrer, og i så fall hvilke felt i dokumentet som skal kunne endres.
Hvis du bruker Opters XML-format, vil vi beskrive for deg hvordan en endring av en eksisterende ordre skal se ut. Opters EDI-team må godkjenne dokumentet før du kan begynne å sende det automatisk.
Eksportere data fra Opter til et annet system
For at Opter skal kunne sende data til et annet system, må det settes opp en integrasjon. Integrasjonen har lignende forutsetninger som når du sender data til Opter, se Sende data til Opter ovenfor.
Send en spesifikasjon på motpartens format eller eksempelfiler til , så vil vi undersøke om det er mulig å opprette en integrasjon.
For autentisering støttes basic auth eller statiske tokens sendt som headers. Dette betyr at for eksempel JWT-tokens ikke støttes med mindre de har en uendelig levetid. Dette betyr at Opter ikke kan hente en nytt token for hver forespørsel/anrop som skal sendes, fordi det ikke støttes.
Bekreftelser
Når en ordre er opprettet i Opter, kan du motta en bekreftelse på at den er opprettet riktig og/eller akseptert av Opter-kunden.
Bekreftelsen kan også inneholde dokumenter, for eksempel kollietiketter. Dokumentene kan inkluderes i metadatafilen som ble opprettet ved bekreftelsen (Base64-kodet), eller sendes separat som vedlegg til for eksempel en e-postadresse. Hvis ordren er opprettet gjennom webtjenesten, kan dokumentene inkluderes i det Base64-kodede svaret som man får ved 200 OK. I så fall må du først dekode formatet som returneres, og deretter dekode dokumentene.
Avvise oppdrag/kansellering
Dersom Opter-kunden avslår oppdraget, kan det sendes via EDI. Dersom du har sendt et oppdrag til en underleverandør og ikke lenger ønsker at denne skal utføre oppdraget, kan du sende en kansellering via EDI. Vi må vite hvordan grunnlaget for avslåtte oppdrag og kanselleringer skal se ut, og hvordan disse skal håndteres. Mange ønsker for eksempel å håndtere kanselleringer manuelt.
Statuser
Som standard sendes vanligvis statusene Lastet og Levert og leveringsbevis (POD). Alle statuser sendes i det formatet dere ble enige om da integrasjonen ble opprettet. Send gjerne dokumentasjon og eksempler på hvordan filene skal se ut, til Opters EDI-team på . Lastet og Losset er de to vanligste statusene, men du kan avtale med Opter-kunden og Opters EDI-team å sende flere enn disse to.
Statusoppdateringer til Lastet og Losset kan skje både på en terminal og hos avsender/mottaker. Ved lasting og lossing på terminalen brukes begrepene ankomst/avgang i stedet for losset/lastet.
Ofte brukes koder for ulike statuser. Send gjerne dokumentasjon eller en oversikt over kodene for statusene du vil overføre, til , og inkluder gjerne eksempelfiler.
Opter kan sende tilbake statuser for transporter booket i Opter-kundens system i et av de tidligere nevnte formatene.
Opter kan kun sende ut statuser, og det er kun begrensede muligheter for å hente statuser fra Opter på dine ordrer (se avsnittet Track & Trace nedenfor).
Statusen sendes automatisk direkte når den endres av sjåføren som utfører transporten. Statusendringene sendes som enkeltfiler ved hver hendelse, eller så skjer en transaksjon per hendelse avhengig av hvilken transportmåte som er avtalt.
I noen tilfeller er det mulig å sende flere statuser i samme fil eller transaksjon for å redusere antall filer/transaksjoner. De kan sendes ved hjelp av metodene beskrevet i avsnittet Dataoverføring ovenfor. Det er også mulig å sende statusene til API-er som har et statisk endepunkt.
URL-en må ikke inneholde dynamiske verdier som for eksempel forskjellige ordrenumre. Endepunktet må godta metoden POST. PUT støttes ikke.
Kolliskanninger
Statusoppdateringer ved kolliskanninger kan sendes ved lasting hos avsender, lossing hos mottaker og ved ankomst og avreise fra terminalen. Det forutsetter at Opter-kunden skanner kolliet, og at det er en unik ID for hvert kolli. ID-ene må være inkludert når ordren opprettes, for at Opter-kunden skal kunne skanne dem. Hvis ID-numrene ikke er inkludert, kan Opter generere dem, men da må etikettene på kolliene ha strekkoder som samsvarer med ID-numrene (se avsnittet Bekreftelser ovenfor for informasjon om hvordan de kan returneres). Dette betyr også at hvert enkelt kolli kan spores.
Fraktbrevskanninger
Fraktbrevskanning fungerer på samme måte som kolliskanning, bortsett fra at det ikke går an å spore individuelle kolli fordi fraktbrevet representerer hele ordren. Det forutsetter at det står et fraktbrevnummer på ordren når den opprettes, eller at Opter genererer et fraktbrevnummer og returnerer det til dere, slik at det står på fraktbrevet.
Leveringsbevis (POD)
Et leveringsbevis kan inneholde signatur, bilde og navn med trykte bokstaver.
Hvis signaturen eller bildet sendes i filen som inneholder metadata for leveringsbeviset, vil signaturen/bildet være Base64-kodet og må derfor dekodes for å kunne vises. Resten av filen beholder formatet.
Signaturen eller bildet kan også sendes som en egen fil i PDF-, PNG-, GIF- eller JPG-format. Den filen er helt atskilt fra den som inneholder eventuelle metadata for POD-en. Det kan være nyttig hvis du for eksempel ønsker å sende signerte fraktbrev. I så fall inneholder navnet på filen vanligvis fraktbrevnummeret eller ordrenummeret.
Avvik
Avvik kan blant annet gjelde skadet gods og forsinkelser. Det er mulig å eksportere avvik fra Opter, men ettersom Opter-kunder bruker avvik på ulike måter, bør man diskutere hvordan de skal håndteres, med Opters EDI-team og Opter-kunden før man setter opp en slik eksport.
Meldinger
Opter-kunden kan sende meldinger når leveringsbevis er registrert og ved ulike statusendringer, for eksempel til mottaker når godset lastes. Meldingene kan sendes via e-post eller SMS. Det forutsetter at det følger med en e-postadresse eller et gyldig mobilnummer som meldingene kan sendes til når ordren opprettes. Det er også mulig å angi faste e-postadresser eller mobilnummer.
Både utseendet til og innholdet i meldingene kan skreddersys for å passe din virksomhet.
Denne funksjonen krever noe konfigurasjon. Kontakt Opter på i samråd med Opter-kunden, så hjelper vi dere videre.
Prisforespørsler
Vi anbefaler at prisforespørsler alltid sendes via ordreservice, siden det gir raskest svar.
Opter-kundens prisliste må støtte tilbakemelding av pris direkte på forespørsel. Prisene varierer mellom ulike Opter-kunder. Spør Opters EDI-team om du kan sende prisforespørsler.
Hvis formatet på prisforespørsler er det samme som formatet for ordrer, og både prisforespørsler og ordrer sendes via ordreservice, må prisforespørselen skilles fra ordrene med et flagg i filen. Sendes ordren via FTP og prisforespørselen via ordreservice, er det ikke nødvendig med flagg i filen.
Track & Trace
Hvis du ikke ønsker eller ikke har mulighet til å gjøre en integrasjon, kan du bruke Opter-kundens Track & Trace for å se status på ordrer.
På Track & Trace kan dere og mottakerne søke etter transporter, se hvilken status de har, og annen informasjon. Man trenger ikke innloggingsinformasjon for å bruke Track & Trace. I stedet søker man direkte på for eksempel ordrenummer eller fraktbrevnummer. Be Opter-kunden om webadressen til deres Track & Trace.