You are on page 1of 36

1

Tips on implementing an
eCommerce B2B Site
NCOAUG - Feb 2013
Ravi Sagaram, PMP
Motorola Solutions
2
Agenda
Tips on Strategy
Functional Setups
iStore
Inventory
Tips on Technical Extensions
User Hook
Query Features AK Regions
Workflow --Order Confirmation Notification
Question and Answers
3
Tips on Strategy
Look and feel of the site
High level Functionality
Out of box features in istore
Nice to have features in iStore
Single URL/Multiple URLs
Setting up of the minisite automatically
Multiple languages
Multiple Currencies
Batch Processing of orders vs real time processing of orders
Order confirmation notifications
Security
Analytics on the traffic of the site
Multiple Browers
Extension of the application to mobile devices and tablets
Maintenance of the site
Single Sign on
4
Tips on Strategy
Look and feel of the site
Decide on the look and feel of the site in the very early stage of the project.
The look and feel may be consistent with the corporate web site/portal. The site
design may bring the corporate identity
Decide on the graphics, fonts, and other features. It is better to get the design
done by a professional web design team and reviewed by key team members
like members from business, sales and marketing etc.
The design may incorporate easy of use, easy navigation, less key strokes to
place an order, dash boards to see key information etc.
Consider the following features
AJAX processing
Collapse and expand capabilities of sections
Tabs for viewing different information
Options to display or hide fields
Options to select parameters
Navigation to go to the next and previous pages
Consistency in positioning of buttons and other objects through out the site
5
Tips on Strategy
High level Functionality
Decide the high level functionality of the site at the early stage of the project.
This will help in the design of the look and feel of the site. Once high level flow is
decided, other details can be incorporated into it

Do a gap analysis. Identify the gaps and disposition them either as changes to
the business process or RICEW objects


6
Tips on Strategy
Out of Box Features in istore
Product Search and validation
Direct item entry with file upload features
Shopping cart
Share cart, duplicate cart
Shopping Lists and convert them into shopping carts
Pricing, Pricing Agreements, and Tax
Configurator
Ship-to, bill-to, end customer, order review sections during check out
Selection of customers, customer sites, contacts etc. in the ship-to, bill-to and
end customer pages.
Header and line level ship-to address, contacts, shipping and packing
instructions etc.
Multiple Currencies, Languages
Credit card processing
DFFs, Attachments
Query feature to query orders placed, shipments, invoices etc.
Integration to iSupport





7
Tips on Strategy
Nice to have features in istore
Ship sets
Pricing Agreements
Integration to iReceivables
Internal User functionality
Limitations to Pricing Contracts (Default billing terms are mandatory)
Interface with only one order type for a minisite
Address Search is at party level and not at the account level
Customer part can be selected from istore. However, customer part is not
interfaced to Order management. Instead internal part is interfaced.




8
Tips on Strategy
URL
Single URL vs Multiple URLs.

Decide on a separate URL for each region vs using a single URL globally. It is
convenient for the customers to use the same URL globally irrespective of the
region and language they belong to. The downside of this approach is that the
maintenance of the site becomes a challenge as it would affect the site globally.

9
Tips on Strategy
Minisites Selection
With istore, a minisite is setup for each sales org. Suppose there are 15 sales
orgs (OUs) for NALA, EMEA and APAC together, then we may need to setup 15
minisites. When the user logs into istore, consider the following options to select
a minisite manually or automatically
1) When the user logs in the first time, provide an option to select the minisite
from the avaialble minisites. This may be confusing to the user. However,
once selected, the selection can be saved in a cookie
.


US
minsite
UK
minsite
Canada
minsite
AUS
minsite
Mexico
minsite
China
minsite
India
minsite
FR
minisite
Italian
minisite
10
Tips on Strategy
Minisites Selection
2) Give some options to the user to
select the minisite, like showing a
world map, with selection for each
country. This way, when the user
clicks on the country, the
corresponding minisite is selected
.

3)Explore to select the minisite
automatically when the user logs in
based on some unique parameters
11
Tips on Strategy
Multiple Languages
If you are implementing the site globally, then decide on the languages that
have to be supported by the site. With istore, the required languages have to be
enabled first in the database. Then, the labels in different languages may be
maintained centrally using FND_MESSAGES and AK_REGION. More details
on the AK_Region are provided in a separate section

Consolidate all the labels/messages for the site and decide with business on
the language, grammar and translation of the labels/messages. This is one area
in which several changes can be expected from end users based on the region,
language and individual preferences



12
Tips on Strategy
Multiple Currencies
Decide on the currencies to be supported by the site. The currency for the site
may be defaulted based on parameters like price list, minisite default currency
etc. or it may be left to the user to select a value from a list of options

Pricing in istore works based on Oracle pricing engine which supports multiple
currencies. So, currency is not a limitation for the pricing in istore.

Also consider currency formats for these currencies. iStore, by default,
supports multiple currency formats. The currency format in istore is decided by
the language used for the site. Say, if the language is French, then automatically
the French currency format is used by the site. Consider extending the same
currency format to any user facing reports, or email notifications etc.



13
Tips on Strategy
Order Processing(Batch/Real time)
Orders placed from the site may be processed in real time or as a batch
process. When orders are processed in real time, customers may have to wait
on the order confirmation page while the order is interfaced to ERP. This could
be annoying to the users if the processing time is large; but the advantage is
that customer will know the actual order number on real time

In a batch process, a web confirmation number is provided as soon as the
order is submitted from istore. There will not be any delay in this, as the
interface of the order to ERP is deferred to a batch process. A batch program
can be scheduled to run once every 15 minutes or at a certain predetermined
frequency and convert the web confirmation to a sales order in ERP. The
disadvantage with this process is the delay in receiving the order confirmation to
the user



14
Tips on Strategy
Order Confirmation Email
Consider sending an order confirmation email to the customer after the order
is placed. The email may have all the selections that the user made while
placing the order. The format of the email may comply with some standards
like corporate email standards

Consider multiple languages for the emails

Consider multiple currency formats for the emails

Consider notifying internal admins with emails on the customer orders or on
issues with the customer orders

Details on setting up the workflow for sending emails is given in a separare
section



15
Tips on Strategy
Security
Security is an important feature to be taken care of from the beginning of the
design and the development of the site. Consider the following for security

Filter all special characters like <> etc. from the user inputs. Block the user from entry
of such characters or filter them automatically before they are processed.
Dont log Userids and PWs to any log files
Take additional care to block Cross scripting (using HTML encoding)
Block SQL injection

Use tools like codefend to scan the source code for any violations and fix them
Use OWASP for security testing. Go to www.owasp.com for more information






16
Tips on Strategy
Analytics

Decide on the analytics to collect the stats on the traffic to the site. Site visits,
products searched, carts created, orders placed, carts not converted into orders
etc. can provide useful leads to business

Some of the tools available for analytics are Google Analytics, Web Trends,
Yahoo Web Analytics etc.





17
Tips on Strategy
Multiple Browsers

Decide on the browsers and their version to support the site. You may align with
your corporate policy on browsers and their versions. This may be useful for the
development and user testing.





18
Tips on Strategy
Extension to mobile devices
Consider extending your site to mobile devices like iPad, iPhone, mobile
phones and tablets using Android O/S etc.

Consider an app for the site on these mobile devices

Consider extending the site on mobile devices on the native browsers






19
Tips on Strategy
Maintenance of the site
Look for ways to notify the users about the scheduled downtime of the site in
advance

Also look for notifying the users when the site is down due to any unscheduled
down time

Look for a maintenance page using an alternative apache server and redirect
the traffic to the maintenance server when the site is down

Maintenance of the site becomes a challenge when the site needs to be up
24x7
20
Functional Setups
Overview
iStore Setups

Inventory Setups

CRM Setups
21
Functional Setups
iStore
Setup Profile Options
JTF Profiles (like default application, currency, responsibility etc.)
IBE Profiles (Like use direct item entry, shopping lists, express checkout etc.)
ASO Profiles (like defaulting ship from org, default order state)
Setup Quoting parameters for each OU. You will specify the order type that
will be used to interface the order from istore for a specific OU
Setup Mini Sites
You will specify the site name, default language, default currency, default walk in price
list, payment type, shipping method, default responsibility etc. for each site. Assign
other languages and currencies to the minisite. Setup all the minisites, one for each
OU
Create Hierarchy for the merchant UI.The hierarchy determines the
organization of the speciality store, their sections and products in the UI. The
overall hierarchy contains products from inventory grouped into sections
Setup DFFs
Setup template mappings
Setup encryption key for the browser cookie and expiration days

22
Functional Setups
Inventory
Setup web status to published, Orderable on the web to Yes and Back
Orderable to Yes under the web options tab for items in the inventory. Also the
item must be customer order enabled under the Order Management tab
The item shall be associated with the ISTORE category set(or a category set
earmarked for istore)
Run the concurrent Program iStore Product Autoplacement. This program
interfaces the items from inventory to iStore catalogs
Run the program iStore Section Search Refresh. This program will let the users
search for the published items in istore

23
Functional Setups
CRM Setups
CRM Setups
1. Setup Custom Permissions
2. Setup custom roles and assign the permissions for each role
3. Assign the roles to the users. The access priveleges to the site can be controlled
by the role and its associated permissions granted to a user
4. Control the functionality in the pages based on the roles

User Access
1. User who needs access to a minisite shall
be assigned the responsibility associated
with the minisite
2. User shall be assigned roles. The
permissions underneath the roles permit
the user to do certain functionalities in the
sites

User
Roles
Permissions
Responsibility
Minisite
24
Extensions
Main areas for extensions
Look and Feel and Functionality
User Hooks
AK Regions for Query features
Workflow for notifications
Reports


25
Extensions
Look and Feel and Functionality
iStore provides several
templates which can be
customized to change the
look and feel. Separate JSP
pages are provided for look
and feel and back end
processing
Database
Here is an example with two JSP pages for ATP Processing
ATP results display -- ibeCOtdAtp.jsp
ATP Processing -- ibeCOtpAtp.jsp
The customized pages can be registered
26
Extensions
User Hooks
User Hooks provide lots of flexibility for defaulting data in the site. They can
also be used to populate data as pre and post order interface to ERP

Some of the istore related hooks are
CREATE_QUOTE
SUBMIT_QUOTE

Events are PRE and POST on these hooks

Sample code for enabling hooks
UPDATE apps.jtf_user_hooks
SET execute_flag = 'Y'
WHERE pkg_name = 'ASO_QUOTE_PUB'
AND api_name = 'SUBMIT_QUOTE'
AND user_hook_type = 'C'
AND nvl(execute_flag,'N') = 'N;

27
Extensions contd
Create Quote hook
CREATE_QUOTE hook
Use CREATE_QUOTE hook for updating lot of information in the shopping cart
and checkout screens

Create_quote_POST (
P_Validation_Level IN NUMBER,
P_Control_Rec IN ASO_QUOTE_PUB.Control_Rec_Type,
P_Qte_Header_Rec IN ASO_QUOTE_PUB.Qte_Header_Rec_Type,
P_hd_Price_Attributes_Tbl IN ASO_QUOTE_PUB.Price_Attributes_Tbl_Type,

Get the quote_header_id from the p_qte_header_rec and use it to identify and
update the record in the table ASO_QUOTE_HEADERS_ALL or
ASO_SHIPMENTS with the required values

You may update the seeded fields like sales_channel_code, or DFF attributes
with ship method, freight terms, sales channel etc.
28
Extensions contd
Submit Quote Pre hook
SUBMIT_QUOTE_PRE HOOK
The Pre hook ASO_QUOTE_CUHK.SUBMIT_QUOTE_PRE is called when the
quote created from istore is interfaced to OM as a sales order

Use the hook to populate values in OM by populating the data in the tables
ASO_QUOTE_HEADERS_ALL, ASO_QUOTE_LINES_ALL. Use the field
P_Qte_Header_Id to identify and update the record

P_control_rec can be used to control whether to create the order in entered
status or booked status





29
Extensions contd
Submit Quote Post hook
SUBMIT_QUOTE_POST HOOK

The Post hook ASO_QUOTE_CUHK.SUBMIT_QUOTE_POST is called after the
quote created from istore is interfaced to OM as a sales order

Use the hook to update the sales order created in OM from istore. Identify the
order created using P_Qte_Header_Id and then update the OM data using the
API oe_order_pub. Process_header or oe_order_pub.Process_line. This can be
used to create attachments or update data in OM
30
Extensions
Query features using AK Regions
Query Features

1. Order Search including shipment details and RMAs
2. Invoice Search
31
Extensions
Query features using AK Regions
Query Features

1. iStore uses AK Regions for query features.
2. Some of the seeded AK regions are orders, shipments, invoices etc.
3. Labels in the forms that work with AK regions are setup in AK region setups
instead of in FND_messages
4. AK Regions can be extended with additional fields.
5. Here are some steps to extend AK regions
1. Get the current AK region definition by extracting the JLT file
2. Create a custom database view by extending the current AK region view with additional
attributes (columns)
3. Extend the the extracted JLT file with additional fields and upload it
4. Define the AK Attributes with the extended attributes using AK Deveoper
5. Assign the created AK attributes to AK Object using AK Developer
6. Assign the AK attributes to AK region using AK Developer
7. Labels in the AK region have a provsion to maintain translations in other languages.











32
Extensions
WF Order Confirmation Email
iStore Workflow
Open the istore IBEALERT workflow
using a workflow builder
Copy the message Order
Confirmation Normal Default to a
new message XX-Order
Confirmation Normal Custom
Create custom attributes like XX-
Subject, XX-Message-Body, XX-
Message_footer etc. under the
workflow item
Use these attributes under the
message XX-Order Confirmation-
Normal- Custom
Construct the email subject, body etc.
using PL/SQL using HTML tags and
populate the above custom attributes
iStore Workflow definition







Istore Alerts
Workflow
XX-Message-Body
XX-Subject
XX-Message-Footer
Messages
XX-Order Confirmation Normal
Custom
XX-Message-Body
This message
is associated with
the istore
notification
template using
istore
administrator
33
Extensions
WF Order Confirmation Email
Associate the WF in istore
Go to istore administrator Advanced Notifications
Select the notification event Order Confirmation Normal and go to the details of
the notification
Select the custom message created in the Workflow XX-Order Confirmation
Normal Custom and associate with the notification. This way the custom
message is called from istore notifications
34


Questions and Answers


35

Thanks to the following for their help in preparing this presentation
Kaky Vinod
Banumoorthy Selva
M Vishnusimman


36

Contact Info
Ravi Sagaram
sagaram@hotmail.com
ravi.sagaram@motorolasolutions.com

You might also like