Websphere Commerce Trading SubSystem Part2

Read the post on  Websphere Commerce Trading SubSystem Part1 before proceeding with the below section.

Contracts are associated with business accounts since they represent an agreement between a buyer and a seller. The exception to this association is the store default contract which cannot be associated with a business account. A business account can have many contracts that are associated with the account.

Contracts enable  customer organization  or a customer  group to purchase  products from a store  at a  specified price  for specified  period of time  under specific conditions.

Types of contracts

1. Base Contracts
2. Default Contracts
3. Referral Contracts
4. Hosting Contracts
5. Buyer Contracts

1.Base Contracts
A contract can refer to another contract. For eg: Contract1 refers to Contract2.So a buyer who is entitled to terms and conditions in Contract1 is entitled to terms and conditions in Contract2 as well.
A base contract is a contract that can be referred by other contracts, but the contract should be active.

Steps to create a base contract.

1. Create a holding organization for base contracts.
2. Create a user under that organization as the representative.
3. Create an account for the base contract holding organization. While creating the account choose the option “This account is for base contracts”.
4. Create all the base contracts under this new base contract account.
5. Specify the new contracts to refer to the created base contracts

Contract validations are not done on base contract. Hence it is possible to create a base contract without buyer participants, pricing, shipping terms and conditions. Buyers can’t purchase directly under base contract.Contract validation will happen on the contracts which will refer to the base contract.

2.Default contract
A default contract defines the default customer entitlement for a store or a group of stores. The default contract applies to all customers shopping at a store who do not have any other contract with the store, for example, guest customers.
A typical default contract for a store specifies the following information:

1.Customers can purchase all products available in the master catalog for the store at standard prices set in the master catalog (no discounts or mark-ups).
2.Any shipping charges are paid to the seller (store).
3.Payment is specified during order processing. The customer can use any payment method accepted by the store.
4.The customer can select any shipping provider supported by the store to ship an order.
5.The ship-to address for an order is specified by the customer during order processing.
6.Customers can return purchases without penalty charges within a certain number of days.
7.Customers can receive refunds using the same payment method used for the original purchase.

In order to create a default contract, you must define the contract, the contract owner, the contract description, the contract participants, and the terms and conditions of the contracts. Contract information is stored in four tables: CONTRACT, PARTICIPNT, TRADING, and TERMCOND.

The default contract is associated with a store using the STOREDEF database table. Contracts other than the default contract are associated with a store using the STORECNTR database table.

You can create a default contract in XML, based on one of two formats: XSD or DTD.

3.Referral Contracts
WebSphere Commerce provides the ability for your store to pass requests for quotes and orders from resellers to your proxy stores or distributors. These abilities and the terms and conditions that are applied to these abilities are defined in a service agreement. Creating and managing distributor service agreements is the basis of distributor relationships in WebSphere Commerce. A distributor service agreement is also referred to as a referral contract.

4.Hosting contract

A hosting contract is a contract between the hosting service provider and the store operator. This type of contract is used in WebSphere Commerce Business Edition in support of Extended Sites and the hosting model.Hosting contract is often referred to as a reseller service agreement.

5.Buyer Contracts

Buyer contracts allow a customer organization to purchase products from a store at a specified price for a period of time under specific conditions.Buyer contracts cannot be created for customer who doesn’t have a business account.It is possible to buy different items in an order under different contracts under below conditions.

1.Contracts for all items must share a common payment method and only using share payment method the items can be purchased.
2.All items must come from contracts belonging to same business accounts or store default contract.

Buyers usually select contracts after they first login to store  or before adding  an item to  cart.
A buyer contracts consists of the below elements.

3.Terms and Conditions

A contract profile consists information of about the contract. This info includes name, short description and time period   for which contract is valid.
Tables involved
Each row of this table represents a Contract. A Contract is part of a Store, and represents terms and conditions that may be associated with OrderItems. Such as prices, minimum quantities, and who can use the Contract.
This table contains display information for a Contract.

Contract participants are organizations that are taken part in the contract. When we specify an organization as a buyer participant, any user who is member of the organization is entitled to the contract. If there are child organizations under the organization we have choose as buyer participant, child organizations will be entitled to the contract and be participants of it.No need to explicitly add child organizations as buyer participants.
Tables involved
This table stores information about a participant for a Trading Agreement.
This table stores role information about a participant for a Trading Agreement.

3.Terms and Conditions
Contract terms and conditions are rules that cover actual implementation of the contracts. Contracts terms and conditions cover information as product pricing, refunds and returns, payment, shipping and order approval.

Tables involved
This table contains terms and conditions used in trading agreements (business accounts, contracts, RFQs)
This table contains the types of terms and conditions.
Each row in this table contains information about the implementation of a terms and conditions sub-type. ACCESSBEANNAMEcolumn contains the enterprise access bean name for the term.
Each row in this table contains a description for a sub-type of terms and conditions.

Attachments provide additional information about contract. Websphere commerce  contracts attachments use universal resource identifiers (URI)

Tables involved

This table contains information about Attachments. An Attachment is a supporting document for a trading document. For example, it can be a specification of a product, or a price list spreadsheet.
This table stores information about the trading to attachment relationship for a TradingAgreement.
The Attachment usage table which contains the Attachment usage, such as STORELOGO or RFQ

A contract can refer to another contract to share its terms and conditions. . For eg: Contract1 refers to Contract2.So a buyer who is entitled to terms and conditions in Contract1 is entitled to terms and conditions in Contract2 as well.

A customer can be entitled to a set of customer contracts .For e.g., a customer may be entitled to more than one contract each for a different division for a company. But the business requirement is that each division in the company must have a separate order as the products may differ based on it. When the customer logs in, they will choose which division they are ordering for, and the corresponding contract for that division will be set into the customer's session. Therefore the customer will only see the products for the appropriate division, and this will ensure the order applies to one division.

In order to set the contracts 100,101 to the shopping flow use the below URL.

Usually a customer has only one immediate parent organization and can only use those contracts. But if the organization has an organization participant role in other organizations they can purchase on behalf of that organizations. In order to achieve this users active organization must be changed to the organization which is used for purchase. This organization will be set to customers session and it will become the active organization. By default active organization is the immediate parent organization.

Ensure that the change flow option is enabled, allowing you to change which Organization is set in the session. By enabling the change flow option, your store page allows you to change the Organization.

In order to switch the active organization to 10005 and to forward to OrganizationSetInSessionView use below URL.

Creating a contract in WCS 

First create a buyer organization and user and then  create an account as explained in
Websphere Commerce Trading SubSystem Part1  .

Login into websphere commerce accelerator.Choose the account created before and click on new contract.

 Choose the contract participants as shown below.


 Choose the catalog  filters  in such a way that categories brakes,electrical and entertainment is 
 selected.Out of these brakes and electrical categories were given 10%  price markdown.

Select the remaining options like shipping providers,Contract return policies,contract refund methods  and contract order approval and click on save.Contract will be in Draft state as shown below.


Select the contract and click on submit.Contract will be deployed and will be moved to Active State.



Now login into the store and see the product prices.The products under brakes and electrical category will come with 10% price markdown and products under entertainment category comes with the original price as applied in the catalog filter.From this example we can conclude the functioning of contract  and catalog filter in real time.




1 comment:

  1. I really appreciate information shared above. It’s of great help. If someone want to learn Online (Virtual) instructor lead live training in TECHNOLOGY , kindly contact us http://www.maxmunus.com/contact
    MaxMunus Offer World Class Virtual Instructor led training on TECHNOLOGY. We have industry expert trainer. We provide Training Material and Software Support. MaxMunus has successfully conducted 100000+ trainings in India, USA, UK, Australlia, Switzerland, Qatar, Saudi Arabia, Bangladesh, Bahrain and UAE etc.
    For Demo Contact us.
    Saurabh Srivastava
    E-mail: saurabh@maxmunus.com
    Skype id: saurabhmaxmunus
    Ph:+91 8553576305 / 080 - 41103383