Electronic Business on the Internet - Tutorial - Marjan Mihanovic, [email protected] Dusan Dingarac,...
-
Upload
kathlyn-butler -
Category
Documents
-
view
218 -
download
4
Transcript of Electronic Business on the Internet - Tutorial - Marjan Mihanovic, [email protected] Dusan Dingarac,...
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 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:
Introduction to E-CommerceIntroduction to E-Commerce
E-Business - The shape of things to come
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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.
Yahoo! StoreYahoo! Store
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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.
ecBuilderecBuilder
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 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 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 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 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 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 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 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 Number: 83
/268
Made by: Ifact
ecBuilder WizardecBuilder Wizard
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 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 Number: 86
/268
Made by: Ifact
ecBuilder ecBuilder First step: Site StructureFirst step: Site Structure
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 Number: 88
/268
Made by: Ifact
ecBuilder ecBuilder Second step - Company AddressSecond step - Company Address
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 Number: 90
/268
Made by: Ifact
ecBuilder ecBuilder Third step - Site Builder ProfileThird step - Site Builder Profile
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 Number: 92
/268
Made by: Ifact
ecBuilder ecBuilder Fourth step - Contact Person Fourth step - Contact Person ProfileProfile
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 Number: 94
/268
Made by: Ifact
ecBuilder ecBuilder Fifth step - Business ClassificationFifth step - Business Classification
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 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 Number: 97
/268
Made by: Ifact
ecBuilder ecBuilder Sixth step - Company IdentitySixth step - Company Identity
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 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 Numb
er: 100/268
Made by: Ifact
ecBuilder ecBuilder Seventh step - Web Site ContentSeventh step - Web Site Content
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 Numb
er: 102/268
Made by: Ifact
ecBuilder ecBuilder Eighth step - Payment MethodsEighth step - Payment Methods
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 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 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 Numb
er: 106/268
Made by: Ifact
ecBuilder ecBuilder Ninth step - Online ProcessingNinth step - Online Processing
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 Numb
er: 108/268
Made by: Ifact
ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog
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 Numb
er: 110/268
Made by: Ifact
ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog
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 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 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 Numb
er: 114/268
Made by: Ifact
ecBuilder ecBuilder Tenth step - CatalogTenth step - Catalog
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 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 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 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 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 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 Numb
er: 121/268
Made by: Ifact
ecBuilder ecBuilder Eleventh step - Advertising & Eleventh step - Advertising & StatisticsStatistics
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 Numb
er: 123/268
Made by: Ifact
ecBuilder ecBuilder Twelfth step - Order & Inquiry FieldsTwelfth step - Order & Inquiry Fields
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 Numb
er: 125/268
Made by: Ifact
ecBuilder ecBuilder Thirteenth step - Site Design & Thirteenth step - Site Design & PreviewPreview
Page Numb
er: 126/268
Made by: Ifact
ecBuilder ecBuilder Thirteenth step - Site Design & Thirteenth step - Site Design & PreviewPreview
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 Numb
er: 128/268
Made by: Ifact
ecBuilder ecBuilder Fourteenth step - Security OptionsFourteenth step - Security Options
Page Numb
er: 129/268
Made by: Ifact
ecBuilder ecBuilder Fourteenth step - DescriptionFourteenth step - Description
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 Numb
er: 131/268
Made by: Ifact
ecBuilder ecBuilder Fifteenth step - Search EnginesFifteenth step - Search Engines
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 Numb
er: 133/268
Made by: Ifact
ecBuilder ecBuilder Sixteenth step - Upload Your SiteSixteenth step - Upload Your Site
Page Numb
er: 134/268
Made by: Ifact
ecBuilder ecBuilder Sixteenth step - Upload Your SiteSixteenth step - Upload Your Site
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 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 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 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 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 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 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 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 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 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 Numb
er: 145/268
Made by: Ifact
ecOrderDeskecOrderDesk
The “Datasheet View” of the purchasing workflowThe “Datasheet View” of the purchasing workflow
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 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 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 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 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)
SSL (Secure Socket Layer)SSL (Secure Socket Layer)
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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.
Microsoft Microsoft Site Server Commerce EditionSite Server Commerce Edition
A Technological SurveyA Technological Survey
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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
The OPP COM Components The OPP COM Components Included in SSCE (‘Valves’)Included in SSCE (‘Valves’)
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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
E-Xact Online Payment E-Xact Online Payment SystemSystem
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 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 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 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 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 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 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 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 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 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 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 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.
E-commerce in YugoslaviaE-commerce in Yugoslavia
The E-Bank Online Payment The E-Bank Online Payment SystemSystem
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 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 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 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 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 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 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 Numb
er: 259/268
Made by: Ifact
Example on an EUnet YU siteExample on an EUnet YU site
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 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 Numb
er: 262/268
Made by: Ifact
Page Where Customer Types Page Where Customer Types Payment InfoPayment Info
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 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
Issues in Modern Management Issues in Modern Management and Business Administrationand Business Administration
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 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 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