Tools
OCI tester: controleer de winkelmand die je webshop terugstuurt
Plak de winkelmand die je webshop naar HOOK_URL stuurt. De tester leest elke regel, legt hem naast de veldlijst van OCI 5.0 en zegt per veld wat er niet klopt: naam, lengte, verplichte velden, getalformaat, eenheid en het totaal.
OCI-winkelmand controleren
Plak een van drie vormen: regels als NEW_ITEM-PRICE[1]=17.08, de URL-gecodeerde body van het verzoek, of het HTML-formulier uit de broncode van de overdrachtspagina.
De controle draait in je browser. Wat je plakt, gaat niet naar onze server en wordt nergens bewaard.
Wat de tester controleert
Elke regel komt uit de specificatie van OCI 5.0, paragraaf 3. Een fout is een overtreding van de specificatie. Een waarschuwing is iets wat inkoopsystemen vaak anders lezen dan je denkt, of een regel die per klant verschilt; bij elke bevinding staat de bron.
| Controle | Regel | Soort |
|---|---|---|
| Veldnaam | NEW_ITEM-<veld>[<regelnummer>], een van de 34 velden uit de tabel in 3.2 |
Fout bij een kapotte naam, waarschuwing bij een onbekend veld |
| Lengte | Per veld, zoals DESCRIPTION 40, UNIT 3, CUST_FIELD5 50 |
Fout |
| Verplichte velden | DESCRIPTION of MATNR, QUANTITY, UNIT zonder MATNR, CURRENCY bij een prijs |
Fout |
| Getalformaat | QUANTITY en PRICE: 11 cijfers, een punt, 3 decimalen, geen duizendtalscheiding |
Fout |
| Hele getallen | PRICEUNIT, LEADTIME, PARENT_ID |
Fout |
| Valuta | ISO-code van drie letters, zoals EUR |
Fout |
| Eenheid | Maximaal 3 tekens, een code en geen woord | Fout bij de lengte, waarschuwing bij de vorm |
| Formulier | Adres zonder parameters in action, methode POST |
Fout bij action, waarschuwing bij GET |
| Regelnummers | Gaten in de nummering, een veld dat op één regel ontbreekt | Waarschuwing |
| Totaal | Aantal × prijs / prijseenheid per regel, opgeteld per valuta | Uitkomst |
Het voorbeeld is de winkelmand van Bakker Installatie B.V. uit OCI en PunchOut: 3 regels van 7 velden, samen 204,96 + 298,00 + 18,75 = 521,71 euro. Er zit één fout in. De omschrijving van regel 1 is 56 tekens lang, 16 meer dan NEW_ITEM-DESCRIPTION toestaat.
Wat de tester niet controleert
De tester ziet alleen de tekst die je plakt. Vier dingen vallen daarbuiten:
- De inlog. Of
USERNAME,PASSWORDenHOOK_URLgoed binnenkomen, zie je alleen in een sessie vanuit het inkoopsysteem. Hoe die start werkt, staat in wat is een OCI koppeling. - De inrichting bij je klant.
PCEis een geldige vorm, maar of die code in het SAP van je klant bestaat, weet alleen dat systeem. Hetzelfde geldt voor artikelgroepen inNEW_ITEM-MATGROUP. - Afspraken per systeem. AFAS leest btw uit
NEW_ITEM-CUST_FIELD1, Elari heeft een eigen veldtabel. Die regels staan op OCI koppeling AFAS en OCI koppeling Spend Cloud. - De tekenset van het origineel. Je browser heeft de tekst al gedecodeerd. De tester ziet "geïsoleerd" als het al stuk is, maar niet in welke tekenset de pagina is verstuurd. Meer in tekencodering en UTF-8.
Zo haal je de winkelmand uit je webshop
Open de overdrachtspagina van je webshop met de ontwikkelaarstools van je browser. Twee plekken leveren bruikbare invoer:
- Netwerk. Klik op de overdrachtsknop, kies het POST-verzoek naar
HOOK_URLen kopieer de payload. De tester leest de URL-gecodeerde body en regels in de vormnaam=waardeofnaam: waarde. - Broncode. Kopieer het
form-element met de verborgen velden. Dan controleert de tester ookactionenmethod.
<form method="post" action="https://inkoop.bakkerinstallatie.example/oci">
<input type="hidden" name="sessie" value="7f3a">
<input type="hidden" name="NEW_ITEM-QUANTITY[1]" value="12">
</form>
Velden zonder NEW_ITEM-, zoals sessie hierboven, toont de tester apart. Het inkoopsysteem verwacht ze terug zoals het ze in HOOK_URL meegaf.
Een OCI koppeling die blijft werken
Een winkelmand die vandaag door de tester komt, kan na een nieuw thema of een langere productnaam weer fout gaan. In een koppeling die wij bouwen, legt het log per sessie vast welke velden naar HOOK_URL gingen en wat er is afgekapt. Een afwijking zie je in het dashboard op het moment dat hij gebeurt.
Wat er bij een OCI koppeling komt kijken, van inlog tot order, staat op OCI koppeling voor je webshop. Hoe het per platform loopt, staat op OCI koppeling webshop.
Veelgestelde vragen
Gaat de winkelmand die ik plak naar jullie server?
Nee. Het lezen en controleren gebeurt in je browser, in het script van deze pagina. Er is geen adres waar de tekst naartoe gaat en er wordt niets bewaard. Sluit je de pagina, dan is de invoer weg.
Kan de tester een sessie met mijn webshop starten?
Nee. De tester stuurt niets en ontvangt niets; hij controleert alleen wat je plakt. Een echte sessie test je vanuit de testomgeving van je klant. AFAS heeft daarvoor de velden Test-URL en Export-Test-URL in het OCI-profiel, zie OCI koppeling AFAS.
Mijn klant accepteert een omschrijving van 50 tekens. Waarom zegt de tester dat het fout is?
De tester controleert tegen de specificatie van OCI 5.0, en die staat 40 tekens toe in NEW_ITEM-DESCRIPTION. Inkoopsystemen gaan er verschillend mee om: het ene kapt af zonder melding, het andere weigert de regel. AFAS leest bijvoorbeeld 30 tekens van NEW_ITEM-VENDORMAT, waar de specificatie 40 toestaat.
Welke velden moet een regel minimaal hebben?
NEW_ITEM-DESCRIPTION of NEW_ITEM-MATNR, en NEW_ITEM-QUANTITY. Zonder MATNR is NEW_ITEM-UNIT verplicht, en zodra er een prijs staat ook NEW_ITEM-CURRENCY. Welke velden je klant daarnaast leest, zoals artikelgroep of btw in een vrij veld, spreek je per klant af.
Vertel wat je nodig hebt
Vertel welke systemen je gebruikt en wat je wilt verbeteren. Je krijgt binnen één werkdag een persoonlijk antwoord. We helpen je de werkzaamheden helder te krijgen en spreken de prijs en planning af voordat je iets toezegt.
- Je weet de prijs en de doorlooptijd voordat je iets toezegt
- Wij zoeken uit welke koppeling het werk uit handen neemt
- Wij verzorgen de bouw, hosting, bewaking en het onderhoud
- Je team krijgt minder overtypwerk en minder uitzoekwerk