WO1999057864A1 - Systeme de communications pour le commerce electronique - Google Patents

Systeme de communications pour le commerce electronique Download PDF

Info

Publication number
WO1999057864A1
WO1999057864A1 PCT/GB1999/001332 GB9901332W WO9957864A1 WO 1999057864 A1 WO1999057864 A1 WO 1999057864A1 GB 9901332 W GB9901332 W GB 9901332W WO 9957864 A1 WO9957864 A1 WO 9957864A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
customer terminal
items
merchant server
user
Prior art date
Application number
PCT/GB1999/001332
Other languages
English (en)
Inventor
Stephen Peter Towndrow
Matthieu Jean Nady Jonglez
Original Assignee
British Telecommunications Public Limited Company
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by British Telecommunications Public Limited Company filed Critical British Telecommunications Public Limited Company
Priority to CA002331124A priority Critical patent/CA2331124A1/fr
Priority to AU37205/99A priority patent/AU765022B2/en
Priority to EP99919406A priority patent/EP1076974A1/fr
Priority to JP2000547746A priority patent/JP2002514801A/ja
Publication of WO1999057864A1 publication Critical patent/WO1999057864A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/12Payment architectures specially adapted for electronic shopping systems

Definitions

  • the present invention relates to a communications system, and in particular to a system designed to support electronic commerce.
  • the growth of the internet and world wide web has made electronic commerce an important field, and much effort has been directed to designing systems which facilitate on-line trading.
  • internet retail sites for occasional and relatively high-value purchases such as on-line bookstores, have achieved some success, the variability in the quality of service offered by the internet, and in particular the slowness of connections at times of peak usage, has inhibited the more widespread acceptance of on-line retailing by customers.
  • a method of operating a communications system comprising a merchant server, at least one customer terminal, and a communications network linking the merchant server to the customer terminal, the method comprising: a) dynamically generating at a database remote from the customer terminal a set of data identifying a plurality of items available for purchase and communicating to the customer terminal from the merchant server the said set of data identifying a plurality of items available for purchase; b) displaying the said data at the customer terminal; c) registering at the customer terminal a selection made by the customer of one or more of the plurality of items; d) generating at the customer terminal automatically and independently of the merchant server a cumulative list of items selected by the user by (i) instantiating a first data array
  • the present invention dynamically generates a set of data from a database, transfers this data to the customer, and then shifts the step of generating and displaying the shopping basket entirely to the customer terminal, so that it can be carried out without requiring further exchange of data with the merchant server. This dramatically increases the perceived speed of operation for the user, and reduces the variability of the speed of response with changes in the communications network.
  • the customer terminal may be a personal computer connected to the internets mobile terminal, a multimedia kiosk such as BT's Touchpoint (Trade Mark) or any other suitable device.
  • step (a) includes communicating a web page including the said data to the customer terminal and step (b) is carried out by a web client application running at the customer terminal.
  • the method includes communicating with the said data in step (a) a program to be executed at the customer terminal, which program carries out at least step (d).
  • the program which generates and displays the shopping basket at the customer terminal.
  • the program might take the form of Javascript contained within an HTML page (JavaScript is a Trade Mark of Sun Microsystems).
  • JavaScript is a Trade Mark of Sun Microsystems.
  • the client terminal Preferably at least part of the data defining the cumulative list of items is stored by the client terminal as a cookie.
  • the cookie need not contain all of the data elements in the shopping basket data array, but may only contain as much data as is needed to reconstitute that array after, for example, a system crash, or the user logging out.
  • the cookie might store a user ID and the identities and quantities of the selected items.
  • the use of a cookie in this manner gives the method of the invention as much, or a greater degree of robustness as conventional server-side shopping baskets, while still avoiding the disadvantages of requiring frequent communication with a server-side database.
  • the method further comprises: (h) calculating at the customer terminal from data elements in the first data array a total price for purchase items selected by the user, and displaying the said total price at the customer terminal.
  • step (d) of the method may further comprise:
  • step (iii) instantiating a second data array and, when a special offer purchase item is selected, populating both the first and second data arrays with data elements from the said set of data corresponding to the selected purchase item, the data elements in the second array including, for each selected special offer purchase item, data determining a modification to the price of the said purchase item; and in step (h) the total price is calculated from data elements in both the first and second data arrays.
  • the inventors have found that the flexibility in operation and maintenance of the electronic commerce system is significantly enhanced by the use on the customer terminal of a second data array specifically for those purchase items to which special offers apply. This allows new special offers to be implemented without extensive changes to the core data, or to the basic functions used, for example, to calculate a price for the shopping basket. It also enables the implementation of complex special offer schemes, for example where the customer is invited to purchase one item and then to receive associated items free of charge.
  • a communications system comprising; a) means for dynamically generating at a database remote from the customer terminal a set of data identifying a plurality of items available for purchase and communicating to the customer terminal from the merchant server the said set of data identifying a plurality of items available for purchase; b) means for displaying the said data graphically at the customer terminal; c) means for registering at the customer terminal a selection made by the customer of one or more of the plurality of items; (d) means for generating at the customer terminal automatically and independently of the merchant server a cumulative list of items selected by the user by
  • a communications system comprising a) a merchant server comprising: a database programmed with data identifying a plurality of items available for purchase; a data output arranged to output a set of data dynamically generated from the database for display at a remote terminal; a signal input for receiving purchase orders returned from a customer terminal; b) a communications network connected to the merchant server; c) at least one customer terminal connected to the communications network, the customer terminal comprising: means for displaying data received from the merchant server; means for registering a selection made by the user of one or more of the plurality of items; means for generating automatically and independently of the merchant server a cumulative list of items selected by the user by generating at the customer terminal automatically and independently of the merchant server a cumulative list of items selected by the user by
  • the invention also comprises merchant servers and customer terminals adapted for use in accordance with the preceding aspects.
  • Figure 1 is a schematic of a network embodying the invention
  • Figure 2 shows a web page displayed at a customer terminal
  • Figure 3 shows a first stage in loading data on the vendor server
  • Figure 4 shows a second stage in loading data on the vendor server
  • Figure 5 shows a third stage in loading data on the vendor server
  • Figure 6 shows a report returned to the vendor server during the third stage
  • Figure 7 is a flow diagram for the process of loading data.
  • a customer terminal 1 which in the present example is a personal computer running a web browser such as Microsoft Corporation's Internet Explorer (Trade Mark), is connected to a data network 2.
  • the data network is a packet network using TCP/IP technology.
  • a vendor server 3 is connected to the network 2. This is a computing platform running, e.g., commercially available software, such as Oracle's Webserver (Trade Mark).
  • the vendor server serves to the customer terminal HTTP (hypertext transfer protocol) pages generated from data stored on the vendor server in a database 4.
  • the vendor server is operated on behalf of the vendor by another party, such as a network operator.
  • the vendor has their own local server 300, which uploads data to the vendor server and downloads customer orders from the vendor server.
  • the data connection between the local server 300 and the vendor server may be made via the same network 2 as that used for the connection between the vendor server 3 and the customer terminals.
  • Figure 2 shows an example of a web page served by the vendor server 3 to a customer terminal 1 .
  • the vendor is a food retailer operating an on-line supermarket.
  • a left hand frame 21 lists different categories of goods, for example frozen goods, hot beverages, laundry and cleaning. Each item in this list is a link which, when selected by the customer, returns to the central frame 22, a list of further sub-categories, such as frozen vegetables, ready-made meals, etc. for the "frozen goods" category.
  • a list of the products in question is returned to the central frame 22.
  • Each time a category or sub-category link is selected by the user this is communicated by the web browser to the vendor server.
  • a PL/SQL query is run to address data in the database 4 in order to return to the customer, e.g., the list of sub-categories or the list of products.
  • the database 4 dynamically generates a set of data, which is sent to the customer in an HTML page.
  • PL/SQL is an enhanced version of SQL (standard query language) available commercially from Oracle and designed to provide a procedural language for programs to query relational databases.
  • the results of the PL/SQL query are stored in a Javascript (Trade Mark) function encapsulated in a dynamically generated HTML page displayed on the customer terminal.
  • the data displayed in the central frame 22 is a list of goods (in this case frozen vegetables) with their prices and buttons 220 which may be selected by the user to add items from the list of goods to a shopping basket, that is a cumulative list of goods which have been selected for purchase.
  • the Javascript program encapsulated in the HTML page adds the corresponding data item to a shopping basket array variable, which stores data on all the items selected for purchase in the course of transaction. If there is a special offer associated with the selected goods, then the data item is also added to a special offer Javascript array variable which stores data on all selected items to which special offers apply.
  • the shopping basket as updated with the selected data item is stored as a cookie, that is as a data item which is stored in a predefined format and which is returned by the web client to the server when the client next transmits an HTTP request to the server.
  • Cookies are designed to allow persistent state information to be stored and typically will be saved by the web browser in a predetermined directory of a mass storage device at the customer terminal, such as the hard disk of a PC.
  • the Javascript variables are held in RAM for duration of the transaction.
  • the Javascript program running at the customer terminal uses a further Javascript function, draw_basket, to generate a display of the contents of the shopping basket. This is output to a third frame 23 at the bottom of the web page.
  • Each item in the basket has beside buttons for deleting or amending the item. Selecting the buttons triggers further Java functions running on the customer terminal to amend the data arrays accordingly.
  • the add_to_basket, add_to_special-offer and draw_basket functions are defined in the Javascript source code listing set out in the Table below. Tables 2 and 3 show examples of, respectively, a first data array corresponding to the main shopping basket array, and a second data array corresponding to special offer purchase items.
  • a Java script program running on the customer terminal initiates these two variable length data arrays, and then populates these arrays with data elements from the set of data contained in the dynamically generated HTML page, as the corresponding purchase items are selected.
  • the data elements stored in the first array include an ID for each selected item, a variable indicating the quantity of each items selected, the price of each item, a textual description of each item, a status flag, and a flag string.
  • the flag string includes a number of fields a, b, c ... "SO" is written into one of these fields in the case of purchase items to which a special offer applies.
  • corresponding data elements are also written into the second data array, as illustrated in Table 3. This includes a description of the relevant special offer.
  • the offer is "buy chicken, get free pie, peas and potatoes".
  • a trigger quantity is specified also. In this example this has the value 1 for the chicken, since any purchase of the chicken triggers the offer.
  • the trigger quantity may have a higher value and the special offer scheme will not be applied when the quantity purchased is below the quantity trigger value.
  • Purchase items are specified in the related 8
  • the array also includes data elements identifying any related group, the item's own group, and the discount applied to the item.
  • a zero discount is applied to the chicken.
  • the discount field has a discount of 1 , that is a 100% discount is applied so that the item is free to the purchaser.
  • a total price calculation function included in the Java script downloaded to the customer terminal steps through the first array and for items with no special offer flag string set, calculates an addition to the cumulative price simply by multiplying the item quantity and the unit price.
  • the discount is read from the second array and the appropriate discount applied in calculating the total cost of the shopping basket.
  • More than one type of special offer scheme may be used. For example, in addition to the "buy chicken, get free pie, peas and potatoes" scheme illustrated in Tables 2 and 3, a “buy two get one free” scheme may apply to others.
  • the customer may subsequently select other categories from the left hand frame 21 , and add other goods to the shopping basket.
  • an "order" button This causes an HTTP request to be returned to the vendor server.
  • the HTTP request includes the cookie containing the shopping basket data. This data is stored at the vendor server. Once the order has been placed, the contents of the cookie and the Javascript variables at the customer terminal are cleared.
  • the vendor server may return to the customer terminal a new HTTP page containing a confirmation that the order has been successfully placed, and a menu giving options for delivery slots for the ordered goods.
  • the selection of delivery slot by the user is returned to the server and stored together with the order.
  • the order as a whole is later downloaded to the vendor local server 300, for processing of the order, resulting in the subsequent dispatch of the ordered goods from a warehouse to a delivery address specified by the customer.
  • Figures 3 to 5 illustrate the steps by which the vendor uploads data from the local server 300 to the vendor server 3.
  • the local server first sends an HTTP request the vendor server.
  • a CGI script at the vendor server generates dynamically an HTTP page of the form shown in Figure 3.
  • the operator of the local server 300 enters in the dialogue box 301 the name of a comma delimited .csv file 302 which contains product names and prices. This file may be created, for example, within a spreadsheet.
  • the vendor server 3 then returns to the local server 300 an HTTP page of the form shown in Figure 4. This asks the vendor to identify the type of data in the .csv file, for example as products, prices or categories.
  • a request is returned to the server 3 which causes the server 3 to upload the data from the .csv file into a staging table.
  • the staging table is a temporary mirror for part of the database.
  • the server returns the page shown in Figure 4.
  • the user is requested to click on a link to initiate checking of the validity of the uploaded data.
  • a PL/SQL program running on the server 3 then checks the validity of the data against predetermined criteria - for example the check may identify any categories for which there are no products, or any products for which there are no price data.
  • the vendor server 3 returns to the local server 300 details of any inconsistencies, so that the vendor can amend the data in their own tables and then upload the corrected data as an amended .csv file.
  • the vendor may click on link 501 in order to preview the data as it will be displayed to a customer.
  • the server then dynamically generates a web page like that shown in Figure 2, using the same HTTP, Javascript and PL/SQL code, but taking the data from the staging table rather than from the database 5.
  • the vendor causes the data to be transferred from the staging tables to the database 5.
  • the process of loading data described above is illustrated in the flow diagram of Figure 7. 10
  • ⁇ v_qty v_basket.substring(0,v_basket.indexOf('##PDT##'));
  • n_basket + '##PDT##'+v_product+'##QTY##'+v_qty;
  • ⁇ var limit basket.length-number of items in basket

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)

Abstract

Dans un réseau de communications utilisé pour le commerce électronique, un serveur commerçant envoie à un terminal client des données sur des articles disponibles. Ces données sont affichées sur le terminal client, par exemple, à l'aide d'un navigateur web. Le client sélectionne les articles qu'il souhaite acheter et une liste cumulative de ces articles sélectionnés ('le panier à provisions') est générée sur le terminal client automatiquement et indépendamment du serveur. Cette liste cumulative peut être générée par un programme intégré, par exemple une fonction Javascript® (marque de commerce), dans les données téléchargées depuis le serveur commerçant.
PCT/GB1999/001332 1998-05-06 1999-04-29 Systeme de communications pour le commerce electronique WO1999057864A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CA002331124A CA2331124A1 (fr) 1998-05-06 1999-04-29 Systeme de communications pour le commerce electronique
AU37205/99A AU765022B2 (en) 1998-05-06 1999-04-29 Communications system for electronic commerce
EP99919406A EP1076974A1 (fr) 1998-05-06 1999-04-29 Systeme de communications pour le commerce electronique
JP2000547746A JP2002514801A (ja) 1998-05-06 1999-04-29 電子商取引用の通信システム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP98303539 1998-05-06
EP98303539.5 1998-05-06

Publications (1)

Publication Number Publication Date
WO1999057864A1 true WO1999057864A1 (fr) 1999-11-11

Family

ID=8234809

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB1999/001332 WO1999057864A1 (fr) 1998-05-06 1999-04-29 Systeme de communications pour le commerce electronique

Country Status (5)

Country Link
EP (1) EP1076974A1 (fr)
JP (1) JP2002514801A (fr)
AU (1) AU765022B2 (fr)
CA (1) CA2331124A1 (fr)
WO (1) WO1999057864A1 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1139233A1 (fr) * 2000-03-31 2001-10-04 BRITISH TELECOMMUNICATIONS public limited company Méthode, ordinateur et logiciel informatique pour fournir des informations, services ou produits
WO2001096998A1 (fr) * 2000-06-16 2001-12-20 Ulb Aps Procede permettant d'afficher des elements de donnees sur une interface utilisateur visuelle
JP2003091653A (ja) * 2001-09-18 2003-03-28 Hitachi Information Systems Ltd Webシステム制御方法とWebシステムおよびプログラムと記録媒体
US7376594B2 (en) * 2000-09-18 2008-05-20 Hewlett-Packard Development Company, L.P. Method for distributing images via a network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995016971A1 (fr) * 1993-12-16 1995-06-22 Open Market, Inc. Publicite numerique active
WO1998021679A1 (fr) * 1996-11-13 1998-05-22 Microsoft Corporation Systeme et procede permettant d'effectuer des operations commerciales dans un reseau reparti

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995016971A1 (fr) * 1993-12-16 1995-06-22 Open Market, Inc. Publicite numerique active
WO1998021679A1 (fr) * 1996-11-13 1998-05-22 Microsoft Corporation Systeme et procede permettant d'effectuer des operations commerciales dans un reseau reparti

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BARON C: "Implementing a Web shopping cart", DR. DOBB'S JOURNAL, September 1997 (1997-09-01), pages 64 - 85, XP002083012 *
HOQUE R: "shopping cart application with JavaScript", WEB TECH. (USA), vol. 3, May 1998 (1998-05-01), HTTP://WWW.WEBTECHNIQUES.COM, pages 63 - 68, XP002083218 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1139233A1 (fr) * 2000-03-31 2001-10-04 BRITISH TELECOMMUNICATIONS public limited company Méthode, ordinateur et logiciel informatique pour fournir des informations, services ou produits
WO2001096998A1 (fr) * 2000-06-16 2001-12-20 Ulb Aps Procede permettant d'afficher des elements de donnees sur une interface utilisateur visuelle
US7376594B2 (en) * 2000-09-18 2008-05-20 Hewlett-Packard Development Company, L.P. Method for distributing images via a network
JP2003091653A (ja) * 2001-09-18 2003-03-28 Hitachi Information Systems Ltd Webシステム制御方法とWebシステムおよびプログラムと記録媒体

Also Published As

Publication number Publication date
EP1076974A1 (fr) 2001-02-21
CA2331124A1 (fr) 1999-11-11
AU765022B2 (en) 2003-09-04
JP2002514801A (ja) 2002-05-21
AU3720599A (en) 1999-11-23

Similar Documents

Publication Publication Date Title
US8065195B2 (en) Method, medium, and system for universal shopping cart order injection and payment determination
US6263317B1 (en) Web sales channel conflict resolution system
US6845365B2 (en) Method and apparatus for creating and ordering customized branded merchandise over a computer network
US7475024B1 (en) System and method for distributing in real-time, inventory data acquired from in-store point of sale terminals
US6058373A (en) System and method for processing electronic order forms
US8015076B2 (en) Interactive internet shopping and data integration method and system
US7356606B2 (en) Dynamic web storefront technology
US20020042750A1 (en) System method and article of manufacture for a visual self calculating order system over the world wide web
US20070299745A1 (en) Method and apparatus for marketing products over the internet
US20030018536A1 (en) Reorder and default order mechanisms for a shopping cart of an e-commerce website
US20030014319A1 (en) Universal world wide Web user shopping cart transferable with its load from Web page to Web page
AU765022B2 (en) Communications system for electronic commerce
US20030040973A1 (en) Multi-level remote order entry system and method
KR20010011145A (ko) 전자 상거래 시스템 및 이에 있어서의 상품 판매 방법
WO2000079418A2 (fr) Procede a interface d'achat et appareil integres a l'usage du commerce electronique
WO2001020503A1 (fr) Procede de surveillance de l'activite internet
JP2002269414A (ja) 贈答品の受発注システムとその方法およびそのコンピュータプログラム
WO2001091019A1 (fr) Systeme de presentation de choix d'achats contraints aux clients dans un magasin en ligne

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CA GB JP SG US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 09647883

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 37205/99

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 1999919406

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2331124

Country of ref document: CA

WWP Wipo information: published in national office

Ref document number: 1999919406

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 37205/99

Country of ref document: AU

WWW Wipo information: withdrawn in national office

Ref document number: 1999919406

Country of ref document: EP