Tille - I can see you, read those man pages!   Tille's Site

Linux en E-commerce

Interchange: Een Open Source oplossing

Wat is Interchange?

Hoewel Interchange al sedert een vijftal jaar ontwikkeld wordt, is het een weinig gekend platform voor E-commerce. De meeste mensen kennen wel de BEA, IBM, Allaire, Microsoft en andere commerciele oplossingen, maar denken bij E-commerce niet onmiddellijk aan Open Source. Integendeel, nog eerder zal een bedrijf beslissen zelf een aangepaste applicatie te (laten) ontwikkelen in PHP, Java, ColdFusion, ASP of dergelijke om de firma online te brengen. Wanneer je er echter over denkt om je E-commerce business te lanceren, verdient het zeker aanbeveling de Interchange applicatieserver in aanmerking te nemen.

In principe hoef je niets van de onderliggende technologie te kennen om met Interchange te kunnen werken, maar nietemin is het interessant om weten dat zowel Interchange zelf als de pakketten waarop deze suite gebouwd is, volledig Open Source zijn - ook al is het project voor een groot deel gesponsord door RedHat, de welgekende commerciele verdeler van Linux distro's.

Interchange is opgebouwd uit een aantal componenten, die het mogelijk maken een zeer ruim toepassingsgebied te beschrijven:

  • Eerst en vooral de database server, waarvoor Postgres gebruikt wordt. In verschillende gerelateerde tabellen worden gegevens over klanten, bestellingen, producten en de site bijgehouden.
  • Daarnaast de webserver, Apache, desgewenst beveiligd met SSL en GPG (of PGP), die de frontend voor klanten en beheerders verzorgt.
  • Het geheel wordt aan elkaar gelijmd met Perlscripts.

De Interchange applicatieserver is in de eerste plaats zeer geschikt voor het online aanbieden van de "normale winkel" functionaliteit: de klant komt binnen, koopt iets en gaat weer weg. Daarnaast werd deze basis uitgebreid met vele features voor onder meer de creatie van een business-to-business site, marketing analyses, non-profit content management, sales- en marketingmanagement, order processing en -tracking, een klantendienst, beheer van mailingcampagnes enzovoort.

De Interchange suite is als volledig autonome server inzetbaar, flexibel en performant, maar kan mits enige kennis van zaken tamelijk eenvoudig geintegreerd worden met bestaande systemen voor ERP, boekhouding, customer support en product sales, met remote databases etc., en dit op virtueel elk platform.

Practisch

Op http://demo.ic.redhat.com/ is er een online demonstratieshop te bezichtigen. Wie het niet direct ziet zitten om zelf te installeren, kan daar live met Interchange werken.

Wij installeerden zelf een testserver: een gewone PC met de standaard RedHat Linux serverinstallatie (die voorziet in de nodige database- en webservers) en de vereiste perl-modules van www.cpan.org (Bundle::Interchange). RedHat ondersteunt Interchange, dus RPMs voor het pakket zijn verkrijgbaar; daar maakten we dan ook gebruik van. Zoals aangeraden in de documentatie, die overigens in ruime hoeveelheden beschikbaar is, installeerden we ook de demo-data, een extra RPM pakket. Men kan in de demo kiezen voor een E-commerce zaak die producten verkoopt, of een die diensten aanbiedt. Met het oog op een degelijke oplossing voor stockbeheer, kozen we in eerste instantie voor een product-demo.

De Interchange RPM's installeren naast de nodige databases een tweedelige website: een administratief gedeelte waarvoor men sowieso dient in te loggen met een gebruikersnaam en wachtwoord, dat toelaat om het volledige beheer van de E-commerce site via een (beveiligde) webclient te regelen, en een publiek gedeelte, de eigenlijke winkel voor de bezoekers.

Wat de klant ziet

De gebruikersinterface voor de klanten is gebaseerd op een set templates, die je naar believen kan aanpassen in de administratieve interface. Hieronder een voorbeeld van een al ietwat aangepaste site die we kado-artikelen lieten verkopen.

borstelset voor het lakeren van eend

Standaard is er links het cataloogoverzicht van de winkel, met de verschillende productcategorieen, zoals in het voorbeeld kurketrekkers, asbakken, sleutelhangers, stickers, kaartjes e.d. Per categorie zijn er nog onderverdelingen om de producten nader te specifieren, bv. asbakken voor 1 persoon, voor 2 personen of groepsbakken. Wanneer je die aanklikt, krijg je alle producten uit deze klasse te zien. Je kan ook gewoon of geavanceerd zoeken in de cataloog; zoekcriteria zijn daarbij zeer gevarieerd. Eender welke producteigenschap die je gedefinieerd hebt, bv. kleur, gewicht, afmetingen van een product, kan via de admin interface als zoekcriterium geactiveerd worden.

Elk product heeft zijn eigen HTML-pagina met daarop de volledige beschrijving van het product, de prijs en of het al dan niet in voorraad is. Je kan dan de hoeveelheid die je wenst te kopen, ingeven, en dit product toevoegen aan je virtuele boodschappenwagen, een systeem dat de meeste lezers wel zullen kennen van andere online shopping sites zoals bv. de Amazon Bookstore. Zo is er ook een duiding bij elke aankoop die de klant op basis van aankopen van andere klanten vertelt welke andere producten hem misschien ook kunnen interesseren. Promoties worden in voorbestemde velden onder het oog van de klant gebracht. De cataloog is standaard vrij te bezichtigen, het is pas wanneer je een product wenst te kopen dat je een gebruikersaccount op de site moet aanmaken. Indien nodig kan het geheel via SSL te bezichtigen zijn en dienen klanten te registreren alvorens de cataloog te raadplegen.

Bijgehouden klantengegevens zijn de verzend- en facturatieadressen, betaal- en verzendwijze en of je nieuws wilt krijgen over dit bedrijf en zijn producten en/of diensten via E-mail.

De site biedt een aantal standaard diensten aan voor klanten. Deze bestaan uit (hulp bij) onderhoud van de gebruikersaccount (wachtwoord veranderen, andere/meerdere verzendadressen definieren e.d.) en een trackingsysteem voor aankopen en bestellingen gelieerd aan deze account. Er is standaard ook een systeem om kadobons uit te delen en te innen.

Wat u ziet

Bij het inloggen op de administratieve interface zijn we altijd geflatteerd als we het in onze eigen taal mogen doen. Zo ook hier. Naast het Nederlands kan men ook voor Duits, Deens, Hebreeuws, Japans, Portugees en Zweeds opteren. We kiezen natuurlijk het Nederlands als voertaal. Doorheen de testprocedure bleek hier en daar wel dat de vertaling niet altijd even volledig was, maar zouden we verlegen zitten om een mondje Engels?

Interchange admin interface hoofdmenu

De standaardgebruikersnaam is "interch", daarmee gingen we van start. De admin interface bestaat uit 8 onderdelen, die dankzij de demo-installatie al bevolkt zijn met "echte" gegevens over bestellingen, klanten, producten en dergelijke.

Starten met de Catalog Wizard

In de Administratiemodule viel ons oog onmiddellijk op de "Catalog Wizard", die werkte zoals beloofd. Er stond namelijk in de begeleidende tekst dat de Wizard zou helpen om van start te geraken met het Interchange E-commerce platform, door de beheerder door het configuratieproces van de basis van zijn winkel te helpen, en dat een volledig functionerende E-commerce site het resultaat zou zijn. Dat is ook zo, en de enige noodzakelijke kennis is kunnen werken met een webbrowser: lezen en klikken.

Ook al duurt deze procedure in haar geheel genomen niet lang, toch men ze op elk moment onderbreken en de reeds ingevoerde data bewaren voor vervollediging tijdens een latere sessie. Ook de volgorde waarin de verschillende delen van de site geconfigureerd worden, mag men vrij kiezen. Een grafisch overzicht geeft weer welke delen in welke mate voltooid zijn.

catalog wizard

De wizard verzamelt algemene bedrijfsinformatie zoals adres- en contactgegevens en E-mail adressen voor de behandeling van bestellingen, informatieverzoeken en servicerequests. Die adressen moeten reeds bestaan, want Interchange rommelt niet met je E-mailconfiguratie.

Hij bepaalt details in verband met verzendings- en betaalwijzen. Verzending met FedEx, UPS en de gewone post behoren tot de standaard mogelijkheden, alsook betaling met Visa en een aantal andere creditkaarten, cheques en postwissels. Encryptie van gevoelige data gebeurt met PGP/GPG (Pretty Good Privacy/GnuPG). In geval je encryptie wilt gebruiken, dien je uiteraard de juiste keys te specifieren. Betalingen kunnen real-time of offline gebeuren.

De wizard laat ook toe verschillende functies of beheersaccounts te creeren, zoals bijvoorbeeld een account voor de boekhouding, met bijhorende permissies om bestellingen te verwerken. Of een account voor uw salesverantwoordelijke, die toegang heeft tot de producten- en prijzendatabases en de klanteninformatie; een andere voor de marketingafdeling die dan bv. rapporten en statistieken kan opvragen. Uw designer kan een account krijgen om de look en feel van de site aan te passen, de secretaresse kunt u toegang geven tot de klantendatabase. Kortom, hier kan zo fijn of zo grof als nodig is, gewerkt worden. In een klein bedrijf kunnen alle taken onder de verantwoordelijkheid van een enkele persoon vallen, in een groter kan men de taken verdelen onder zoveel accounts als men maar wil. Bovendien kan men per account instellen of de eigenaar een secure (SSL) website dient te gebruiken.

De wizard kent alle Nederlandse provincies, dus kozen we een fictieve stad in Groningen als vestigingsplaats voor ons testbedrijf. De suite is nog niet in die mate gelocaliseerd dat ze ook de belastingspercentages per land bijhoudt, die moet men nog zelf ingeven. Later worden de taksgegevens automatisch in prijsberekeningen en facturen verwerkt.

Verder wordt er tijdens deze procedure een start gemaakt met de omkadering van de producten: de indexpagina wordt aangemaakt en je kan een info-tekst ingeven over je bedrijf.

Het ingeven van alle producten behoeft geen helse taak te zijn: een XLS bestand kan worden opgeladen zodat de beheerder veel typwerk bespaard blijft. Deze functie is gebaseerd op de Write- en ParseExcel Perl Spreadsheet modules, die moet je eventueel nog apart installeren.

Ter begeleiding kan je een standaardformulier downloaden om daar je eigen data in te plakken, zodat je een bestandsformaat bekomt dat Interchange kan interpreteren.

Tot slot geeft de wizard een voorsmaakje van de nieuwe site, en als alles je bevalt kan de nieuwe E-commerce site daarna onmiddellijk starten. Ook hier geen nood om iets anders te gebruiken dan de webbrowser, met een simpele klik worden de nieuwe gegevens actief. Op deze manier wordt het pas echt eenvoudig voor iedereen om een site op te zetten en diensten en producten aan te bieden. Er is duidelijk veel tijd en moeite ingekropen om de drempel zo laag mogelijk te maken, met als schitterende resultaat dat de beheerder van een Interchange site zich kan concentreren op zijn business en geen tijd hoeft te verliezen met de techniek erachter. Vele commerciele producten en vendors kunnen hieraan een voorbeeld nemen...

De pietepeuteraars kunnen natuurlijk nog altijd in tekstfiles hun aanpassingen maken en via de commandline de Interchange server beheren. De twee methoden bleken ook vrijelijk door elkaar bruikbaar.

Dagelijks gebruik

Bestellingen van klanten worden automatisch genummerd. Onder de hoofding Orders van de Admin interface worden lopende en reeds verwerkte opdrachten bewaard. De demo-installatie zorgt voor een lijst fictieve bestellingen van fictieve klanten waarop men alvast kan oefenen. De klanten zelf worden opgedeeld in actieve en inactieve klanten. Klanten en hun bestellingen zijn gelieerd en beide datacategorieen zijn doorzoekbaar en bewerkbaar. Ook naar andere modules zijn links gemaakt, zodat je doorgaans naadloos van de ene taak naar de andere kan switchen.

Een klant kan verschillende verzendadressen met verschillende verzendingswijzen hebben. Behalve account- en adresgegevens en aankopen, wordt per klant ook zijn eventuele kortingsniveau (bv. resellerkorting of eindgebruikersprijs) bewaard, eventuele kredietlimieten, alsook de soorten bedrijfscommunicatie die hij wenst te ontvangen. Zo kan men de klant met hetzelfde systeem ook op de hoogte houden van promoties, nieuwtjes en updates. Onder de hoofding producten worden de items uit de cataloog bijgehouden. Elk product krijgt een code, een korte beschrijving en een prijs, en behoort tot een bepaalde groep in een bepaalde categorie.

detail producten

Er kunnen productopties ingesteld worden volgens eigen inzicht en kortingen voor aankoop van grote hoeveelheden. Hier zie je ook welke producten momenteel in aanbieding zijn en of en hoeveel stuks van dit product in voorraad zijn. Elk product is dan nog eens gelinkt aan een eigen HTML pagina die een volledige beschrijving geeft. De functionaliteit moet niet onderdoen voor die van een commercieel product voor stockbeheer zoals bijvoorbeeld Intouch.

Met de Inhoud en Design modules verander je het uitzicht en de logische indeling van je online shop. De meeste pagina's zijn gebaseerd op templates, ook die kunnen hier bewerkt worden. Deze templates bestaan uit HTML code, verrijkt met Interchange-specifieke tags. Er zijn drie soorten tags: ingebouwde, een soort library zeg maar, die de Interchange functionaliteit verzorgen; lokale tags die het mogelijk maken meertalige of internationale sites te bouwen; en Perl en ASP tags, zodat Perl of ASP code in de tags gebruikt kan worden. De beheerder kan zelf nieuwe tags aanmaken mocht de gewenste functionaliteit ontbreken, of hij kan beroep doen op professionele diensten. Naderhand kan hij zelf beslissen of hij deze nieuwe mogelijkheden ook ter beschikking stelt van de Open Source gemeenschap. Indien dat het geval is, zorgt deze ervoor dat de extra code onderhouden en eventueel uitgebreid wordt in volgende releases van Interchange.

Verder vind je hier de "Search Builder", om naast de standaardmethoden in "Geavanceerd zoeken" speciale zoekopdrachten te definieren voor de klanten. Stel dat je een parfumeriezaak hebt, dan zou je zoekopdrachten kunnen ingeven zoals bv. "Zoek een product dat naar rozen ruikt", wanneer je geur als een bijkomende producteigenschap zou definieren. Eveneens geintegreerd in de admin interface is de mogelijkheid om HTML-bestanden en beelden te up- en downloaden. Voor eventuele partners van het E-business bedrijf is speciale ruimte voorzien met bijhorende templates. Het systeem kan ingesteld worden om partners automatisch voor hen belangrijke site-rapporten toe te sturen. Die rapporten kunnen bestaan uit dezelfde mogelijke onderdelen als de rapporten voor de eigenlijke site-admin(s): verschillende statistieken over de spreiding van de bestellingen, soort bestellingen en algemeen verkeer op de site, volgens zelf in te stellen periodes. Rapporten kunnen aangepast worden volgens eigen criteria.

rapportering

In een laatste module kan men de software beheren, instellingen maken voor BTW, verzending en betaling, men kan hier accounts aanmaken voor de verschillende medewerkers of functies binnen een bedrijf en bijhorende toegangscontroles definieren. Standaard is er 1 administratieve gebruiker en zijn er 3 groepen: content manager, merchandiser en sales/orders processing. Nieuwe groepsindelingen stelt men in volgens eigen inzicht. In geval je besluit met meerdere personen dezelfde taken te behandelen, kan je opteren voor het gebruik van een CVS-systeem, zodat er geen versie-conflicten kunnen ontstaan.

Maatregelen zijn genomen voor het dumpen van de databases, of voor het herbevolken ervan, bv. in een disaster recovery procedure.

In laatste instantie kan je hier ook de look en feel van de admin interface beinvloeden.

Naast de grafische gebruikersinterface kan men in geval er meer informatie nodig is, in /var/log/interchange op de server terecht, waar, per cataloog als je verscheidene E-businesses op eenzelfde server draait, de logs bijgehouden worden over gebruikers, bestellingen, admin handelingen en eventuele fouten. De landgebonden instellingen zoals munteenheid, scheidingssymbool tussen eenheden en decimalen en dergelijke kunnen volledig op punt gesteld worden door de locales aan te passen. Op die manier kan men dan natuurlijk ook de Euro gebruiken als munteenheid.

Conclusie

Interchange is een matuur product, gebaseerd op technologie die bewezen heeft te werken. Het project heeft RedHat in zijn achterban, wat de gebruiker de zekerheid op support geeft. Doemdenkers die vrezen bij het kleine percentage gebruikers te behoren dat integratie met andere systemen nodig zal hebben en angst hebben geen deskundigen op het gebied van Perl te zullen vinden, zijn hierbij ook gerustgesteld.

Interchange is ook met een kleine tijdsinvestering onmiddellijk en eenvoudig bruikbaar en eist geen herscholing of grote aanpassingen van de gebruikers noch van de beheerders, terwijl het toch in zijn geheel een zeer flexibele oplossing blijft.

Producten als Interchange dragen er in grote mate toe bij dat Linux aanvaard wordt als productieplatform en verlagen enorm de drempelvrees die veel mensen nog voelen ten opzichte van Linux in het bijzonder en Open Source in het algemeen. Kortom: Interchange is eenvoudig, snel, stabiel en geschikt voor het grote publiek. Score 9 op 10.

Beschikbaar via http://interchange.redhat.com, live demo-site op http://demo.ic.redhat.com/

Home
© 1995-2010 Machtelt Garrels - tille - Powered by vIm - Best viewed with your eyes - Validated by W3C - Last update 20100511