De verzendende en ontvangende software kunnen verschillende veldnamen, codes en gegevensformaten gebruiken. Zo kan een klantnummer in het ene systeem uit cijfers bestaan, terwijl een andere toepassing een aanvullende vestigingscode verwacht. Een koppeling kan zulke gegevens omzetten naar de afgesproken structuur. Daarbij moet vaststaan welke velden en waarden bij elkaar horen. Deze vertaalslag wordt ook wel mapping genoemd. De software voert de vastgelegde omzettingen uit, maar bepaalt niet zelfstandig de inhoudelijke betekenis van gegevens.
Gegevens kunnen op vaste momenten worden opgehaald, na een wijziging worden doorgestuurd of pas worden geladen wanneer iemand een scherm opent. De mogelijkheden hangen onder meer af van de beschikbare interface en de beperkingen van de aangesloten software. Ook de richting van de uitwisseling maakt verschil: alleen ordergegevens tonen vraagt om andere functies dan wijzigingen vanuit een portaal terugschrijven naar het ordersysteem.
Daarnaast kan de koppeling controles en foutmeldingen bevatten. Ontbreekt een verplicht gegeven, dan kan de verwerking worden gestopt en de oorzaak worden geregistreerd. Bij een tijdelijke verbindingsfout kan een nieuwe poging worden ingebouwd, met maatregelen tegen dubbele verwerking. Met testgegevens wordt vervolgens gecontroleerd hoe de koppeling omgaat met normale invoer, ontbrekende waarden en onderbrekingen. Zo wordt de technische werking toetsbaar aan de afgesproken specificaties.
Voorbeeld: orders in een klantportaal
Orderinformatie buiten het oorspronkelijke systeem
Stel dat een groothandel orders bijhoudt in een bestaande bedrijfsapplicatie en klanten hun bestellingen online wil laten bekijken. Daarvoor kan een klantportaal worden gebouwd dat geselecteerde gegevens uit het ordersysteem ontvangt. Het portaal toont bijvoorbeeld het ordernummer, de bestelde artikelen en de laatst ontvangen leverstatus. Het oorspronkelijke systeem blijft in dit voorbeeld de plaats waar medewerkers orders invoeren en bijwerken. Het portaal biedt een aanvullende toegang tot een deel van die informatie.
De koppeling kan op basis van een klantnummer de bijbehorende orders ophalen. In het portaal wordt technisch gecontroleerd welke gegevens een ingelogde gebruiker mag bekijken. Een klant krijgt daarmee niet automatisch toegang tot alle informatie uit het achterliggende systeem. Ook hoeft niet ieder intern veld zichtbaar te zijn: interne opmerkingen kunnen buiten de uitwisseling blijven, terwijl een verzenddatum wel wordt getoond. Welke informatie beschikbaar komt, ligt vast in de functionele beschrijving.
Een volgende uitbreiding zou kunnen bestaan uit het downloaden van orderdocumenten of het indienen van een wijzigingsverzoek. Dat zijn afzonderlijke functies die aanvullende ontwikkeling en ondersteuning vanuit het ordersysteem kunnen vragen. Ook de actualiteit blijft concreet: bij periodieke synchronisatie toont het portaal de laatst ontvangen gegevens, niet noodzakelijk iedere wijziging direct. Zo maakt dit voorbeeld onderscheid tussen wat een koppeling overdraagt en wat de gebruiker daadwerkelijk in de toepassing kan doen.