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
Priority to US12/195,990 priority Critical patent/US9760921B2/en
Application filed by Digital River Inc filed Critical Digital River Inc
Priority to US13/494,507 priority patent/US20120253976A1/en
Publication of US20120253976A1 publication Critical patent/US20120253976A1/en
Assigned to MACQUARIE US TRADING LLC reassignment MACQUARIE US TRADING LLC FIRST LIEN GRANT OF SECURITY INTEREST PATENTS Assignors: DIGITAL RIVER, INC.
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.
Application status is Abandoned legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce, e.g. shopping or e-commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping
    • G06Q30/0603Catalogue ordering
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce, e.g. shopping or e-commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping

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 (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

Applications Claiming Priority (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

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)

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
US20180181956A1 (en) * 2016-12-28 2018-06-28 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
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
WO2000016210A1 (en) * 1998-09-17 2000-03-23 Nexchange Corporation 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
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
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
US20060085282A1 (en) * 2001-03-15 2006-04-20 Atsushi Hanai Online shopping system and 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
AU8029701A (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
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
AU2007234789B2 (en) * 2006-04-05 2011-10-06 Visa International Service Association Methods and systems for enhanced consumer payment
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

Also Published As

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

Similar Documents

Publication Publication Date Title
US8606719B2 (en) System for management of alternatively priced transactions on network
US7533050B2 (en) Integration of computer applications and e-business capability
Angeles Revisiting the role of Internet-EDI in the current electronic commerce scene
US5724424A (en) Digital active advertising
US7640193B2 (en) Distributed electronic commerce system with centralized virtual shopping carts
US6163772A (en) Virtual point of sale processing using gateway-initiated messages
US8099365B2 (en) Extended data collection for multi-merchant purchasing environment for downloadable products
KR100912613B1 (en) Secure transaction protocol
US8160935B2 (en) Payment service capable of being integrated with merchant sites
AU2008201859B2 (en) Distributed System for Commerce
CN102341817B (en) payment system
US6253027B1 (en) System, method and article of manufacture for exchanging software and configuration data over a multichannel, extensible, flexible architecture
US6373950B1 (en) System, method and article of manufacture for transmitting messages within messages utilizing an extensible, flexible architecture
US6178409B1 (en) System, method and article of manufacture for multiple-entry point virtual point of sale architecture
JP5870442B2 (en) Process and apparatus for notifying financial documents and the like
US6363363B1 (en) System, method and article of manufacture for managing transactions in a high availability system
US7337148B2 (en) Enhanced security and processing for web service business transactions
US7849020B2 (en) Method and apparatus for network transactions
US20040117321A1 (en) System and method for secure network purchasing
US6058381A (en) Many-to-many payments system for network content materials
US7698398B1 (en) System and method for generating Web Service architectures using a Web Services structured methodology
US20020019781A1 (en) Method and system for facilitating the anonymous purchase of goods and services from an e-commerce website
US8069435B1 (en) System and method for integration of web services
JP5439322B2 (en) Method and apparatus for conducting electronic transactions
US8346929B1 (en) System and method for generating secure Web service architectures using a Web Services security assessment methodology

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