[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

US20120253976A1 - Half-Graphical User Interface Order Processing Method and Web Service - Google Patents

Half-Graphical User Interface Order Processing Method and Web Service Download PDF

Info

Publication number
US20120253976A1
US20120253976A1 US13/494,507 US201213494507A US2012253976A1 US 20120253976 A1 US20120253976 A1 US 20120253976A1 US 201213494507 A US201213494507 A US 201213494507A US 2012253976 A1 US2012253976 A1 US 2012253976A1
Authority
US
United States
Prior art keywords
customer
web site
order
commerce system
merchant web
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US13/494,507
Inventor
Eric Gunter Roubal
Amit Bartake
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Digital River Inc
Original Assignee
Digital River Inc
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 Digital River Inc filed Critical Digital River Inc
Priority to US13/494,507 priority Critical patent/US20120253976A1/en
Publication of US20120253976A1 publication Critical patent/US20120253976A1/en
Assigned to CORTLAND CAPITAL MARKET SERVICESLLC, AS COLLATERAL AGENT reassignment CORTLAND CAPITAL MARKET SERVICESLLC, AS COLLATERAL AGENT SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DIGITAL RIVER, INC.
Assigned to MACQUARIE US TRADING LLC reassignment MACQUARIE US TRADING LLC FIRST LIEN GRANT OF SECURITY INTEREST PATENTS Assignors: DIGITAL RIVER, INC.
Assigned to DIGITAL RIVER, INC. reassignment DIGITAL RIVER, INC. TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Assignors: CORTLAND CAPITAL MARKET SERVICES LLC
Assigned to DIGITAL RIVER, INC. reassignment DIGITAL RIVER, INC. TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Assignors: MACQUARIE US TRADING LLC
Abandoned legal-status Critical Current

Links

Images

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
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0603Catalogue ordering
    • 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
    • G06Q30/0601Electronic shopping [e-shopping]

Definitions

  • the present invention relates to commerce systems for use on the Internet. More particularly, the present invention relates to a system and method for utilizing Web services in order processing in an electronic commerce system.
  • Web World Wide Web
  • Web technologies such as hypertext markup language (HTML), hypertext transfer protocol (HTTP), Web servers and browsers
  • HTML hypertext markup language
  • HTTP hypertext transfer protocol
  • Web services a combination of software applications known as “Web services” allow customers to connect with businesses and businesses to connect with each other to conduct transactions over the Internet.
  • these technologies are standardized to provide an interoperable means for internet content providers and merchants to expose their products and services to end users.
  • a browser application installed on a client computer allows the user access to internet resources. This access, and movement around the Internet, is enhanced by the use of hyperlinks (“links”) within a Web page's HTML content, which defines the document.
  • the link typically a word in a text field or an image on a Web page, acts as a path that moves the user from one Web page universal resource locator (URL) address to another using HTTP by means of the Transmission Control Protocol (TCP) and the Internet Protocol (IP) collectively known as the TCP/IP suite of protocols.
  • TCP Transmission Control Protocol
  • IP Internet Protocol
  • the movement from one URL to another allows near-instant access to information, products, and services and is particularly well-suited to the exchange of information, goods, and services between buyers and sellers.
  • Such business is commonly referred to as “electronic commerce,” or “e-commerce.”
  • a Web merchant seeks a method for competitively processing orders for its goods and services in a way that makes sense for its size, product line, available resources, and goals and objectives.
  • self-hosting of the e-commerce functions and processes makes sense.
  • These merchants may only require the basic catalog display, shopping cart and transaction processing functions.
  • more extensive features are required, or the merchant may desire integration of these basic features with its own inventory control, order processing and accounting systems and/or with other services and features.
  • These highly integrated systems require flexibility and interoperability in order to interface applications with one another across organizations.
  • the use of Web services allows communications between these programs, where neither system need know anything about the software with which it communicates.
  • a web service is a standardized way of integrating Web-based applications using the Extensible Markup Language (XML), Simple Object Access Protocol (SOAP), Web Services Description Language (WSDL), and other open standards over an internet protocol backbone.
  • XML is used to tag the data
  • SOAP is used to transfer the data.
  • WSDL is used for describing the services available. These services provide the interoperability required to integrate a merchant's applications with another merchant or one or more service providers.
  • XML is a framework for creating tags which convey the meaning of the information included within them.
  • the meanings, or semantics, of the tagged data are described by an XML schema.
  • the XML document is created in the sending system, and parsed and translated in the receiving system using that shared definitions provided by the schema.
  • WSDL is a standard published by the World Wide Web Consortium (W3C) which allows a service provider to describe Web services in an XML format as a set of endpoints operating on messages. It is used to describe and locate Web services.
  • W3C World Wide Web Consortium
  • the WSDL allows endpoints and messages to be described regardless of the message formats or network protocols.
  • SOAP is used to send information over the internet.
  • a SOAP message contains a way to bind the standard Web messaging protocol, HTTP, an envelope that specifies the start and end of the message, the message itself, and a header containing additional information related to the message being sent.
  • An alternative to using SOAP is to use a Web Services Invocation Framework (WSIF), for which SOAP is one possible binding method.
  • WSIF is an open application programming interface (API) for invoking Web services regardless of how the Web services are provided.
  • the API is a simple Java program. Rather than use a common message format, such as SOAP, the WSIF API allows application developers to interact directly with abstract representations of Web services through their WSDL descriptions.
  • PGP Pretty Good Privacy
  • HGOP half-graphical, or partial, user interface
  • the HGOP web service and system provides flexibility as to which components of the e-commerce system the merchant hosts, and which is supplied by the e-commerce provider.
  • the HGOP system uses Web technologies and Web services to allow an internet merchant to host its own product catalog and partial shopping cart and other components of an online store as desired, but post the information from the shopping cart to the commerce system cart at checkout time using a single transaction, over a pre-existing communication network.
  • Single sign on may be used to provide broad, but low-level authentication, to maintain synchronization between the e-commerce system and the merchant system, to preload existing customer information and to maintain a seamless user experience.
  • the e-commerce system provides a PGP key and a posting URL to the merchant at the outset of the merchant/e-commerce system relationship. PGP armors the shopping cart and customer information for added security. The posting URL directs the checkout process in a way that provides a natural load balancing effect and offers additional features that may be had by using local e-commerce servers.
  • FIG. 1 illustrates the context of use for an HGOP system.
  • FIG. 2 illustrates the process flow of an HGOP system where customer accounts are in sync between the merchant system (storefront) and the e-commerce system.
  • FIG. 3 illustrates the added process flow required when a user is new to the e-commerce system.
  • FIG. 4 illustrates the use of an HGOP system on a “try before you buy” download transaction.
  • FIG. 5 illustrates the use of an HGOP system on a new user order in response to a marketing campaign.
  • FIG. 6 illustrates the use of an HGOP system on an order for an existing customer.
  • FIG. 7 illustrates the user of an HGOP system on an order for a returning customer who has no account on the e-commerce site.
  • an HGOP service allows a merchant web site to host its own product catalog and shopping cart, but post the information from the shopping cart to the commerce system cart in one XML-formatted WSDL transaction at checkout time.
  • SSO technology allows the system to match the customer's information transmitted in the transaction with the information in its accounts, preload the existing customer information, maintain synchronization between the merchant store and accounts and the e-commerce system customer accounts. It also facilitates transparency to the customer when s/he is redirected to the commerce system upon posting the shopping cart contents and avoids the annoying need to sign in to more than one system and create more than one account.
  • FIG. 1 One embodiment of an HGOP system 100 is illustrated in FIG. 1 .
  • a customer operating a client computing device 102 accesses a merchant's web site and system 104 via a pre-existing communication network (e.g., the internet, a cellular data network, or any other data network).
  • the merchant may host the product catalog and virtual shopping cart on its site 104 .
  • the merchant system When a customer clicks on a purchase button or otherwise indicates that s/he is committing to a purchase, the merchant system generates and transmits an XML request 106 to an e-commerce system hosted on at least one web server 108 .
  • the XML request may be similar to the CreateCartRequest described in Table 1, below, which conforms to the schema described in Table 2.
  • the merchant system might use a PGP key and posting end point provided to the merchant by the e-commerce system 108 .
  • Use of the PGP key ensures that the contents of the cart and the customer's personal information are encrypted and passed securely to the e-commerce system server.
  • the posting end point allows a distributed e-commerce system to direct the traffic to a particular server.
  • Providing the merchant with the posting endpoint URL serves several purposes. It directs the transaction to the commerce system; however, if the commerce system operates multiple servers in world wide locations, the direct can be made to the server most appropriate to the customer's region.
  • the URL end point allows the e-commerce system to redirect the customer to a local server. For example, if the customer is located in Europe the end point could direct the customer to the nearest e-commerce server, located in, for example, Ireland rather than Canada. This provides an efficient and highly performant load balancing effect. It also allows a great deal of flexibility in supporting world-wide payment options.
  • the e-commerce system may respond to the XML request with a simple HTML form 110 , populated with the customer information as provided in the XML request, or pulled from the customer's e-commerce account. Additionally, the form may contain a single hidden HTML parameter, called “message,” and assign the results obtained above as its value. When the user submits the form with an HTTP request to the URL, it is posted to its assigned end point.
  • the e-commerce system 108 provides authentication and the full spectrum of back-end order processing, including checkout, account management and fulfillment and distribution. Data may be stored on both sides of the transaction—in both the merchant system 104 and the e-commerce system 108 , 114 . Sales records may be created in the e-commerce system database 112 , 114 and could be accessible to the customer from the merchant's web site 104 using SSO technology, allowing the customer to search his/her order history from the merchant site.
  • SSO is used to make the entire process transparent to the user and to keep the accounts on both systems in sync.
  • the merchant system 104 passes the user login information to the commerce system 108 in the XML request 106 , or WSDL file. If the customer is a known customer, the system logs in the user, processes the order within the indicated account and prepopulates the HGOP form 110 with the customer information. If the customer is new, the system creates a new account and processes the order within the new account. In this way, the commerce system is able to maintain a complete order history for the customer.
  • account and order management functions may be performed at the application service provider (ASP) level.
  • ASP application service provider
  • web services are provided for managing order processing in a commerce system through the use of an invoker application programming interface (API) or WSIF.
  • API application programming interface
  • a web service user may specify a number of input parameters for the invoke method of the API to invoke a specific commerce server operation.
  • the input parameters in the illustrative examples that follow include a WSDL definition file location, the name of operation to be invoked, necessary parameters for the operation, a user name, and a password for accessing the commerce server 108 resource.
  • the invoker API utilizes the WSIF to invoke commerce server operations dynamically as specified in the WSDL file.
  • the WSDL file of an embodiment of an HGOP contains just one function—the OrderService.CreateCart( ).
  • This function sends order details to the commerce system by accepting the order contents (e.g., language, site, line items, product information, prices etc.) and returning the order ID and a redirect URL for the customer to complete the order.
  • a createCartRequest message of this type would be used to create a shopping cart in the commerce system and allow:
  • client-driven pricing can be implemented by passing a LineltemPricelnfo structure for each line item. Since this information may not be verified on the e-commerce 108 side, independent measures should be established to ensure that prices cannot be spoofed by unauthorized parties.
  • XSD XML Schema Definitions
  • Tables 1 and 2 provide sample XSD software code that may be utilitized with the WSDL and XML in accordance with one embodiment of the present invention and its associated schema definitions.
  • XSD software code specifies how to formally describe the elements in an XML document. This description can be used to verify that each item of content in a document adheres to the description of the element in which the content is to be placed.
  • An XML schema represents the interrelationship between the attributes and elements of an XML object (for example, a document or a portion of a document).
  • an XML object for example, a document or a portion of a document.
  • To create a schema for a document the structure of the document is analyzed, and each structural element is defined as it is encountered. For example, within a schema for a document describing a web site, a web site element, a web page element, and other elements that describe possible content divisions within any page on that site are defined. Elements may be defined within a set of tags.
  • Table 2 is an exemplary schema for one embodiment of an HGOP request.
  • An MD5 hash or equivalent is fine but the plaintext version is required if you actually want the customer to be able to log into the e- commerce site.
  • authenticated boolean false Setting authenticated to ‘true’ asserts that the user has already been authenticated (on another system). Therefore, the e- commerce system will not ask the user to sign in again or to create a new account. In the case that the user does not exist on the e-commerce system site a password must also be supplied. Defaults to ‘false’.
  • [true, false] sendEmail boolean false Email will be sent out if this is set to true. Defaults to “true”. By default, email will be sent out. [true, false] quantity int false The quantity of product on the line item. product Product false priceOverrideInfo PriceOverrideInfo false lineItemExtended LineItemExtended false Additional attributes for a line item as Attributes Attributes name/value pair. offerID string false The E-commerce id of the order-level discount. CouponCode string false Provides another way of referring to an order-level discount. first string false Customer's first name. middle string false Customer's middle name. last string false Customer's last name. type string false Contains the type of credit card used in the transaction.
  • number string false Contains the plaintext credit card number that is used in the transaction.
  • securityIndicator string false CVV/CID code for visa, master, discover and americanExpress card.
  • currencyCode string false See the ISO 4217 maintenance agency (http://www.bsi-global.com/iso4217currency) for more information, including a table of currency codes. amount string false name string false value string false extendedAttribute ExtendedAttribute false name string false value string false
  • FIGS. 2 and 3 describe a preferred embodiment HGOP process 200 and 300 and its associated processes.
  • the customer navigates to the merchant web site and adds items to the cart 202 .
  • the customer is ready to commit to an order, s/he submits the cart for processing 204 .
  • the merchant's system If the customer has placed an order previously and has an account on both systems 206 , the merchant's system generates the encrypted XML request 208 and transmits it to the e-commerce system 210 with the customer's unique identifier and username.
  • the customer is redirected 207 to a user account creation/edit process 300 shown in FIG. 3 .
  • the e-commerce system receives, decrypts and processes the request 212 .
  • SSO logs the user in to both systems.
  • the e-commerce system presents the checkout/landing page 214 with the URL pointing to the local server, if more than one server is available.
  • the e-commerce system allows the customer to verify his personal information (e.g. billing address) and verify the order 216 . If the customer chooses to update the personal information, the system updates the customer's account accordingly 218 .
  • the user remains authenticated throughout the verification and update process 220 . When the verification is complete, the customer confirms the order and receives a thank you page.
  • the e-commerce system sends an order notification to the customer 222 , and also sends a message 226 to the merchant system with the details of the order using a standard processed order XML message 224 .
  • the merchant system updates its records for the customer/order.
  • FIG. 3 illustrates the process 300 that occurs when a customer has not been authenticated on the merchant system. This might happen if a first time customer is making a purchase, or if the customer has an account on the merchant system, but not on the e-commerce system.
  • SSO services may be used to login or create new users and ensure that both sytems are synchronized with user accounts.
  • the HGOP request 306 generated by the merchant site 304 and received by the e-commerce site 308 in this case does not pass login information, the checkout/landing page 310 will expose login and new account fields.
  • the customer may use login credentials 312 from the merchant system, or create an account on the e-commerce system 322 .
  • the e-commerce system will send an XML API 314 to retrieve customer login information 316 , and will update the system and display it on the checkout page. If the customer chooses to create a new account 322 , one may be created on the e-commerce side and the new account information is passed from the e-commerce system 324 to the merchant system 326 . The process continues with order verification 216 as described above.
  • FIGS. 4 through 7 illustrate some of the various scenarios in which the HGOP may be used. These different scenarios demonstrate the flexibility offered by the HGOP system for a product such as downloadable software; however, those skilled in the art will appreciate that the system may be used for any type of product and fulfillment method. In addition, any number of services may be provided by the e-commerce system, depending on the desired configuration of services or needs of the merchant (payment processing, fulfillment and distribution, digital rights management, etc).
  • FIG. 4 illustrates an example of a “try before you buy” conversion process 400 .
  • a prospect or customer 402 located in any part of the world, decides to purchase a digital product that it had previously downloaded and logs into the merchant web site.
  • the customer in this scenario has an account on both systems from the previous “try” transaction.
  • the merchant presents all product information to the customer 404 , 406 .
  • the customer is redirected to the e-commerce cart 408 with a merchant identifier so that the order may correctly be placed against the merchant's store.
  • an HGOP system managed by an e-commerce provider with multiple servers located throughout the world can pull the location information from the posting URL and use it to direct the customer to the nearest server to provide load balancing and the ability to offer benefits related to the geographic location of the customer, such as payment options.
  • a customer may be identified on the e-commerce system by the merchant-assigned memberID (external reference id) 408 . If the customer is found on the e-commerce system, customer account information is preloaded into the form. The e-commerce system can collect any additional customer purchasing information, process the payment, and send the software license entitlement back to the customer 410 . The merchant may then fulfill the purchased license 404 . In this scenario, the memberID is passed back from the e-commerce system so that the entitlement is included in the merchant's existing catalog 412 . Alternatively, the e-commerce system may fulfill the product.
  • FIGS. 5 , 6 and 7 illustrate the same process for alternative customers and scenarios. Each uses the HGOP interface for a slightly different purpose.
  • a new customer 502 decides to make a purchase based on a marketing campaign for which an e-mail address was required. S/he loads the cart with the desired items 504 , and submits the order.
  • the e-commerce system presents the HGOP page with product details and the form to collect customer information.
  • the e-commerce system creates an account 506 and uses a standard API to notify the partner that order is complete 508 , and the partner creates the customer account 510 and sends an e-mail to the customer with information on downloading the product 512 .
  • the process 600 is essentially the same; the customer has an account the e-commerce system from a previous transaction.
  • the customer 602 fills its cart and submits the order.
  • the prepopulated form is presented to the customer, the customer confirms and the verify order page is displayed 604 to complete the customer's experience.
  • the system then uses a standard order notification API to notify the merchant of the order details 606 , and the merchant processes the account on its side 608 , 610 , 612 as per its normal procedures.
  • the basic process 700 is the same.
  • the customer places items in the cart 704 , and the merchant requests the HGOP page, which is displayed with product details and a blank form for collecting customer information 706 .
  • the e-commerce system might be creating an account for a previously existing customer of the merchant site (in other words, the customer has a merchant account, but not an e-commerce account).
  • the HGOP displays the verify order and thank you pages to the customer to complete the customer experience.
  • the e-commerce system returns the order details to the merchant using a standard order confirmation API 708 .
  • the merchant may choose to merge the accounts on its system 710 or continue to match based on a field such as e-mail address. Subsequently, the merchant sends an e-mail to the customer with information on downloading the product 712
  • the type of Web services described are preferably implemented in a data processing system configured as a server in accordance with an embodiment of the contemplated invention.
  • the data processing system may be a symmetric multiprocessor (SMP) system including a plurality of processors and connected to system bus. Alternatively, a single processor system may be employed.
  • memory controller/cache which provides an interface to local memory.
  • An I/O bus bridge is connected to system bus and provides an interface to the I/O bus.
  • Memory controller/cache and the I/O bus bridge also may be integrated together.
  • a peripheral component interconnect (PCI) bus bridge connected to the I/O bus provides an interface to a PCI local bus. Communications links to clients may be provided through a network adapter connected to the PCI local bus.
  • PCI peripheral component interconnect
  • a memory-mapped graphics adapter and hard disk may also be connected to the I/O bus.
  • Those of ordinary skill in the art will appreciate that the hardware described above may vary. For example, other peripheral devices, such as optical disk drives and the like, also may be used in addition to or in place of the hardware depicted. The example described is not meant to imply architectural limitations with respect to an embodiment of the present invention.
  • Instructions for the operating system, the object-oriented programming system, and applications or programs are located on storage devices, such as the hard disk drive, and may be loaded into memory for execution by a processor.
  • the processes of an embodiment of the present invention are performed by a processor using computer implemented instructions, which may be located in a memory or in one or more peripheral devices.

Landscapes

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

Abstract

A half-graphical user interface (Half-GUI) order processing (HGOP) system with single sign on and its method of use is described. A set of web services may be utilized for order processing in an electronic commerce system which allows a merchant to host a product catalog and shopping cart, but post the transaction to an e-commerce system in one simple transaction. In response to a shopping cart request and utilizing single sign on technology, the HGOP system exposes a single checkout form, prepopulated with customer account information to a merchant web site. If no edits are required, the transaction posts and an order confirmation/thank you page is displayed. If edits are required or a new customer account is required, the customer's account is updated or created.

Description

  • This application is a divisional of U.S. patent application Ser. No. 12/195,990, filed 21 Aug. 2008, entitled “Half-GUI Order Processing System and Method,” which is incorporated herein by reference.
  • FIELD OF THE INVENTION
  • The present invention relates to commerce systems for use on the Internet. More particularly, the present invention relates to a system and method for utilizing Web services in order processing in an electronic commerce system.
  • BACKGROUND OF THE INVENTION
  • Through the use of common software structures, a network of computers known as the World Wide Web (Web), or Internet, enables vast and immediate interconnectedness for many users. Web technologies (such as hypertext markup language (HTML), hypertext transfer protocol (HTTP), Web servers and browsers) and a combination of software applications known as “Web services” allow customers to connect with businesses and businesses to connect with each other to conduct transactions over the Internet. In most cases, these technologies are standardized to provide an interoperable means for internet content providers and merchants to expose their products and services to end users.
  • A browser application installed on a client computer allows the user access to internet resources. This access, and movement around the Internet, is enhanced by the use of hyperlinks (“links”) within a Web page's HTML content, which defines the document. The link, typically a word in a text field or an image on a Web page, acts as a path that moves the user from one Web page universal resource locator (URL) address to another using HTTP by means of the Transmission Control Protocol (TCP) and the Internet Protocol (IP) collectively known as the TCP/IP suite of protocols. The movement from one URL to another allows near-instant access to information, products, and services and is particularly well-suited to the exchange of information, goods, and services between buyers and sellers. Such business is commonly referred to as “electronic commerce,” or “e-commerce.”
  • With the abundance of goods and services available on the Internet, a Web merchant seeks a method for competitively processing orders for its goods and services in a way that makes sense for its size, product line, available resources, and goals and objectives. For some merchants, self-hosting of the e-commerce functions and processes makes sense. These merchants may only require the basic catalog display, shopping cart and transaction processing functions. For others, however, more extensive features are required, or the merchant may desire integration of these basic features with its own inventory control, order processing and accounting systems and/or with other services and features. These highly integrated systems require flexibility and interoperability in order to interface applications with one another across organizations. The use of Web services allows communications between these programs, where neither system need know anything about the software with which it communicates.
  • A web service is a standardized way of integrating Web-based applications using the Extensible Markup Language (XML), Simple Object Access Protocol (SOAP), Web Services Description Language (WSDL), and other open standards over an internet protocol backbone. XML is used to tag the data, SOAP is used to transfer the data. WSDL is used for describing the services available. These services provide the interoperability required to integrate a merchant's applications with another merchant or one or more service providers.
  • Unlike Web technologies, Web services are not meant to be displayed in a web browser or otherwise exposed to an end user. Instead, they allow communication between systems. XML is a framework for creating tags which convey the meaning of the information included within them. The meanings, or semantics, of the tagged data are described by an XML schema. The XML document is created in the sending system, and parsed and translated in the receiving system using that shared definitions provided by the schema.
  • WSDL is a standard published by the World Wide Web Consortium (W3C) which allows a service provider to describe Web services in an XML format as a set of endpoints operating on messages. It is used to describe and locate Web services. The WSDL allows endpoints and messages to be described regardless of the message formats or network protocols.
  • SOAP is used to send information over the internet. A SOAP message contains a way to bind the standard Web messaging protocol, HTTP, an envelope that specifies the start and end of the message, the message itself, and a header containing additional information related to the message being sent. An alternative to using SOAP is to use a Web Services Invocation Framework (WSIF), for which SOAP is one possible binding method. A WSIF is an open application programming interface (API) for invoking Web services regardless of how the Web services are provided. The API is a simple Java program. Rather than use a common message format, such as SOAP, the WSIF API allows application developers to interact directly with abstract representations of Web services through their WSDL descriptions.
  • Without privacy and security assurances, many customers would not purchase online. In addition to Web services, many Web applications use the popular, easy to use and effective Pretty Good Privacy (PGP) encryption standard to ensure communication channel security. PGP uses public key cryptography to encrypt the contents of a shopping cart and to provide authentication. It provides a higher level of security than user names and passwords, which are also required to create or log customers into an online store account.
  • Taking advantage of the interoperability and flexibility provided by Web services allows a web merchant to distribute its business logic and strategy among several systems, applications and providers in order to meet its own e-commerce objectives.
  • BRIEF SUMMARY OF THE INVENTION
  • In accordance with one embodiment of the invention, a half-graphical, or partial, user interface (half-GUI) order processing (HGOP) system and its method of use is described. The HGOP web service and system provides flexibility as to which components of the e-commerce system the merchant hosts, and which is supplied by the e-commerce provider. In the preferred embodiment of the present invention as outlined in more detail below, the HGOP system uses Web technologies and Web services to allow an internet merchant to host its own product catalog and partial shopping cart and other components of an online store as desired, but post the information from the shopping cart to the commerce system cart at checkout time using a single transaction, over a pre-existing communication network. Single sign on (SSO) may be used to provide broad, but low-level authentication, to maintain synchronization between the e-commerce system and the merchant system, to preload existing customer information and to maintain a seamless user experience. The e-commerce system provides a PGP key and a posting URL to the merchant at the outset of the merchant/e-commerce system relationship. PGP armors the shopping cart and customer information for added security. The posting URL directs the checkout process in a way that provides a natural load balancing effect and offers additional features that may be had by using local e-commerce servers.
  • Additional advantages and features of an embodiment of the invention will be set forth in part in the description which follows, and in part, will become apparent to those skilled in the art upon examination of the following or may be learned by practice of the invention.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates the context of use for an HGOP system.
  • FIG. 2 illustrates the process flow of an HGOP system where customer accounts are in sync between the merchant system (storefront) and the e-commerce system.
  • FIG. 3 illustrates the added process flow required when a user is new to the e-commerce system.
  • FIG. 4 illustrates the use of an HGOP system on a “try before you buy” download transaction.
  • FIG. 5 illustrates the use of an HGOP system on a new user order in response to a marketing campaign.
  • FIG. 6 illustrates the use of an HGOP system on an order for an existing customer.
  • FIG. 7 illustrates the user of an HGOP system on an order for a returning customer who has no account on the e-commerce site.
  • DETAILED DESCRIPTION
  • A preferred embodiment of the present invention referred to as an HGOP web service is described in detail below. It will be appreciated by those skilled in the art that variations the following is an example embodiment and that other embodiments may be implemented which do not depart from the scope and spirit of the present invention. In one embodiment, an HGOP service allows a merchant web site to host its own product catalog and shopping cart, but post the information from the shopping cart to the commerce system cart in one XML-formatted WSDL transaction at checkout time. The use of SSO technology allows the system to match the customer's information transmitted in the transaction with the information in its accounts, preload the existing customer information, maintain synchronization between the merchant store and accounts and the e-commerce system customer accounts. It also facilitates transparency to the customer when s/he is redirected to the commerce system upon posting the shopping cart contents and avoids the annoying need to sign in to more than one system and create more than one account.
  • One embodiment of an HGOP system 100 is illustrated in FIG. 1. A customer operating a client computing device 102 accesses a merchant's web site and system 104 via a pre-existing communication network (e.g., the internet, a cellular data network, or any other data network). In an exemplary embodiment, the merchant may host the product catalog and virtual shopping cart on its site 104. When a customer clicks on a purchase button or otherwise indicates that s/he is committing to a purchase, the merchant system generates and transmits an XML request 106 to an e-commerce system hosted on at least one web server 108. The XML request may be similar to the CreateCartRequest described in Table 1, below, which conforms to the schema described in Table 2. In creating this request, the merchant system might use a PGP key and posting end point provided to the merchant by the e-commerce system 108. Use of the PGP key ensures that the contents of the cart and the customer's personal information are encrypted and passed securely to the e-commerce system server. The posting end point allows a distributed e-commerce system to direct the traffic to a particular server.
  • Providing the merchant with the posting endpoint URL serves several purposes. It directs the transaction to the commerce system; however, if the commerce system operates multiple servers in world wide locations, the direct can be made to the server most appropriate to the customer's region. In one embodiment, the URL end point allows the e-commerce system to redirect the customer to a local server. For example, if the customer is located in Europe the end point could direct the customer to the nearest e-commerce server, located in, for example, Ireland rather than Canada. This provides an efficient and highly performant load balancing effect. It also allows a great deal of flexibility in supporting world-wide payment options.
  • The e-commerce system may respond to the XML request with a simple HTML form 110, populated with the customer information as provided in the XML request, or pulled from the customer's e-commerce account. Additionally, the form may contain a single hidden HTML parameter, called “message,” and assign the results obtained above as its value. When the user submits the form with an HTTP request to the URL, it is posted to its assigned end point.
  • In an embodiment of this invention the e-commerce system 108 provides authentication and the full spectrum of back-end order processing, including checkout, account management and fulfillment and distribution. Data may be stored on both sides of the transaction—in both the merchant system 104 and the e-commerce system 108, 114. Sales records may be created in the e-commerce system database 112, 114 and could be accessible to the customer from the merchant's web site 104 using SSO technology, allowing the customer to search his/her order history from the merchant site.
  • SSO is used to make the entire process transparent to the user and to keep the accounts on both systems in sync. The merchant system 104 passes the user login information to the commerce system 108 in the XML request 106, or WSDL file. If the customer is a known customer, the system logs in the user, processes the order within the indicated account and prepopulates the HGOP form 110 with the customer information. If the customer is new, the system creates a new account and processes the order within the new account. In this way, the commerce system is able to maintain a complete order history for the customer. In addition, account and order management functions may be performed at the application service provider (ASP) level.
  • CreateCartRequest
  • In the preferred embodiment, web services are provided for managing order processing in a commerce system through the use of an invoker application programming interface (API) or WSIF. A web service user may specify a number of input parameters for the invoke method of the API to invoke a specific commerce server operation. The input parameters in the illustrative examples that follow include a WSDL definition file location, the name of operation to be invoked, necessary parameters for the operation, a user name, and a password for accessing the commerce server 108 resource. The invoker API utilizes the WSIF to invoke commerce server operations dynamically as specified in the WSDL file.
  • The WSDL file of an embodiment of an HGOP contains just one function—the OrderService.CreateCart( ). This function sends order details to the commerce system by accepting the order contents (e.g., language, site, line items, product information, prices etc.) and returning the order ID and a redirect URL for the customer to complete the order.
  • A createCartRequest message of this type would be used to create a shopping cart in the commerce system and allow:
      • Products to be added to the cart;
      • Cart language and product language to be set;
      • Authentication of the user;
      • Additional information to be attached to the order or line items; and
      • Customers to complete the order in their browser.
  • In one embodiment, where the merchant 104 hosts the entire product catalog and pricing functions, client-driven pricing can be implemented by passing a LineltemPricelnfo structure for each line item. Since this information may not be verified on the e-commerce 108 side, independent measures should be established to ensure that prices cannot be spoofed by unauthorized parties.
  • The following provide examples of XML and XSD for some of the functions of the system. It will be appreciated by those skilled in the art that other XML code could be devised that performs the same functions without departing from the scope and spirit of the present invention.
  • Within the XML sample software code, certain XML Schema Definitions (XSD) are identified. Tables 1 and 2 provide sample XSD software code that may be utilitized with the WSDL and XML in accordance with one embodiment of the present invention and its associated schema definitions. Generally, XSD software code specifies how to formally describe the elements in an XML document. This description can be used to verify that each item of content in a document adheres to the description of the element in which the content is to be placed.
  • TABLE 1
    CreateCartRequest
    Sample Code
      <?xml version=“1.0” ?>
    - <createCartRequest
    xmlns=“http://integration.digitalriver.com/HGOP2-1”>
      <externalReferenceID>order1234</externalReferenceID>
      <siteID>mysite</siteID>
      <locale>en_us</locale>
      <programID>112200</programID>
    - <user>
      <externalReferenceID>user1234</externalReferenceID>
      <loginID>testuser@digitalriver.com</loginID>
      <password>abc1234</password>
      <authenticate>true</authenticate>
      </user>
    - <billToAddress>
      <companyName>Digital River, Inc</companyName>
      <name1>John</name1>
      <name2>Doe</name2>
      <line1>9625 West 76th Street</line1>
      <line2>Suite 300</line2>
      <line3 />
      <city>Eden Prairie</city>
      <state>MN</state>
      <postalCode>55344</postalCode>
      <countryCode>US</countryCode>
      <email>jdoe@digitalriver.com</email>
      <phone1>952-253-1234</phone1>
      <phone2 />
      <fax />
      </billToAddress>
    - <shipToAddress>
      <companyName>Digital River, Inc</companyName>
      <name1>John</name1>
      <name2>Doe</name2>
      <line1>9625 West 76th Street</line1>
      <line2>Suite 300</line2>
      <line3 />
      <city>Eden Prairie</city>
      <state>MN</state>
      <postalCode>55344</postalCode>
      <countryCode>US</countryCode>
      <email>jdoe@digitalriver.com</email>
      <phone1>952-253-1234</phone1>
      <phone2 />
      <fax />
      </shipToAddress>
    - <lineItems>
    - <lineItem>
      <quantity>1</quantity>
    - <product>
      <externalReferenceID>sku1234</externalReferenceID>
      <productID>123456789</productID>
      <companyID>mycompany</companyID>
      </product>
    - <priceOverrideInfo>
    - <price>
      <type>unit</type>
      <currencyCode>USD</currencyCode>
      <amount>19.95</amount>
      </price>
      </priceOverrideInfo>
    - <lineItemExtendedAttributes>
    - <lineItemExtendedAttribute>
      <name>color</name>
      <value>red</value>
      </lineItemExtendedAttribute>
      </lineItemExtendedAttributes>
      </lineItem>
      </lineItems>
    - <offers>
    - <offer>
      <offerID>1222333</offerID>
      </offer>
      </offers>
    - <payment>
    - <customer>
      <first>John</first>
      <middle>Henry</middle>
      <last>Doe</last>
      </customer>
    - <creditcard>
      <type>visa</type>
      <number>24234234124312</number>
      <expirationMonth>11</expirationMonth>
      <expirationYear>2007</expirationYear>
      <securityIndicator>724</securityIndicator>
      <issueNumber>00</issueNumber>
      <issueMonth>01</issueMonth>
      <issueYear>2007</issueYear>
      </creditcard>
    - <paymentExtendedAttributes>
    - <paymentExtendedAttribute>
      <name>new payment method</name>
      <value>1234</value>
      </paymentExtendedAttribute>
      </paymentExtendedAttributes>
      </payment>
    - <taxInfo>
      <taxExempt>true</taxExempt>
      <buyerVatNumber>1341234123</buyerVatNumber>
      </taxInfo>
    - <test>
      <testOrder>true</testOrder>
      <sendEmail>true</sendEmail>
      </test>
      </createCartRequest>

    In general, a schema is an abstract representation of an object's characteristics and relationship to other objects. An XML schema represents the interrelationship between the attributes and elements of an XML object (for example, a document or a portion of a document). To create a schema for a document, the structure of the document is analyzed, and each structural element is defined as it is encountered. For example, within a schema for a document describing a web site, a web site element, a web page element, and other elements that describe possible content divisions within any page on that site are defined. Elements may be defined within a set of tags. Table 2 is an exemplary schema for one embodiment of an HGOP request.
  • TABLE 2
    Schema Components Table
    Null
    Elements Types OK? Definition
    externalReferenceID string false The client generated unique identifier for this order.
    siteID string false The e-commerce siteID of the site the
    customer is buying from.
    locale string false The requisition's locale. In the form of
    language + “_” + region.
    programID string false The e-commerce programID used for
    tracking purposes.
    user User false Information about the user placing this order.
    billToAddress common: false Billing Address for the order.
    AddressInfo
    (Version 1)
    shipToAddress common: false Shipping Address for the order. If empty
    AddressInfo the billToAddress should be used.
    (Version 1)
    lineItems LineItems false Contains order line items. At least one
    line item should be included in this
    array.
    offers Offers false Use this xsd:element, if you want to
    define your order level incentives. If this
    xsd:element is skipped, the e-commerce
    system will determine the incentives if
    applicable for the order in consideration.
    payment Payment false Order payment information.
    taxInfo TaxInfo false Allows you to specify a taxExempt
    status and provide a buyer VAT
    Number.
    test Test false Allows you to place a test order and
    toggle options about it.
    extendedAttributes Extended false A place to pass client specific
    Attributes name/value pairs.
    externalReferenceID string false The client generated unique identifier for
    this user.
    loginID string false The e-commerce loginID for the
    customer who placed this order.
    password string false A password is required when setting
    authenticated to ‘true’. An MD5 hash or
    equivalent is fine but the plaintext
    version is required if you actually want
    the customer to be able to log into the e-
    commerce site.
    authenticated boolean false Setting authenticated to ‘true’ asserts that
    the user has already been authenticated
    (on another system). Therefore, the e-
    commerce system will not ask the user to
    sign in again or to create a new account.
    In the case that the user does not exist on
    the e-commerce system site a password
    must also be supplied. Defaults to ‘false’.
    lineItem LineItem false
    offer Offer false
    customer Customer false
    creditcard Creditcard false
    paymentExtended- Payment false
    Attributes Extended-
    Attributes
    taxExempt boolean false flag in expectation that we can not
    charge tax and code this up later [true,
    false]
    buyerVatNumber string false A place to supply the buyer vat number.
    Otherwise, under EU law, the e-
    commerce system is required to apply
    VAT to all products which are delivered
    by email or electronic download to
    customers who are located in an EU
    country. In the form, (country code + “ ” +
    vat number).
    testOrder boolean false Used to create a test order. Test orders
    do not get committed in production.
    Defaults to “false”. [true, false]
    sendEmail boolean false Email will be sent out if this is set to
    true. Defaults to “true”. By default,
    email will be sent out. [true, false]
    quantity int false The quantity of product on the line item.
    product Product false
    priceOverrideInfo PriceOverrideInfo false
    lineItemExtended LineItemExtended false Additional attributes for a line item as
    Attributes Attributes name/value pair.
    offerID string false The E-commerce id of the order-level
    discount.
    couponCode string false Provides another way of referring to an
    order-level discount.
    first string false Customer's first name.
    middle string false Customer's middle name.
    last string false Customer's last name.
    type string false Contains the type of credit card used in
    the transaction. For example, visa,
    mastercard, discover,
    american express, diners club, jcb,
    maestro card, switchcard.
    number string false Contains the plaintext credit card
    number that is used in the transaction.
    expirationMonth string false 2 digit month. [01, 02, 03, 04, 05, 06, 07,
    08, 09, 10, 11, 12]
    expirationYear string false 4 digit year.
    securityIndicator string false CVV/CID code for visa, master,
    discover and americanExpress card.
    issueNumber string false 2 digit issue number of switch card.
    issueMonth string false 2 digit issue month for switch card. [01,
    02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12]
    issueYear string false 4 digit issue year for switch card.
    paymentExtended PaymentExtended false
    Attribute Attribute
    externalReferenceID string false The client generated unique identifier for
    this product.
    companyID string false E-commerce's unique id for the company
    who owns this product.
    productID string false E-commerce's unique id for the product.
    price Price false
    lineItemExtended LineItemExtended false
    Attribute Attribute
    name string false
    value string false
    type string false unit = “The per unit cost for the products
    in this line item. This includes contract
    discounts (buyer side contract discounts
    which is rare), and excludes all other
    discounts. It should be the same as
    ListPrice if there are no contracts.” [unit]
    currencyCode string false See the ISO 4217 maintenance agency
    (http://www.bsi-global.com/iso4217currency)
    for more information, including a table of
    currency codes.
    amount string false
    name string false
    value string false
    extendedAttribute ExtendedAttribute false
    name string false
    value string false
  • Use Cases
  • The flowcharts in FIGS. 2 and 3 describe a preferred embodiment HGOP process 200 and 300 and its associated processes. Referring to FIG. 2, the customer navigates to the merchant web site and adds items to the cart 202. When the customer is ready to commit to an order, s/he submits the cart for processing 204. If the customer has placed an order previously and has an account on both systems 206, the merchant's system generates the encrypted XML request 208 and transmits it to the e-commerce system 210 with the customer's unique identifier and username. If the customer is new and not authenticated on the merchant system, the customer is redirected 207 to a user account creation/edit process 300 shown in FIG. 3. The e-commerce system receives, decrypts and processes the request 212. SSO logs the user in to both systems. The e-commerce system presents the checkout/landing page 214 with the URL pointing to the local server, if more than one server is available. The e-commerce system allows the customer to verify his personal information (e.g. billing address) and verify the order 216. If the customer chooses to update the personal information, the system updates the customer's account accordingly 218. The user remains authenticated throughout the verification and update process 220. When the verification is complete, the customer confirms the order and receives a thank you page. The e-commerce system sends an order notification to the customer 222, and also sends a message 226 to the merchant system with the details of the order using a standard processed order XML message 224. The merchant system updates its records for the customer/order.
  • FIG. 3 illustrates the process 300 that occurs when a customer has not been authenticated on the merchant system. This might happen if a first time customer is making a purchase, or if the customer has an account on the merchant system, but not on the e-commerce system. SSO services may be used to login or create new users and ensure that both sytems are synchronized with user accounts. Building on the shopping process 207 shown in FIG. 2, the HGOP request 306 generated by the merchant site 304 and received by the e-commerce site 308 in this case does not pass login information, the checkout/landing page 310 will expose login and new account fields. The customer may use login credentials 312 from the merchant system, or create an account on the e-commerce system 322. If the customer uses merchant-system credentials, the e-commerce system will send an XML API 314 to retrieve customer login information 316, and will update the system and display it on the checkout page. If the customer chooses to create a new account 322, one may be created on the e-commerce side and the new account information is passed from the e-commerce system 324 to the merchant system 326. The process continues with order verification 216 as described above.
  • FIGS. 4 through 7 illustrate some of the various scenarios in which the HGOP may be used. These different scenarios demonstrate the flexibility offered by the HGOP system for a product such as downloadable software; however, those skilled in the art will appreciate that the system may be used for any type of product and fulfillment method. In addition, any number of services may be provided by the e-commerce system, depending on the desired configuration of services or needs of the merchant (payment processing, fulfillment and distribution, digital rights management, etc).
  • FIG. 4 illustrates an example of a “try before you buy” conversion process 400. In this example, a prospect or customer 402, located in any part of the world, decides to purchase a digital product that it had previously downloaded and logs into the merchant web site. The customer in this scenario has an account on both systems from the previous “try” transaction. The merchant presents all product information to the customer 404, 406. The customer is redirected to the e-commerce cart 408 with a merchant identifier so that the order may correctly be placed against the merchant's store. As noted earlier, an HGOP system managed by an e-commerce provider with multiple servers located throughout the world can pull the location information from the posting URL and use it to direct the customer to the nearest server to provide load balancing and the ability to offer benefits related to the geographic location of the customer, such as payment options. A customer may be identified on the e-commerce system by the merchant-assigned memberID (external reference id) 408. If the customer is found on the e-commerce system, customer account information is preloaded into the form. The e-commerce system can collect any additional customer purchasing information, process the payment, and send the software license entitlement back to the customer 410. The merchant may then fulfill the purchased license 404. In this scenario, the memberID is passed back from the e-commerce system so that the entitlement is included in the merchant's existing catalog 412. Alternatively, the e-commerce system may fulfill the product.
  • FIGS. 5, 6 and 7 (500, 600, 700) illustrate the same process for alternative customers and scenarios. Each uses the HGOP interface for a slightly different purpose. In FIG. 5, a new customer 502 decides to make a purchase based on a marketing campaign for which an e-mail address was required. S/he loads the cart with the desired items 504, and submits the order. The e-commerce system presents the HGOP page with product details and the form to collect customer information. Once the order data is completed, the e-commerce system creates an account 506 and uses a standard API to notify the partner that order is complete 508, and the partner creates the customer account 510 and sends an e-mail to the customer with information on downloading the product 512.
  • In FIG. 6, the process 600 is essentially the same; the customer has an account the e-commerce system from a previous transaction. The customer 602 fills its cart and submits the order. The prepopulated form is presented to the customer, the customer confirms and the verify order page is displayed 604 to complete the customer's experience. The system then uses a standard order notification API to notify the merchant of the order details 606, and the merchant processes the account on its side 608, 610, 612 as per its normal procedures.
  • In FIG. 7, again, the basic process 700 is the same. The customer places items in the cart 704, and the merchant requests the HGOP page, which is displayed with product details and a blank form for collecting customer information 706. In this case, the e-commerce system might be creating an account for a previously existing customer of the merchant site (in other words, the customer has a merchant account, but not an e-commerce account). The HGOP displays the verify order and thank you pages to the customer to complete the customer experience. The e-commerce system returns the order details to the merchant using a standard order confirmation API 708. The merchant may choose to merge the accounts on its system 710 or continue to match based on a field such as e-mail address. Subsequently, the merchant sends an e-mail to the customer with information on downloading the product 712
  • The type of Web services described are preferably implemented in a data processing system configured as a server in accordance with an embodiment of the contemplated invention. The data processing system may be a symmetric multiprocessor (SMP) system including a plurality of processors and connected to system bus. Alternatively, a single processor system may be employed. Also connected to system bus is memory controller/cache, which provides an interface to local memory. An I/O bus bridge is connected to system bus and provides an interface to the I/O bus. Memory controller/cache and the I/O bus bridge also may be integrated together. A peripheral component interconnect (PCI) bus bridge connected to the I/O bus provides an interface to a PCI local bus. Communications links to clients may be provided through a network adapter connected to the PCI local bus. A memory-mapped graphics adapter and hard disk may also be connected to the I/O bus. Those of ordinary skill in the art will appreciate that the hardware described above may vary. For example, other peripheral devices, such as optical disk drives and the like, also may be used in addition to or in place of the hardware depicted. The example described is not meant to imply architectural limitations with respect to an embodiment of the present invention.
  • Instructions for the operating system, the object-oriented programming system, and applications or programs are located on storage devices, such as the hard disk drive, and may be loaded into memory for execution by a processor. The processes of an embodiment of the present invention are performed by a processor using computer implemented instructions, which may be located in a memory or in one or more peripheral devices.
  • It is to be understood that even though numerous characteristics and advantages of various embodiments of the present invention have been set forth in the foregoing description, together with details of the structure and function of various embodiments of the invention, this disclosure is illustrative only, and changes may be made in detail, especially in matters of structure and arrangement of parts within the principles of the present invention to the full extent indicated by the broad general meaning of the terms in which the appended claims are expressed. For example, the particular elements may vary depending on the particular application for the Web interface such that different dialog boxes are presented to a customer that are organized or designed differently while maintaining substantially the same functionality without departing from the scope and spirit of the contemplated invention.

Claims (20)

1. A method for processing an electronic order received by an e-commerce system server operatively coupled via a pre-existing communication network to an online merchant web site server, the method comprising:
receiving a message via the pre-existing communication network from the merchant web site server operated by a third party, the message comprising customer information and shopping cart information;
matching the received customer information with an account in the e-commerce system server to maintain synchronization between the e-commerce system and the merchant web site whereby seamless access to both the merchant web site and the e-commerce system can be provided to a customer;
creating a shopping cart based on the received shopping cart information; and
sending prepopulated data to the merchant web site for use in a checkout web page based on the matched account in the e-commerce system such that the customer may submit the electronic order for an item utilizing the prepopulated data.
2. A method of claim 1 further comprising providing order history for the customer to the merchant web site based on the matched account in the e-commerce system.
3. A method of claim 1 further comprising decrypting the received message based on an encryption key previously provided to the merchant web site by the e-commerce system.
4. A method of claim 1 wherein the receiving step comprises receiving the message at a posting universal resource locator (URL) address previously provided to the merchant web site server by the e-commerce system.
5. A method of claim 1 further comprising performing a back-end order process associated with the order, the back-end order process being selected from a group consisting of:
payment processing, account management, order fulfillment, and distribution logistics.
6. A method of claim 1 further comprising:
receiving an order confirmation from the merchant web site initiated by the customer;
sending order details to the merchant web site via pre-existing communication network; and
sending an order notification to the customer via the pre-existing communication network.
7. A method of claim 1 further comprising:
receiving an order confirmation from the merchant web site initiated by the customer;
sending order details to the merchant web site via pre-existing communication network; and
sending an software license entitlement to the customer via the pre-existing communication network.
8. A method of claim 1 further comprising:
receiving an order confirmation from the merchant web site initiated by the customer; and
sending order details to the merchant web site via pre-existing communication network such that the merchant web site may utilize the order details in a subsequent communication with the customer.
9. A method of claim 1 further comprising:
receiving an order confirmation from the merchant web site initiated by the customer; and
updating the account in the e-commerce system based on the received order confirmation.
10. A method of claim 1 further comprising creating an account in the e-commerce system using information provided by the customer in the checkout web page on the merchant web site.
11. An order processing web service operatively configured to manage communications via a pre-existing communication network between an electronic commerce system and a merchant web site, the web service comprising:
a single sign on process module operatively configured to receive a message via the pre-existing communication network from the merchant web site, the message comprising customer information and shopping cart information, the single sign on process module further being operatively configured to (i) match the customer information with an account in an account management database in the e-commerce system, (ii) provide prepopulated data to the merchant web site for use in a checkout web page based on a match between the customer information with the account in the e-commerce system and (iii) maintain synchronization between the e-commerce system and the merchant web site whereby seamless access to both the merchant web site and the e-commerce system can be provided to a customer; and
a shopping cart processing module operatively configured to create a shopping cart based on the received shopping cart information.
12. The web service of claim 11 wherein the single sign on process module is operatively coupled to a back end processing module in the e-commerce system and operatively configured to provide order history for the customer to the merchant web site based on the matched account in the e-commerce system.
13. The web service of claim 11 wherein the single sign on process module is operatively configured to decrypt the received message based on an encryption key previously provided to the merchant web site by the e-commerce system.
14. The web service of claim 11 wherein the single sign on process module is operatively configured to receive the message at a posting universal resource locator (URL) address previously provided to the merchant web site by the e-commerce system.
15. The web service of claim 11 wherein the single sign on process module is operatively coupled to a back end processing module in the e-commerce system, the processing module being operatively configured to perform a function selected from a group consisting of: payment processing, account management, order fulfillment, and distribution logistics.
16. The web service of claim 11 wherein the single sign on process module is operatively configured to receive an order confirmation from the merchant web site associated with the checkout web page and to update the matched account in the e-commerce system based on the received order confirmation.
17. The web service of claim 11 wherein the single sign on process module is operatively configured to create an account in the e-commerce system using information provided by the customer in the checkout web page on the merchant web site.
18. The web service of claim 11 further comprising a processing module operatively configured to: (i) receive an order confirmation from the merchant web site initiated by the customer, (ii) send order details to the merchant web site via pre-existing communication network, and (iii) send an order notification to the customer via the pre-existing communication network.
19. The web service of claim 11 further comprising a processing module operatively configured to: (i) receive an order confirmation from the merchant web site initiated by the customer, (ii) send order details to the merchant web site via pre-existing communication network, and (iii) send a software license entitlement to the customer via the pre-existing communication network.
20. The web service of claim 11 further comprising a processing module operatively configured to: (i) receive an order confirmation from the merchant web site initiated by the customer, and (ii) send order details to the merchant web site via pre-existing communication network such that the merchant web site may utilize the order details in a subsequent communication with the customer.
US13/494,507 2008-08-21 2012-06-12 Half-Graphical User Interface Order Processing Method and Web Service Abandoned US20120253976A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/494,507 US20120253976A1 (en) 2008-08-21 2012-06-12 Half-Graphical User Interface Order Processing Method and Web Service

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/195,990 US9760921B2 (en) 2008-08-21 2008-08-21 Half-graphical user interface order processing system and method
US13/494,507 US20120253976A1 (en) 2008-08-21 2012-06-12 Half-Graphical User Interface Order Processing Method and Web Service

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US12/195,990 Division US9760921B2 (en) 2008-08-21 2008-08-21 Half-graphical user interface order processing system and method

Publications (1)

Publication Number Publication Date
US20120253976A1 true US20120253976A1 (en) 2012-10-04

Family

ID=41697255

Family Applications (2)

Application Number Title Priority Date Filing Date
US12/195,990 Active 2031-04-09 US9760921B2 (en) 2008-08-21 2008-08-21 Half-graphical user interface order processing system and method
US13/494,507 Abandoned US20120253976A1 (en) 2008-08-21 2012-06-12 Half-Graphical User Interface Order Processing Method and Web Service

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US12/195,990 Active 2031-04-09 US9760921B2 (en) 2008-08-21 2008-08-21 Half-graphical user interface order processing system and method

Country Status (1)

Country Link
US (2) US9760921B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11416845B2 (en) 2012-04-18 2022-08-16 Mastercard International Incorporated Systems and methods for managing transactions for a merchant

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100250376A1 (en) * 2009-03-31 2010-09-30 Srikanth Nandiraju Virtual terminal for mobile devices
US20110307389A1 (en) * 2010-06-15 2011-12-15 Opensky Project, Inc. Method and System for Distributed Point of Sale Transactions
US10515361B2 (en) * 2016-12-28 2019-12-24 Capital One Services, Llc Smart card secure online checkout

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
WO2001014990A1 (en) * 1999-08-21 2001-03-01 Webever, Inc. Method for content delivery over the internet
US6374402B1 (en) * 1998-11-16 2002-04-16 Into Networks, Inc. Method and apparatus for installation abstraction in a secure content delivery system
US20030023512A1 (en) * 2001-04-06 2003-01-30 Phil Festa Interactive on-line catalog
US20030036966A1 (en) * 2001-08-16 2003-02-20 International Business Machines Corporation Computer system, method, and business method for integrating an e-commerce application with a back-end business processing application
US20030088483A1 (en) * 2000-12-28 2003-05-08 Bissell, Inc. System, method and computer program product for an enhanced E-commerce graphical user interface
US20040047287A1 (en) * 2002-04-05 2004-03-11 Gary Tremblay Method and apparatus for location dependent software applications
US20050192817A1 (en) * 2004-02-26 2005-09-01 Dustin Sorenson System and method for information handling system consumable automatic ordering
US20060021019A1 (en) * 2004-07-21 2006-01-26 International Business Machines Corporation Method and system for federated provisioning
US20070268163A1 (en) * 2006-04-27 2007-11-22 Snocap, Inc. System, method and computer program product for facilitating e-commerce involving digital assets
US20080005021A1 (en) * 2000-06-27 2008-01-03 Brown Nicholas A L Transaction system and method
US20080103923A1 (en) * 2006-10-31 2008-05-01 Digital River, Inc. Centralized Payment Gateway System and Method

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4633394A (en) * 1984-04-24 1986-12-30 International Business Machines Corp. Distributed arbitration for multiple processors
US5757917A (en) * 1995-11-01 1998-05-26 First Virtual Holdings Incorporated Computerized payment system for purchasing goods and services on the internet
US7137006B1 (en) 1999-09-24 2006-11-14 Citicorp Development Center, Inc. Method and system for single sign-on user access to multiple web servers
US6490567B1 (en) * 1997-01-15 2002-12-03 At&T Corp. System and method for distributed content electronic commerce
US6330575B1 (en) * 1998-03-31 2001-12-11 International Business Machines Corporation Web commerce tool kit for distributed payment processing
US6629135B1 (en) * 1998-09-17 2003-09-30 Ddr Holdings, Llc Affiliate commerce system and method
US6473740B2 (en) * 1998-11-29 2002-10-29 Qpass, Inc. Electronic commerce using a transaction network
US7197475B1 (en) * 1999-06-30 2007-03-27 Catalog City, Inc. Multi-vendor internet commerce system for e-commerce applications and methods therefor
US20050027611A1 (en) * 1999-08-26 2005-02-03 Wharton Brian K. Electronic commerce systems and methods providing multiple-vendor searches
US7716077B1 (en) * 1999-11-22 2010-05-11 Accenture Global Services Gmbh Scheduling and planning maintenance and service in a network-based supply chain environment
US20030126075A1 (en) * 2001-11-15 2003-07-03 First Data Corporation Online funds transfer method
US20010051893A1 (en) 2000-03-16 2001-12-13 Atsushi Hanai Online shopping system and method
US6981028B1 (en) * 2000-04-28 2005-12-27 Obongo, Inc. Method and system of implementing recorded data for automating internet interactions
US7412409B2 (en) 2000-06-15 2008-08-12 American Express Travel Related Services Company, Inc. Online ordering medium and method
AU2001280297A1 (en) 2000-06-29 2002-01-08 Jonathan Ferrier An e-commerce system
US7363247B1 (en) 2000-06-30 2008-04-22 Tessco Communications Incorporated Online product ordering method and system
US7257581B1 (en) * 2000-08-04 2007-08-14 Guardian Networks, Llc Storage, management and distribution of consumer information
US7072859B1 (en) 2000-08-21 2006-07-04 Black & Decker Inc. Electronic commerce checkout system
US6836765B1 (en) * 2000-08-30 2004-12-28 Lester Sussman System and method for secure and address verifiable electronic commerce transactions
US7778889B2 (en) * 2000-08-31 2010-08-17 The Softad Group, Llc Modular e-commerce web site development system
US7373321B2 (en) 2001-02-15 2008-05-13 Ecost.Com, Inc. System and method for electronic commerce
US7308424B2 (en) 2001-03-12 2007-12-11 Ricoh Company, Ltd. Electronic commerce system and electronic commerce method
US20060085282A1 (en) 2001-03-15 2006-04-20 Atsushi Hanai Online shopping system and method
US20030115107A1 (en) 2001-12-17 2003-06-19 Amensen Robert N. Method and system for cart transfer in electronic commerce
US20030191709A1 (en) * 2002-04-03 2003-10-09 Stephen Elston Distributed payment and loyalty processing for retail and vending
AUPS241702A0 (en) * 2002-05-20 2002-06-13 Cytek Pty Ltd An electronic commerce portal
US7346587B2 (en) 2002-12-06 2008-03-18 Aol Llc Intelligent method of order completion in an e-commerce environment based on availability of stored billing information
US7457778B2 (en) * 2003-03-21 2008-11-25 Ebay, Inc. Method and architecture for facilitating payment to e-commerce merchants via a payment service
US7225148B2 (en) 2003-07-25 2007-05-29 Peter Kassan E-commerce shopping cart
US20050108104A1 (en) 2003-11-14 2005-05-19 Katherine Woo Integrating third party shopping cart applications with an online payment service
US7865399B2 (en) * 2005-04-22 2011-01-04 Google Inc. Distributed electronic commerce system with centralized point of purchase
US7756752B2 (en) 2005-08-22 2010-07-13 Yahoo! Inc. Customization of an online shopping experience
US7640193B2 (en) * 2005-12-09 2009-12-29 Google Inc. Distributed electronic commerce system with centralized virtual shopping carts
US7591424B2 (en) * 2006-03-30 2009-09-22 Microsoft Corporation Framework for adding billing payment types
US8190493B2 (en) * 2006-03-31 2012-05-29 Digital River, Inc. Shopping cart service system and method
RU2449481C2 (en) * 2006-04-05 2012-04-27 Виза Интернешнл Сервис Ассошиэйшн Methods and systems for improved effecting of payments by purchasers
JP2007293575A (en) 2006-04-25 2007-11-08 Shigeru Furuno Electronic commerce system
US9105059B2 (en) 2006-06-27 2015-08-11 Google Inc. Electronic commerce system utilizing custom merchant calculations
US20080228853A1 (en) * 2007-03-15 2008-09-18 Kayxo Dk A/S Software system
US20090271250A1 (en) * 2008-04-25 2009-10-29 Doapp, Inc. Method and system for providing an in-site sales widget
US9324098B1 (en) * 2008-07-22 2016-04-26 Amazon Technologies, Inc. Hosted payment service system and method

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US6374402B1 (en) * 1998-11-16 2002-04-16 Into Networks, Inc. Method and apparatus for installation abstraction in a secure content delivery system
WO2001014990A1 (en) * 1999-08-21 2001-03-01 Webever, Inc. Method for content delivery over the internet
US20080005021A1 (en) * 2000-06-27 2008-01-03 Brown Nicholas A L Transaction system and method
US20030088483A1 (en) * 2000-12-28 2003-05-08 Bissell, Inc. System, method and computer program product for an enhanced E-commerce graphical user interface
US20030023512A1 (en) * 2001-04-06 2003-01-30 Phil Festa Interactive on-line catalog
US20030036966A1 (en) * 2001-08-16 2003-02-20 International Business Machines Corporation Computer system, method, and business method for integrating an e-commerce application with a back-end business processing application
US20040047287A1 (en) * 2002-04-05 2004-03-11 Gary Tremblay Method and apparatus for location dependent software applications
US20050192817A1 (en) * 2004-02-26 2005-09-01 Dustin Sorenson System and method for information handling system consumable automatic ordering
US20060021019A1 (en) * 2004-07-21 2006-01-26 International Business Machines Corporation Method and system for federated provisioning
US20070268163A1 (en) * 2006-04-27 2007-11-22 Snocap, Inc. System, method and computer program product for facilitating e-commerce involving digital assets
US20080103923A1 (en) * 2006-10-31 2008-05-01 Digital River, Inc. Centralized Payment Gateway System and Method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11416845B2 (en) 2012-04-18 2022-08-16 Mastercard International Incorporated Systems and methods for managing transactions for a merchant
US11907930B2 (en) 2012-04-18 2024-02-20 Mastercard International Incorporated Systems and methods for managing transactions for a merchant

Also Published As

Publication number Publication date
US20100049656A1 (en) 2010-02-25
US9760921B2 (en) 2017-09-12

Similar Documents

Publication Publication Date Title
US7599856B2 (en) Detection of fraudulent attempts to initiate transactions using modified display objects
US8200537B2 (en) Integrated retailer process
US8156041B2 (en) Dynamic indicator for context sensitive real-time communications
US9105059B2 (en) Electronic commerce system utilizing custom merchant calculations
US20020152175A1 (en) Methods and apparatus for the interoperablility and manipulation of data in a computer network
US20050102227A1 (en) Electronic commerce method and system utilizing integration server
EP2624190A1 (en) Authentication of payment transactions using an alias
Huang et al. BulaPay: a novel web service based third-party payment system for e-commerce
US20090055296A1 (en) Systems and methods for electronic delivery of stored value
US20040128257A1 (en) Method and apparatus for administering one or more value bearing instruments
US20060271497A1 (en) Payment authorisation process
EP3799401B1 (en) Systems and methods for facilitating authentication of emails sent by 3rd parties
JP2014075155A (en) Payment application framework
US7035817B1 (en) Electronic catalog method
US20120253976A1 (en) Half-Graphical User Interface Order Processing Method and Web Service
KR20010077123A (en) A package payment and delivery method using a common shopping cart in a computer network shopping
US20080162366A1 (en) Authentication data-enabled transfers
US20040117263A1 (en) Method, server system and computer program product for user registration and electronic commerce system
US11522862B2 (en) Systems and methods for a trusted entity to facilitate authentication of emails sent by 3rd parties
KR20020015544A (en) An electronic contract system and a method thereof on the network
TW528956B (en) Authorization method and system for accessing resource
Sharma E-commerce and E-business
Dulai et al. IOTP and Payments Protocols
US20040143554A1 (en) Method and apparatus for generating a value bearing instrument
WO2008105641A1 (en) System of providing interactive shopping file and method thereof

Legal Events

Date Code Title Description
AS Assignment

Owner name: MACQUARIE US TRADING LLC, ILLINOIS

Free format text: FIRST LIEN GRANT OF SECURITY INTEREST PATENTS;ASSIGNOR:DIGITAL RIVER, INC.;REEL/FRAME:034980/0698

Effective date: 20150212

Owner name: CORTLAND CAPITAL MARKET SERVICESLLC, AS COLLATERAL

Free format text: SECURITY INTEREST;ASSIGNOR:DIGITAL RIVER, INC.;REEL/FRAME:034981/0429

Effective date: 20150212

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: DIGITAL RIVER, INC., MINNESOTA

Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL;ASSIGNOR:MACQUARIE US TRADING LLC;REEL/FRAME:057252/0637

Effective date: 20210601

Owner name: DIGITAL RIVER, INC., MINNESOTA

Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL;ASSIGNOR:CORTLAND CAPITAL MARKET SERVICES LLC;REEL/FRAME:057252/0663

Effective date: 20210601