230 likes | 395 Views
Databases & the Internet - 2000. E-COMMERCE. using. By Pablo Galiana. The Big Business. B2B e-commerce transactions will explode to $3 trillion by 2004. The lion's share will be in essential goods, services, and merchandise.
E N D
Databases & the Internet - 2000 E-COMMERCE using By Pablo Galiana
The Big Business • B2B e-commerce transactions will explode to $3 trillion by 2004. • The lion's share will be in essential goods, services, and merchandise. • Cross-industry transactions -- sometimes called e-procurement -- for things like office supplies, computers, and travel services will increase dramatically.
Capabilities Overview • cXML allows buyers, suppliers, aggregators, and intermediaries to communicate using a single, standard, open language. • cXML provides access to products and services, because it is a well-defined, robust language designed specifically for B2B e-commerce. • cXML transactions consist of documents, which are simple text files with well defined format and contents. • Main cXML concepts: • Catalogs • Punchout • Purchase orders
Users Catalog Supplier Procurement Application Buying Organization Catalogs • Catalogs are files that convey product and service content to buying organizations. • Catalogs describe: • products, services and their prices • Suppliers create catalogs so that organizations that use procurement applications can see their product and service offerings and buy from them. • Procurement applications read the catalogs and store them internally in their databases.
Users Items Descriptions Supplier Punchout Session Procurement Application Buying Organization Punchout • Punchout sites are live, interactive catalogs running on the supplier Website. • Procurement applications display a button instead of product or pricing details. • When users click this button, their Web browsers display pages from the local Website. • When users are done selecting items, they click a button that returns the order information to the procurement application. • Procurement applications communicate with the supplier over the Internet by using cXML. • The supplier sends the item descriptions and the fully configured products and their prices appear within users’ purchase requisitions. See PunchOutIndexCatalog.xml
Purchase Orders Users Supplier Procurement Application Buying Organization Buying organizations send purchase orders to suppliers to request fulfillment of a contract. Order
Types of Applications that Use cXML • Procurement Applications • Enterprise applications that are hosted by large organizations for use by their employees over an intranet. • They use cXML for external transactions. • These applications allow communities of users to buy products and services from vendors. • Requested purchases are first approved by managers in the communities, and approved purchase orders are transmitted to suppliers. • Commerce Network Platforms • Web-based services for connecting buyers and suppliers. • These Web services provide features such as catalog validation and file management, catalog publishing and subscription, automated purchase order routing, and purchase order history. • Communication between these Web services, buyer applications, and supplier applications can occur entirely through cXML over the Internet.
Types of Applications that Use cXML (contd.) • Punchout Catalogs • Interactive catalogs, available at supplier Websites. • Punchout catalogs are Web server applications, written in a programming language such as ASP (Active Server Pages), JavaScript, or CGI, that manage buyers’ punchout sessions. • They accept punchout requests from procurement applications, identify the buying organization, and display the appropriate information in HTML format. • At the end of the punchout session, the punchout site sends descriptions of the users’ selections, in cXML format, to the procurement applications. • Order-Receiving Systems • Applications at supplier sites that accept and process purchase orders sent by buying organizations.
Validation Against DTDs • Because cXML is an XML language, a set of Document Type Definitions (DTDs) thoroughly defines it. • These DTDs are text files that describe the precise syntax and order of cXML elements. • DTDs enable applications to validate the cXML they read or write. • cXML applications are not required to validate cXML documents, although it is recommended. • Performing Validation • Applications can use DTDs to validate all incoming and outgoing cXML documents. • XML validation applications are available on the Web. • If errors are detected, appropriate error code could be sent to the sender. • For best performance, cXML clients should look at the cXML version in the document headers and retrieve DTDs that have not already been stored locally. See PunchOutIndexCatalogFail.xml
Punchout Event Sequence 1. User log in to a procurement application and open new purchase requisitions. They find desired items by searching their local catalogs by commodity, supplier, or product description. When they select a punchout item, the procurement application sends a cXML PunchOutSetupRequest document to a network e-commerce hub. 2. Acting as the trusted third party, the hub accepts the request, verifies the buying organization, and 3. The hub passes the request to the supplier’s Website. 4. After the supplier’s Website receives a request, it sends back a PunchOutSetupResponse containing a URL that tells the procurement application where to go to initiate a browsing session on your Website. 5. The procurement application opens a new browser window, which displays a session logged into an account on supplier’s Website. This account can be specific to a region, a company, a department, or a user.
5. Open browser session 4. PunchOutSetupResponse 1. PunchOutSetupRequest “create” operation 3. PunchOutSetupRequest Steps 1 & 2: Punchout Request Punchout Event Sequence Procurement Application User Supplier 2. Authentication
Structure of a cXML Request document <cXML> <Header> <From> From information here... </From> <To> To information here... </To> <Sender> Sender information here... </Sender> </Header> <Request> Request information here… </Request> </cXML>
Supplier WebSite 1. The supplier Website receives the cXML document and knows that it is authenticated because it contains the shared secret. 2. The Website uses information in the From element to identify the requester at the company level (for example, falafel.com). 3. The Website sends a PunchOutSetupResponse. The PunchOutSetupResponse document serves two functions: • It indicates whether the PunchOutSetupRequest was successful. • It provides the procurement application with a redirect URL to the Start Page. See PunchOutSetupResponse.xml
Structure of a cXML Response document <cXML> <Response> Response information here… </Response> </cXML>
Punchout Event Sequence (contd.) Step 3: Product Selection • Users select items from the inventory using all the features and services provided by the supplier’s Website: • Features might include: • Configurator tools for building customized products • Search engines for finding products from large catalogs. • Views of normalized data for comparing products based on price, features, or availability. • Real-time pricing, inventory, and availability checking. • Automatic tax and shipping calculations.
Punchout Event Sequence (contd.) 1. The supplier’s Website calculates the total cost of the user’s selections, including tax, shipping, and customer-specific discounts. When user click “Check Out” button the supplier sends the cXML PunchOutOrderMessage (with the contents of the shopping cart) to the Procurement Application. 2. If users need to edit any of the items in a purchase requisition, you can “re-punchout” to the supplier’s Website. The procurement application sends back the contents of the original shopping cart to the supplier Website and users make any changes there. 3. Upon check out, the Website returns the items to the purchase requisition.
2. PunchOutSetupRequest with “edit” as its operation. 1. PunchOutOrderMessage Step 4: Check Out Punchout Event Sequence (contd.) Procurement Application 3. PunchOutOrderMessage Supplier See PunchOutOrderMessage.xml andEditRequest.xml
1. OrderRequest 2. OrderResponse Step 5: Transmittal of Purchase Order Punchout Event Sequence (contd.) Procurement Application 1. When request is fully approved, an OrderRequest document is sent to supplier through e-commerce network hub. 2. The Supplier WebSite respond with an OrderResponse document, that acknowledges the reception of the purchase order and that it parses correctly. Supplier See OrderRequest.xml and OrderResponse.xml
Structure of a cXML OrderRequest element <OrderRequest> < OrderRequestHeader> <Total> Total of the order… </Total> <ShipTo> Ship to information… </ShipTo> <BillTo> Bill to information… </BillTo> <Shipping> Shipping information… </Shipping> <Tax> Tax information… </Tax> <Payment> Payment information… </Payment> <Contact> Contact information… </Contact> <Comments> Comments… </Comments> <Followup> … </Followup> </OrderRequestHeader> <ItemOut> <ItemId> … </ItemId> <ItemDetail> … </ItemDetail> Other Item information... </ItemOut> </OrderRequest >
Structure of a cXML OrderResponse document <cXML version="1.1.007" payloadID="9949494" xml:lang="en-US" timestamp="1999-03-12T18:39:09-08:00"> <Response> <Statuscode="200"text="OK"/> </Response> </cXML>
cXML Home Page www.cxml.org Useful Links Microsoft Corporation www.microsoft.com Ariba Inc. www.ariba.com International Organization for Standardization www.iso.ch WorldWide Web Consortium www.w3.org
The End Thank you!