Integraties
Verbind je eigen systeem
Laat de AI ingelogde klanten antwoorden vanuit je eigen systeem — in chat en in widget spraakoproepen — zonder je klantgegevens aan OrderInChat te geven.
Overzicht
Kanalen & integraties → Eigen systeem (/nl/integrations/own-system) is voor winkels die klantaccounts in hun eigen systeem (bijvoorbeeld een logistiek portaal) bijhouden en die die gegevens niet in OrderInChat willen kopiëren.
- Je embed de OrderInChat widget op je ingelogde pagina's.
- Je server ondertekent een kortlevend token voor de ingelogde gebruiker en geeft het aan de widget.
- Wanneer die klant vraagt naar hun eigen account (bijvoorbeeld "Waar is mijn zending?"), roept de AI jouw eigen alleen-lezen MCP-tools aan met het token van die gebruiker, in de tekstchat en in spraakoproepen die vanuit de widget zijn gestart.
- OrderInChat controleert alleen je handtekening. Het creëert nooit identiteiten, leest nooit je database en slaat niet op wat jouw tools retourneren.
Beschikbaar op betaalde plannen (Starter, Pro, Ultra). Bezoekers zonder een geldig token zijn anoniem: de AI antwoordt vanuit je kennisbank en vraagt hen in te loggen voor accountvragen.
Laat de AI van je ontwikkelaar het bouwen
Klik onder Geef dit aan de AI van je ontwikkelaar op Instructies kopiëren en plak de tekst ongewijzigd in de AI-assistent van je ontwikkelaars (Claude Code, Cursor, ChatGPT…). De tekst is in het Engels en beschrijft precies wat er gebouwd moet worden — het token-endpoint, de ondertekende MCP-server en de widgetcode — met je winkel-ID en adressen al ingevuld. De AI wordt gevraagd af te sluiten met een lijst van de waarden voor deze pagina. Geheimen staan er nooit in: maak de ondertekeningsgeheimen op deze pagina aan en zet ze zelf op je server.
1. Gebruiker inlogtoken
Je server ondertekent een JWT voor de ingelogde gebruiker:
| Claim | Vereist | Betekenis |
|---|---|---|
sub | ja | De ID van de gebruiker in jouw systeem |
exp | ja | Verloop — maximaal 15 minuten vooruit |
name, email | nee | Weergegeven aan jouw team in de Inbox en op de klantenkaart |
iss, aud | nee | Alleen gecontroleerd als je ze invult op de instellingenpagina |
Kies hoe OrderInChat het verifieert:
- JWKS URL (ES256 of RS256) — het HTTPS-adres van jouw openbare sleutels.
- Openbare sleutel (ES256 of RS256) — plak de PEM openbare sleutel.
- Gedeeld geheim (HS256) — minimaal 32 tekens, opgeslagen versleuteld.
Plak een voorbeeldtoken onder Test een token om het te controleren voordat je live gaat. Een ongeldig of verlopen token faalt nooit de chat — de bezoeker wordt simpelweg als anoniem behandeld.
2. Jouw MCP-server
Voer het adres van jouw MCP-server in (Streamable HTTP, tools/list en tools/call). Test en Live hebben elk hun eigen adres en ondertekeningsgeheim; Actieve modus kiest welke de AI gebruikt.
Klik op Aanmaken om een ondertekeningsgeheim te krijgen. Het wordt eenmalig weergegeven — sla het op jouw server op. Intrekken verwijdert het onmiddellijk (oproepen in die modus stoppen totdat je een nieuwe aanmaakt).
Elke aanvraag die OrderInChat naar jouw server verzendt, bevat:
X-OIC-Timestamp— Unix-secondenX-OIC-Signature—v1=+ hex HMAC-SHA256 vantimestamp.bodymet jouw ondertekeningsgeheimX-OIC-User-Token— het token van de gebruiker, onveranderd (verifieer het zelf en retourneer alleen die gebruikersgegevens)X-OIC-Mode—testoflive
Weiger aanvragen waarvan de handtekening niet overeenkomt of waarvan de timestamp ouder is dan 5 minuten. OrderInChat heeft geen vast IP-adres, dus gebruik de handtekening in plaats van een IP-toegangslijst.
3. Tools
Klik op Ontdek tools om de tools te lezen die jouw server vermeldt, en schakel vervolgens de tools in die de AI mag gebruiken. Sta alleen alleen-lezen tools toe. Tools die later verschijnen, zijn standaard uitgeschakeld totdat je ze inschakelt.
- Tekstchat: een tooloproep kan tot 8 seconden duren.
- Spraakoproepen: tot 3 seconden; de assistent zegt eerst een korte "laat me kijken". Als jouw server traag is, zegt hij dat hij het op dit moment niet kan controleren.
- Wat jouw tools retourneren, wordt alleen als gegevens behandeld, nooit als instructies, en wordt niet opgeslagen in de chatgeschiedenis.
4. Embed de widget
<script>
window.OrderInChatSettings = {
userToken: "",
getUserToken: async () => (await fetch("/your/oic-token")).text(),
};
</script>
<script src="https://app.orderinchat.com/widget/oic-widget.js" data-tenant-id="YOUR-STORE-ID"></script>
getUserToken wordt aangeroepen wanneer het token op het punt staat te verlopen. Nadat het script is geladen, kun je ook OrderInChat.setUserToken(token), OrderInChat.clearUserToken() (bij uitloggen) en OrderInChat.onTokenRefresh(fn) gebruiken.
Met een geldig token en de spraakassistent aan, toont de widgetheader een telefoon knop. De oproep loopt in de widget en wordt gefactureerd vanuit AI-credits zoals elke websiteoproep (tooloproepen zijn inbegrepen in de oproep). Weboproep audio wordt niet opgenomen.
Aanpassen opent de widgetinstellingen in een nieuw tabblad. Bij elke paginalading haalt de code het uiterlijk van de widget op bij OrderInChat (via data-tenant-id), dus wijzigingen die je daar opslaat gelden meteen, zonder de code opnieuw te plakken. Het widgetprofiel voor je webwinkel wordt gebruikt (anders het actieve of eerste profiel); er wordt geen nieuw profiel gemaakt.
5. Verbinding testen
Onder Tools voert Verbinding testen vaste controles uit op je Test-MCP-adres met het test-ondertekeningsgeheim. Er komt geen AI aan te pas en er wordt niets opgeslagen. Gecontroleerd wordt dat:
- het adres openbare https is (geen localhost of privé-netwerkadres);
- een correct ondertekende
tools/listwerkt; - een verzoek met een verkeerde handtekening wordt geweigerd;
- een correcte handtekening met een tijdstempel ouder dan 5 minuten wordt geweigerd;
tools/callop een ingeschakelde tool zonder gebruikerstoken een fout en geen gegevens teruggeeft;- met een voorbeeldtoken bij Een token testen
tools/callwerkt — en hoe snel (boven 2 seconden is te traag voor spraakgesprekken; die geven het na 3 seconden op).
Alleen tools die je hebt gevonden en ingeschakeld worden aangeroepen, met lege argumenten; het voorbeeldtoken wordt alleen voor die test gebruikt en nooit opgeslagen. Bij elk mislukt punt staat hoe je het oplost. Resultaten kopiëren voor je ontwikkelaar kopieert een Engelstalig rapport voor je ontwikkelaar of diens AI; test opnieuw tot niets meer mislukt.
Wat jouw team ziet
- Inbox → Web: de naam en het e-mailadres van de klant van het token, of Gebruiker #ID wanneer je geen van beide verzendt. Elke AI-reactie toont welke van jouw tools het heeft gebruikt en of het werkte — nooit de gegevens.
- Inbox → Oproepen: widgetoproepen verschijnen onder Winkelwebsite en in Live terwijl ze draaien; het transcript toont elke toolstap (naam en resultaat alleen).
- Klanten: een klantenkaart wordt aangemaakt of hergebruikt voor elke gebruikers-ID (Winkelgebruikers-ID), zodat chats en oproepen van dezelfde persoon zijn gekoppeld.