Electronic Business on the Internet - Tutorial - Marjan Mihanovic, [email protected] Dusan Dingarac,...

268
Electronic Business on Electronic Business on the Internet the Internet - Tutorial - - Tutorial - Marjan Mihanovic, [email protected] Marjan Mihanovic, [email protected] Dusan Dingarac, [email protected] Dusan Dingarac, [email protected] Zoran Horvat, [email protected] Zoran Horvat, [email protected] Miodrag Stefanovic, [email protected] Miodrag Stefanovic, [email protected] Prof. Dr. Veljko Milutinovic, [email protected] Prof. Dr. Veljko Milutinovic, [email protected] Authors Authors : : How to Make Your Own E-Commerce Site: How to Make Your Own E-Commerce Site: The Design Engineer Viewpoint The Design Engineer Viewpoint

Transcript of Electronic Business on the Internet - Tutorial - Marjan Mihanovic, [email protected] Dusan Dingarac,...

Page 1: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Electronic Business on the Internet Electronic Business on the Internet

- Tutorial -- Tutorial -

Marjan Mihanovic, [email protected] Mihanovic, [email protected]

Dusan Dingarac, [email protected] Dingarac, [email protected]

Zoran Horvat, [email protected] Horvat, [email protected]

Miodrag Stefanovic, [email protected] Stefanovic, [email protected]

Prof. Dr. Veljko Milutinovic, [email protected]. Dr. Veljko Milutinovic, [email protected]

Authors:Authors:

How to Make Your Own E-Commerce Site:How to Make Your Own E-Commerce Site:The Design Engineer ViewpointThe Design Engineer Viewpoint

Page 2: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 2/268

Made by: Ifact

What will you learn from this tutorial?What will you learn from this tutorial?

INTRODUCTIONINTRODUCTION– You will become familiar with some basic techniques and terminology.You will become familiar with some basic techniques and terminology.

YAHOO! StoreYAHOO! Store– The easiest way to make your business Internet-enabledThe easiest way to make your business Internet-enabled

ecBuilderecBuilder– Software package, intended for creating more advanced eCommerce Software package, intended for creating more advanced eCommerce

solutions, still very easy to use.solutions, still very easy to use. SSL SSL

– What is Secure Socket Layer, and why is it so important?What is Secure Socket Layer, and why is it so important? Microsoft Site Server Commerce EditionMicrosoft Site Server Commerce Edition

– The most powerful tool, The most powerful tool, for the large and most advanced e-commerce solutions.for the large and most advanced e-commerce solutions.

E-Xact Online Payment SystemE-Xact Online Payment System– How does payment transaction really works.How does payment transaction really works.

This Tutorial will guide you through the following sections:This Tutorial will guide you through the following sections:

Page 3: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Introduction to E-CommerceIntroduction to E-Commerce

E-Business - The shape of things to come

Page 4: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 4/268

Made by: Ifact

IntroductionIntroduction

E-business has made lots of innovations in modern business.E-business has made lots of innovations in modern business. Today, the most important way of doing E-business Today, the most important way of doing E-business

is over the Internet.is over the Internet. Old kinds of E-business systems are either canceledOld kinds of E-business systems are either canceled

or improved so they can work over the Internet.or improved so they can work over the Internet. In the next two years In the next two years

one percent of World Trade will go over the Internetone percent of World Trade will go over the Internet(billions of dollars).(billions of dollars).

Page 5: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 5/268

Made by: Ifact

IntroductionIntroduction

By using modern techniques such as:By using modern techniques such as:– World Wide Web (WWW)World Wide Web (WWW)– IntranetIntranet– ExtranetExtranet– Virtual Private Network (VPN)Virtual Private Network (VPN)– Secure Socket Layer (SSL) encryptionSecure Socket Layer (SSL) encryption

Business over the Internet is openingBusiness over the Internet is openinga whole new world of opportunities:a whole new world of opportunities:

Page 6: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 6/268

Made by: Ifact

IntroductionIntroduction

Better communication inside company (Intranet)Better communication inside company (Intranet) Geographical location of company partsGeographical location of company parts

became transparent (VPN)became transparent (VPN) Collaboration with distributors and suppliers on schedulingCollaboration with distributors and suppliers on scheduling Forecasting, and just-in-timeForecasting, and just-in-time

replenishment of supplies (Extranet)replenishment of supplies (Extranet) Telecommuting (employee can do his/her job from home)...Telecommuting (employee can do his/her job from home)...

Page 7: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 7/268

Made by: Ifact

IntroductionIntroduction

The most interesting part of E-business over the Internet The most interesting part of E-business over the Internet (also called I-business)(also called I-business)is E-commerce over the Internet (I-commerce)is E-commerce over the Internet (I-commerce)

Over 170 000 000 people, Over 170 000 000 people, that were using Internet on 1.1.2000.,that were using Internet on 1.1.2000.,can be potential customerscan be potential customers

Number of Internet users doubles every three yearsNumber of Internet users doubles every three years The most important thing for I-commerce is web store;The most important thing for I-commerce is web store;

a place where you can show and sella place where you can show and sellyour goods to Internet users.your goods to Internet users.

Page 8: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 8/268

Made by: Ifact

Web storeWeb store

Having web store is much cheaper Having web store is much cheaper than having a classical onethan having a classical one

For web store you don't have to pay dozens of bills:For web store you don't have to pay dozens of bills:– rentrent– electricityelectricity– waterwater– city taxescity taxes– cleaning...cleaning...

You don't need to worry You don't need to worry if your store is in a good location for customersif your store is in a good location for customers

Also, you don't need any salesmen.Also, you don't need any salesmen.

Page 9: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 9/268

Made by: Ifact

Web storeWeb store

Your store is working non-stop:Your store is working non-stop: 24 hours per day24 hours per day 7 day per week7 day per week 365 (366) days per year365 (366) days per year Your customers from all over the worldYour customers from all over the world

can spend their money without any time-zone limits.can spend their money without any time-zone limits.

Page 10: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 10

/268

Made by: Ifact

Web storeWeb store

Internet is one giant marketInternet is one giant marketwhere you can sell your goods to anyone, anywherewhere you can sell your goods to anyone, anywhere

A number of countries that had been marginalizedA number of countries that had been marginalizedby their geographical positionby their geographical positiontake extremely active interest in E-commercetake extremely active interest in E-commerce

With E-commerce those countries can move With E-commerce those countries can move to the center of the virtual geographyto the center of the virtual geography

With your own Web storeWith your own Web storehundreds of millions of peoplehundreds of millions of peopleare just one click away from your business.are just one click away from your business.

Page 11: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 11/268

Made by: Ifact

Web storeWeb store

Let us see what is needed to open a new web store:Let us see what is needed to open a new web store: 1. Getting an Internet Merchant Bank Account1. Getting an Internet Merchant Bank Account

(account that enables credit card transactions over the Internet) (account that enables credit card transactions over the Internet) 2. Web Hosting2. Web Hosting

(getting WWW space with some Internet provider) (getting WWW space with some Internet provider) 3. Obtaining a Digital Certificate3. Obtaining a Digital Certificate

(obtaining initial keys for encryption, etc…) (obtaining initial keys for encryption, etc…) 4. Finding a Provider of Online Transactions4. Finding a Provider of Online Transactions

(middleman between your customer and your bank) (middleman between your customer and your bank) 5. Creating or Purchasing a Shopping Cart Software5. Creating or Purchasing a Shopping Cart Software

(getting hold of the web store infrastructure: sw-shelves, etc…) (getting hold of the web store infrastructure: sw-shelves, etc…)

Page 12: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 12

/268

Made by: Ifact

Internet Merchant Bank AccountInternet Merchant Bank Account

In order to be able to acceptIn order to be able to acceptcredit cards over the Internet,credit cards over the Internet,you must apply to your bankyou must apply to your bankfor an Internet Merchant Bank Accountfor an Internet Merchant Bank Account

Depending on which country you live inDepending on which country you live inand what bank you are with,and what bank you are with,this can be relatively easy or somewhat difficult.this can be relatively easy or somewhat difficult.

Page 13: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 13

/268

Made by: Ifact

Internet Merchant Bank AccountInternet Merchant Bank Account

In the USA, this is a fairly simple procedureIn the USA, this is a fairly simple procedure Many banks offer Internet Merchant Accounts,Many banks offer Internet Merchant Accounts,

and most Online Transaction Providers will support themand most Online Transaction Providers will support them Contact your bank for details.Contact your bank for details.

In In thethe U.S.A.: U.S.A.:

Page 14: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 14

/268

Made by: Ifact

Internet Merchant Bank AccountInternet Merchant Bank Account

Majority of Online Transaction Providers Majority of Online Transaction Providers are located in the USAare located in the USA

They are restricted in their abilityThey are restricted in their abilityto interact with banks outside their own countryto interact with banks outside their own country

International merchants have very little choiceInternational merchants have very little choice An international merchant has to find a way:An international merchant has to find a way:

– to get a US merchant accountto get a US merchant account– to find a local Online Transaction Providerto find a local Online Transaction Provider– or utilize one of the few companiesor utilize one of the few companies

that services the international marketthat services the international market

InternationallyInternationally:

Page 15: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 15

/268

Made by: Ifact

Internet Merchant Bank AccountInternet Merchant Bank Account

Many banks outside the USMany banks outside the UShave very restrictive policieshave very restrictive policiesregarding Internet accountsregarding Internet accounts

Luckily, the situation is improvingLuckily, the situation is improving Most Online Transaction Providers will help you with this Most Online Transaction Providers will help you with this

if you get in touch with them.if you get in touch with them. EU has recently adopted a recommendation EU has recently adopted a recommendation

aimed at making E-commerce easieraimed at making E-commerce easier(liberal domain assignments, int’l Internet banking, etc…)(liberal domain assignments, int’l Internet banking, etc…)

Page 16: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 16

/268

Made by: Ifact

Internet Merchant Bank AccountInternet Merchant Bank Account

Keep in mind when you apply for a Merchant Bank Account:Keep in mind when you apply for a Merchant Bank Account: A US merchant account can takeA US merchant account can take

up to a month to come throughup to a month to come through If you already have a merchant bank account,If you already have a merchant bank account,

you will probably also need to upgrade ityou will probably also need to upgrade itto an Internet accountto an Internet account

Ensure that your bank accepts Internet merchant accountsEnsure that your bank accepts Internet merchant accountsand has credit card processors that can connect toand has credit card processors that can connect toFDC, Paymentech, or CyberCash (alternative payment methods)FDC, Paymentech, or CyberCash (alternative payment methods)

Your account must be able to handleYour account must be able to handleCard Not Present transactions (important!).Card Not Present transactions (important!).

Page 17: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 17

/268

Made by: Ifact

Web HostingWeb Hosting

Web hosting is a very important step in this processWeb hosting is a very important step in this process This is how you gain a presence on the InternetThis is how you gain a presence on the Internet

in the first placein the first place It is important that the web hosting companyIt is important that the web hosting company

is capable of providing you with the level of serviceis capable of providing you with the level of servicethat you need to maintain your Web storethat you need to maintain your Web store

A few things to look for are:A few things to look for are:– Good uptime (over 99,5% guarantied)Good uptime (over 99,5% guarantied)– Good technical support (your store is working non-stop)Good technical support (your store is working non-stop)– Fast connection to the InternetFast connection to the Internet– Staff that is knowledgeable about E-commerceStaff that is knowledgeable about E-commerce– Compatibility with major E-commerce providersCompatibility with major E-commerce providers– Classified statistics of access to your Web siteClassified statistics of access to your Web site

Page 18: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 18

/268

Made by: Ifact

Web HostingWeb Hosting

It is always good to spend some timeIt is always good to spend some timewhen choosing a Web hosting companywhen choosing a Web hosting company

There are many 'fly-by-night' businesses out thereThere are many 'fly-by-night' businesses out there(if you are working globally, night jobs are not wanted)(if you are working globally, night jobs are not wanted)

For the money you're spending,For the money you're spending,make sure that the company is reputable.make sure that the company is reputable.

Page 19: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 19

/268

Made by: Ifact

Obtaining a Digital CertificateObtaining a Digital Certificate

A digital certificate (SSL Server Certificate),A digital certificate (SSL Server Certificate),enables SSL on the Web serverenables SSL on the Web server

SSL protects communications,SSL protects communications,so you can take credit card orders securelyso you can take credit card orders securely

It ensures that hackers cannot eavesdrop on youIt ensures that hackers cannot eavesdrop on you Any E-commerce company will require youAny E-commerce company will require you

to have SSL before you can use their servicesto have SSL before you can use their services For most people For most people

obtaining a digital certificate is not a problemobtaining a digital certificate is not a problem For a minimal fee,For a minimal fee,

one can usually use the certificate owned byone can usually use the certificate owned bythe Web hosting company where your page resides.the Web hosting company where your page resides.

Page 20: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 20

/268

Made by: Ifact

Obtaining a Digital CertificateObtaining a Digital Certificate

If you are a larger company, however,If you are a larger company, however,you may want to get your own digital certificateyou may want to get your own digital certificate(for CC processing and/or for processing of sensitive data)(for CC processing and/or for processing of sensitive data)

A certificate costs about $150.00 per yearA certificate costs about $150.00 per yearand can be obtained fromand can be obtained from– Verisign (Verisign (http://www.verisign.comhttp://www.verisign.com))

oror– Thawte (Thawte (http://www.thawte.comhttp://www.thawte.com))

Page 21: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 21

/268

Made by: Ifact

Provider of Online TransactionsProvider of Online Transactions

Before you start looking for a provider,Before you start looking for a provider,you should stop for a momentyou should stop for a momentand consider what exactly you needand consider what exactly you need

How many transactions do you expectHow many transactions do you expectto be completed in a month?to be completed in a month?

How many products do you haveHow many products do you haveto put on your web site?to put on your web site?

How complex does the software need to be?How complex does the software need to be? How much are you willing to spend?How much are you willing to spend?

Page 22: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 22

/268

Made by: Ifact

Provider of Online TransactionsProvider of Online Transactions

There are a lot of online transaction providersThere are a lot of online transaction providers They offer all kinds of packagesThey offer all kinds of packages Decide on a provider's package that fits your needsDecide on a provider's package that fits your needs This is perhaps the most important aspectThis is perhaps the most important aspect

in creating an E-commerce Web site.in creating an E-commerce Web site.

Page 23: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 23

/268

Made by: Ifact

Shopping Cart SoftwareShopping Cart Software

Shopping cart software is the most popular Shopping cart software is the most popular and the most widely used concept of Web store architectureand the most widely used concept of Web store architecture

There are many other types of softwareThere are many other types of softwarethat you can use in your store,that you can use in your store,such as catalog software or a flat order formsuch as catalog software or a flat order form

Creating or purchasing a Shopping Cart Software?Creating or purchasing a Shopping Cart Software? Creating can be very complicated without proper toolsCreating can be very complicated without proper tools Creating can be very expensive.Creating can be very expensive.

Page 24: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 24

/268

Made by: Ifact

Shopping Cart SoftwareShopping Cart Software

Many Online Transaction Providers will have Many Online Transaction Providers will have shopping cart software that comes with their service, shopping cart software that comes with their service, but it can often be very expensivebut it can often be very expensive

Another possibility is a package that offers it as a rental Another possibility is a package that offers it as a rental included in the monthly service charge, included in the monthly service charge, or one that offers a simple flat order formor one that offers a simple flat order form

Maybe purchasing of good tools is the best solutionMaybe purchasing of good tools is the best solution(ecBuilder or Microsoft SSCE; (ecBuilder or Microsoft SSCE; Yahoo! Store is a ready-to-use Web store).Yahoo! Store is a ready-to-use Web store).

Page 25: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 25

/268

Made by: Ifact

Shopping Cart SoftwareShopping Cart Software

Generally it is possible to find Generally it is possible to find three different types of Web storethree different types of Web store

Three types of Web store creating and shopping cart software are Three types of Web store creating and shopping cart software are best represented with three examplesbest represented with three examplesdiscussed later in this tutorial:discussed later in this tutorial:

• 1) Yahoo! Store1) Yahoo! Store

• 2) EcBuilder2) EcBuilder

• 3) Microsoft Site Server Commerce Edition3) Microsoft Site Server Commerce Edition

Page 26: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 26

/268

Made by: Ifact

Credit CardCredit Card

The most widely used way of purchasingThe most widely used way of purchasingover the Internet is Credit Cardover the Internet is Credit Card

The consumer surfs the Internet to the merchants Web site, The consumer surfs the Internet to the merchants Web site, where he/she decides he/she wants to buy something.where he/she decides he/she wants to buy something.

The consumer is moved to the online transaction server, The consumer is moved to the online transaction server, which ensures security.which ensures security.

Transaction (credit card billing) is passed Transaction (credit card billing) is passed through private gateway to a CC Processing Network, through private gateway to a CC Processing Network, where it is completed (or denied).where it is completed (or denied).

Page 27: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 27

/268

Made by: Ifact

Credit CardCredit Card

System of validating card dataSystem of validating card dataand making a transaction is shown on this pictureand making a transaction is shown on this picture

Merchant Site

OnlineTransaction

ServerInternet

Consumer

Consumer

Other Merchant Sites

Other Merchant Sites

Private Gateway

BankBank

BankBank

issuing and acquiring

banks

Consumer

Page 28: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 28

/268

Made by: Ifact

Electronic CashElectronic Cash

Contrary to Credit Card, Contrary to Credit Card, Electronic Cash is informational equivalent Electronic Cash is informational equivalent of physical banknotes and coins.of physical banknotes and coins.

It is perfect for so-called micropaymentsIt is perfect for so-called micropayments(such as paying $0.10 for the one-time use of software(such as paying $0.10 for the one-time use of softwareor $0.19 for reading a literary essay)or $0.19 for reading a literary essay)

Electronic Cash can offer such benefits asElectronic Cash can offer such benefits as– anonymity of the buyeranonymity of the buyer– global acceptance...global acceptance...

but Credit Card will be dominant for at least the next few years.but Credit Card will be dominant for at least the next few years.

Page 29: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 29

/268

Made by: Ifact

Marketing...Marketing...

When the Web store is ready for customers,When the Web store is ready for customers,marketing your site is very important:marketing your site is very important:– Submit your site to as many search engines as possibleSubmit your site to as many search engines as possible– Try finding Web sites with similar themesTry finding Web sites with similar themes

and make deals to create reciprocal linksand make deals to create reciprocal links– Create an advertising bannerCreate an advertising banner

and purchase space from a popular Web site to display itand purchase space from a popular Web site to display it– Put your URL in the signature file of your emailPut your URL in the signature file of your email

and the header of all business correspondenceand the header of all business correspondence– Word of mouth is very powerful on the Internet;Word of mouth is very powerful on the Internet;

tell all of your friends about your pagetell all of your friends about your page– Avoid spamming - it is a sure way to get a very bad reputation.Avoid spamming - it is a sure way to get a very bad reputation.

Page 30: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 30

/268

Made by: Ifact

... and Planing... and Planing

Investigate the web sites that are possible rivalsInvestigate the web sites that are possible rivalsand formulate a strategy for competing against themand formulate a strategy for competing against them

If you anticipate a lot of growthIf you anticipate a lot of growthin the amount of orders coming through your site,in the amount of orders coming through your site,figure out how you are going to cope withfigure out how you are going to cope withthe increased load before you get swamped.the increased load before you get swamped.

Page 31: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Yahoo! StoreYahoo! Store

Page 32: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 32

/268

Made by: Ifact

Introduction to Yahoo! StoreIntroduction to Yahoo! Store

Yahoo! StoreYahoo! Store is a powerful tool for building e-Commerce sites. is a powerful tool for building e-Commerce sites.It can be accessed on the Internet address It can be accessed on the Internet address http://store.yahoo.com/http://store.yahoo.com/..

Basic advantagesBasic advantages– Low cost for small stores, Low cost for small stores,

thus highly applicable to small business solutionsthus highly applicable to small business solutions– Intuitive interface, easy to useIntuitive interface, easy to use– Results are visible immediatelyResults are visible immediately– Powerful support provided by Yahoo! on a number of topicsPowerful support provided by Yahoo! on a number of topics

concerning e-Commerce and e-Businessconcerning e-Commerce and e-Business

Page 33: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 33

/268

Made by: Ifact

Introduction to Yahoo! StoreIntroduction to Yahoo! Store

Basic disadvantagesBasic disadvantages– Cannot create original look of the e-Commerce site; Cannot create original look of the e-Commerce site;

sites on Yahoo! Store look similar to each other sites on Yahoo! Store look similar to each other no matter what effort was taken for visual design. no matter what effort was taken for visual design. That is because all sites are forced to have the same structure, That is because all sites are forced to have the same structure, and only graphical elements and their arrangement on the screen and only graphical elements and their arrangement on the screen may be partially differentmay be partially different

– Company still needs its own server Company still needs its own server in order to use most advanced capabilities of Yahoo! Store in order to use most advanced capabilities of Yahoo! Store (e.g. custom functions for tax and shipment calculation). (e.g. custom functions for tax and shipment calculation). If company owes a server (virtual or real), If company owes a server (virtual or real), it can use other tools (such as ecBuilder) it can use other tools (such as ecBuilder) to create more flexible e-Commerce site.to create more flexible e-Commerce site.

– Yahoo! Store certainly cannot fulfill all e-Business demands Yahoo! Store certainly cannot fulfill all e-Business demands asked by big companiesasked by big companies

Page 34: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 34

/268

Made by: Ifact

Registering With Yahoo!Registering With Yahoo!

Yahoo! Store IDs are maintained on the level of Yahoo!Yahoo! Store IDs are maintained on the level of Yahoo!(not on the level of Yahoo! Store),(not on the level of Yahoo! Store),so once you get an ID, you can access all Yahoo! services so once you get an ID, you can access all Yahoo! services

Obtain Yahoo! ID by registering at http://www.yahoo.com/Obtain Yahoo! ID by registering at http://www.yahoo.com/or at http://store.yahoo.com/. or at http://store.yahoo.com/.

This ID offers pass to Yahoo! services like:This ID offers pass to Yahoo! services like:mail at mail.yahoo.com, mail at mail.yahoo.com, e-Commerce at store.yahoo.com, etc. e-Commerce at store.yahoo.com, etc.

If you are already using some of Yahoo! services, If you are already using some of Yahoo! services, you do not need to register again; you do not need to register again; just use the same ID to create the store.just use the same ID to create the store.

Once logged on, the welcoming screen will be shown. Once logged on, the welcoming screen will be shown. You may take a look at some featured stores You may take a look at some featured stores

by clicking on appropriate links, by clicking on appropriate links, or you can take a search in order to find some specific store or you can take a search in order to find some specific store by using the Search field.by using the Search field.

Page 35: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 35

/268

Made by: Ifact

Creating the StoreCreating the Store

First step in First step in creating your own creating your own store is to click on store is to click on Create a Store Create a Store link. link.

This action leads This action leads to the store editor.to the store editor.

Page 36: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 36

/268

Made by: Ifact

Creating the StoreCreating the Store

In order to create a store, the user is prompted for:In order to create a store, the user is prompted for:– ID of the site - this field also becomes the address of the site; complete ID of the site - this field also becomes the address of the site; complete

address of your store after publishing will be address of your store after publishing will be http://store.yahoo.com/xyz, where xyz is ID you typed. http://store.yahoo.com/xyz, where xyz is ID you typed. It should be clear that once entered ID cannot be changed It should be clear that once entered ID cannot be changed later since it is the WWW address, as well: later since it is the WWW address, as well: user must be very careful when selecting this item. user must be very careful when selecting this item. It also has to be checked whether the specified ID is already in use: It also has to be checked whether the specified ID is already in use: if so, another ID should be entered.if so, another ID should be entered.

– Name of the site - this field is in fact the name of the company. Name of the site - this field is in fact the name of the company. Whatever is written as name, it will be shown at the top Whatever is written as name, it will be shown at the top of the front page of the site.of the front page of the site.

Page 37: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 37

/268

Made by: Ifact

Creating the Store – Final StepCreating the Store – Final Step

Suppose at this moment that we Suppose at this moment that we are featuring a company named are featuring a company named Raspberries, IncRaspberries, Inc., which offers ., which offers ecological fruit: raspberries, ecological fruit: raspberries, blackberries, and strawberries.blackberries, and strawberries.

Each fruit is offered in a number Each fruit is offered in a number of forms: fresh, frozen, juice, etc.of forms: fresh, frozen, juice, etc.

First we want to create the store First we want to create the store for our company: we may type for our company: we may type rasprasp in the ID field, and in the ID field, and Raspberries, Inc.Raspberries, Inc. in the name field. in the name field.

Thus, our WWW address will be: Thus, our WWW address will be: http://store.yahoo.com/rasp, http://store.yahoo.com/rasp, and heading on our front page and heading on our front page will read will read Raspberries, IncRaspberries, Inc..

Page 38: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 38

/268

Made by: Ifact

Instructions by Yahoo!Instructions by Yahoo!

After clicking at the Create button, a screen with instructions After clicking at the Create button, a screen with instructions will be shown. There you will find some important will be shown. There you will find some important information about your future store:information about your future store:– An account we have just created is temporal; An account we have just created is temporal;

transforming this account into real one will be presented later.transforming this account into real one will be presented later.– This temporal store will be treated for ten days, This temporal store will be treated for ten days,

and after that it will be automatically deleted. and after that it will be automatically deleted. (Whenever you log onto your store, (Whenever you log onto your store, current day countdown will be shown, current day countdown will be shown, just to remind you that your store will be deleted just to remind you that your store will be deleted if account is not transformed.)if account is not transformed.)

– During the test period of ten days, the site will be fully operational,During the test period of ten days, the site will be fully operational,except that orders from customers will be scrambled; except that orders from customers will be scrambled; it means that your temporal account cannot be used to make profit it means that your temporal account cannot be used to make profit until it is converted into a real accountuntil it is converted into a real account(the submitted CC# will not be visible to the store owner, etc...).(the submitted CC# will not be visible to the store owner, etc...).

Page 39: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 39

/268

Made by: Ifact

Types of Pages on the StoreTypes of Pages on the Store

Each store has three types of pages:Each store has three types of pages:– Front page - the first page of the siteFront page - the first page of the site– Section pages - each section presents separate items for sale, Section pages - each section presents separate items for sale,

showing only the most necessary properties showing only the most necessary properties of each item (such as price)of each item (such as price)

– Item pages - each item is represented on a separate page, Item pages - each item is represented on a separate page, containing all important data (price, design, size, quantity, etc.)containing all important data (price, design, size, quantity, etc.)

Links to section pages are provided on the front page. Links to section pages are provided on the front page. Each section page contains names and pictures Each section page contains names and pictures

(if provided) for items in that section.(if provided) for items in that section. By clicking on some item, the appropriate item page is loaded. By clicking on some item, the appropriate item page is loaded. Items can be put directly onto the front page, Items can be put directly onto the front page,

without creating sections at all. without creating sections at all. This option is preferable when only a few items are offered. This option is preferable when only a few items are offered.

Page 40: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 40

/268

Made by: Ifact

Preparing to Edit the StorePreparing to Edit the Store

After signing After signing with Yahoo!, with Yahoo!, the screen the screen with options with options will be will be shown.shown.

The key page;The key page;each one of each one of the 8 sections the 8 sections contains links contains links to vital to vital activitiesactivities

Only manager Only manager can access can access this page; not this page; not the shopper.the shopper.

Page 41: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 41

/268

Made by: Ifact

Selecting the InterfaceSelecting the Interface

At this moment, we are interested in the Edit section, At this moment, we are interested in the Edit section, which allows us to edit our store. which allows us to edit our store. Three options in this column represent three types of interface:Three options in this column represent three types of interface:– Simple Interface - shows only the necessary options Simple Interface - shows only the necessary options

for store buildingfor store building– Regular Interface - shows some additional options, Regular Interface - shows some additional options,

which allow the user to create a better visual look of the storewhich allow the user to create a better visual look of the store– Advanced Interface - shows the complete Yahoo! Store functionality; Advanced Interface - shows the complete Yahoo! Store functionality;

its use is recommended to experienced programmers only.its use is recommended to experienced programmers only. The three options differ in the amount of tools available for editThe three options differ in the amount of tools available for edit Only the last option allows links to other sites for extra functionsOnly the last option allows links to other sites for extra functions In the Edit section, click to link Simple, In the Edit section, click to link Simple,

in order to step into Simple Interface for store building.in order to step into Simple Interface for store building.

Page 42: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 42

/268

Made by: Ifact

Simple Interface at First GlanceSimple Interface at First Glance

After stepping into Simple Interface, After stepping into Simple Interface, a line with options will be shown a line with options will be shown at the bottom of the screen.at the bottom of the screen.

Also, online help will be available. Also, online help will be available. Click to Hide Help button, if you want Click to Hide Help button, if you want to remove help from the screen. to remove help from the screen.

It is recommended for new users to It is recommended for new users to leave online help visible for a while.leave online help visible for a while.

Online help is initially shown for Online help is initially shown for Simple Interface, and for Regular and Simple Interface, and for Regular and Advanced Interface it is initially Advanced Interface it is initially hidden. hidden.

In all interfaces, help can be In all interfaces, help can be toggled on/off with a single click.toggled on/off with a single click.

Page 43: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 43

/268

Made by: Ifact

Initial Look of the Front PageInitial Look of the Front Page

Now we shall add content Now we shall add content into our store: we should into our store: we should create sections for different create sections for different kinds of items, and then fill kinds of items, and then fill each section with each section with appropriate items.appropriate items.

Before sections and items Before sections and items are added, our front page are added, our front page shows only the heading.shows only the heading.

Font, size, face color, and Font, size, face color, and background color are all background color are all set to defaults. set to defaults.

We shall see later how We shall see later how these properties can be these properties can be changed in order to meet changed in order to meet our special demands.our special demands.

Page 44: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 44

/268

Made by: Ifact

Menu Bar at the Front PageMenu Bar at the Front Page

The line with options at the center of the page is context-sensitive.The line with options at the center of the page is context-sensitive. Previous figure shows its look at the front page of the store. Previous figure shows its look at the front page of the store.

It will look partially different on section and item pages.It will look partially different on section and item pages. Light yellow buttons on the bar are available. Light yellow buttons on the bar are available.

Grayed buttons are unavailable. Grayed buttons are unavailable. For instance, last button which reads Published For instance, last button which reads Published shows that our site is currently published shows that our site is currently published and another publishing is meaningless. and another publishing is meaningless. When we make some changes, When we make some changes, this button will read Publish and will be available.this button will read Publish and will be available.

The first button is Edit. It allows us to edit the current page, The first button is Edit. It allows us to edit the current page, in this case the front page. This option will be used in this case the front page. This option will be used to change some general aspects of the front page.to change some general aspects of the front page.

Page 45: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 45

/268

Made by: Ifact

Page VariablesPage Variables If we click the Edit If we click the Edit

button at the front button at the front page, another page page, another page with properties of the with properties of the front page will load.front page will load.

Properties are referred Properties are referred as Variables. as Variables.

Each page contains a Each page contains a number of variables number of variables that describe all that describe all relevant details of its relevant details of its look and structure.look and structure.

The site creation The site creation activity boils down to activity boils down to the changing of the the changing of the values of relevant values of relevant Variables!Variables!

Page 46: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 46

/268

Made by: Ifact

Variables for Front PageVariables for Front Page

Field names on this form are self-explanatory:Field names on this form are self-explanatory:– Page-title shows title of the browser windowPage-title shows title of the browser window– Page-elements is the list of elements Page-elements is the list of elements

that should be shown on the front pagethat should be shown on the front page– Image field allows us to upload an image,Image field allows us to upload an image,

which will substitute the name of the companywhich will substitute the name of the company– Image-format shows three possible positions of the image: Image-format shows three possible positions of the image:

left, banner, and unconstrainedleft, banner, and unconstrained– Buttons field is also a list, containing buttons Buttons field is also a list, containing buttons

that should be shown on the left margin of the front pagethat should be shown on the left margin of the front page– Message contains text that should be written under the store title.Message contains text that should be written under the store title.

Some other fields will be explained later.Some other fields will be explained later.

Page 47: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 47

/268

Made by: Ifact

Changing Some VariablesChanging Some Variables

At this step, we will enter the page title and the logo message.At this step, we will enter the page title and the logo message. Let page title be: Let page title be: Green food from SerbiaGreen food from Serbia. . If no page title is entered, store title will be used instead If no page title is entered, store title will be used instead

(in our case, (in our case, Raspberries, Inc.Raspberries, Inc.).). Message might be assumed as company motto, Message might be assumed as company motto,

e.g. e.g. Our fruit knows of no chemistryOur fruit knows of no chemistry.. We also may upload a title image by pressing We also may upload a title image by pressing

the Upload File button at the appropriate row. the Upload File button at the appropriate row. If this image is loaded, it will be used instead of the store title, If this image is loaded, it will be used instead of the store title, i.e. instead of i.e. instead of Raspberries, IncRaspberries, Inc. .

Note that page loading time will be longer when the uploaded Note that page loading time will be longer when the uploaded image is bigger. It is highly recommended to upload image is bigger. It is highly recommended to upload images smaller than 20kB, in order to keep high performance.images smaller than 20kB, in order to keep high performance.

Page 48: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 48

/268

Made by: Ifact

Creating New SectionCreating New Section

Now we may create sections on our front page.Now we may create sections on our front page. We will make three sections:We will make three sections:

– Fresh FruitsFresh Fruits– Frozen FruitsFrozen Fruits– Finished ProductsFinished Products

In order to create a section, In order to create a section, you should click onto the New Section button on the menu bar. you should click onto the New Section button on the menu bar.

Then, you will be prompted for name and caption Then, you will be prompted for name and caption of the new section.of the new section.

Page 49: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 49

/268

Made by: Ifact

Creating New SectionCreating New Section

To finish section creating, To finish section creating, click the Update button.click the Update button.

In the same manner, In the same manner, another two sections another two sections can be created. can be created.

After each section is After each section is created, appropriate created, appropriate section page is loaded. section page is loaded.

In order to return to the In order to return to the front page, click Home front page, click Home button at the left margin button at the left margin on the section page.on the section page.

Page 50: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 50

/268

Made by: Ifact

Selecting General Look of the PageSelecting General Look of the Page

Now we may take some time to change the general look Now we may take some time to change the general look of the front page.of the front page.

The simplest way to do this is to click the Look button The simplest way to do this is to click the Look button on the menu bar. on the menu bar.

After that, another line with buttons will load, After that, another line with buttons will load, containing general templates.containing general templates.

Each look can be selected by simple clicking Each look can be selected by simple clicking on the appropriate button. You may feel free to on the appropriate button. You may feel free to experiment with different styles, in order to find experiment with different styles, in order to find the one which best fits with your store style.the one which best fits with your store style.

Page 51: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 51

/268

Made by: Ifact

Selecting General Look of the PageSelecting General Look of the Page

Figure shows one possible look of Figure shows one possible look of our front page (style Soft on the our front page (style Soft on the menu bar). It is important to know menu bar). It is important to know that all pages (currently our three that all pages (currently our three section pages) will share the same section pages) will share the same look.look.

Note that the menu on the left Note that the menu on the left margin contains three buttons, margin contains three buttons, each of them leading to one each of them leading to one of our sections.of our sections.

It is highly recommended that all It is highly recommended that all pages on the site have the same pages on the site have the same general visual properties, in order general visual properties, in order to set impression of stability and to set impression of stability and consistency to the customer.consistency to the customer.

Page 52: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 52

/268

Made by: Ifact

Page VariablesPage Variables

Once the general look of the store is selected, Once the general look of the store is selected, some details can be fixed manually.some details can be fixed manually.

Complete look and structure of each page is described Complete look and structure of each page is described through its variables. through its variables. Variables are in fact properties of the page, Variables are in fact properties of the page, and can be viewed by clicking onto Variables button and can be viewed by clicking onto Variables button at the menu bar.at the menu bar.

Variable identifiers are mostly self-explaining, Variable identifiers are mostly self-explaining, so the use of the Variables section should be quite simple.so the use of the Variables section should be quite simple.

For instance, there are variables Button-font-size, Title, Email, For instance, there are variables Button-font-size, Title, Email, Page-width, etc. with obvious meanings.Page-width, etc. with obvious meanings.

Page 53: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 53

/268

Made by: Ifact

Changing Variable ValuesChanging Variable Values

Figure shows some of Figure shows some of the variables for the the variables for the front page.front page.

Value of the Value of the Background-color Background-color variable is changed variable is changed from white to pink, by from white to pink, by clicking onto the clicking onto the Select button, next to Select button, next to the variable name.the variable name.

After the Update After the Update button is pressed, our button is pressed, our front page will have front page will have pink background.pink background.

Page 54: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 54

/268

Made by: Ifact

Variable InheritanceVariable Inheritance

Once the variable is changed Once the variable is changed at the front page, at the front page, all pages will have all pages will have the new variable value as well. the new variable value as well.

For instance, our section pages will For instance, our section pages will have pink background as the front page have pink background as the front page does. Figure shows Fresh Fruits section does. Figure shows Fresh Fruits section with the pink background.with the pink background.

Note that the menu bar is somewhat Note that the menu bar is somewhat different on Fresh Fruits section page different on Fresh Fruits section page from the one on the front page. from the one on the front page. Menu bars are context-sensitive, Menu bars are context-sensitive, and tiny differences will arise and tiny differences will arise on different pages.on different pages.

Page 55: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 55

/268

Made by: Ifact

Adding an Item to the SectionAdding an Item to the Section

Now, we may try to add items into Now, we may try to add items into our store. Menu bar on section our store. Menu bar on section pages contains New Item option. pages contains New Item option.

After clicking to New Item option After clicking to New Item option (say, on the Fresh Fruits section (say, on the Fresh Fruits section page), a form will be loaded.page), a form will be loaded.

Four properties of the new item are Four properties of the new item are asked for: name, caption, code asked for: name, caption, code (this is internal code of the item), (this is internal code of the item), price in US Dollars.price in US Dollars.

After clicking to the Update button, After clicking to the Update button, our item will be added our item will be added to the Fresh Fruits section.to the Fresh Fruits section.

Page 56: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 56

/268

Made by: Ifact

Uploading an Image for the ItemUploading an Image for the Item

After a new item is created, After a new item is created, the appropriate item page will be loaded. the appropriate item page will be loaded. Now we may add ANY image for our item: Now we may add ANY image for our item: click onto Image option on the menu bar, click onto Image option on the menu bar, and upload an imageand upload an image

Make your own images; no library of images available!Make your own images; no library of images available! Note: after clicking to Image option, Note: after clicking to Image option,

another form will be loaded, offering us to browse for the image.another form will be loaded, offering us to browse for the image. There will also be a button for final image uploading. There will also be a button for final image uploading.

If this button does not exist, If this button does not exist, meaning that you cannot upload an image, meaning that you cannot upload an image, it means that your browser does not support uploading. it means that your browser does not support uploading. You should either change the browser, You should either change the browser, or update it to newer version.or update it to newer version.

Page 57: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 57

/268

Made by: Ifact

Full Look of the ItemFull Look of the Item

After an image is uploaded, After an image is uploaded, it will be shown both on theit will be shown both on theitem (upper figure) and the item (upper figure) and the section pages (lower figure).section pages (lower figure).

Note that image is shown Note that image is shown in full size on the item page, in full size on the item page, and as a thumbnail at the and as a thumbnail at the section page.section page.

Also, there is an Order button Also, there is an Order button at the item page. User will be at the item page. User will be able to order our product by able to order our product by clicking on that button.clicking on that button.

Page 58: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 58

/268

Made by: Ifact

Final Look of Fresh Fruits SectionFinal Look of Fresh Fruits Section

In the same manner, In the same manner, we can add other items we can add other items to our Fresh Fruits page. to our Fresh Fruits page.

Figure shows possible look Figure shows possible look of the Fresh Fruits page of the Fresh Fruits page after four items were added.after four items were added.

By clicking either on the name By clicking either on the name or the image of any item, or the image of any item, appropriate item page will be appropriate item page will be loaded: then, the user can order loaded: then, the user can order the wanted amount of the the wanted amount of the product.product.

Page 59: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 59

/268

Made by: Ifact

Changing Variables for Single PageChanging Variables for Single Page

Now, we may try to edit variables on the Fresh Fruits page.Now, we may try to edit variables on the Fresh Fruits page. By clicking the Variables option at the menu bar, By clicking the Variables option at the menu bar,

the list of variables will be loaded. the list of variables will be loaded. We may try to change the Background-color variable again, We may try to change the Background-color variable again, and choose some other color, and choose some other color, hoping that our Fresh Fruits page will be in a different color.hoping that our Fresh Fruits page will be in a different color.

New color will be set for the Fresh Fruits section page indeed, New color will be set for the Fresh Fruits section page indeed, but all the other pages will be changed too, but all the other pages will be changed too, and that is not what we wanted!and that is not what we wanted!

In fact, we want to change the background color In fact, we want to change the background color for Fresh Fruits section only, for Fresh Fruits section only, and leave all other pages with pink background.and leave all other pages with pink background.

Well, this task Well, this task cannotcannot be performed on Simple Interface: be performed on Simple Interface:Regular or Advanced Interface should be used.Regular or Advanced Interface should be used.

Page 60: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 60

/268

Made by: Ifact

Starting Regular InterfaceStarting Regular Interface

In order to use Regular Interface, type URL In order to use Regular Interface, type URL http://store.yahoo.com/ at your browser again.http://store.yahoo.com/ at your browser again.

If needed, retype your username and password.If needed, retype your username and password. Your personal page should be loaded, Your personal page should be loaded,

offering you to manage your stores. offering you to manage your stores. Click onto rasp store, and the manager page will be loaded.Click onto rasp store, and the manager page will be loaded. In the Edit part, click Regular in order to load Regular Interface.In the Edit part, click Regular in order to load Regular Interface.

Page 61: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 61

/268

Made by: Ifact

Menu Bar of the Regular InterfaceMenu Bar of the Regular Interface

At first glance, At first glance, everything is the same as it was at the Simple Interface, everything is the same as it was at the Simple Interface, except that menu bar carries much more options.except that menu bar carries much more options.

Notice a small triangle at the end of the menu bar. Notice a small triangle at the end of the menu bar. By clicking at this triangle, By clicking at this triangle, our interface will be upgraded to Advanced. our interface will be upgraded to Advanced.

At the Advanced interface, the same triangle will exist, At the Advanced interface, the same triangle will exist, but it will be turned to the left, but it will be turned to the left, and will be used to downgrade to Regular Interface.and will be used to downgrade to Regular Interface.

From Simple to Regular/Advanced by new login;From Simple to Regular/Advanced by new login;from Regular to Advanced and back via red arrowfrom Regular to Advanced and back via red arrow

Page 62: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 62

/268

Made by: Ifact

Overriding a VariableOverriding a Variable Now, we can step to our Fresh Now, we can step to our Fresh

Fruits sections. When the page Fruits sections. When the page is loaded, click onto Edit button is loaded, click onto Edit button on the menu bar.on the menu bar.

Page with options for this page Page with options for this page will be shown, and among other will be shown, and among other things, there will bethings, there will bea button reading a button reading Override Variable. Override Variable.

After clicking at this button, a After clicking at this button, a simple form will be loaded, simple form will be loaded, allowing us to select the variable allowing us to select the variable which we want to override.which we want to override.

All Variable values are the same, All Variable values are the same, except where we override the except where we override the Variable, locallyVariable, locally(for one page only)(for one page only)

Page 63: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 63

/268

Made by: Ifact

Overriding a VariableOverriding a Variable

Variable overriding is a powerful option, Variable overriding is a powerful option, which allows us to change one variable for one page only, which allows us to change one variable for one page only, and leave its old value for all the other pages. and leave its old value for all the other pages.

For instance, we may select Background-color variable For instance, we may select Background-color variable in the list offered at the Fresh Fruits page, in the list offered at the Fresh Fruits page, in order to change the background color for this page only.in order to change the background color for this page only.

Click onto the Update button Click onto the Update button to select Background-color variable for overriding.to select Background-color variable for overriding.

When you click to the Update button,When you click to the Update button,the variable is only set for override;the variable is only set for override;the actual value does not get changedthe actual value does not get changed

The actual value gets changed by clicking to Edit button,The actual value gets changed by clicking to Edit button,on the specific page of interest; the Variable will be shown,on the specific page of interest; the Variable will be shown,and you can change it, by clicking where appropriateand you can change it, by clicking where appropriate

Page 64: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 64

/268

Made by: Ifact

Overriding a VariableOverriding a Variable

Now the Background-color variable will be shown Now the Background-color variable will be shown at the bottom of the Edit page, at the bottom of the Edit page, and it will be possible to change its value separately.and it will be possible to change its value separately.

Once changed, Once changed, the new color will be applied only to the Fresh Fruits page, the new color will be applied only to the Fresh Fruits page, and all other pages will keep the pink background.and all other pages will keep the pink background.

Figure shows the bottom of the Edit page Figure shows the bottom of the Edit page containing the orange background color: containing the orange background color: only the Fresh Fruits section page now has the orange background.only the Fresh Fruits section page now has the orange background.

Page 65: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 65

/268

Made by: Ifact

Overriding a Variable: UndoingOverriding a Variable: Undoing

If you change your mind If you change your mind and wish to discard overriding for some variable, and wish to discard overriding for some variable, you may step to the Edit page again, you may step to the Edit page again, and click onto the Undo Override button.and click onto the Undo Override button.

Then select variable you wish to discard overriding, Then select variable you wish to discard overriding, and click onto the Update button: and click onto the Update button: the selected variable will be cleared from the list the selected variable will be cleared from the list of overridden variables.of overridden variables.

Page 66: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 66

/268

Made by: Ifact

Setting an Item to Be SpecialSetting an Item to Be Special

There may happen that you want to set some item There may happen that you want to set some item as a special offer. as a special offer.

For instance, fresh raspberries might be considered For instance, fresh raspberries might be considered as a representative product of our company.as a representative product of our company.

Yahoo! Store offers one simple option that helps Yahoo! Store offers one simple option that helps to emphasize some item or section.to emphasize some item or section.

At the Regular Interface, At the Regular Interface, at the page you want to emphasize, at the page you want to emphasize, there is an option reading Special.there is an option reading Special.

Click onto this option, Click onto this option, and a link to current page will be added to the front page.and a link to current page will be added to the front page.

Page 67: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 67

/268

Made by: Ifact

Setting Item to Be SpecialSetting Item to Be Special

For instance, we may set For instance, we may set fresh raspberries to be “special”. fresh raspberries to be “special”. In that case, front page will look In that case, front page will look as shown on the figure.as shown on the figure.

If you change your mind later, If you change your mind later, you can easily put the item you can easily put the item off the front pageoff the front page

Special option on the menu bar Special option on the menu bar now reads Not Special. now reads Not Special. Click on the option, Click on the option, and the item will not be special and the item will not be special any more.any more.

Figure shows the front page look Figure shows the front page look after Fresh Raspberries (in crate) after Fresh Raspberries (in crate) are set as special item.are set as special item.

Page 68: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 68

/268

Made by: Ifact

Concept of AccessoriesConcept of Accessories

There is another option somewhat similar to the previous one. There is another option somewhat similar to the previous one. In some cases, it is good to offer some accessories In some cases, it is good to offer some accessories

along with some offered item. along with some offered item. For instance, if you are selling raspberries in plastic plates, For instance, if you are selling raspberries in plastic plates,

you may offer spare plastic spoons along with it. you may offer spare plastic spoons along with it. In many cases, this can be a useful option, In many cases, this can be a useful option,

because a user can order a product because a user can order a product and the appropriate accessory at the same page, and the appropriate accessory at the same page, without jumping around the store.without jumping around the store.

In order to add accessory, click onto New Accessory option In order to add accessory, click onto New Accessory option at the menu bar on the item page of interest.at the menu bar on the item page of interest.

After that, fill the form with variables describing the accessory, After that, fill the form with variables describing the accessory, just as you would do for a regular item.just as you would do for a regular item.

Page 69: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 69

/268

Made by: Ifact

Adding an AccessoryAdding an Accessory

As an example, we may add offer As an example, we may add offer of plastic spoons onto theof plastic spoons onto theFresh Raspberries page.Fresh Raspberries page.

Click onto the New Accessory Click onto the New Accessory option, and fill information option, and fill information about our spoons; about our spoons; an appropriate image an appropriate image should be uploaded, as well.should be uploaded, as well.

If you change your mind later, and If you change your mind later, and wish to clear the accessory from wish to clear the accessory from the page, just click onto it, and the page, just click onto it, and then select Delete. then select Delete. After confirming the deletion, After confirming the deletion, accessory (the entire bottom part)accessory (the entire bottom part)will be removed.will be removed.

Page 70: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 70

/268

Made by: Ifact

Internal ClipboardInternal Clipboard

Another useful concept of Yahoo! Store is internal clipboardAnother useful concept of Yahoo! Store is internal clipboard(a place where the deleted pages are kept).(a place where the deleted pages are kept).

Suppose you wish to move or to copy some contents Suppose you wish to move or to copy some contents (item or section; the only options for move) from one page to another. (item or section; the only options for move) from one page to another. Internal clipboard can be used for that purpose.Internal clipboard can be used for that purpose.

Without this option, one would have to delete the contentsWithout this option, one would have to delete the contentsand then to create a new one (identical) elsewhere, manually (painful!)and then to create a new one (identical) elsewhere, manually (painful!)

There are three possible actions when working with clipboard:There are three possible actions when working with clipboard:– Copy - Copies the page onto clipboard; original object is left intactCopy - Copies the page onto clipboard; original object is left intact– Cut - Copies the page onto clipboard, but also deletes the original objectCut - Copies the page onto clipboard, but also deletes the original object– Paste - Copies the object from the clipboard to the current positionPaste - Copies the object from the clipboard to the current position

Content of the clipboard is being cleared each time you log off Content of the clipboard is being cleared each time you log off from Yahoo! Store. If you cut an item,from Yahoo! Store. If you cut an item,and then do not paste it on some other place, and then do not paste it on some other place, it will be irretrievably lost after you log off.it will be irretrievably lost after you log off.

Page 71: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 71

/268

Made by: Ifact

Using Internal ClipboardUsing Internal Clipboard

Contents of the clipboard is Contents of the clipboard is visible underneath the menu visible underneath the menu bar (only if it is not empty),bar (only if it is not empty),in the right-hand fieldin the right-hand field(left-hand: the paste command)(left-hand: the paste command)

For instance, if we click Copy For instance, if we click Copy when being on Raspberries when being on Raspberries (crate) page, the complete (crate) page, the complete page will be put on thepage will be put on theclipboard. We can later step clipboard. We can later step to the Frozen Fruits page, to the Frozen Fruits page, in order to paste the item there. in order to paste the item there.

In order to paste the object, In order to paste the object, just click onto its name in the just click onto its name in the clipboard section at the bottom clipboard section at the bottom of the page.of the page.

Page 72: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 72

/268

Made by: Ifact

Publishing the StorePublishing the Store

At the end, when our store is finished, we should publish it. At the end, when our store is finished, we should publish it. To publish the store, go to the front page To publish the store, go to the front page by clicking on the Home button on any page, by clicking on the Home button on any page, and then select Publish option at the menu bar.and then select Publish option at the menu bar.

Our updated store will be immediately visible at the address Our updated store will be immediately visible at the address http://store.yahoo.com/rasp/.http://store.yahoo.com/rasp/.

Remember that your store will be automatically deleted Remember that your store will be automatically deleted ten days after it is created (not published). ten days after it is created (not published). In order to avoid this, you should turn your temporal account In order to avoid this, you should turn your temporal account into real account: at the introductory page for our store into real account: at the introductory page for our store (at the page where you had selected the interface type), (at the page where you had selected the interface type), there is at the bottom of the page a link reading Open your account. there is at the bottom of the page a link reading Open your account.

Click on this link, Click on this link, and Yahoo! will lead you through the rest of the registering process.and Yahoo! will lead you through the rest of the registering process.

Page 73: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 73

/268

Made by: Ifact

Final NotesFinal Notes

One advice: Do not wait until the tenth day to create your account. One advice: Do not wait until the tenth day to create your account. Web services are not reliable enough yet, Web services are not reliable enough yet, and you may be quite disappointed and you may be quite disappointed if you get into position to create the complete store all over again!if you get into position to create the complete store all over again!

One of important topics of Yahoo! Store is its price. One of important topics of Yahoo! Store is its price. Stores are valued by its size, i.e. the number of items offered. Stores are valued by its size, i.e. the number of items offered. There are three categories:There are three categories:– Small store - With up to 50 items; it costs $100 per monthSmall store - With up to 50 items; it costs $100 per month– Medium store - With up to 1000 items; it costs $300 per monthMedium store - With up to 1000 items; it costs $300 per month– Large store - With more than 1000 items; Large store - With more than 1000 items;

it costs $300 per month for first 1000 items, it costs $300 per month for first 1000 items, and additional $100 per month for each next 1000 items; and additional $100 per month for each next 1000 items; for instance, a store with 2300 items would cost $500 per month.for instance, a store with 2300 items would cost $500 per month.

Page 74: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

ecBuilderecBuilder

Page 75: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 75

/268

Made by: Ifact

ecBuilderecBuilder

Product Name: Product Name: ecBuilderecBuilder

Manufacturer: Manufacturer: MultiActive MultiActive Software inc.Software inc.

System System requirements: requirements: Desktop PC Desktop PC with Microsoft with Microsoft Windows Windows operating operating system and system and Microsoft IE 4.0Microsoft IE 4.0or Netscape 4.0 or Netscape 4.0

Product URL: http://www.ecbuilder.comhttp://www.ecbuilder.com

Page 76: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 76

/268

Made by: Ifact

Why ecBuilder?Why ecBuilder?

ecBuilder is a software package by MultiActive Software, Inc.,ecBuilder is a software package by MultiActive Software, Inc.,that is designated for step by step creationthat is designated for step by step creationof fully functional E-business sites from scratchof fully functional E-business sites from scratch

It is designed to provide E-business solutions It is designed to provide E-business solutions for small and medium businessesfor small and medium businesses

It is intuitive and has a quick learning curveIt is intuitive and has a quick learning curve It hides most of the hard work from you,It hides most of the hard work from you,

so you need not bother thinkingso you need not bother thinkinghow it is realized or how does it workhow it is realized or how does it work

The price of this package = 495$ (1.1.2000.),The price of this package = 495$ (1.1.2000.),and it has no additional hardware or software demandsand it has no additional hardware or software demands

Page 77: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 77

/268

Made by: Ifact

What you need to start using What you need to start using ecBuilder?ecBuilder?

Registered version of ecBuilderRegistered version of ecBuilder(look at (look at http://www.ecbuilder.comhttp://www.ecbuilder.com for further information on acquiring and registering it)for further information on acquiring and registering it)

Webspace account with your local ISPWebspace account with your local ISP In order to accept credit cards onlineIn order to accept credit cards online

you must already have a merchant status accountyou must already have a merchant status accountwith the credit card company and/or your bankwith the credit card company and/or your bank

You will also need to be ableYou will also need to be ableto process these credit card transactionsto process these credit card transactions

You must choose a third-party payment processorYou must choose a third-party payment processorto process credit card payment requeststo process credit card payment requests

You should obtain a digital signature certificateYou should obtain a digital signature certificate

Page 78: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 78

/268

Made by: Ifact

Introduction to ecBuilderIntroduction to ecBuilder

As said before - it is designed for smallAs said before - it is designed for smallto medium sized businessesto medium sized businesses

Requires only basic HTML and Web design knowledgeRequires only basic HTML and Web design knowledge Provides all the necessary elementsProvides all the necessary elements

every E-business site must have. every E-business site must have. Shopping basket, subtotal calculating,Shopping basket, subtotal calculating,

and similar features are realizedand similar features are realizedthrough embedded JavaScript through embedded JavaScript (no direct access to user memory or hard disks) (no direct access to user memory or hard disks) and Cookie technologies and Cookie technologies (to memorize a data structure on the user’s hard disk)(to memorize a data structure on the user’s hard disk)

All shopping basket related data are stored with the user All shopping basket related data are stored with the user (not at the server, which is one of the two options of SSCE)(not at the server, which is one of the two options of SSCE)

With user - easier to develop; with server - more reliable!With user - easier to develop; with server - more reliable!

Page 79: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 79

/268

Made by: Ifact

Introduction to ecBuilderIntroduction to ecBuilder

Credit Card paymentCredit Card payment Bought goods reportsBought goods reports Most important:Most important:

Security issues are provided ecurity issues are provided via a special ecBuilder's server (ecPlace)via a special ecBuilder's server (ecPlace)

ecPlace server is independent from your site and your ISP,ecPlace server is independent from your site and your ISP,and it is maintained by MultiActive companyand it is maintained by MultiActive company

You don't have to worry about installing itYou don't have to worry about installing itand providing maintenance for it.and providing maintenance for it.

Page 80: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 80

/268

Made by: Ifact

Payment processingPayment processing

ecBuilder provides full support for online credit card processingecBuilder provides full support for online credit card processing Credit card paying process is security sensitiveCredit card paying process is security sensitive The merchant (you) takes care of delivering the bought goodsThe merchant (you) takes care of delivering the bought goods ecPlace takes care of CC payment processingecPlace takes care of CC payment processing

YourSite

ecPlaceServer

PaymentProcessor

CustomerCustomer

SSL

(1) Makes Shopping List

(2) Shopping List encrypted with Public Key Technology

(4) Payment request submitted via secure connection

(5) Transaction result(6) Encrypted eMail with results

(3) Customer enters Credit card number

(7) eMail with results

Page 81: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 81

/268

Made by: Ifact

Inside ecBuilderInside ecBuilder

ecBuilder providesa built-in wizardecBuilder providesa built-in wizardfor generating boiler-plate HTML (the HTML skeleton)for generating boiler-plate HTML (the HTML skeleton)and JavaScript code for your E-business siteand JavaScript code for your E-business site

There are dozens of built-in templatesThere are dozens of built-in templatesfor you to choose fromfor you to choose from

ecOrderDesk is an accompanying software that is used for ecOrderDesk is an accompanying software that is used for processing orders, bookkeeping, and as a POS terminalprocessing orders, bookkeeping, and as a POS terminal

When published, URL to Your E-business site will appear on When published, URL to Your E-business site will appear on ecPlace`s index of business Web sites,ecPlace`s index of business Web sites,under appropriate industry categoryunder appropriate industry category((http://www.ecPlace.comhttp://www.ecPlace.com))

Page 82: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 82

/268

Made by: Ifact

ecBuilder WizardecBuilder Wizard

ecBuilder`s Wizard is the only wayecBuilder`s Wizard is the only wayto create your E-business site using ecBuilderto create your E-business site using ecBuilder

Before beginning to work with Wizard,Before beginning to work with Wizard,you must first make one of the four choicesyou must first make one of the four choicesconcerning your siteconcerning your site

The choices are:The choices are:

• Create a new ecBuilder file

• Look for an existing ecBuilder file

• Open an example ecBuilder file

• Open my last ecBuilder file

Page 83: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 83

/268

Made by: Ifact

ecBuilder WizardecBuilder Wizard

Page 84: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 84

/268

Made by: Ifact

ecBuilder ecBuilder First step : Site StructureFirst step : Site Structure

ecBuilder will generate several HTML pages,ecBuilder will generate several HTML pages,and will correctly hyperlink themand will correctly hyperlink them

In this step you should chooseIn this step you should choosewhich additional pages your site will containwhich additional pages your site will contain

The choices are:The choices are:

• Content Pages

• Your Products or Services Catalog

• Feedback Form

• Contact Information Page

Page 85: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 85

/268

Made by: Ifact

ecBuilder ecBuilder First step : Site StructureFirst step : Site Structure

Basically, you should include all of these pages,Basically, you should include all of these pages,as they are required on any serious eBusiness siteas they are required on any serious eBusiness site

Depending on the pages you checked to be generated,Depending on the pages you checked to be generated,the number of steps the wizard guides you through may varythe number of steps the wizard guides you through may vary

Choose a title for any of the pages you checked aboveChoose a title for any of the pages you checked above If you want to show your address and phone number on the site, If you want to show your address and phone number on the site,

check the 'Display your address and phone number on Your site' check the 'Display your address and phone number on Your site' checkbox at the bottom of the screencheckbox at the bottom of the screen

Page 86: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 86

/268

Made by: Ifact

ecBuilder ecBuilder First step: Site StructureFirst step: Site Structure

Page 87: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 87

/268

Made by: Ifact

ecBuilder ecBuilder Second step - Company AddressSecond step - Company Address

In this step you are asked to enterIn this step you are asked to entermore detailed information on your companymore detailed information on your company

Fields marked with an asterisk ("*") are required fields,Fields marked with an asterisk ("*") are required fields,and you must enter them in order to proceed to the next stepand you must enter them in order to proceed to the next step

This information is used by ecBuilderThis information is used by ecBuilderto create your eBusiness site, andto create your eBusiness site, andwill appear on appropriate places in itwill appear on appropriate places in it

Page 88: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 88

/268

Made by: Ifact

ecBuilder ecBuilder Second step - Company AddressSecond step - Company Address

Page 89: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 89

/268

Made by: Ifact

ecBuilder ecBuilder Third step - Site Builder ProfileThird step - Site Builder Profile

The person building your site may not be the oneThe person building your site may not be the oneyou want to receive orders and inquires generated from your siteyou want to receive orders and inquires generated from your site

This profile is the profile of the personThis profile is the profile of the personthat is responsible for MAINTAINING your sitethat is responsible for MAINTAINING your site(it is not necessarily the person(it is not necessarily the personresponsible for handling orders, etc.)responsible for handling orders, etc.)

MultiActive Software inc. will use this informationMultiActive Software inc. will use this informationto send all the info regarding new upgrades,to send all the info regarding new upgrades,options, and similar. options, and similar.

Page 90: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 90

/268

Made by: Ifact

ecBuilder ecBuilder Third step - Site Builder ProfileThird step - Site Builder Profile

Page 91: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 91

/268

Made by: Ifact

ecBuilder ecBuilder Fourth step - Contact Person Fourth step - Contact Person ProfileProfile

This is the profile of the personThis is the profile of the personthat is responsible for HANDLING ORDERS and inquiriesthat is responsible for HANDLING ORDERS and inquiries

If this person is the same as the personIf this person is the same as the personthat is building your site,that is building your site,check the 'Same as Builder's Profile' checkbox. check the 'Same as Builder's Profile' checkbox.

If you want the name and the position of this personIf you want the name and the position of this personto appear on the Contact Page,to appear on the Contact Page,check the appropriate checkbox at the bottom of the screencheck the appropriate checkbox at the bottom of the screen

Page 92: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 92

/268

Made by: Ifact

ecBuilder ecBuilder Fourth step - Contact Person Fourth step - Contact Person ProfileProfile

Page 93: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 93

/268

Made by: Ifact

ecBuilder ecBuilder Fifth step - Business ClassificationFifth step - Business Classification

This step asks You to choose categoriesThis step asks You to choose categoriesthat best describe your businessthat best describe your business

Also enter manually up to 30 keywordsAlso enter manually up to 30 keywordsto describe it in more detailsto describe it in more details

The categories are used to place Your eBusiness siteThe categories are used to place Your eBusiness siteunder the right industry in theunder the right industry in theecPlace`s eBusiness sites list ecPlace`s eBusiness sites list

Keywords are used when your site is submitted to search enginesKeywords are used when your site is submitted to search engines

Page 94: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 94

/268

Made by: Ifact

ecBuilder ecBuilder Fifth step - Business ClassificationFifth step - Business Classification

Page 95: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 95

/268

Made by: Ifact

ecBuilder ecBuilder Sixth step - Company IdentitySixth step - Company Identity

In this step you are promptedIn this step you are promptedto enter your company’s Logo,to enter your company’s Logo,Slogan, and Brief Description Slogan, and Brief Description

Company Logo is a .JPG or .GIF picture Company Logo is a .JPG or .GIF picture that will appear throughout your sitethat will appear throughout your site

Company Slogan is a tag lineCompany Slogan is a tag linethat will appear on the top of the first pagethat will appear on the top of the first pageon Your E-business siteon Your E-business site

It should be one of the first thingsIt should be one of the first thingsthat visitors to your site (and potential customers) seethat visitors to your site (and potential customers) see

Page 96: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 96

/268

Made by: Ifact

ecBuilder ecBuilder Sixth step - Company IdentitySixth step - Company Identity

It should convince the customerIt should convince the customerto stay and browse through your siteto stay and browse through your site

Brief Company Description is a summaryBrief Company Description is a summarythat is used when your site is submittedthat is used when your site is submittedto the search enginesto the search engines

It will appear as a short description of your site It will appear as a short description of your site when its URL is shownwhen its URL is shownby the respective Search Engineby the respective Search Engine

Page 97: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 97

/268

Made by: Ifact

ecBuilder ecBuilder Sixth step - Company IdentitySixth step - Company Identity

Page 98: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 98

/268

Made by: Ifact

ecBuilder ecBuilder Seventh step - Web Site ContentSeventh step - Web Site Content

By checking the 'Content Pages' checkbox in Step One,By checking the 'Content Pages' checkbox in Step One,you caused ecBuilder to generate a pageyou caused ecBuilder to generate a pagewith the default title 'background' with the default title 'background'

A link to that page can be foundA link to that page can be foundon the main page of the siteon the main page of the site

This 'background' page containsThis 'background' page containsup to 100 links to other pagesup to 100 links to other pagesof your choice and content,of your choice and content,which are also generated by ecBuilderwhich are also generated by ecBuilder

You may use this option to add anythingYou may use this option to add anythingyou find relevant to your eBusiness,you find relevant to your eBusiness,or the site in general. or the site in general.

Page 99: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 99

/268

Made by: Ifact

ecBuilder ecBuilder Seventh step - Web Site ContentSeventh step - Web Site Content

Visitors may browse through these pagesVisitors may browse through these pagesby choosing the 'Background' link by choosing the 'Background' link

'Background' is the default title which can be changed'Background' is the default title which can be changed Button controls on the Seventh Step splash screenButton controls on the Seventh Step splash screen

allow you to add, modify, or delete the content pagesallow you to add, modify, or delete the content pagesthat will show up on 'Background’that will show up on 'Background’as well as their headlines and content. as well as their headlines and content.

Headline is the name of the linkHeadline is the name of the linkwhich will appear on the link listwhich will appear on the link listof the 'Background' pageof the 'Background' page

Content is the text that will appearContent is the text that will appearwhen Customer chooses one of the Headline links when Customer chooses one of the Headline links on the 'Background' pageon the 'Background' page

Page 100: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 100/268

Made by: Ifact

ecBuilder ecBuilder Seventh step - Web Site ContentSeventh step - Web Site Content

Page 101: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 101/268

Made by: Ifact

ecBuilder ecBuilder Eighth step - Payment MethodsEighth step - Payment Methods

This is the step where you specifyThis is the step where you specifywhether you accept the credit card payment,whether you accept the credit card payment,as well as the names of the cards you acceptas well as the names of the cards you accept

You may also specify other payment methodsYou may also specify other payment methods(money order, check, etc.)(money order, check, etc.)

You also specify the currencyYou also specify the currencyin which the prices on your site are specifiedin which the prices on your site are specified

In order to accept credit cards online,In order to accept credit cards online,you must already have a merchant accountyou must already have a merchant accountwith a credit card company and/or your bankwith a credit card company and/or your bank

Page 102: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 102/268

Made by: Ifact

ecBuilder ecBuilder Eighth step - Payment MethodsEighth step - Payment Methods

Page 103: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 103/268

Made by: Ifact

ecBuilder ecBuilder Ninth step - Online ProcessingNinth step - Online Processing

The ecBuilder adds one more stage The ecBuilder adds one more stage into the generalized e-Business pipeline: The ecPlace into the generalized e-Business pipeline: The ecPlace

It is a ready-to-use interface to OTP; It is a ready-to-use interface to OTP; you do not have to create your own one inside the Merchant Siteyou do not have to create your own one inside the Merchant Site

Private Gateway = SSL or VPN or anything else to provide securityPrivate Gateway = SSL or VPN or anything else to provide security

Merchant Site

OnlineTransaction

ServerInternet

Consumer

Consumer

Other Merchant Sites

Other Merchant Sites Private Gateway

BankBank

BankBank

issuing and acquiring

banks

Consumer

ecPlace

Page 104: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 104/268

Made by: Ifact

ecBuilder ecBuilder Ninth step - Online ProcessingNinth step - Online Processing

Here you must select the third partyHere you must select the third partyonline transaction processing (OTP) company you intend to useonline transaction processing (OTP) company you intend to use

As of this moment,As of this moment,ecBuilder supports E-xact and InternetSecureecBuilder supports E-xact and InternetSecuretransaction processing companies;transaction processing companies;the ecPlace is nothing else but software to interact with the OTPthe ecPlace is nothing else but software to interact with the OTP

After you have obtained a merchant account, After you have obtained a merchant account, you must obtain a separate account you must obtain a separate account with one of the supported OTP companieswith one of the supported OTP companies

Go to Go to http://www.ecbuilder.com/client/merchantaccounthttp://www.ecbuilder.com/client/merchantaccountfor more info on obtaining an accountfor more info on obtaining an accountwith an online transaction processing companywith an online transaction processing company

Remember: OTP = TGP (transaction gateway provider)Remember: OTP = TGP (transaction gateway provider)

Page 105: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 105/268

Made by: Ifact

ecBuilder ecBuilder Ninth step - Online ProcessingNinth step - Online Processing

After applying to one of these transaction processing companies, After applying to one of these transaction processing companies, you will have to enter into the ecPlace (via the Wizard step 9) you will have to enter into the ecPlace (via the Wizard step 9) the info that OTP sent to you (so ecPlace can work in your name):the info that OTP sent to you (so ecPlace can work in your name):ID, password, etc.. (depending on the company),ID, password, etc.. (depending on the company),by selecting the settings button and by following the instructionsby selecting the settings button and by following the instructions

If you haven`t applied to any transaction processing companies, If you haven`t applied to any transaction processing companies, but you want to create a beta version of the site,but you want to create a beta version of the site,choose [NONE] choose [NONE] in the transaction processing companies drop-down boxin the transaction processing companies drop-down box

That will allow you to go on with creating your site,That will allow you to go on with creating your site,leaving you the possibility to return to this step later leaving you the possibility to return to this step later and to finish the processand to finish the processof supplying your site with the online payment option.of supplying your site with the online payment option.

Page 106: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 106/268

Made by: Ifact

ecBuilder ecBuilder Ninth step - Online ProcessingNinth step - Online Processing

Page 107: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 107/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Here you will make the catalogueHere you will make the catalogueof the items/services/goods you are offeringof the items/services/goods you are offeringfor sale on your E-business sitefor sale on your E-business site

On the left side of the splash screen (screen w/ Wizard questions) On the left side of the splash screen (screen w/ Wizard questions) there is a box with Catalog Sectionsthere is a box with Catalog Sections

On the right side is the boxOn the right side is the boxwith the corresponding section's items with the corresponding section's items

Sections will appear as links on the 'Catalog' page, Sections will appear as links on the 'Catalog' page, which is generated automaticallywhich is generated automaticallyif you've selected 'Your Products or Services Catalog’if you've selected 'Your Products or Services Catalog’checkbox in the First Stepcheckbox in the First Step

Items will appear as linksItems will appear as linkson the corresponding section page.on the corresponding section page.

Page 108: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 108/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Page 109: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 109/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Each items page may contain all the infoEach items page may contain all the infoabout the item you want about the item you want

It will also contain customer interfaceIt will also contain customer interfacethat allows the Customerthat allows the Customer– to add the item to his/her Shopping Basketto add the item to his/her Shopping Basket– to buy that item right awayto buy that item right away– to make inquiries about it, etc. to make inquiries about it, etc.

depending on the choices you make in this stepdepending on the choices you make in this step If you select one section in the Catalog Sections box,If you select one section in the Catalog Sections box,

and press the 'Modify' button,and press the 'Modify' button,the Catalog Section dialog box will appear.the Catalog Section dialog box will appear.

Page 110: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 110/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Page 111: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Number: 111

/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

In this dialog box, you must choose Business Template,In this dialog box, you must choose Business Template,which will be used for your catalogwhich will be used for your catalog

Depending on the template you selected,Depending on the template you selected,the layout of the Web page may change,the layout of the Web page may change,as well as the choices you may makeas well as the choices you may makein the next steps and in the dialog boxesin the next steps and in the dialog boxes

You must also select one Catalog Section TitleYou must also select one Catalog Section Titleout of the available ones, or enter your own titleout of the available ones, or enter your own title

This title will appear as a linkThis title will appear as a linkto respective catalogue section pageto respective catalogue section pageon the main catalogue pageon the main catalogue page

Page 112: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 112/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

You may choose that all of the items/servicesYou may choose that all of the items/servicesin this section are on a discount,in this section are on a discount,and enter appropriate Description for that Discountand enter appropriate Description for that Discount

Finally, you may enter Description for a Catalog sectionFinally, you may enter Description for a Catalog section(which will appear below title of the section),(which will appear below title of the section),as well as the Catalog section imageas well as the Catalog section image(which will appear left of the section title)(which will appear left of the section title)

You may choose to show the preview imagesYou may choose to show the preview imagesof your items on the Catalog index pageof your items on the Catalog index page

Page 113: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 113/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

If you select one item in the Catalog Items,If you select one item in the Catalog Items,and press the 'Modify' button,and press the 'Modify' button,the Item dialog box will appearthe Item dialog box will appear

This box allows you to customizeThis box allows you to customizethe way in which the item is presentedthe way in which the item is presentedto the customer on your siteto the customer on your site

You may enter Item/Service name,You may enter Item/Service name,its model, description, Item's image, etc.its model, description, Item's image, etc.

You may also enter two bulleted listsYou may also enter two bulleted listswith up to 20 bullets with up to 20 bullets that describe features of your item, etc. that describe features of your item, etc.

Page 114: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 114/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Page 115: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 115/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Item dialog box also allows you to enterItem dialog box also allows you to enterdetailed data on every item, like:detailed data on every item, like:– its weightits weight– dimensionsdimensions– available sizesavailable sizes– keywords for search engineskeywords for search engines– etc.etc.

Page 116: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 116/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Pricing options are also available here:Pricing options are also available here:– Regular price itemRegular price item– Promotional ItemPromotional Item– No Price Item (Inquiry)No Price Item (Inquiry)– In which units In which units

the price is applied the price is applied (per item, per liter, etc.)(per item, per liter, etc.)

– Whether this item can beWhether this item can bepurchased onlinepurchased online

– and similarand similar

Page 117: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 117/268

Made by: Ifact

ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog

Finally, you may configure taxesFinally, you may configure taxesthat are applied to this item,that are applied to this item,depending on the means of the shipping,depending on the means of the shipping,residence of the Customer, etc.residence of the Customer, etc.

Page 118: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 118/268

Made by: Ifact

ecBuilder ecBuilder Eleventh step - Advertising & Eleventh step - Advertising & StatisticsStatistics

This Step gives you three options to select:This Step gives you three options to select:– Top Page BannerTop Page Banner– Bottom Page BannerBottom Page Banner– Hit CounterHit Counter

Banners are used primarily for link exchangeBanners are used primarily for link exchangebetween sites of similar interestbetween sites of similar interestin order to boost up hit ratios,in order to boost up hit ratios,and for some additional cash sourceand for some additional cash source(pay per clickthrough banners, for example): e.g., 1cent/click(pay per clickthrough banners, for example): e.g., 1cent/click

Hit counters are used for trackingHit counters are used for trackingvisitor statistics for your site,visitor statistics for your site,which can be useful when planningwhich can be useful when planningyour future market strategyyour future market strategy

Page 119: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 119/268

Made by: Ifact

ecBuilder ecBuilder Eleventh step - Advertising & Eleventh step - Advertising & StatisticsStatistics

Banners (Top and Bottom) can be placedBanners (Top and Bottom) can be placedon your site in one of the two ways: on your site in one of the two ways: – You may choose the banner imageYou may choose the banner image

and the URL link it points to, by yourselfand the URL link it points to, by yourself– You may cut and paste the already generated HTML code.You may cut and paste the already generated HTML code.

This will happen if you enlist with someThis will happen if you enlist with somebanner exchange service,banner exchange service,which will provide you with the HTML codewhich will provide you with the HTML codethat you should install on your sitethat you should install on your site

LinkExchange at LinkExchange at http://www.linkexchange.comhttp://www.linkexchange.com is one example of banner exchange servicesis one example of banner exchange services(bringing business to each other).(bringing business to each other).

Page 120: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 120/268

Made by: Ifact

ecBuilder ecBuilder Eleventh step - Advertising & Eleventh step - Advertising & StatisticsStatistics

Hit counter is installed byHit counter is installed bypasting appropriate code into the text boxpasting appropriate code into the text box

Counter code may be generatedCounter code may be generatedfor you by some of the free counter services,for you by some of the free counter services,or it may be your ISP's default counter code,or it may be your ISP's default counter code,which you should obtain from your ISP's support servicewhich you should obtain from your ISP's support service

TheCounter at TheCounter at http://www.thecounter.comhttp://www.thecounter.com is one of the providers is one of the providers that offers you the tracking services for “free”that offers you the tracking services for “free”

Page 121: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 121/268

Made by: Ifact

ecBuilder ecBuilder Eleventh step - Advertising & Eleventh step - Advertising & StatisticsStatistics

Page 122: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 122/268

Made by: Ifact

ecBuilder ecBuilder Twelfth step - Order & Inquiry FieldsTwelfth step - Order & Inquiry Fields

Order and Inquiry Fields are supplemental informationOrder and Inquiry Fields are supplemental informationyou may want to hear from your customers, for example:you may want to hear from your customers, for example:– how often do you buy on-line?how often do you buy on-line?– How did you hear about us?How did you hear about us?– etc.etc.

These pieces of information are usually intendedThese pieces of information are usually intendedfor market surveys and market analysis,for market surveys and market analysis,which in turn should be used to improvewhich in turn should be used to improvethe way your site and business workthe way your site and business work

Page 123: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 123/268

Made by: Ifact

ecBuilder ecBuilder Twelfth step - Order & Inquiry FieldsTwelfth step - Order & Inquiry Fields

Page 124: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 124/268

Made by: Ifact

ecBuilder ecBuilder Thirteenth step - Site Design & Thirteenth step - Site Design & PreviewPreview

In this Step you must chooseIn this Step you must chooseone of the presented templates and color schemes,one of the presented templates and color schemes,from which ecBuilder will generate your E-business site from which ecBuilder will generate your E-business site

These are the last ones of the necessary pieces of informationThese are the last ones of the necessary pieces of informationecBuilder needs to make a fully functional siteecBuilder needs to make a fully functional site

You may check how your site looks likeYou may check how your site looks likeby pressing the 'Preview' buttonby pressing the 'Preview' button

Your site will be generated, Your site will be generated, and shown via the ecBuilder's browserand shown via the ecBuilder's browser(you may choose another browser,(you may choose another browser,like Netscape or MSIE for showing preview version)like Netscape or MSIE for showing preview version)

You can always return back to this step,You can always return back to this step,and choose a different template. and choose a different template.

Page 125: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 125/268

Made by: Ifact

ecBuilder ecBuilder Thirteenth step - Site Design & Thirteenth step - Site Design & PreviewPreview

Page 126: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 126/268

Made by: Ifact

ecBuilder ecBuilder Thirteenth step - Site Design & Thirteenth step - Site Design & PreviewPreview

Page 127: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 127/268

Made by: Ifact

ecBuilder ecBuilder Fourteenth step - Security OptionsFourteenth step - Security Options

This Step is used to obtain and set up a digital certificateThis Step is used to obtain and set up a digital certificate(if you didn't have one by now)(if you didn't have one by now)

You are required to have a digital certificateYou are required to have a digital certificateif you choose to use any of the payment gateway optionsif you choose to use any of the payment gateway options

Digital certificate can be obtainedDigital certificate can be obtainedby pressing the 'Security Configuration' button,by pressing the 'Security Configuration' button,and then by pressing the "Get a New Digital ID" buttonand then by pressing the "Get a New Digital ID" button

When the certificate is obtained,When the certificate is obtained,check the "Use digital-based security" check-box,check the "Use digital-based security" check-box,and follow instructionsand follow instructions

Basically, you just get it and then you pass it to your ISP, Basically, you just get it and then you pass it to your ISP, to use it for SSL transfers related to your site.to use it for SSL transfers related to your site.

Page 128: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 128/268

Made by: Ifact

ecBuilder ecBuilder Fourteenth step - Security OptionsFourteenth step - Security Options

Page 129: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 129/268

Made by: Ifact

ecBuilder ecBuilder Fourteenth step - DescriptionFourteenth step - Description

Page 130: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 130/268

Made by: Ifact

ecBuilder ecBuilder Fifteenth step - Search EnginesFifteenth step - Search Engines

ecBuilder can submit your new siteecBuilder can submit your new siteto eight (as of ‘this’ moment) search engines,to eight (as of ‘this’ moment) search engines,to make sure your E-business site is easy to be foundto make sure your E-business site is easy to be found

The data and keywords you entered in previous stepsThe data and keywords you entered in previous stepswill be used in the submit processwill be used in the submit process

You may visit an independent Submit-It service provider at: You may visit an independent Submit-It service provider at: http://www.submit-it.comhttp://www.submit-it.com

For a small fee they will submit your site For a small fee they will submit your site to hundreds of search enginesto hundreds of search engines

Page 131: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 131/268

Made by: Ifact

ecBuilder ecBuilder Fifteenth step - Search EnginesFifteenth step - Search Engines

Page 132: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 132/268

Made by: Ifact

ecBuilder ecBuilder Sixteenth step - Upload Your SiteSixteenth step - Upload Your Site

This is the final Step,This is the final Step,which offers you to upload your sitewhich offers you to upload your siteto your Webspace, or to save it on your hard diskto your Webspace, or to save it on your hard disk

If you choose to FTP your site from ecBuilder,If you choose to FTP your site from ecBuilder,choose the 'FTP to your existing ISP' radio button,choose the 'FTP to your existing ISP' radio button,press the 'Submit' button,press the 'Submit' button,and follow the instructionsand follow the instructions

If you choose to save your site on the local disk,If you choose to save your site on the local disk,you must FTP it manually to your ISPyou must FTP it manually to your ISPby using any FTP clientby using any FTP client

Page 133: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 133/268

Made by: Ifact

ecBuilder ecBuilder Sixteenth step - Upload Your SiteSixteenth step - Upload Your Site

Page 134: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 134/268

Made by: Ifact

ecBuilder ecBuilder Sixteenth step - Upload Your SiteSixteenth step - Upload Your Site

Page 135: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 135/268

Made by: Ifact

ecBuilder ecBuilder Menu bar commands (1)Menu bar commands (1)

ecBuilder also has a large number of Menu bar commandsecBuilder also has a large number of Menu bar commands There are 4 basic menus: File; Edit; Go; HelpThere are 4 basic menus: File; Edit; Go; Help Most of the options in the File menuMost of the options in the File menu

are standard File menu options,are standard File menu options,or shortcuts for the options of ecBuilder`s wizardor shortcuts for the options of ecBuilder`s wizard

The only option that deserves further explanations here is The only option that deserves further explanations here is 'Catalog Import and Export''Catalog Import and Export'

The 'Catalog Import and Export' optionThe 'Catalog Import and Export' optionallows you to import the item list directlyallows you to import the item list directlyfrom the .CSV (Comma Separated Values) filefrom the .CSV (Comma Separated Values) file(offered items separated by commas)(offered items separated by commas)

This is a very useful option This is a very useful option if you plan to sell hundreds of types of itemsif you plan to sell hundreds of types of items

Entering these items manually is a painstaking job,Entering these items manually is a painstaking job,which must produce lots of errorswhich must produce lots of errors

Page 136: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 136/268

Made by: Ifact

ecBuilder ecBuilder Menu bar commands (2)Menu bar commands (2)

If you have many items you want to sell,If you have many items you want to sell,you probably have them in some kind of a databaseyou probably have them in some kind of a database

Exporting this database to a .CSV file should be an easy taskExporting this database to a .CSV file should be an easy task The easiest way should beThe easiest way should be

importing your database to Excell,importing your database to Excell,and then exporting it from Excell to the .CSV format:and then exporting it from Excell to the .CSV format: apples, $4, yellow apples, $4, yellow oranges, $5, red oranges, $5, red

In ecBuilder, when you choose the .CSV fileIn ecBuilder, when you choose the .CSV filefrom which you are importing a list of items,from which you are importing a list of items,you will be prompted to choose the Business Typeyou will be prompted to choose the Business Type(e.g., type, price, description, as specified above) (e.g., type, price, description, as specified above) that best-matches the data model in your external file, that best-matches the data model in your external file, and the section (in the catalogue) you are importing it intoand the section (in the catalogue) you are importing it into

Page 137: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 137/268

Made by: Ifact

ecBuilder ecBuilder Menu bar commands (3)Menu bar commands (3)

After selecting whether you are appending the existing listAfter selecting whether you are appending the existing listor updating the existing list (substitute of old with new),or updating the existing list (substitute of old with new),you will be presented with the datasheet viewyou will be presented with the datasheet viewof the selected .CSV file, of the selected .CSV file, and the option to specify the purpose of each column in that fileand the option to specify the purpose of each column in that file

Typically, you select the most suitable Business Type option,Typically, you select the most suitable Business Type option,and then you fine-tune it manually. and then you fine-tune it manually.

When you're done with mapping,When you're done with mapping,you will be prompted whether you wantyou will be prompted whether you wantto create new sectionsto create new sections

You will also be asked whether you wantYou will also be asked whether you wantto save the mapping scheme for future importingto save the mapping scheme for future importingof the item list of the same formatof the item list of the same format

When you click finish,When you click finish,items will be automatically addeditems will be automatically addedinto the correct sections into the correct sections

Page 138: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 138/268

Made by: Ifact

ecBuilder ecBuilder Menu bar commands (4)Menu bar commands (4)

Selecting the best-matching Business Type templateSelecting the best-matching Business Type template

Page 139: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 139/268

Made by: Ifact

ecBuilder ecBuilder Menu bar commands (5)Menu bar commands (5)

Eliminating the non-needed columns Eliminating the non-needed columns from the selected Business Type templatefrom the selected Business Type template

Page 140: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 140/268

Made by: Ifact

ecBuilder ecBuilder Menu bar commands (6)Menu bar commands (6)

Presenting the results in the “Datasheet View” formPresenting the results in the “Datasheet View” form

Page 141: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 141/268

Made by: Ifact

ecBuilder ecBuilder Menu bar commands (7)Menu bar commands (7)

The File Menu is “business as usual”The File Menu is “business as usual”(New, Open, Close, Save, etc…)(New, Open, Close, Save, etc…)

The Edit Menu provides you with two important options:The Edit Menu provides you with two important options:to set up Tax Types and Shipping Methodsto set up Tax Types and Shipping Methods(these options are in fact shortcuts(these options are in fact shortcutsto the same options in 'Step Ten - Catalog') to the same options in 'Step Ten - Catalog')

The Go Menu lists all 16 Steps,The Go Menu lists all 16 Steps,allowing you to jump directlyallowing you to jump directlyto any step you want to any step you want (you do not have to click “next, next, next…”)(you do not have to click “next, next, next…”)

The Help Menu gives you help on ecBuilder`sThe Help Menu gives you help on ecBuilder`suser interface and functionalityuser interface and functionality

Page 142: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 142/268

Made by: Ifact

ecOrderDeskecOrderDesk

The ecOrderDesk application The ecOrderDesk application allows you to track and allows you to track and manage the orders you receive manage the orders you receive from your ecBuilder Web sitefrom your ecBuilder Web site

Visitors to your Web site can Visitors to your Web site can complete an online form to complete an online form to inquire about your products inquire about your products and services, or to order and services, or to order something from yousomething from you

The data from this form,The data from this form,such as name, address,such as name, address,credit card numbers,credit card numbers,and so on, is encrypted, and so on, is encrypted, compressed, encoded,compressed, encoded,and sent to youand sent to youas e-mail attachmentsas e-mail attachments

Page 143: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 143/268

Made by: Ifact

ecOrderDeskecOrderDesk

When you receive these orders or inquiries, When you receive these orders or inquiries, you can decode and work with them using ecOrderDeskyou can decode and work with them using ecOrderDesk

You can use this same application You can use this same application to enter and manage orders and inquiries to enter and manage orders and inquiries that come to you by telephone, mail, or other methodsthat come to you by telephone, mail, or other methods

ecOrderDesk allows you to track the statusecOrderDesk allows you to track the statusof your inquiries and orders—of your inquiries and orders—whether your customers have received a response whether your customers have received a response or had their order been shipped, etc...or had their order been shipped, etc...

Page 144: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 144/268

Made by: Ifact

ecOrderDeskecOrderDesk

It also lets you mark specific orders or inquiries as urgent,It also lets you mark specific orders or inquiries as urgent,ignore inquiries without deleting them,ignore inquiries without deleting them,and track shipping and payment status for your ordersand track shipping and payment status for your orders

ecOrderDesk lets you export order and inquiry dataecOrderDesk lets you export order and inquiry datafor use with your company’s accounting, report-creation,for use with your company’s accounting, report-creation,order fulfillment, or contact management programsorder fulfillment, or contact management programs

ecOrderDesk supports three types of records:ecOrderDesk supports three types of records:– ordersorders– item inquiriesitem inquiries– general inquiriesgeneral inquiries

Page 145: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 145/268

Made by: Ifact

ecOrderDeskecOrderDesk

The “Datasheet View” of the purchasing workflowThe “Datasheet View” of the purchasing workflow

Page 146: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 146/268

Made by: Ifact

ecOrderDeskecOrderDesk

OrderOrder– An actual purchase request by a shopper from your Web siteAn actual purchase request by a shopper from your Web site– An order may include one or more catalog itemsAn order may include one or more catalog items

Item InquiriesItem Inquiries– A request for information about a specific catalogue itemA request for information about a specific catalogue item

by a shopper from your web siteby a shopper from your web site– An Item Inquiry is not a purchase requestAn Item Inquiry is not a purchase request– It is possible to convert an Item Inquiry to an OrderIt is possible to convert an Item Inquiry to an Order

General InquiryGeneral Inquiry– A request for general information A request for general information

about your company or anything elseabout your company or anything else– General Inquiry is not linked to a specific catalog itemGeneral Inquiry is not linked to a specific catalog item

Page 147: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 147/268

Made by: Ifact

ecOrderDeskecOrderDesk

The email attachment The email attachment specifying the contents of a shopping cart is an encrypted filespecifying the contents of a shopping cart is an encrypted file

Importing that file into ecOrderDesk is doneImporting that file into ecOrderDesk is doneusing one of these two methods (decryption done automaticaly):using one of these two methods (decryption done automaticaly):– Double-click on the attachment file in the e-mail messageDouble-click on the attachment file in the e-mail message

to open it in ecOrderDesk (the attachment file will beto open it in ecOrderDesk (the attachment file will bein Multiactive ecOrderDesk (MEC) format); orin Multiactive ecOrderDesk (MEC) format); or

– Save the attachment file onto your hard drive;Save the attachment file onto your hard drive;if ecBuilder is not installed on the computerif ecBuilder is not installed on the computerwhere you receive your e-mail, where you receive your e-mail, save the MEC attachment file to a diskette save the MEC attachment file to a diskette and copy it onto the computer where ecBuilder is installedand copy it onto the computer where ecBuilder is installed

– Open ecOrderDesk, and choose ‘File > Import’. Open ecOrderDesk, and choose ‘File > Import’. Then browse to the MEC file on your hard driveThen browse to the MEC file on your hard drive

Page 148: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 148/268

Made by: Ifact

ecOrderDeskecOrderDesk

All three types of records (O,II, or GI) All three types of records (O,II, or GI) can be inserted and modified manuallycan be inserted and modified manually

Records are rich with details about order or inquiryRecords are rich with details about order or inquiry Sorting records is possible by any columnSorting records is possible by any column Records could be edited, deleted, filtered, sorted...Records could be edited, deleted, filtered, sorted... A selective report for printing also existsA selective report for printing also exists Records can be exported to three file types:Records can be exported to three file types:

– .mec (ecOrderDesk format).mec (ecOrderDesk format)– .mel (Multiactive Maximizer format).mel (Multiactive Maximizer format)– .csv (comma separated file - Excell, Lotus 1-2-3).csv (comma separated file - Excell, Lotus 1-2-3)

It is possible to archive records, It is possible to archive records, and to restore them if necessaryand to restore them if necessary

Page 149: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 149/268

Made by: Ifact

ecOrderDeskecOrderDesk

Yes, the order/inquiry form is rich in detailsYes, the order/inquiry form is rich in details

Page 150: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 150/268

Made by: Ifact

ecBuilder ecBuilder ConclusionConclusion

ecBuilder is a powerful and a very cost-effective toolecBuilder is a powerful and a very cost-effective tool The amount of time and other resourcesThe amount of time and other resources

you must invest in mastering the more advanced technologiesyou must invest in mastering the more advanced technologies(such as Microsoft Site Server, etc.)(such as Microsoft Site Server, etc.)greatly surpasses the time and resourcesgreatly surpasses the time and resourcesneeded to learn and use ecBuilderneeded to learn and use ecBuilder

ecBuilder also provides basically all the functionality ecBuilder also provides basically all the functionality you need for and from an eBusiness site,you need for and from an eBusiness site,with very few drawbackswith very few drawbacks

Having in mind all this,Having in mind all this,as well as the relative small price of this package,as well as the relative small price of this package,ecBuilder is probably the best choice for medium businesses ecBuilder is probably the best choice for medium businesses (all except the smallest and the biggest eBusiness companies)(all except the smallest and the biggest eBusiness companies)

Page 151: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

SSL (Secure Socket Layer)SSL (Secure Socket Layer)

Page 152: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 152/268

Made by: Ifact

SSL BasicsSSL Basics

Protection of critical data during transfer Protection of critical data during transfer from customer’s browser to the merchant serverfrom customer’s browser to the merchant server

Most sensitive information are credit card numbers Most sensitive information are credit card numbers and any other payment related informationand any other payment related information

Ideally, transaction should be as secured as in the real world, Ideally, transaction should be as secured as in the real world, where customer and merchant interact directly where customer and merchant interact directly without the possibility of third person involvement without the possibility of third person involvement

Page 153: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 153/268

Made by: Ifact

Jeopardy of Critical InformationJeopardy of Critical Information

On the Internet, On the Internet, when customer types in his/hers credit card number when customer types in his/hers credit card number and initiates a payment procedure, data have to propagate and initiates a payment procedure, data have to propagate through the net, to get to the merchant serverthrough the net, to get to the merchant server

Actually, customer’s browser sends an HTTP POST message Actually, customer’s browser sends an HTTP POST message which is then broken into TCP/IP packets which is then broken into TCP/IP packets before sending across the networkbefore sending across the network

If someone could intercept these packets and read them If someone could intercept these packets and read them he/she would be able to obtain confidential datahe/she would be able to obtain confidential data

Page 154: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 154/268

Made by: Ifact

The SSL IdeaThe SSL Idea

SSL is a network software layer that resides SSL is a network software layer that resides between HTTP (application) and TCP (transport) layersbetween HTTP (application) and TCP (transport) layers

Both server and client must have the SSL layer installed,Both server and client must have the SSL layer installed,in order to be able to communicate securelyin order to be able to communicate securely

This new layer encrypts data in such a manner This new layer encrypts data in such a manner that it can only be decrypted by the SSL layer that it can only be decrypted by the SSL layer on the machine data is meant foron the machine data is meant for

That means, That means, if client sends encrypted data to the server, if client sends encrypted data to the server, only that server should have the key needed to decrypt the dataonly that server should have the key needed to decrypt the data

Page 155: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 155/268

Made by: Ifact

The SSL ArchitectureThe SSL Architecture

SSL consists of at least 2 levels:SSL consists of at least 2 levels:– SSL Handshake ProtocolSSL Handshake Protocol– SSL Record LayerSSL Record Layer

During the connection establishing between client and server, During the connection establishing between client and server, SSL SSL handshake protocolhandshake protocol ensures a negotiation of secret data ensures a negotiation of secret data needed for calculation of encryption/decryption keys needed for calculation of encryption/decryption keys (master secret data) and MACs (Message Authentication Code)(master secret data) and MACs (Message Authentication Code)

SSL SSL record layerrecord layer uses the agreed secret data uses the agreed secret data to actually calculate keys and MACs to actually calculate keys and MACs and uses them for secure transmission of information and uses them for secure transmission of information across the networkacross the network

Page 156: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 156/268

Made by: Ifact

The MAC MechanismThe MAC Mechanism Authentication of both client and server messages is performed through Authentication of both client and server messages is performed through

the use of the MAC mechanismthe use of the MAC mechanism MAC is a peace of data used to authenticate packets of data MAC is a peace of data used to authenticate packets of data

to ensure that they arrive at the destination unchangedto ensure that they arrive at the destination unchanged MACs are calculated with special algorithm applied to the:MACs are calculated with special algorithm applied to the:

– contents of data packetscontents of data packets– size of data packetssize of data packets– secret data mention earliersecret data mention earlier

The MAC, calculated this way, is then added to the data packetThe MAC, calculated this way, is then added to the data packet So, if attacker makes changes to a data packet, So, if attacker makes changes to a data packet,

MAC of the new message will be different MAC of the new message will be different from the MAC contained in the message, from the MAC contained in the message, and calculation of the new MAC is not possible and calculation of the new MAC is not possible without possession of the secret datawithout possession of the secret data

If no MACs included, an attacker can intercept the data packet,If no MACs included, an attacker can intercept the data packet,replace it with its own data of the same format, replace it with its own data of the same format, and the receiver would NOT notice the difference. and the receiver would NOT notice the difference.

Page 157: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 157/268

Made by: Ifact

Encryption Algorithms: Bird’s View Encryption Algorithms: Bird’s View

Two types of algorithms: Symmetric and AsymmetricTwo types of algorithms: Symmetric and Asymmetric Both algorithms used in SSL:Both algorithms used in SSL:

- Symmetric by the record layer- Symmetric by the record layer- Asymmetric by the handshake protocol- Asymmetric by the handshake protocol

In steady state, record layer is responsible for online In steady state, record layer is responsible for online encryption/decryption, using one secret key (symmetric),encryption/decryption, using one secret key (symmetric),which is the same both on the client and the server sideswhich is the same both on the client and the server sides

Before that, handshake protocol implements the initial passingBefore that, handshake protocol implements the initial passingof the public key from the server to the client (asymmetric),of the public key from the server to the client (asymmetric),as well as a number of related activitiesas well as a number of related activities

At the very beginning (before all above), server obtains At the very beginning (before all above), server obtains both the public and the secret keys during the certification both the public and the secret keys during the certification (inside the certificate obtained from the trusted source)(inside the certificate obtained from the trusted source)

Page 158: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 158/268

Made by: Ifact

Symmetric AlgorithmsSymmetric Algorithms Actual encryption is performed Actual encryption is performed

through the use of symmetric encryption algorithms through the use of symmetric encryption algorithms The most widely used symmetric algorithm is DES The most widely used symmetric algorithm is DES

(Data Encryption Standard)(Data Encryption Standard) Symmetric means that both encryption and decryptionSymmetric means that both encryption and decryption

are performed with the same keyare performed with the same key How to make the Symmetric Secret Key known to both How to make the Symmetric Secret Key known to both

the server and the client? By an asymmetric algorithm!the server and the client? By an asymmetric algorithm!

SSL

SSLSender

ReceiverDATA

DATA

SSL Encrypts DATA with SymmetricSecretKey

SSL Decrypts DATA with SymmetricSecretKey

Sender Ports Receiver Ports

EncryptedDATA

Socket

Page 159: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 159/268

Made by: Ifact

Asymmetric AlgorithmsAsymmetric Algorithms In order to hide the encryption/decryption key In order to hide the encryption/decryption key

from possible attackers from possible attackers and still make it known to both server and client, and still make it known to both server and client, SSL handshake protocol uses an asymmetric protocol like RSA (Rivest + SSL handshake protocol uses an asymmetric protocol like RSA (Rivest + Shamir + Adleman, MIT)Shamir + Adleman, MIT)

Asymmetric algorithms are based on the concept of secret key and the Asymmetric algorithms are based on the concept of secret key and the corresponding public keycorresponding public key

In general, secure sending of data includes the following steps:In general, secure sending of data includes the following steps:– receiver obtains the public key and the corresponding secret key;receiver obtains the public key and the corresponding secret key;

the longer the better!the longer the better!– receiver publishes the public key (e.g., via the Internet),receiver publishes the public key (e.g., via the Internet),

and keeps the secret key hiddenand keeps the secret key hidden– sender obtains the receiver’s public key sender obtains the receiver’s public key

and encrypts data with it (the receiver’s public key)and encrypts data with it (the receiver’s public key)– sender transmits data over the networksender transmits data over the network– receiver uses his/her secret key to decrypt datareceiver uses his/her secret key to decrypt data

Intercepted data cannot be decrypted without the secret key Intercepted data cannot be decrypted without the secret key even if attacker knows the public key even if attacker knows the public key

Page 160: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 160/268

Made by: Ifact

Server CertificationServer Certification

In the e-commerce field, In the e-commerce field, each and every server is supposed to be certifiedeach and every server is supposed to be certified

This means that merchant has obtained a certificate This means that merchant has obtained a certificate from a well known and reliable institutionfrom a well known and reliable institution

Incorporated in the certificate is a set of RSA keys Incorporated in the certificate is a set of RSA keys (used in asymmetric algorithms). (used in asymmetric algorithms).

This set of keys shall be used during the SSL handshake phase This set of keys shall be used during the SSL handshake phase with the client (initial exchange)with the client (initial exchange)

Page 161: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 161/268

Made by: Ifact

Simplified SSL Handshake ProtocolSimplified SSL Handshake Protocol

We assume that only the server We assume that only the server is certifiedis certified(has obtained a set of RSA (has obtained a set of RSA public keys); this is why public keys); this is why ‘simplified’‘simplified’

Picture explains Picture explains communication between server communication between server and client during the and client during the handshake agreementhandshake agreement

Client generates data to be Client generates data to be used for the later-on used for the later-on generation of the symmetric generation of the symmetric secret key, and passes it to the secret key, and passes it to the server, using the asymmetric server, using the asymmetric algorithm (using the algorithm (using the asymmetric public key asymmetric public key obtained from the server)obtained from the server)

clientHello

serverHello

certificate

serverKeyExchange

clientKeyExchage

finished

finished

Page 162: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 162/268

Made by: Ifact

ClientHelloClientHello

With this message, client actually announces its existence!With this message, client actually announces its existence! Client sends ClientHello message which contains Client sends ClientHello message which contains

(among other things) randomly chosen 28 bytes(among other things) randomly chosen 28 bytes Message also contains the list of supported algorithms (by client) Message also contains the list of supported algorithms (by client)

for encryption and optional compression of data. List is sorted for encryption and optional compression of data. List is sorted with more secure algorithms placed near the top of the listwith more secure algorithms placed near the top of the list(e.g., it announces that it supports DES (e.g., it announces that it supports DES with a 128-bit symmetric secret key)with a 128-bit symmetric secret key)

Page 163: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 163/268

Made by: Ifact

ServerHelloServerHello

Server as an answer sends ServerHello message that contains Server as an answer sends ServerHello message that contains independently generated random data (similar to ClientHello)independently generated random data (similar to ClientHello)

These random data add one more security level into the systemThese random data add one more security level into the system Also, message contains a response to the client Also, message contains a response to the client

with the server’s selection of algorithms from the client’s lists. with the server’s selection of algorithms from the client’s lists. Server chooses the first algorithm, from the top of the list, Server chooses the first algorithm, from the top of the list, that he/she supports (the first one is the most reliable)that he/she supports (the first one is the most reliable)

As already indicated, As already indicated, this message is to negotiate the symmetric algorithm to be usedthis message is to negotiate the symmetric algorithm to be used

Page 164: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 164/268

Made by: Ifact

CertificateCertificate

Server sends its certificate to the client (certificate=PublicKeyEtc); Server sends its certificate to the client (certificate=PublicKeyEtc);

incorporated in the message, the server’s public key is sent. incorporated in the message, the server’s public key is sent. Additional data exchanged are the company name, physical Additional data exchanged are the company name, physical

address, contact address, assurances from the trusted partyaddress, contact address, assurances from the trusted party(that the certificate is not fake)(that the certificate is not fake)

After the reception of this message, After the reception of this message, client knows the server’s public key client knows the server’s public key that shall be used in subsequent messagesthat shall be used in subsequent messages

Generally speaking, Generally speaking, there exist certificates that are used only as signaturesthere exist certificates that are used only as signatures(with ‘additional data’ specified above) (with ‘additional data’ specified above) and do not contain RSA keys. and do not contain RSA keys.

Page 165: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 165/268

Made by: Ifact

ServerKeyExchangeServerKeyExchange

If the previous message did not contain the set of RSA keys, then If the previous message did not contain the set of RSA keys, then this message has to be sentthis message has to be sent

Server sends the ServerKeyExchange message Server sends the ServerKeyExchange message with a temporary public key generated ad hocwith a temporary public key generated ad hoc(the secret key is generated at the same time, (the secret key is generated at the same time, but, of course, it is not sent over the network)but, of course, it is not sent over the network)

Page 166: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 166/268

Made by: Ifact

ClientKeyExchange (1)ClientKeyExchange (1)

Unlike the ServerKeyExchange, Unlike the ServerKeyExchange, this message is exchanged always (essential for the handshake)this message is exchanged always (essential for the handshake)

Client randomly generates a 40 bytes long data called Client randomly generates a 40 bytes long data called PreMasterSecret (that will turn later into the symmetric secret key)PreMasterSecret (that will turn later into the symmetric secret key)

Note that it is the Client who generates the symmetric key,Note that it is the Client who generates the symmetric key,but not in its direct form; instead in the form of PreMasterSecret.but not in its direct form; instead in the form of PreMasterSecret.

This PreMasterSecret is used on both sides (Server and Client),This PreMasterSecret is used on both sides (Server and Client),in conjunction with the initially transferred random data,in conjunction with the initially transferred random data,to form the symmetric encryption/decription key to form the symmetric encryption/decription key (using the predefined algorithm)(using the predefined algorithm)

Page 167: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 167/268

Made by: Ifact

ClientKeyExchange (2)ClientKeyExchange (2)

Using the public key, client encrypts PreMasterSecretUsing the public key, client encrypts PreMasterSecretand sends it as the EncryptedPreMasterSecret and sends it as the EncryptedPreMasterSecret incorporated into ClienKeyExchange messageincorporated into ClienKeyExchange message

Server accepts the message Server accepts the message and decrypts PreMasterSecret with its secret keyand decrypts PreMasterSecret with its secret key

When both server and client have obtained PreMasterSecret, When both server and client have obtained PreMasterSecret, they calculate a 40B MasterSecret they calculate a 40B MasterSecret (using PreMasterSecret and previously exchanged random data)(using PreMasterSecret and previously exchanged random data)

That is in fact the final goal of the SSL handshake protocolThat is in fact the final goal of the SSL handshake protocol(passing the secret key from client to server)(passing the secret key from client to server)

Page 168: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 168/268

Made by: Ifact

Finished MessagesFinished Messages

Both client and server now send finished messages Both client and server now send finished messages containing parameters derived from the contents containing parameters derived from the contents of all previous handshake massages and MasterSecretof all previous handshake massages and MasterSecret(the last derivative on the way to symmetric key)(the last derivative on the way to symmetric key)

This is a protection against attacks (in the procedure so far)This is a protection against attacks (in the procedure so far)performed by altering handshake messagesperformed by altering handshake messages

If attacker tampers with handshake messages, If attacker tampers with handshake messages, then these parameters then these parameters (contained in the message and derived from sent messages) (contained in the message and derived from sent messages) will differ from the same parameters computed by the receiverwill differ from the same parameters computed by the receiver(derived from received messages)(derived from received messages)

There is no way for attacker to fake finished messages There is no way for attacker to fake finished messages without knowing the agreed MasterSecretwithout knowing the agreed MasterSecret

In essence, a CRC is applied to all messages exchanged In essence, a CRC is applied to all messages exchanged in the handshaking process; the resulting checksum is encrypted.in the handshaking process; the resulting checksum is encrypted.

Page 169: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 169/268

Made by: Ifact

Simplified Handshake: RevisitedSimplified Handshake: Revisited

Client Server

Client generates Client generates SecretSymmKeySecretSymmKey

Client crypts Client crypts SecretSymmKeySecretSymmKeyusing PubAsymKeyusing PubAsymKey

Server generates Server generates PublicAsymmKeyPublicAsymmKey

PublicAsymmKey is transmitted PublicAsymmKey is transmitted to Clientto Client

Crypted SecretSymmKey is Crypted SecretSymmKey is transmitted to Servertransmitted to Server Server decrypts Server decrypts

SecretSymmKey using SecretSymmKey using SecretAssymKeySecretAssymKey

Client generates Client generates master cheksum master cheksum

Server generates Server generates master cheksum master cheksum

Cheksums are exchanged and Cheksums are exchanged and validatedvalidated

Encrypted connection establishedEncrypted connection establishedClient encrypts/decrypts Client encrypts/decrypts DATA with DATA with

SecretSymmKeySecretSymmKey

Server encrypts/decrypts Server encrypts/decrypts DATA with DATA with

SecretSymmKeySecretSymmKey

Page 170: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 170/268

Made by: Ifact

SSL Record LayerSSL Record Layer

After the handshake protocol is successfully completed,After the handshake protocol is successfully completed,client and server independently compute MACsclient and server independently compute MACsand encryption/decryption keysand encryption/decryption keys

Now everything is ready for a safe transmission:Now everything is ready for a safe transmission:- keys are to prevent abuse- keys are to prevent abuse- MACs are to detect abuse- MACs are to detect abuse

Record layer first optionally compresses every packet Record layer first optionally compresses every packet that needs to be transmitted;that needs to be transmitted;after that, MAC is attached to it, after that, MAC is attached to it, and then the record layer encrypts it all together and then the record layer encrypts it all together

After reception, receiver first decrypts data, separates MAC, After reception, receiver first decrypts data, separates MAC, and makes sure that it is identical to the one calculated earlier and makes sure that it is identical to the one calculated earlier

If everything is OK, receiver decompresses data If everything is OK, receiver decompresses data (if that is needed), which effectively ends secure transmission.(if that is needed), which effectively ends secure transmission.

Page 171: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Microsoft Microsoft Site Server Commerce EditionSite Server Commerce Edition

A Technological SurveyA Technological Survey

Page 172: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 172/268

Made by: Ifact

Basic Concepts and ToolsBasic Concepts and Tools

SSCE enables merchants to build their storefronts SSCE enables merchants to build their storefronts with much more flexibility than with previous tools.with much more flexibility than with previous tools.

SSCE comes with the means for integration SSCE comes with the means for integration with existing information systems and tools with existing information systems and tools for virtually any part of store development and usefor virtually any part of store development and use

Based on the ASP technology Based on the ASP technology which enables the execution of script language programs which enables the execution of script language programs on a Web server; the ASP files include HTML tags and script codeon a Web server; the ASP files include HTML tags and script code

The script code is able to dynamically create the HTML pages The script code is able to dynamically create the HTML pages for storefront implementation purposes (and wider); for storefront implementation purposes (and wider);

The SSCE is a methodology to connect the existing IS The SSCE is a methodology to connect the existing IS with the newly generated storefront with the newly generated storefront

SSCE is a kind of ASP extension!SSCE is a kind of ASP extension!

Page 173: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 173/268

Made by: Ifact

Mentioned tools include:Mentioned tools include: Site Builder Wizard is a simple step by step wizard Site Builder Wizard is a simple step by step wizard

that simplifies HTML and database connection writing. that simplifies HTML and database connection writing. It comes with several completed sites as examplesIt comes with several completed sites as examples

Dynamic Merchandising is a way for real-time catalog administration Dynamic Merchandising is a way for real-time catalog administration with WWW interface. Included are cross-sell systems with WWW interface. Included are cross-sell systems that enable merchants to dynamically generate offer pages that enable merchants to dynamically generate offer pages based on customer’s purchasing history based on customer’s purchasing history and current contents of his/her shopping basketand current contents of his/her shopping basket

Order processing pipeline (OPP) is a concept Order processing pipeline (OPP) is a concept that takes care about background tasks that takes care about background tasks like gathering information about products catalog, like gathering information about products catalog, calculation of prices, taxes calculation…calculation of prices, taxes calculation…

It can be integrated with the existing information systems It can be integrated with the existing information systems and its capabilities can be extended by inserting new components. and its capabilities can be extended by inserting new components. OPP is the fundamental concept OPP is the fundamental concept behind the e-commerce business to consumer (B2C) sitesbehind the e-commerce business to consumer (B2C) sites

Page 174: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 174/268

Made by: Ifact

Commerce Interchange Pipeline (CIP) is a concept Commerce Interchange Pipeline (CIP) is a concept intended for business to business (B2B) applications. intended for business to business (B2B) applications. B2B includes implementation of infrastructure for businesses B2B includes implementation of infrastructure for businesses to exchange documents and forms of business transactions to exchange documents and forms of business transactions through an existing EDI (Electronic data interchange) system; through an existing EDI (Electronic data interchange) system; outside the scope of this tutorial.outside the scope of this tutorial.

Integration with Microsoft Transaction Server (MTS). Integration with Microsoft Transaction Server (MTS). MTS is a sw package that ensures integrity of database operations MTS is a sw package that ensures integrity of database operations by introducing a transaction based interface for database accessby introducing a transaction based interface for database access

SSCE is based upon the ASP server side script technologySSCE is based upon the ASP server side script technology SSCE also includes Direct Mailer - A simple tool SSCE also includes Direct Mailer - A simple tool

for personalized TDEM (Target Directed E-mail Marketing) for personalized TDEM (Target Directed E-mail Marketing) campaigns based on customers profiles and their affiliations campaigns based on customers profiles and their affiliations

Page 175: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 175/268

Made by: Ifact

BasicsBasics

Technically, Technically, any SSCE-built store is based on three key technologies: any SSCE-built store is based on three key technologies: ASP, COM (Component Object Model) objects, and OPP ASP, COM (Component Object Model) objects, and OPP

Pages on a SSCE-created Web site are ASP pages Pages on a SSCE-created Web site are ASP pages with a server side script that manipulates a set of COM objects,with a server side script that manipulates a set of COM objects,usually those coming within the SSCE package. usually those coming within the SSCE package. Script uses these objects to gather information from consumers, Script uses these objects to gather information from consumers, to find or save info with a ODBC/ADO query, and to find or save info with a ODBC/ADO query, and to process needed tasks through OPP (ADO = ActiveX Data Objects)to process needed tasks through OPP (ADO = ActiveX Data Objects)

Page 176: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 176/268

Made by: Ifact

OPP ConceptOPP Concept

OPP imitates interaction between customer and merchant OPP imitates interaction between customer and merchant in a typical real-world storein a typical real-world store

OPP is actually a name for a set of OPP is actually a name for a set of threethree pipelines and pipelines and each one will be described in full extenteach one will be described in full extent

As any other pipelines, As any other pipelines, OPP pipelines also consist of discrete parts called stages OPP pipelines also consist of discrete parts called stages that are executed in a precisely determined sequencethat are executed in a precisely determined sequence

Each stage contains COM objects that actually do the job Each stage contains COM objects that actually do the job the stage is supposed to perform the stage is supposed to perform

It is clear that information needs to be passed from It is clear that information needs to be passed from one pipeline stage to another one pipeline stage to another to perform meaningful processing. to perform meaningful processing. This is implemented through use of the OrderForm objectThis is implemented through use of the OrderForm object

OrderForm object is a COM object that contains info about: OrderForm object is a COM object that contains info about: consumer, shopping basket details, prices, consumer, shopping basket details, prices, and additional expensesand additional expenses

Page 177: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 177/268

Made by: Ifact

Short Description of OPP StagesShort Description of OPP Stages

This is about a stage, no matter what pipe it belongs to!This is about a stage, no matter what pipe it belongs to!Some of the stages may exist in one, others in two pipelines;Some of the stages may exist in one, others in two pipelines;No case when a stage can exist in all three pipes (rule, so far)No case when a stage can exist in all three pipes (rule, so far)

Product Info - Gathers data about products offered to consumersProduct Info - Gathers data about products offered to consumers Merchant Information - Adds info about merchant to OrderFormMerchant Information - Adds info about merchant to OrderForm Shopper Information - Adds info about customer Shopper Information - Adds info about customer

(one that is currently visiting the site) to the OrderForm(one that is currently visiting the site) to the OrderForm Order Initialization - Sets initial order data to OrderForm Order Initialization - Sets initial order data to OrderForm

and makes sure that OrderForm contains a unique ID and makes sure that OrderForm contains a unique ID of this particular orderof this particular order

Order Check - Checks whether OrderForm contains Order Check - Checks whether OrderForm contains needed information; needed information; for example, is there at least one product that is put into the orderfor example, is there at least one product that is put into the order

Item Price - Determines initial price of the order Item Price - Determines initial price of the order without any discounts and additional expenseswithout any discounts and additional expenses

Page 178: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 178/268

Made by: Ifact

Item Adjust Price - For product price adjustment Item Adjust Price - For product price adjustment based on possible discountsbased on possible discounts

Order Adjust Price - Discounts based on total amount of order Order Adjust Price - Discounts based on total amount of order Order Subtotal - Calculates price of order before any tax, Order Subtotal - Calculates price of order before any tax,

shipment and handling expenses are consideredshipment and handling expenses are considered Shipping - This stage calculates amount of shipping expenses Shipping - This stage calculates amount of shipping expenses

for the orderfor the order Handling - This stage calculates the amount of handling expenses Handling - This stage calculates the amount of handling expenses

for the orderfor the order Tax - Calculates taxes for each item in the orderTax - Calculates taxes for each item in the order

and the total tax amount for the entire orderand the total tax amount for the entire order

Page 179: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 179/268

Made by: Ifact

Order Total - Calculates final prices based on previous stagesOrder Total - Calculates final prices based on previous stages Inventory - Makes sure that there are enough ordered products Inventory - Makes sure that there are enough ordered products

on the stockson the stocks Purchase Check - Checks customer’s cc and address informationPurchase Check - Checks customer’s cc and address information Payment - Actually performs financial transactionPayment - Actually performs financial transaction Accept - Finalizing the purchase processAccept - Finalizing the purchase process

Page 180: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 180/268

Made by: Ifact

Files That Describe PipelinesFiles That Describe Pipelines

SSCE organizes data about pipelines in files with .pcf extensions. SSCE organizes data about pipelines in files with .pcf extensions. These files can be created with SSCE Pipeline EditorThese files can be created with SSCE Pipeline Editor

In .pcf files SSCE keeps info about stages and objects In .pcf files SSCE keeps info about stages and objects corresponding to these stagescorresponding to these stages

SSCE comes with the three templates for .pcf files. SSCE comes with the three templates for .pcf files. Template files come with the .pct extensionTemplate files come with the .pct extension

Page 181: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 181/268

Made by: Ifact

The Three Pipeline TypesThe Three Pipeline Types

Three Pipeline types included in the SSCE package are:Three Pipeline types included in the SSCE package are:– Product pipeline with 5 predefined stagesProduct pipeline with 5 predefined stages– Plan pipeline with 14 predefined stagesPlan pipeline with 14 predefined stages– Payment pipeline with 3 predefined stagesPayment pipeline with 3 predefined stages

Some pipeline stages include COM objects Some pipeline stages include COM objects responsible for execution of the stage-related functionsresponsible for execution of the stage-related functions

These COM objects are represented graphically as valves These COM objects are represented graphically as valves

Page 182: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 182/268

Made by: Ifact

Product TemplateProduct Template

This is the template for the first of the three pipelinesThis is the template for the first of the three pipelines Product.pct - this template is used for price and discount calculation Product.pct - this template is used for price and discount calculation

for individual products. Usually application uses this pipeline for individual products. Usually application uses this pipeline on product.asp page to obtain general information on product.asp page to obtain general information and the price for each offered productand the price for each offered product

Stages in the product pipeline usually includeStages in the product pipeline usually include: : Product Info, Shopper Info, Item Price, Item Adjust Price, and InventoryProduct Info, Shopper Info, Item Price, Item Adjust Price, and Inventory

Page 183: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 183/268

Made by: Ifact

Plan TemplatePlan Template

Plan.pct - This template is for pipeline Plan.pct - This template is for pipeline which is supposed to calculate the final price of the order. which is supposed to calculate the final price of the order. Usually, pipeline is used to create the final report for the customer Usually, pipeline is used to create the final report for the customer with the facility to finalize the payment process with the facility to finalize the payment process or to drop from the purchase all togetheror to drop from the purchase all together

Stages in the plan pipeline usually include: Stages in the plan pipeline usually include: Product Info, Merchant Product Info, Merchant Info, Shopper Info, Order Initialization, Order Check, Item Price, Item Info, Shopper Info, Order Initialization, Order Check, Item Price, Item Adjust Price, Order Adjust Price, Order Subtotal, Shipping, Tax, Order Adjust Price, Order Adjust Price, Order Subtotal, Shipping, Tax, Order Total, and InventoryTotal, and Inventory

Page 184: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 184/268

Made by: Ifact

Purchase TemplatePurchase Template

Purchase.pct - This template is for pipelines that check Purchase.pct - This template is for pipelines that check payment information, perform financial transaction, payment information, perform financial transaction, and save order information into the databaseand save order information into the database

This type of pipeline usually receives OrderForm This type of pipeline usually receives OrderForm that has already propagated through the plan pipeline. that has already propagated through the plan pipeline. Actually, this pipeline only completes the payment process Actually, this pipeline only completes the payment process initiated in the plan pipelineinitiated in the plan pipeline

This type of pipeline usually consists of the following stages: This type of pipeline usually consists of the following stages: Purchase Check, Payment, and AcceptPurchase Check, Payment, and Accept

Page 185: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 185/268

Made by: Ifact

Pipeline EditorPipeline Editor

Pipeline Editor is a visual tool Pipeline Editor is a visual tool for creating pipeline files (.pcf). for creating pipeline files (.pcf). Pipeline is graphically presented Pipeline is graphically presented as a vertical pipe broken into as a vertical pipe broken into sections representing stagessections representing stages

Every horizontal section (valve) Every horizontal section (valve) represents an OPP COM object represents an OPP COM object in the corresponding stagein the corresponding stage

This software enables user to This software enables user to add and configure OPP objects. add and configure OPP objects. Also, user can create or remove Also, user can create or remove stages from the pipeline.stages from the pipeline.

Page 186: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 186/268

Made by: Ifact

MTS and OPPMTS and OPP

OPP supports full Microsoft Transaction Server integration. OPP supports full Microsoft Transaction Server integration. Actually there are two versions of objects Actually there are two versions of objects that encapsulate pipeline during execution. that encapsulate pipeline during execution. Those are MtsPipeline and MtsTxPipeline objects.Those are MtsPipeline and MtsTxPipeline objects.

The only difference is that MtsTxPipeline runs in cooperation The only difference is that MtsTxPipeline runs in cooperation with MTS, ensuring data integrity. with MTS, ensuring data integrity. Usually, merchant runs the Purchase pipeline Usually, merchant runs the Purchase pipeline with the MtsTxPipeline objectwith the MtsTxPipeline object

After instancing one of the above object, After instancing one of the above object, by calling the LoadPipe method,by calling the LoadPipe method,the desired .pcf file gets loaded, the desired .pcf file gets loaded, and the Execute method starts the pipeline executionand the Execute method starts the pipeline execution

Page 187: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 187/268

Made by: Ifact

OrderForm as a Dictionary ObjectOrderForm as a Dictionary Object

OrderForm is a so-called dictionary object. OrderForm is a so-called dictionary object. This type of objects are unique by the fact that This type of objects are unique by the fact that users can dynamically add properties (name/value pairs) to them users can dynamically add properties (name/value pairs) to them

Name/value pairs have references and values Name/value pairs have references and values just like any other object property, just like any other object property, except that they can be dynamically added except that they can be dynamically added with a simple assignment command like:with a simple assignment command like:Object.name_of_name/value_pair = value_of_name/value_pairObject.name_of_name/value_pair = value_of_name/value_pair

If an object does not contain a property with this name, If an object does not contain a property with this name, a new property (name/value pair) will be createda new property (name/value pair) will be createdand a value will be assigned to it. and a value will be assigned to it. If it does exist, If it does exist, then the above call will be considered to be a normal reference then the above call will be considered to be a normal reference and a value will be assigned to the existing propertyand a value will be assigned to the existing property

Page 188: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 188/268

Made by: Ifact

OrderForm:OrderForm:

This object should contain all information necessary This object should contain all information necessary for order completionfor order completion

This is NOT an object that helps implement functionality of a stage;This is NOT an object that helps implement functionality of a stage;this is an object that propagates through all 3 pipelines!this is an object that propagates through all 3 pipelines!This object maintains the context of the order processing This object maintains the context of the order processing

Generally it consists of data needed for payment and shipment, Generally it consists of data needed for payment and shipment, along with the collection of objects representing items along with the collection of objects representing items that customer wishes to buy.that customer wishes to buy.

Item is, in this terminology, a set of products of the same type, Item is, in this terminology, a set of products of the same type, that a customer chooses on the merchant’s sitethat a customer chooses on the merchant’s site

Usually, customer chooses a product Usually, customer chooses a product and then specifies the desired quantity he/she wishes to buyand then specifies the desired quantity he/she wishes to buy

Also OrderForm contains two object collections (‘sub-objects’) used Also OrderForm contains two object collections (‘sub-objects’) used by pipelines to report errors encountered during order processingby pipelines to report errors encountered during order processing

Page 189: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 189/268

Made by: Ifact

PropertiesProperties

Every ‘item’ object Every ‘item’ object has fields for has fields for calculating the price calculating the price and the additional and the additional expenses tied to that expenses tied to that ‘item’‘item’

The ‘items’ is an The ‘items’ is an object implemented object implemented as a collection of as a collection of ‘item’ objects‘item’ objects

Each ‘item’ includes Each ‘item’ includes no methods (only no methods (only data)data)

Page 190: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 190/268

Made by: Ifact

Adding New Info to OrderFormAdding New Info to OrderForm This ‘adding’ is related to an on-going purchaseThis ‘adding’ is related to an on-going purchase During pipeline processing, During pipeline processing,

additional information (new fields; new name-value pairs) additional information (new fields; new name-value pairs) is usually added to the OrderForm objectis usually added to the OrderForm object

A typical example is the Product Info Pipeline stage A typical example is the Product Info Pipeline stage that gathers product information usually by database query that gathers product information usually by database query

Example: Example: SELECT * FROM products WHERE SKU=OrderForm.Item[1].SKUSELECT * FROM products WHERE SKU=OrderForm.Item[1].SKU

Description:Description:This SQL query (in the PI pipeline stage) is executed for each itemThis SQL query (in the PI pipeline stage) is executed for each item(specified with a different product code/identifier SKU);(specified with a different product code/identifier SKU);For every column of the query result, For every column of the query result, COM object in this stage creates a new COM object in this stage creates a new propertyproperty (field; name-value) in the (field; name-value) in the OrderForm object, like OrderForm object, like _product_columnName_product_columnName and stores the value obtained from the query in it. and stores the value obtained from the query in it.

Many of these properties are predefined Many of these properties are predefined (like _product_name for example). (like _product_name for example). Those that are not, are automatically created.Those that are not, are automatically created.

Page 191: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 191/268

Made by: Ifact

Pipeline Types and Stage FunctionsPipeline Types and Stage Functions

As already mentioned, As already mentioned, a SSCE pipeline is a series of COM objects a SSCE pipeline is a series of COM objects executed in a predefined orderexecuted in a predefined order

These objects are grouped in pipeline stages. These objects are grouped in pipeline stages. Every stage is a logical macro step and is meant for certain function. Every stage is a logical macro step and is meant for certain function. Usually, a stage has an ability to check (at the end of its execution) Usually, a stage has an ability to check (at the end of its execution) whether the function, stage is meant for, is actually performedwhether the function, stage is meant for, is actually performed

This is done before execution control is transferred This is done before execution control is transferred to the next pipeline stageto the next pipeline stage

Page 192: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 192/268

Made by: Ifact

““Branching”Branching”

Branching does not exist directly; only indirectly,Branching does not exist directly; only indirectly,using the ‘null data field’ mechanismusing the ‘null data field’ mechanism

Pipeline stages and components in those stages are executed Pipeline stages and components in those stages are executed sequentially according to the predefined order specified in sequentially according to the predefined order specified in pipeline editor. One form of branching simulation can be pipeline editor. One form of branching simulation can be achieved by the following mechanismachieved by the following mechanism

The idea is to write components (many built-in ones are of this type) The idea is to write components (many built-in ones are of this type) that first checks to see if fields they are supposed to set are null. that first checks to see if fields they are supposed to set are null. If they are not, components perform their function, If they are not, components perform their function, otherwise they do nothing. This enables, for instance, otherwise they do nothing. This enables, for instance, to calculate different shipping fees to calculate different shipping fees for different shipping methods and destinationsfor different shipping methods and destinations

Page 193: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 193/268

Made by: Ifact

Product PipelineProduct Pipeline

Aim of this type of pipeline is Aim of this type of pipeline is to gather information about to gather information about products, and shows it on the products, and shows it on the product.asp pageproduct.asp page

This page shows info on the This page shows info on the products offered for saleproducts offered for sale

This stage, among other This stage, among other things, is used for a things, is used for a preliminary preliminary single item price single item price determinationdetermination

Page 194: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 194/268

Made by: Ifact

Product Info Stage (#1)Product Info Stage (#1)

Minimal requirements for this stage is that it must, Minimal requirements for this stage is that it must, for each Item in Items collection, for each Item in Items collection, copy info from the product database to the required fieldscopy info from the product database to the required fields

Additional components in this stage should be used Additional components in this stage should be used for retrieval and/or calculation of non predefined data for retrieval and/or calculation of non predefined data such as product weight needed such as product weight needed as a basis for shipment cost calculationas a basis for shipment cost calculation

At the end of stage execution, a check is performed to see At the end of stage execution, a check is performed to see if required data are retrieved for all Itemsif required data are retrieved for all Items

Page 195: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 195/268

Made by: Ifact

Shopper Information (#2)Shopper Information (#2)

This stage writes information (to OrderForm) about the customer;This stage writes information (to OrderForm) about the customer;if the related field already exists - just fill in;if the related field already exists - just fill in;if no - create!if no - create!

This is useful if a customer database is to be builtThis is useful if a customer database is to be built This is usually done to enable creation of special discounts This is usually done to enable creation of special discounts

for particular groups of customersfor particular groups of customers This stage is not required This stage is not required

and no checking is performed at the endand no checking is performed at the end

Page 196: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 196/268

Made by: Ifact

Item Price (#3)Item Price (#3)

Goal of this stage is to determine the regular price Goal of this stage is to determine the regular price (without any discounts and additional expenses) for every Item, (without any discounts and additional expenses) for every Item, and to put it into the OrderForm object. and to put it into the OrderForm object.

This value is written to the field calledThis value is written to the field called_iadjust_regularprice _iadjust_regularprice

At the end of this stage, checking is performed to see if all At the end of this stage, checking is performed to see if all _iadjust_regularprice fields are set_iadjust_regularprice fields are set

Page 197: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 197/268

Made by: Ifact

Item Adjust Price (#4)Item Adjust Price (#4)

This stage calculates all possible discounts This stage calculates all possible discounts and comes up with a new price value and comes up with a new price value when all these discounts are applied to the price when all these discounts are applied to the price obtained in the previous stageobtained in the previous stage

Result is written to _iadjust_currentprice for each itemResult is written to _iadjust_currentprice for each item At the end, stage checks if all _iadjust_currentprice values are setAt the end, stage checks if all _iadjust_currentprice values are set

Page 198: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 198/268

Made by: Ifact

Inventory (#5)Inventory (#5)

This is the last stage in the product pipeline This is the last stage in the product pipeline and it is used to check if the required amount of products and it is used to check if the required amount of products is present on stocks (in the inventory)is present on stocks (in the inventory)

If not enough products are present for a particular Item, If not enough products are present for a particular Item, component sets _inventory_backorder for that Itemcomponent sets _inventory_backorder for that Item

No checking is performed at the end of this stageNo checking is performed at the end of this stage

Page 199: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 199/268

Made by: Ifact

Plan PipelinePlan Pipeline

Plan pipeline is a Plan pipeline is a superset of the superset of the Product pipelineProduct pipeline

It is used for It is used for complete price complete price calculationcalculation based on based on various parametersvarious parameters

What follows is only What follows is only the NEW stages, not the NEW stages, not mentioned before, in mentioned before, in the product pipelinethe product pipeline

Page 200: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 200/268

Made by: Ifact

Merchant InformationMerchant Information

Used for setting data about merchant in OrderFormUsed for setting data about merchant in OrderForm This is an optional stage and no checking is performed at the endThis is an optional stage and no checking is performed at the end

Page 201: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 201/268

Made by: Ifact

Order InitializationOrder Initialization

This stage initializes order information This stage initializes order information while checking that correct product quantity is set while checking that correct product quantity is set for each item (Item[n].Quantity)for each item (Item[n].Quantity)

At the end of the stage, At the end of the stage, a built-in checking system sets the order ID, a built-in checking system sets the order ID, if it is not already set, if it is not already set, creates _oadjust_adjustedprice for each item creates _oadjust_adjustedprice for each item as well as deletes some fields as well as deletes some fields that need to be reset when the pipeline execution commencesthat need to be reset when the pipeline execution commences

Page 202: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 202/268

Made by: Ifact

Order CheckOrder Check

Verifies that the order can be processed. This means that Verifies that the order can be processed. This means that stage adds error message to OrderForm stage adds error message to OrderForm if the order does not contain at least one itemif the order does not contain at least one item

Any additional component in this stage should check Any additional component in this stage should check order validity based on possible specific criteria order validity based on possible specific criteria and maybe make some corrections and maybe make some corrections that will allow further pipeline processingthat will allow further pipeline processing

Page 203: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 203/268

Made by: Ifact

Order Adjust PriceOrder Adjust Price

This stage calculates additional discount This stage calculates additional discount based on the order as a whole based on the order as a whole

This enables, for instance, discounts for orders This enables, for instance, discounts for orders that are above some predefined amountthat are above some predefined amount

This is for ‘buy 6, pay 5, scenarios’This is for ‘buy 6, pay 5, scenarios’

Page 204: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 204/268

Made by: Ifact

Order SubtotalOrder Subtotal

Final order price before any shipping, handling, and Final order price before any shipping, handling, and tax expenses should be set heretax expenses should be set here

This is done by summing up all _oadjust_adjustedprice This is done by summing up all _oadjust_adjustedprice values and storing result in _oadjust_subtotalvalues and storing result in _oadjust_subtotal

Reason for this calculation is that this value is needed Reason for this calculation is that this value is needed for additional calculation in the next stages for additional calculation in the next stages that are based on the total price of the order that are based on the total price of the order and not on the price of a particular itemsand not on the price of a particular items

Additionally, this value is presented as a final price Additionally, this value is presented as a final price on a page where contents of customer’s basket is shown on a page where contents of customer’s basket is shown because shipping address is not yet known, because shipping address is not yet known, so shipping and taxes fees cannot be calculated yetso shipping and taxes fees cannot be calculated yet

Page 205: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 205/268

Made by: Ifact

Shipping Shipping

Calculates shipping fees that should be incorporated Calculates shipping fees that should be incorporated in the final pricein the final price

This value should be written in _shipping_total field This value should be written in _shipping_total field which is checked at the end of the stage executionwhich is checked at the end of the stage execution

Page 206: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 206/268

Made by: Ifact

HandlingHandling

Similarly calculates the handling fee and stores it in the Similarly calculates the handling fee and stores it in the _handling_total field_handling_total field

Page 207: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 207/268

Made by: Ifact

TaxTax

Last stage before final price calculationLast stage before final price calculation Components in this stage should always set _tax_total field Components in this stage should always set _tax_total field

and _tax_included field and _tax_included field which denounces part of the previously calculated prices which denounces part of the previously calculated prices as the already included taxas the already included tax

Although this is not checked at the end of the stage execution, Although this is not checked at the end of the stage execution, components should set tax fee value for each item components should set tax fee value for each item in order to simplify later book-keeping processin order to simplify later book-keeping process

Page 208: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 208/268

Made by: Ifact

Order TotalOrder Total

Calculates FINAL price by summing values calculated in Tax, Calculates FINAL price by summing values calculated in Tax, Shipping, Handling, and Order Subtotal stagesShipping, Handling, and Order Subtotal stages

Final price is stored in OrderForm._total_total. Final price is stored in OrderForm._total_total. This field is checked at the end of this stage executionThis field is checked at the end of this stage execution

Page 209: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 209/268

Made by: Ifact

Purchase PipelinePurchase Pipeline

This type of pipeline accepts This type of pipeline accepts the OrderForm object already the OrderForm object already processed through the Plan processed through the Plan pipeline and completes the pipeline and completes the order processing by order processing by performing financial performing financial transactiontransaction

This pipeline, among other This pipeline, among other things, performs the cc things, performs the cc authorization and authorization and completes completes the purchasethe purchase

Page 210: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 210/268

Made by: Ifact

Purchase CheckPurchase Check

This stage is often used for verification This stage is often used for verification if OrderForm is ready for order completion. if OrderForm is ready for order completion. OrderForm must have _total_total value set along OrderForm must have _total_total value set along with the all necessary payment processing information with the all necessary payment processing information

No checks are performed at the end of this stageNo checks are performed at the end of this stage

Page 211: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 211/268

Made by: Ifact

PaymentPayment

This stage should perform the actual financial transactions This stage should perform the actual financial transactions The goal is to accept or reject the purchase The goal is to accept or reject the purchase

by performing cc authorization. by performing cc authorization. This stage must set _payment_auth_code This stage must set _payment_auth_code

which represents ID of the particular transaction,which represents ID of the particular transaction,as well as an indication that the transaction has been completedas well as an indication that the transaction has been completedsuccessfullysuccessfully

Page 212: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 212/268

Made by: Ifact

AcceptAccept

This last stage in the purchase pipeline performs activities This last stage in the purchase pipeline performs activities like updating inventory information, storing order data, like updating inventory information, storing order data, sending e-mail confirmation to customers (electronic bill), etc.sending e-mail confirmation to customers (electronic bill), etc.

This is an optional stage without any checking at the endThis is an optional stage without any checking at the end SSCE provides components for automatic OrderForm SSCE provides components for automatic OrderForm

database storingdatabase storing

Page 213: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

The OPP COM Components The OPP COM Components Included in SSCE (‘Valves’)Included in SSCE (‘Valves’)

Page 214: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 214/268

Made by: Ifact

Scriptor ComponentScriptor Component

This is the only built-in component that is not meant for This is the only built-in component that is not meant for particular stageparticular stage

Scriptor component allows SSCE users to implement Scriptor component allows SSCE users to implement virtually any function without writing new COM OPP objects in virtually any function without writing new COM OPP objects in Visual C++ or VB Visual C++ or VB

This component works by executing script associated with it. This component works by executing script associated with it. Any Windows Scripting Host script language can be used Any Windows Scripting Host script language can be used (VBScript, JavaScript...)(VBScript, JavaScript...)

Since programmer can use any additional functionality Since programmer can use any additional functionality in the script by instancing ActiveX objects, there are in the script by instancing ActiveX objects, there are virtually no limitations for use of scriptor componentvirtually no limitations for use of scriptor component

Page 215: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 215/268

Made by: Ifact

QueryProdInfoADOQueryProdInfoADO

QueryProdInfoADO is the only component that comes with the QueryProdInfoADO is the only component that comes with the SSCE that is meant to work in Product Information stageSSCE that is meant to work in Product Information stage

This component queries product database for each ItemThis component queries product database for each Item Query is specified either as a value of a field “Query” or as Query is specified either as a value of a field “Query” or as

a part QueryMap object that encapsulates collection of all a part QueryMap object that encapsulates collection of all queries used in application. This object is usually instanced queries used in application. This object is usually instanced in global.asa file, so that is visible for all parts of the application.in global.asa file, so that is visible for all parts of the application.

Page 216: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 216/268

Made by: Ifact

QueryProdInfoADOQueryProdInfoADO

Also there is a “Connection String” field that contains Also there is a “Connection String” field that contains specification of ODBC accessed database and field specification of ODBC accessed database and field “Parameter List” that specifies parameters used for “Parameter List” that specifies parameters used for each Item in the Queryeach Item in the Query

Component executes query for each item like this:Component executes query for each item like this:– SELECT * from Product where SKU=‘?’ and name like ‘%?%’SELECT * from Product where SKU=‘?’ and name like ‘%?%’– with parameter list like this: Item.SKU Item.Namewith parameter list like this: Item.SKU Item.Name

For each Item question marks will be replaced with For each Item question marks will be replaced with the value from the parameter list for that item. the value from the parameter list for that item. Every column from the resulting recordset will be Every column from the resulting recordset will be stored in OrderFormstored in OrderForm

Page 217: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 217/268

Made by: Ifact

DefaultShopperInfoDefaultShopperInfo

This component is used in ShopperInformation stageThis component is used in ShopperInformation stage It is copying data from Shopper object to OrderFormIt is copying data from Shopper object to OrderForm Shopper object is another predefined dictionary object Shopper object is another predefined dictionary object

that application uses to store customer data. that application uses to store customer data. This data is usually obtained through customer This data is usually obtained through customer registration on the siteregistration on the site

ShopperInformation creates fields in OrderForm like: ShopperInformation creates fields in OrderForm like: OrderForm._shopper_* OrderForm._shopper_* where * represents names of shopper object’s propertieswhere * represents names of shopper object’s properties

Page 218: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 218/268

Made by: Ifact

RequiredOrderInitRequiredOrderInit

The only component in SSCE for Order Initialization stage is The only component in SSCE for Order Initialization stage is RequiredOrderInit. Instance of this component is RequiredOrderInit. Instance of this component is automatically created and placed as a part of automatically created and placed as a part of checking logic at the end of this stage checking logic at the end of this stage

This component (among other things) does the following:This component (among other things) does the following:– if OrderForm.order_ID = null, creates new unique order IDif OrderForm.order_ID = null, creates new unique order ID– sets following values to null: sets following values to null: __totaltotal_total, _oadjust_adjustedprice, _total, _oadjust_adjustedprice,

_oadjust_subtotal, _shipping_total, _tax_total, _handling_total, _oadjust_subtotal, _shipping_total, _tax_total, _handling_total, _tax_included i _payment_auth_code_tax_included i _payment_auth_code

Page 219: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 219/268

Made by: Ifact

RequiredOrderCheckRequiredOrderCheck

This component similarly to previous is part of checking logic This component similarly to previous is part of checking logic and is always presentand is always present

It simply checks if there is at least one item in Items collection. It simply checks if there is at least one item in Items collection. If there are no items, component adds error message in the If there are no items, component adds error message in the _purchase_errors collection of the OrderForm object_purchase_errors collection of the OrderForm object

This error stops the pipeline executionThis error stops the pipeline execution

Page 220: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 220/268

Made by: Ifact

DefaultItemPriceDefaultItemPrice

This component simply copies values from This component simply copies values from Item._product_list_price to Item._iadjust_regularprice for Item._product_list_price to Item._iadjust_regularprice for each itemeach item

Fields _product_list_price must be present for each item.Fields _product_list_price must be present for each item.These values were set in Product Information stage by These values were set in Product Information stage by QueryProdInfoADO component. This means that QueryProdInfoADO component. This means that product database must have _list_price column where product database must have _list_price column where product prices are storedproduct prices are stored

Offcourse, this can be bypassed with custom scriptor Offcourse, this can be bypassed with custom scriptor component that obtains prices, on some different way, component that obtains prices, on some different way, and stores them in the _iadjust_regularprice fieldsand stores them in the _iadjust_regularprice fields

Page 221: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 221/268

Made by: Ifact

SaleAdjustSaleAdjust

SaleAdjust component for Item Adjust Price stage checks SaleAdjust component for Item Adjust Price stage checks whether items (products) are on sale and adjusts prices whether items (products) are on sale and adjusts prices accordinglyaccordingly

This component compares current date with dates set This component compares current date with dates set in the Item._product_sale_start and Item._product_sale_end in the Item._product_sale_start and Item._product_sale_end fields and if product is on sale copies fields and if product is on sale copies Item._product_sale_price to Item._iadjust_currentpriceItem._product_sale_price to Item._iadjust_currentprice

This means that as is the case with previous component This means that as is the case with previous component QueryProdinfoADO component must provide QueryProdinfoADO component must provide mentioned fields from product databasementioned fields from product database

Page 222: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 222/268

Made by: Ifact

ItemPromoItemPromo This is a more complex version of the previous component. This is a more complex version of the previous component.

Needed information is not obtained from the database, Needed information is not obtained from the database, but from component propertiesbut from component properties

Component first checks if current date is between values mentioned in Component first checks if current date is between values mentioned in the “Start Date” and “End Date” properties. the “Start Date” and “End Date” properties. If this is the case, the following must be also true for discount If this is the case, the following must be also true for discount to be applied: to be applied: [condition order key][condition operator][condition value][condition order key][condition operator][condition value]

““condition order key” ,”condition operator” and condition order key” ,”condition operator” and “condition value” are component fields that should contain “condition value” are component fields that should contain values that help determine which products are on sale. values that help determine which products are on sale. For example, if we want to apply discount only to product For example, if we want to apply discount only to product with SKU = 123 then we set properties as follows:with SKU = 123 then we set properties as follows:– Condition Order Key: SKUCondition Order Key: SKU

– Condition Operator: =Condition Operator: =

– Condition Value: 123Condition Value: 123

Page 223: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 223/268

Made by: Ifact

DBOrderPromoADODBOrderPromoADO

This component for Order Adjust stage should obtain information This component for Order Adjust stage should obtain information about additional discounts on the order level from databaseabout additional discounts on the order level from database

These pieces of information include the discount applying These pieces of information include the discount applying conditionsconditions

Page 224: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 224/268

Made by: Ifact

DefaultOrderSubTotalDefaultOrderSubTotal

This component for Order Subtotal stage simply sums up all This component for Order Subtotal stage simply sums up all item._oadjust_adjustedprice values and results stores to item._oadjust_adjustedprice values and results stores to OrderForm._oadjust_subtotal fieldOrderForm._oadjust_subtotal field

Usually, it is not needed to add any more additional components Usually, it is not needed to add any more additional components in this stagein this stage

Page 225: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 225/268

Made by: Ifact

DefaultShippingDefaultShipping

SSCE comes with a number of components that can be SSCE comes with a number of components that can be used for shipping fee calculation. Some of them will be used for shipping fee calculation. Some of them will be presented herepresented here

Simplest is DefaultShipping component simply stores zero Simplest is DefaultShipping component simply stores zero in OrderForm._shipping_total fieldin OrderForm._shipping_total field

This component is used when no shipping fee is needed. This component is used when no shipping fee is needed. Typical example is selling downloadable softwareTypical example is selling downloadable software

Page 226: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 226/268

Made by: Ifact

FixedShippingFixedShipping

When customer buys the goods he/she must notify merchant When customer buys the goods he/she must notify merchant about preferred shipping method. Software must set this value about preferred shipping method. Software must set this value to OrderForm.shipping_method fieldto OrderForm.shipping_method field

FixedShipping component has “Apply when” property that FixedShipping component has “Apply when” property that defines when to apply value of the field FixedShipping.cost defines when to apply value of the field FixedShipping.cost as the order shipping cost. If “Apply when” has value “Always” as the order shipping cost. If “Apply when” has value “Always” then then shipping fee is set without regards to whethershipping fee is set without regards to whetherOrderForm.shipping_method is set. If value is OrderForm.shipping_method is set. If value is “Has any value” the shipping cost is set if the “Has any value” the shipping cost is set if the OrderForm.shipping_method is not null. And finally if value is OrderForm.shipping_method is not null. And finally if value is “Equal to method” cost is set only if OrderForm.shipping_method “Equal to method” cost is set only if OrderForm.shipping_method is equal to FixedShipping.method field valueis equal to FixedShipping.method field value

Fee is calculated simply by copying FixedShipping.Cost in Fee is calculated simply by copying FixedShipping.Cost in OrderForm._shipping_totalOrderForm._shipping_total

Page 227: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 227/268

Made by: Ifact

TableShippingADOTableShippingADO

This component calculates shipping fees based on information This component calculates shipping fees based on information obtained form a databaseobtained form a database

Idea is to have a table that specifies, for example, that for certain type Idea is to have a table that specifies, for example, that for certain type of transport and for a range of order weight specified amount of money of transport and for a range of order weight specified amount of money must be chargedmust be charged

Table should look like this (SQL script of MSSQL server):Table should look like this (SQL script of MSSQL server):– CREATE TABLE dbo.shipping_costs (CREATE TABLE dbo.shipping_costs (

shipping_method varchar (20) NOT NULL ,shipping_method varchar (20) NOT NULL ,min_weight float NOT NULL ,min_weight float NOT NULL ,max_weight float NOT NULL ,max_weight float NOT NULL ,cost int NOT NULL, cost int NOT NULL, PRIMARY KEY (shipping_method,min_weight,max_weightPRIMARY KEY (shipping_method,min_weight,max_weight))

And will process the following query with actual parameters:And will process the following query with actual parameters:– SELECT cost FROM healthy_shipping_costs WHERE min_weight <= ? AND SELECT cost FROM healthy_shipping_costs WHERE min_weight <= ? AND

max_weight > ? AND shipping_method = ?max_weight > ? AND shipping_method = ?

Page 228: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 228/268

Made by: Ifact

Handling ComponentsHandling Components

Components in this stage are very similar to components in the Components in this stage are very similar to components in the previous stage, so there are DefaultHandling, FixedHandling, previous stage, so there are DefaultHandling, FixedHandling, TableHandlingADO and othersTableHandlingADO and others

Handling fee is connected with activities such as packing, gift Handling fee is connected with activities such as packing, gift wrapping, and so onwrapping, and so on

Components are analogous to their shipping counterparts, so that Components are analogous to their shipping counterparts, so that a more detailed description is not neededa more detailed description is not needed

Page 229: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 229/268

Made by: Ifact

Components for Tax StageComponents for Tax Stage

Tax calculation is a relatively difficult task and components Tax calculation is a relatively difficult task and components provided will in most cases be inadequateprovided will in most cases be inadequate

Built-in components calculate taxes according to American, Built-in components calculate taxes according to American, Japanese, partially Canadian laws, as well as laws of European Japanese, partially Canadian laws, as well as laws of European Union. For tax calculation in other countries, new components Union. For tax calculation in other countries, new components must be written. Due to the fact that laws were not written for this must be written. Due to the fact that laws were not written for this type of commercial activity, merchant does type of commercial activity, merchant does notnot charge any tax charge any tax fees to customers abroad. Taxes are only calculated for fees to customers abroad. Taxes are only calculated for customers from the same country, merchant is based in. customers from the same country, merchant is based in. DefaultTax component is provided to facilitate this simply by DefaultTax component is provided to facilitate this simply by writing zero to OrderForm._tax_totalwriting zero to OrderForm._tax_total

As an example SimpleVATTax component for EU VAT tax As an example SimpleVATTax component for EU VAT tax calculation will be presentedcalculation will be presented

Page 230: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 230/268

Made by: Ifact

SimpleVATTaxSimpleVATTax Prerequisite for use of this component is setting field Prerequisite for use of this component is setting field

OrderForm.ship_to_country which is used to determine if this OrderForm.ship_to_country which is used to determine if this component should be used. Principle is the same as for FixedShipping component should be used. Principle is the same as for FixedShipping component with “Apply when” field with “Always”, “Has any value” and component with “Apply when” field with “Always”, “Has any value” and Equal to country” possible valuesEqual to country” possible values

Tax is calculated independently for each item and is based on tax rate Tax is calculated independently for each item and is based on tax rate provided by item.RateItemKey, set usually in Product Information stage. provided by item.RateItemKey, set usually in Product Information stage. Problem with this component is that some EU countries charge VAT Problem with this component is that some EU countries charge VAT even when merchant is selling goods to customers to other EU even when merchant is selling goods to customers to other EU countries. This is usually solved by introducing new value for Country countries. This is usually solved by introducing new value for Country field (EU)field (EU)

Component calculates and sets item._tax_vat_item field and optionally Component calculates and sets item._tax_vat_item field and optionally item._tax_total and OrderForm._tax_totalitem._tax_total and OrderForm._tax_total

Sometimes, it is necessary to calculate tax on shipping and handling Sometimes, it is necessary to calculate tax on shipping and handling charges. In these cases new components must be written because those charges. In these cases new components must be written because those built in are inadequatebuilt in are inadequate

Page 231: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 231/268

Made by: Ifact

DefaultTotalDefaultTotal

This component simply sumps up values calculated in subtotal, This component simply sumps up values calculated in subtotal, shipping, handling and tax stages and writes result in shipping, handling and tax stages and writes result in OrderForm._total_totalOrderForm._total_total

Page 232: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 232/268

Made by: Ifact

LocalInventoryLocalInventory

This component is meant to be used in the Inventory stage This component is meant to be used in the Inventory stage to check if there are enough products on the stocks to check if there are enough products on the stocks to meet the orderto meet the order

Component compares Quantity for each item with Component compares Quantity for each item with item._product_local_inventory that should contain information item._product_local_inventory that should contain information about the remaining number of products of that type on stocks. about the remaining number of products of that type on stocks. This field is usually generated in the Product Information stageThis field is usually generated in the Product Information stage

If the ordered quantity is bigger than that present in the inventory, If the ordered quantity is bigger than that present in the inventory, difference is written to item._inventory_backorder and the pipeline difference is written to item._inventory_backorder and the pipeline is optionally stopped so that customer could be informed that is optionally stopped so that customer could be informed that he/she must wait longer for order deliveryhe/she must wait longer for order delivery

Page 233: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 233/268

Made by: Ifact

ValidateCCNumberValidateCCNumber

This component is the only component provided for the Purchase This component is the only component provided for the Purchase Check stage Check stage

First component checks cc expiration date to see if cc is still valid. First component checks cc expiration date to see if cc is still valid. Secondly, it runs an algorithm that checks if number typed by Secondly, it runs an algorithm that checks if number typed by customer can be cc number. Actual existence of that cc is verified customer can be cc number. Actual existence of that cc is verified through authorization in the next stagethrough authorization in the next stage

If check returns false on any of these two steps If check returns false on any of these two steps ValidateCCNumber stops pipeline and reports error in ValidateCCNumber stops pipeline and reports error in OrderForm._Purchase_errors collectionOrderForm._Purchase_errors collection

Page 234: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 234/268

Made by: Ifact

Components for Payment StageComponents for Payment Stage

There are really no built-in components for payment stage. There are really no built-in components for payment stage. Authorization of credit cards requires services of TGPs that Authorization of credit cards requires services of TGPs that usually provide their software for this stageusually provide their software for this stage

For instance, E-xact COM objects described in this tutorial can be For instance, E-xact COM objects described in this tutorial can be used as part of the customary built Scriptor componentused as part of the customary built Scriptor component

End of stage logic checks to see if End of stage logic checks to see if OrderForm._payment_auth_code is set. If cc payment is not OrderForm._payment_auth_code is set. If cc payment is not performed online but manually, this stage should contain performed online but manually, this stage should contain DefaultPayment component that simply writes “FAITH” in DefaultPayment component that simply writes “FAITH” in OrderForm._payment_auth_code. This is offcourse not OrderForm._payment_auth_code. This is offcourse not recommendedrecommended

Page 235: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 235/268

Made by: Ifact

Components for Accept StageComponents for Accept Stage

In this last stage, operations like inventory data update, storing In this last stage, operations like inventory data update, storing completed order data, and even sending requests to other completed order data, and even sending requests to other companies (suppliers) are processedcompanies (suppliers) are processed

There are many built in components for this stage and as an There are many built in components for this stage and as an example SQLItemADO for inventory update and SaveReceipt for example SQLItemADO for inventory update and SaveReceipt for saving order data shall be describedsaving order data shall be described

Page 236: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 236/268

Made by: Ifact

SQLItemADOSQLItemADO

This component works simply by executing query for each item This component works simply by executing query for each item with specified parameterswith specified parameters

Typical example would be:Typical example would be:– UPDATE prod_table SET inventory_field = inventory_field - ? WHERE SKU UPDATE prod_table SET inventory_field = inventory_field - ? WHERE SKU

= ?= ?– With parameter list:With parameter list: Item.Quantity Item.SKU Item.Quantity Item.SKU

Page 237: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 237/268

Made by: Ifact

SaveReceiptSaveReceipt

Saving order data from OrderForm object into the database can be Saving order data from OrderForm object into the database can be done after pipeline execution in application ASP script. done after pipeline execution in application ASP script. Alternative for this approach would be the use of the SaveReceipt Alternative for this approach would be the use of the SaveReceipt componentcomponent

This component uses ReceiptStorage global object that specifies This component uses ReceiptStorage global object that specifies all needed info about database where data for OrderForm needs to all needed info about database where data for OrderForm needs to be stored. The only field of SaveReceipt component - “No save be stored. The only field of SaveReceipt component - “No save key prefix” determines prefix for those fields of OrderForm that key prefix” determines prefix for those fields of OrderForm that should not be saved to database. For example, if value is _CC_ should not be saved to database. For example, if value is _CC_ then no sensitive credit card info shall be storedthen no sensitive credit card info shall be stored

Page 238: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

E-Xact Online Payment E-Xact Online Payment SystemSystem

Page 239: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 239/268

Made by: Ifact

E-Xact COM ObjectE-Xact COM Object

E-Xact is one of the TGP service providers!E-Xact is one of the TGP service providers! Of all technologies that can be used for e-commerce site creation Of all technologies that can be used for e-commerce site creation

ASP (Active Server Pages) is probably the most popular oneASP (Active Server Pages) is probably the most popular one One of the ways to enable automatic credit card payment One of the ways to enable automatic credit card payment

in ASP applications in ASP applications is implementation of ActiveX COM object is implementation of ActiveX COM object provided by the E-Xact companyprovided by the E-Xact company

Page 240: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 240/268

Made by: Ifact

Transaction ProcessTransaction Process

In order to make possible automatic credit card transactions several In order to make possible automatic credit card transactions several parties must be involved in the processparties must be involved in the process– Customer with his/her credit cardCustomer with his/her credit card– Merchant that owns the e-commerce siteMerchant that owns the e-commerce site– Transaction Gateway ProviderTransaction Gateway Provider– Financial organization Financial organization

(merchant must have an account with permission to accept CC payments)(merchant must have an account with permission to accept CC payments)– Credit card issuing companyCredit card issuing company

Page 241: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 241/268

Made by: Ifact

Insides of the Transaction ProcessInsides of the Transaction Process

Usual e-commerce transaction is performed like this:Usual e-commerce transaction is performed like this:– Customer chooses whatever he desires to buy Customer chooses whatever he desires to buy

(usually, information about goods customer wants to buy (usually, information about goods customer wants to buy is held in some form of shopping cart) is held in some form of shopping cart) and then goes to a secured page (SSL) and then goes to a secured page (SSL) where he/she enters personal, shipping, and payment informationwhere he/she enters personal, shipping, and payment information

– Mentioned data is then securely transmitted over the net Mentioned data is then securely transmitted over the net to the merchant’s server. to the merchant’s server. By use of software, usually obtained from a TGP company, By use of software, usually obtained from a TGP company, merchant relays data to the TGP server which merchant relays data to the TGP server which (usually by simulating standard POS terminal) (usually by simulating standard POS terminal) performs authorization and capture of credit card transactionperforms authorization and capture of credit card transaction

Page 242: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 242/268

Made by: Ifact

About the ObjectAbout the Object

E-Xact provides the COM Object that encapsulates E-Xact provides the COM Object that encapsulates and hides from merchant the entire process of TGP communication and hides from merchant the entire process of TGP communication and the rest of the transaction processingand the rest of the transaction processing

Responsibility for the CC abuse is now away from the merchant!Responsibility for the CC abuse is now away from the merchant! Object (as OCX file) can be downloaded from the company site Object (as OCX file) can be downloaded from the company site

(www.exact.com)(www.exact.com) Before it can be used, Before it can be used,

the OCX file has to be registered on the Web server. the OCX file has to be registered on the Web server. Considering the nature of this object, Considering the nature of this object,

it can only be used on servers and with server-side technologies it can only be used on servers and with server-side technologies that support the use of COM objects. that support the use of COM objects. Of course, this means Microsoft Internet Information Server and ASPOf course, this means Microsoft Internet Information Server and ASP(other choices are also possible, but not probable)(other choices are also possible, but not probable)

Page 243: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 243/268

Made by: Ifact

Component Server RegistrationComponent Server Registration

Name of the file with the COM ActiveX object is ExactAX1.ocxName of the file with the COM ActiveX object is ExactAX1.ocx To perform component server registrationTo perform component server registration

– Copy ExactAX1.ocx to Copy ExactAX1.ocx to local_drive:\<% winnt_folder %>\system32\inetsrv\componentslocal_drive:\<% winnt_folder %>\system32\inetsrv\components

– Execute (in command prompt) Execute (in command prompt) regsrv32 ExactAX1.ocxregsrv32 ExactAX1.ocx

The above registration is done with the following program:The above registration is done with the following program:regsrv32.exe ships with ExactAX1.ocxregsrv32.exe ships with ExactAX1.ocx

Page 244: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 244/268

Made by: Ifact

InstantiationInstantiation

Of course, before usage, the component has to be instantiated Of course, before usage, the component has to be instantiated in the standard ASP (VBScript) wayin the standard ASP (VBScript) way

Example (a line of this kind has to exist in the ASP code):Example (a line of this kind has to exist in the ASP code):exactAuth = Server.CreateObject(“ExactAX1.preauthorization98x”)exactAuth = Server.CreateObject(“ExactAX1.preauthorization98x”)

This means that we will create an instance of the classThis means that we will create an instance of the classExactAX1.preauthorization98xExactAX1.preauthorization98xand store it into the variableand store it into the variableexactAuthexactAuthusing the ASP commandusing the ASP commandServer.CreatObjectServer.CreatObject

Page 245: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 245/268

Made by: Ifact

FunctioningFunctioning

ASP application has to set object’s properties to desired values ASP application has to set object’s properties to desired values and then to call the method that initiates the transactionand then to call the method that initiates the transaction

There is a lot of properties of the ExactAX1 object, There is a lot of properties of the ExactAX1 object, so we shall describe the most important ones of them,so we shall describe the most important ones of them,along with examples of its practical usealong with examples of its practical use

Page 246: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 246/268

Made by: Ifact

$ Amount and CC Properties$ Amount and CC Properties

The fields are set by standard object data assignment commandThe fields are set by standard object data assignment commandof the used OO scripting language;of the used OO scripting language;ObjectReference.FieldReference=ValueObjectReference.FieldReference=Value

OO scripting languages of interest here are OO scripting languages of interest here are VBScript, JavaScript, and even PerlVBScript, JavaScript, and even Perl

Field amount: This property should containField amount: This property should containthe amount of the transaction in US dollars the amount of the transaction in US dollars

Field ccnum: Customer’s credit card numberField ccnum: Customer’s credit card number(VISA, Master Card, and American Express are supported)(VISA, Master Card, and American Express are supported)

Field cardholder: Name of the customer written on credit cardField cardholder: Name of the customer written on credit card Field expiry: Credit card expiry dateField expiry: Credit card expiry date

Page 247: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 247/268

Made by: Ifact

Server PropertiesServer Properties Server related properties also have to be set!Server related properties also have to be set! ddmhip: IP address of the E-Xact (TGP) server ddmhip: IP address of the E-Xact (TGP) server

that component needs to communicate to. that component needs to communicate to. Currently, the field ddmhip default value is 204.239.214.212 Currently, the field ddmhip default value is 204.239.214.212 and it should not be changed (the IP address of the ‘uhrsprung’)and it should not be changed (the IP address of the ‘uhrsprung’)

ddmhport: Port on the above mentioned server. ddmhport: Port on the above mentioned server. Default value is 2609. Default value is 2609. This is a test port that can be used to test E-Xact functionality. This is a test port that can be used to test E-Xact functionality. Credit card authorization will be performed,Credit card authorization will be performed,but no financial transfer shall be done (test port, isn’t it). but no financial transfer shall be done (test port, isn’t it). Full functionality is obtained after registration Full functionality is obtained after registration at the E-Xact transactions LTD. at the E-Xact transactions LTD. After registration, the port should be set to 2610After registration, the port should be set to 2610

terminal: An 8 digit number that identifies the merchant. terminal: An 8 digit number that identifies the merchant. For test purposes, the following number should be used:For test purposes, the following number should be used:– exactAuth.terminal = “66001047”exactAuth.terminal = “66001047”

Page 248: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 248/268

Made by: Ifact

Merchant PropertiesMerchant Properties

merchant: 13 digit number that identifies the merchant account with merchant: 13 digit number that identifies the merchant account with the cc payment acceptance permissionthe cc payment acceptance permission

merchantAddress: Physical, real-world address of the merchantmerchantAddress: Physical, real-world address of the merchant merchantCity: City in which merchant residesmerchantCity: City in which merchant resides merchantEmail: E-mail address by which merchant can be contactedmerchantEmail: E-mail address by which merchant can be contacted merchantPostal: ZIP codemerchantPostal: ZIP code merchantProvince: State or provincemerchantProvince: State or province

Page 249: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 249/268

Made by: Ifact

Types of TransactionsTypes of Transactions

E-Xact system recognizes four types of transactions:E-Xact system recognizes four types of transactions:– Purchase represents a standard transaction where money is, immediately after Purchase represents a standard transaction where money is, immediately after

authorization, transferred to merchant’s account. authorization, transferred to merchant’s account. This type of transaction is usually utilized when no shipment is needed This type of transaction is usually utilized when no shipment is needed (customer just needs to download software or pays for services)(customer just needs to download software or pays for services)

– PreAuthorisationPurchase puts a temporary hold on the money PreAuthorisationPurchase puts a temporary hold on the money in the customer’s account, but does not transfer funds to merchant’s accountin the customer’s account, but does not transfer funds to merchant’s account(not yet). This type of authorization is usually performed (not yet). This type of authorization is usually performed when goods have to be shipped to the customer. When this is completed, field when goods have to be shipped to the customer. When this is completed, field exactAuth.autnum contains ID of the performed transaction.exactAuth.autnum contains ID of the performed transaction.

– When customer receives merchandise (or when merchant sends it) When customer receives merchandise (or when merchant sends it) new transaction, PreAuthorisationPurchaseCompletion, must be performed new transaction, PreAuthorisationPurchaseCompletion, must be performed in order to complete the money transfer. in order to complete the money transfer. Also, the merchant must specify which transaction needs to be completed Also, the merchant must specify which transaction needs to be completed by setting the autnum field with previously obtained ID.by setting the autnum field with previously obtained ID.

– Refund is a transfer of money from merchant’s to customer’s account.Refund is a transfer of money from merchant’s to customer’s account.

Page 250: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 250/268

Made by: Ifact

Commencing a TransactionCommencing a Transaction

After setting all the required fields, After setting all the required fields, merchant’s software calls the exactAuth.sendToServer method merchant’s software calls the exactAuth.sendToServer method that initiates the authorization process.that initiates the authorization process.

In other words, after all fields are set,In other words, after all fields are set,we call the SendToServer method to authorize the payment.we call the SendToServer method to authorize the payment.

Page 251: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

E-commerce in YugoslaviaE-commerce in Yugoslavia

The E-Bank Online Payment The E-Bank Online Payment SystemSystem

Page 252: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 252/268

Made by: Ifact

General InfoGeneral Info

E-bank is currently the only company in YU E-bank is currently the only company in YU that acts as a TGP (transaction gateway provider) that acts as a TGP (transaction gateway provider) for online credit card paymentfor online credit card payment

E-Bank system currently accepts E-Bank system currently accepts only BKB and Visa electron cards of “Beobanka”only BKB and Visa electron cards of “Beobanka”

Page 253: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 253/268

Made by: Ifact

RequirementsRequirements

In order to be able to accept cc payment In order to be able to accept cc payment merchant must fulfill the following steps:merchant must fulfill the following steps:– Sign a contract with e-bank. This enables following:Sign a contract with e-bank. This enables following:

• Merchant on his store now has link “I pay with cc” Merchant on his store now has link “I pay with cc” that leads to the e-bank SSL server that leads to the e-bank SSL server that accepts payment information and performs authorization.that accepts payment information and performs authorization.

• Store identification numberStore identification number• Password for access to database Password for access to database

with info about performed authorizations with info about performed authorizations – Sign a contract with the card issuing bank Sign a contract with the card issuing bank

(“Beogradska Banka” for Visa elektron credit card)(“Beogradska Banka” for Visa elektron credit card)

Page 254: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 254/268

Made by: Ifact

SoftwareSoftware

Use of e-bank system requires, Use of e-bank system requires, as any other e-commerce payment system, as any other e-commerce payment system, existence of software that controls the process of buying existence of software that controls the process of buying and leads to the final bill - HTML with calculated final price.and leads to the final bill - HTML with calculated final price.

Along with the final price, a unique number, transaction identifier, Along with the final price, a unique number, transaction identifier, that merchant and e-bank use for consistently storing information that merchant and e-bank use for consistently storing information about one transaction should be added to the transaction. about one transaction should be added to the transaction. Unique number is the key for connecting together:Unique number is the key for connecting together:– Merchant store’s info about merchandiseMerchant store’s info about merchandise

that needs to be delivered to the customerthat needs to be delivered to the customer– Payment information at e-bank databasesPayment information at e-bank databases

Page 255: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 255/268

Made by: Ifact

Payment ProcessPayment Process

To initiate payment process To initiate payment process customer presses the customer presses the button that sends his button that sends his browser to SSL protected browser to SSL protected payment page on the e-bank payment page on the e-bank serverserver

After authorization After authorization completion, customer’s completion, customer’s browser is redirected to the browser is redirected to the page specified by the page specified by the merchantmerchant

Optionally, merchant getsOptionally, merchant getse-mail confirmation e-mail confirmation concerning the successfully concerning the successfully completed transactioncompleted transaction

Page 256: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 256/268

Made by: Ifact

SecuritySecurity

This type of payment processing doesn’t require This type of payment processing doesn’t require any additional security measures from the merchant’s storeany additional security measures from the merchant’s store

Confidential data are only issued Confidential data are only issued on the 128-bit key SSL-protected e-bank siteon the 128-bit key SSL-protected e-bank site

It is important to mention that the level of encryption It is important to mention that the level of encryption also depends on the customer’s browser. also depends on the customer’s browser.

If the browser is compliant with the USA export laws If the browser is compliant with the USA export laws encryption will only be performed with 40 bit encryption keys, encryption will only be performed with 40 bit encryption keys, without regards to the fact that server supports 128 encryptionwithout regards to the fact that server supports 128 encryption

Page 257: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 257/268

Made by: Ifact

Good BehaviorGood Behavior

Merchant is obligated to build his store Merchant is obligated to build his store in an acceptable e-commerce manner in an acceptable e-commerce manner (i.e., the store must contain the following):(i.e., the store must contain the following):– Complete description of merchandiseComplete description of merchandise– Retail pricesRetail prices– Conditions of warrantyConditions of warranty– Tax, transport and other additional expensesTax, transport and other additional expenses– Currency in which prices are shownCurrency in which prices are shown– Export restrictionsExport restrictions– Contact information: Tel. Fax, email, addressContact information: Tel. Fax, email, address– Country where merchant is physically locatedCountry where merchant is physically located

Page 258: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 258/268

Made by: Ifact

Connecting to e-bank Connecting to e-bank

Design of the final page, Design of the final page, where the final price and contents of shopping basket are shown where the final price and contents of shopping basket are shown to the customer to the customer along with the mechanism to initiate payment, is not pre arrangedalong with the mechanism to initiate payment, is not pre arranged

The only required thing is that page must contain data The only required thing is that page must contain data that are going to be sent to the e-bank server that are going to be sent to the e-bank server so that the payment could be properly initiatedso that the payment could be properly initiated

This info is usually kept in hidden form fields This info is usually kept in hidden form fields so that they doesn’t influence appearance of the page so that they doesn’t influence appearance of the page and can be easily sent to E-bank server and can be easily sent to E-bank server using a POST HTTP messageusing a POST HTTP message

Page 259: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 259/268

Made by: Ifact

Example on an EUnet YU siteExample on an EUnet YU site

Page 260: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 260/268

Made by: Ifact

FormForm

Click on the button “Uplata karticom” initiates POST message Click on the button “Uplata karticom” initiates POST message that sends info contained in the following form that sends info contained in the following form to the SSL e-bank server:to the SSL e-bank server:– <form name="PAYMENT" <form name="PAYMENT"

action="https://ssl.e-bank.co.yu/sz_secure/payment" method="POST">action="https://ssl.e-bank.co.yu/sz_secure/payment" method="POST"><input type="hidden" name="service" value="EUnet"><input type="hidden" name="service" value="EUnet"><input type="hidden" name="nextURL" <input type="hidden" name="nextURL" value="http://www.eunet.yu/online/cc_ok.html">value="http://www.eunet.yu/online/cc_ok.html"><input type="hidden" name="errorURL" <input type="hidden" name="errorURL" value="http://www.eunet.yu/online/cc_bad.html">value="http://www.eunet.yu/online/cc_bad.html"><input type="hidden" name="id" value="2335"><input type="hidden" name="id" value="2335"><input type="hidden" name="amount" value="72.00"><input type="hidden" name="amount" value="72.00"><input type="hidden" name="cardType" value="BKB"><input type="hidden" name="cardType" value="BKB"><input type="hidden" name="fc" value="1"><input type="hidden" name="fc" value="1"><input type="button" value=" Uplata karticom " <input type="button" value=" Uplata karticom " onClick="javascript:sendPaymentForm();">onClick="javascript:sendPaymentForm();"></form></form>

Page 261: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 261/268

Made by: Ifact

Hidden Form FieldsHidden Form Fields

When e-bank server gets the POST message, When e-bank server gets the POST message, it relays message to “payment” Java Servlet that uses it it relays message to “payment” Java Servlet that uses it to create a page for accepting the payment informationto create a page for accepting the payment information

Data is sent as hidden form fields:Data is sent as hidden form fields:– Service: merchant IDService: merchant ID– NextUrl and errorUrl specify where e-bank server NextUrl and errorUrl specify where e-bank server

should redirect customer’s browser should redirect customer’s browser in the case of successful and unsuccessful authorization.in the case of successful and unsuccessful authorization.

– ID: transaction identifierID: transaction identifier– Amount: final price in Yugoslav dinarsAmount: final price in Yugoslav dinars– CardType: specify which cc is customer usingCardType: specify which cc is customer using

Page 262: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 262/268

Made by: Ifact

Page Where Customer Types Page Where Customer Types Payment InfoPayment Info

Page 263: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 263/268

Made by: Ifact

E-PinE-Pin

E-bank system employs one nonstandard fraud prevention mechanism. E-bank system employs one nonstandard fraud prevention mechanism. System is password basedSystem is password based

Besides cc number and expiration date system, Besides cc number and expiration date system, customer is required to type in an E-Pin password. customer is required to type in an E-Pin password.

E-Pin is calculated from standard cc info E-Pin is calculated from standard cc info and credit card magnetic signature and credit card magnetic signature and is not present on cc in a readable form. and is not present on cc in a readable form. Customer obtains it from his cc issuing bankCustomer obtains it from his cc issuing bank

So, even in the case of the stolen cc, So, even in the case of the stolen cc, the perpetrator still can not easily perform a fraud purchasethe perpetrator still can not easily perform a fraud purchase

Page 264: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 264/268

Made by: Ifact

ConclusionConclusion

Currently, by using E-bank system, Currently, by using E-bank system, merchant can accept payment merchant can accept payment only from customers from Yugoslaviaonly from customers from Yugoslavia

After E-bank is integrated into the global VISA authorization system, After E-bank is integrated into the global VISA authorization system, merchant will be able to sell goods to customers from abroadmerchant will be able to sell goods to customers from abroad

In Yugoslavia, as we speak, In Yugoslavia, as we speak, there are about 15 000 BKB and VISA electron credit cards there are about 15 000 BKB and VISA electron credit cards but only around 30% is active and in regular usebut only around 30% is active and in regular use

Page 265: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Issues in Modern Management Issues in Modern Management and Business Administrationand Business Administration

Page 266: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 266/268

Made by: Ifact

The Three Approaches to BusinessThe Three Approaches to Business

Common SenseCommon Sense Fast KnowledgeFast Knowledge Formal MBAFormal MBA

Page 267: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 267/268

Made by: Ifact

Experiences From the MIT Experiences From the MIT Sloan School of ManagementSloan School of Management

Growth versus organization (case: NCR)Growth versus organization (case: NCR) Competition on the same levels of hierarchy (case: GreedyAlgo)Competition on the same levels of hierarchy (case: GreedyAlgo) Distributed decision making (case: Fert)Distributed decision making (case: Fert) Filters for partners (case: ChangesAfterContract)Filters for partners (case: ChangesAfterContract) Filters for staff (case: EthSocAca)Filters for staff (case: EthSocAca) Mapping of jobs to staff (case: ImpedMatch)Mapping of jobs to staff (case: ImpedMatch) The MBA/MSM game (case: ElectronicExperience)The MBA/MSM game (case: ElectronicExperience)

Page 268: Electronic Business on the Internet - Tutorial - Marjan Mihanovic, marjanm@eunet.yu Dusan Dingarac, dingo@sk.co.yu Zoran Horvat, zoranh@eunet.yu Miodrag.

Page Numb

er: 268/268

Made by: Ifact

The MBA Issues of ImportanceThe MBA Issues of Importance

FormForm EssenceEssence Morale of the StoryMorale of the Story