Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Removes authors and sponsors references

...

NOTE: this is the business setup guide for OFBiz, for the technical oriented one, look here. 

Written by: David E. Jones With feedback and contributions from Ruth Hoffman, Andy Zeneski, Si Chen, Chris Chesney, Hans Bakker, and Al Byers

Sponsored by:
Integral Business Solutions (http://www.go-integral.com)
Hotwax Media, Inc (http://www.hotwaxmedia.com) AntWebsystems Co,.Ltd (http://www.antwebsystems.com)

Table of Contents

  1. Purpose and Goal of This Document
  2. Data To Gather for Setup
  3. General Terms and Information
    1. OFBiz "Manager" Applications
    2. Other OFBiz Terms
  4. Business Setup Process
    1. General Company Setup
      1. Company Contact Information
    2. Facility (Warehouse) Setup
    3. WebSite Setup
    4. Store Setup
      1. Store Settings
      2. Store Role Settings
      3. Promotional Settings
      4. Catalog Settings
      5. Web Site Settings
      6. Sales Tax Settings
      7. Store Shipping Settings
        1. UPS Online Rate Estimates
        2. UPS XPCI Integration
        3. USPS Online Rate Estimates
      8. Store Payment Settings
        1. Payment Processor Details
        2. PayPal Payment Setup
        3. Payflow Pro Payment Setup
        4. CyberSource Payment Setup
        5. Authorize.net Payment Setup
        6. RBS WorldPay Payment Setup
        7. Giftcards
      9. e-mail Settings
      10. Survey Settings
      11. General Settings Override
    5. Catalog, Category, Product Setup
      1. Catalog Setup
      2. Category Setup
      3. Product Setup
        1. Add Content to the New Product
        2. Add Prices to the Product
    6. Accounting Organization and Setup Process
    7. Marketing introduction

...

NOTE: We recommend that you read this entire document before starting the process or making any changes. While you are reading it is helpful to look at the files and web pages in question so you can visualize better where things go and what they look like. Naturally you can ignore this, but a half hour studying this document could save you a lot of time late
 
Note on Typographic Conventions Used in This Document

Wiki MarkupText enclosed in a square box such as \ [\[ \ ]\] represents an OFBiz application browser tab selection.

Throughout the document the author has provided expert advice or other observations. These notations are indicated as follows:

...

Manager applications which will be referenced in this document include the:
"Catalog Manager" accessed at:

No Format

http://localhost:8080/catalog/control/main

 

"Party Manager" accessed at:

No Format

http://localhost:8080/partymgr/control/main

 

More technical web based tools, or tools for the OFBiz framework are available in the "Web Tools" application: http://localhost:8080/webtools/control/main

...

This is where you can associate promotions (setup in the Promos header tab) with the store, including effective dating, sequencing and so forth.

Wiki MarkupThere are all example promotions and it is good to keep them in the database for future reference, but you can delete all of these store associations so they won't get in the way for this store. Just click on the "\[Delete\]" link for each one.

Catalog Settings
Anchor
catalogSettings
catalogSettings

Wiki MarkupThis tab shows all Product Catalogs associated with this Store. The demo data has two Catalogs associated by default, and you can remove both of them since we will be creating a new Catalog later. These two you can leave in the database as examples for future reference, but click on the "\[Delete\]" buttons here to remove the associations with the Store.

Web Site Settings
Anchor
webSiteSettings
webSiteSettings

...

This is configured using various properties in the file:

No Format

${ofbiz install dir}/applications/product/config/shipment.properties

 

  1. UPS XPCI Access License Number
    1. o shipment.ups.access.license.number
    2. o Example: TEST262223144CAT
    3. o This license number is used for both the UPS shipment estimate online service and the UPS XPCI shipping interface services (described below)
  2. Shipper Default Pickup Type
    1. shipment.ups.shipper.pickup.type
    2. Example: 06
    3. Valid options:
      1. 01 - Daily Pickup
      2. 03 - Customer Counter
      3. 06 - One Time Pickup
      4. 07 - On Call Air Pickup
      5. 11 - Suggested Retail Rates (UPS Store)
      6. 19 - Letter Center
      7. 20 - Air Service Center
    4. Choose the option that represents your relationship with UPS. This affects the estimated rate you will get back since UPS varies their prices based on how you get your packages to them.
  3. Estimate split into packages
    1. shipment.ups.max.estimate.weight
    2. Example: "90" meaning 90 pounds
    3. This number is used as the max weight per package when the total weight is > than this weight the weights are split into packages not exceeding max.

...

This is configured using various properties in the file:

No Format

${ofbiz install dir}/applications/product/config/shipment.properties

 

  1. UPS Shipper Number
    1. shipment.ups.shipper.number
    2. Example: 486915
  2. UPS Bill Shipper Account Number
    1. shipment.ups.bill.shipper.account.number
    2. Example: 486915
  3. UPS XPCI Access License Number
    1. shipment.ups.access.license.number
    2. Example: TEST262223144CAT
  4. UPS XPCI Access User ID
    1. shipment.ups.access.user.id
  5. UPS XPCI Access Password
    1. shipment.ups.access.password
  6. Setting to save files needed for UPS certification
    1. shipment.ups.save.certification.info=true
    2. shipment.ups.save.certification.path=/ofbiz/work/ofbiz/upscert
    3. This option is used to create the artifacts the UPS needs to certify client implementation. It is generally required for each customer to go through this process and for UPS to verify the results. Once this is done the shipment.ups.save.certification.info property should be set to false. For more information on this process, see the UPS XPCI documentation and additional information in the UpsServices.java file.

...

This is configured using various properties in the file:

No Format

${ofbiz install dir}/applications/product/config/shipment.properties

 

  1. USPS Connection URL & timeout in seconds
    1. shipment.usps.connect.url
    2. Example: http://localhost/facility/ShippingAPI.dll
    3. shipment.usps.connect.timeout
    4. Example: 60
  2. USPS Credentials
    1. shipment.usps.access.userid
    2. shipment.usps.access.password
  3. Estimate split into packages
    1. shipment.usps.max.estimate.weight
    2. Example: 70

...

While the payment services and high level settings are configured in the Store section of the Catalog Manager the detailed configuration for the various payment processing services are configured in the file:

No Format

${ofbiz install dir}/applications/accounting/config/payment.properties

 

  1. There are many comments in this file and sections for each of the major payment processing services.
  2. If you are using any credit card payment processor, be sure to check and if necessary change the properties near the beginning of the payment.properties file that follow the pattern: "payment.general.reauth.*.days".
PayPal Payment Setup
Anchor
payPalPaymentSetup
payPalPaymentSetup
  1. Go to Accounting

...

  1. -

...

  1. Payment Gateway Config and select "PayPal Payment Gateway" from the list
  2. Please fill all those fields to made working correctly to work with PayPal:
    Image Added
    Business Email : Email address of your business
    Notify URL : PayPal Notify URL (example (

...

  1. http://yourServerName/ecommerce/control/payPalNotify

...

  1. )
    Return URL : PayPal Return URL (example (

...

  1. http://yourServerName/ecommerce/control/orderhistory

...

  1. )
    Cancel Return URL : PayPal Return On Cancel URL (example http://yourServerName/ecommerce/control/payPalCancel/main

...

  1. )
    Image URL : Image To Use On PayPal (example (http://

...

  1. yourServerName

...

  1. /

...

  1. images/ofbiz_logo.gif)
    Confirm Template : Thank-You / Confirm Order Template (example /order/emailconfirmation.ftl)
    Redirect URL : PayPal Redirect URL (Sandbox http://www.sandbox.paypal.com/us/cgi-bin/webscr Production https://www.paypal.com/cgi-bin/webscr)
    Confirm URL : PayPal Confirm URL (Sandbox https://www.sandbox.paypal.com/us/cgi-bin/webscr Production http://www.paypal.com/cgi-bin/webscr)
  2. Once PayPal Payment Gateway has been configurated you have to go to Catalog - Stores - select your Store - Payments tab
    Image Added
  3. Edit the Payment Method Type Paypal and choose as Payment Gateway Config Id "PayPal Config".
    Image Added
  4. As deprecated use you can alternatively change the configuration parameters into

    No Format
    ${ofbiz install dir}/applications/accounting/config/payment.properties
    



    The ones that always need to be changed for use of PayPal are:

    1. payment.paypal.business - set to an email address on your PayPal account
    2. payment.paypal.notify - just change domain name and port to the production values you are using
    3. payment.paypal.return - set to the URL where you want PayPal to send customers once payment is complete, typically back to your ecommerce web site
    4. payment.paypal.cancelReturn - set to the URL where you want PayPal to send customers when they cancel their payment
    5. payment.paypal.image - set to the URL of the image or logo you want PayPal to display to help customers know that the payment is being received on your behalf

The other properties beginning with "payment.paypal." can be set, but unless you know what you are doing we recommending leaving them as-is.

In addition to the settings in the payment.properties file, there is also a setting that you must change on the PayPal web site in your account so that notifications will be sent back to OFBiz to verify payment:

    1. Login to your account at PayPal.com
    2. Click on the "Profile" link in the header, near the top-right of the page
    3. In the "Selling Preferences" column click on the "Instance Payment Notification Preferences"
    4. It will show you the current settings. To chance click on the "Edit" button.
    5. Check the check box near the top of this page, just under the "Instant Payment Notification (IPN)" heading.
    6. Enter the notification URL in the text box. This should be the same as the value of the payment.paypal.notify property in the payment.properties file.
    7. Click on the "Save" button.
Payflow Pro Payment Setup
Anchor
payflowProPaymentSetup
payflowProPaymentSetup
  1. Put payflow.jar from Payflow Pro's Java SDK in the directory in

    No Format
    ${ofbiz install dir}applications/accounting/lib.
    
  2. Change the accounting build.xml and comments to not exclude verisign sources like here :
    <!- <exclude name="org/ofbiz/accounting/thirdparty/verisign/**"/> ->
  3. Confirm that applications/accounting/build/classes/org/ofbiz/accounting/thirdparty/verisign/PayflowPro.class was built and exists
  4. The installation of certificate is now no more necessary
  5. Go to Accounting - Payment Gateway Config and select "Payflow Pro Payment Gateway" from the list
  6. Please fill all those fields to made working correctly to work with Payflow Pro:
    Image Added
    Certs Path : Path the the VeriSign Certificate (No more used from version v4)
    Host Address : Address of the payment processor (example (Test pilot-payflowpro.paypal.com or Production payflowpro.paypal.com)
    Host Port : Port of the payment processor (default is 443)
    Timeout : Timeout (default is 80 seconds)
    Proxy Address : Proxy Address
    Proxy Port : Proxy Port (default is 80)
    Proxy Logon : Proxy Logon
    Proxy Password : Proxy Password
    Vendor : Vendor of account information
    User Id : PayFlow UserID of account information
    Pwd : PayFlow Password of account information
    Partner : PayFlow Partner of account information
    Check Avs : Use Address Verification
    Check Cvv2 : Require CVV2 Verification
    Pre Auth : Pre-Authorize Payments (if set to N will auto-capture)
    Enable Transmit : Set to false to not transmit anything
    Log File Name : Log file name
    Logging Level : Logging level
    Max Log File Size : Max log file size
    Stack Trace On : Stack trace on/off
  7. Once Payflow Pro Payment Gateway has been configurated you have to go to Catalog - Stores - select your Store - Payments tab
    Image Added
  8. Edit the Payment Method Type Credit Card and after selected a Service Type (Authorize, Capture, ...) you can choose the Custom Method related to the Service Type choosen and as Payment Gateway Config Id "Payflow Pro Config".
    Image Added

As deprecated use you can alternatively change the configuration parameters into

No Format
${ofbiz install dir}/applications/accounting/config/payment.properties

 

Configure all the parameters starting with name "payment.verisign" in payment.properties including directory, vendor, partner, user and password all.

CyberSource Payment Setup
Anchor
cyberSourcePaymentSetup
cyberSourcePaymentSetup
  1. Put cybsclients15.jar, cybssecurity.jar and xalan.jar from CyberSource SDK in the directory in

    No Format
    ${ofbiz install dir}applications/accounting/lib/cybersource.
    
  2. Change the accounting build.xml and comments to not exclude verisign sources like here :
    <!- <exclude name="org/ofbiz/accounting/thirdparty/cybersource/**"/> ->
  3. Confirm that applications/accounting/build/classes/org/ofbiz/accounting/thirdparty/cybersource/IcsPaymentServices.class was built and exists
  4. The installation of certificate is requested and you can follow the instructions into the CyberSource Certificate Update manual.
  5. Go to Accounting - Payment Gateway Config and select "CyberSource Payment Gateway" from the list
  6. Please fill all those fields to made working correctly to work with CyberSource:
    Image Added
    Merchant Id : your merchant Id
    CyberSource API version : target API version (now is 1.43)
    Directory of the keys from CyberSource : Generate using online tools
    Name of the keystore : keystore file name (default is "merchantID".p12)
    Log transaction information : log activated true/false (default is true)
    Log directory : Log directory (default is runtime/logs)
    Log File Name : Log file name (default is cybersource.log)
    Max log size : Megabytes allowed for the log file
    Merchant Description : Shown on credit card statement Vendor
    Merchant Description Contact Information : Shown on credit card statement Vendor
    Auto-Bill In Authorization : Capture automatically true/false (default is false)
    Use DAV In Authorization : May not be supported any longer
    Use Fraud Scoring In Authorization : May not be supported any longer
    Ignore AVS results : Ignore Address Verification Service true/false (default is false)
    Disable AVS for Capture : May not be supported any longer
    AVS Decline Codes : May not be supported any longer
  7. Once CyberSource Payment Gateway has been configurated you have to go to Catalog - Stores - select your Store - Payments tab
    Image Added
  8. Edit the Payment Method Type Credit Card and after selected a Service Type (Authorize, Capture, ...) you can choose the Custom Method related to the Service Type choosen and as Payment Gateway Config Id "CyberSource Config".
    Image Added

As deprecated use you can alternatively change the configuration parameters into

No Format
${ofbiz install dir}/applications/accounting/config/payment.properties

 

Configure all the parameters starting with name "payment.cybersource" in payment.properties including directory, vendor, partner, user and password all.

Authorize.net Payment Setup
Anchor
authorizenetPaymentSetup
authorizenetPaymentSetup
  1. The installation of certificate is requested and you can follow also use the instructions from Andreas Sterbenz's blog documented in Google Checkout Integration.
  2. Go to Accounting - Payment Gateway Config and select "Authorize Dot Net Payment Gateway" from the list
  3. Please fill all those fields to made working correctly to work with Authorize.net:
    Image Added
    Transaction URL : Test/Production Transaction Url
    Certificate Alias : Certificate Alias in the Keystore.
    Authorize Dot Net API version : currently 3.1
    Delimited Data : if the authorize.net response should delimited
    Delimited Character : the delimiter to use in the response.
    Method (only CC supported) : credit card processing.
    Email to Customer : if should send an email to the customer for each transaction
    Email to Merchant : if should send email to the merchant for each transaction
    Test Mode : Forces the URL property to the test URL and adds more logging info to the logs
    Relay Response : if should relay the reposnse to a different server
    Transaction Key : Authorizer.net transaction key.
    User Id : Your Authorize.net user id.
    Pwd : Your Authorize.net password.
    Trans Description : Your Transaction Description.
  4. Once Authorize.net Payment Gateway has been configurated you have to go to Catalog - Stores - select your Store - Payments tab
    Image Added
  5. Edit the Payment Method Type Credit Card and after selected a Service Type (Authorize, Capture, ...) you can choose the Custom Method related to the Service Type choosen and as Payment Gateway Config Id "Authorize Dot Net Config".
    Image Added

As deprecated use you can alternatively change the configuration parameters into

No Format
${ofbiz install dir}/applications/accounting/config/payment.properties

 

Configure all the parameters starting with name "payment.authorizedotnet" in payment.properties.

RBS WorldPay Payment Setup
Anchor
RBSWorldPayPaymentSetup
RBSWorldPayPaymentSetup
  1. Go to Accounting - Payment Gateway Config and select "RBS WorldPay Payment Gateway" from the list
  2. Please fill all those fields to made working correctly to work with RBS WorldPay:
    Image Added
    Redirect URL : Test/Production Redirect Url
    Worldpay Instance Id : Your Worldpay Instance Id.
    Authorization Mode : Full-Authorize / Pre-Authorize.
    Contact details not-editable : Will displace contact info on WorldPay in non-editable format
    Contact details to be hidden : Will hide the contact info completely
    Currency drop-down to be hidden : Will hide the currency info
    Shopper language Id : locale to be used
    Suppressed Language Menu : if should the language menu to be suppressed.
    Delivery Address Editable : if should the delivery address editable.
    Test Mode : Approve/Cancelled/Live Mode.
  3. Once RBS WorldPay Payment Gateway has been configurated you have to go to Catalog - Stores - select your Store - Payments tab
    Image Added
  4. Edit the Payment Method Type Credit Card and after selected a Service Type (Authorize, Capture, ...) you can choose the Custom Method related to the Service Type choosen and as Payment Gateway Config Id "RBS WorldPay Config".
    Image Added

As deprecated use you can alternatively change the configuration parameters into

No Format
${ofbiz install dir}/applications/accounting/config/payment.properties

 

Configure all the parameters starting with name "payment.worldpay" in payment.properties.

Giftcards Setup
Anchor
giftCardsSetup
giftCardsSetup

GiftCard creation:

  1. The giftcard is enabled in the productstore in the catalog as a payment method with several parameters.
  2. The productStore has a field called "Show Checkout Gift Options" this should be set to "Y"
  3. In the entity 'ProductStoreFinActSetting' it can be set if the card requires a pinCode. By default in the demodata this is set to "N"
  4. The giftCard can be bought or reloaded as product in the product catalog.
  5. If a giftcard is purchased a financial account is created for the new giftcard in addition to an invoice and payment and ledger transactions. For this to work you have to activate the 'eca' createFinAccountTrans in accounting/servicedef/secas.xml

Using the Giftcard as payment:

  1. The giftcard code which is listed in the financialAccount
  2. If the card is used with enough balance the Order gets rejected.

e-mail Settings
Anchor
emailSettings
emailSettings

This page is used to configure the email messages to send for various events in the ecommerce system.

There is a record for each email in the system by default, but if there is an email that you don't want sent you can Delete the corresponding record here.

For those you do want to keep you will want to change the following fields for each email message, one at a time:

  1. 2nd field, From Address, to your preferred customer contact email address
  2. 4th field, Bcc Address, to any email address you would like to be copied on each email message
  3. The other fields, like the 5th field, the Subject field, can be customized if desired.

If you want to modify any of the templates, we recommend that you copy the templates to your own location, change them there, then change the template locations on this page to point to your files.

Survey Settings
Anchor
surveySettings
surveySettings

This page is used to configure surveys that are used for various things in ecommerce including random polls that show up on the side bars, special product related surveys to gather additional information about specific products or products in specific categories, surveys associated with the customer profile, and so on.

The demo surveys here can all be removed, though feel free to look at each one to see if it or something like it might be nice to have on your site.

General Settings Override
Anchor
generalSettingsOverride
generalSettingsOverride

This page is used to configure product search keyword overrides. These overrides can redirect the user to a specific category, product, or OFBiz or arbitrary URL. For example, when a user searches for the word "gizmo" they are redirected to the Gizmos category (ID 100).

The demo data in place is just an example and should be removed to avoid accidental undesired behavior in product keyword searches on your site.

Catalog, Category, Product Setup
Anchor
catalogCategoryProductSetup
catalogCategoryProductSetup

Catalog Setup
Anchor
catalogSetup
catalogSetup

Rather than reusing existing Catalogs we will create a new one to associate with the Store we have been configuring, and it will be the only one associated with the Store (unless you want to create multiple Catalogs, of course).

To create a new Catalog

Once PayPal Payment Gateway has been configurated you have to go to Catalog -> Stores --> select your Store -> Payments tab

Edit the Payment Method Type Paypal and choose as Payment Gateway Config Id "PayPal Config".

As alternative you can change the configuration parameters into

No Format

${ofbiz install dir}/applications/accounting/config/payment.properties

(deprecated use of this property file).
The ones that always need to be changed for use of PayPal are:

  1. payment.paypal.business - set to an email address on your PayPal account
  2. payment.paypal.notify - just change domain name and port to the production values you are using
  3. payment.paypal.return - set to the URL where you want PayPal to send customers once payment is complete, typically back to your ecommerce web site
  4. payment.paypal.cancelReturn - set to the URL where you want PayPal to send customers when they cancel their payment
  5. payment.paypal.image - set to the URL of the image or logo you want PayPal to display to help customers know that the payment is being received on your behalf

The other properties beginning with "payment.paypal." can be set, but unless you know what you are doing we recommending leaving them as-is.

In addition to the settings in the payment.properties file, there is also a setting that you must change on the PayPal web site in your account so that notifications will be sent back to OFBiz to verify payment:

  1. Login to your account at PayPal.com
  2. Click on the "Profile" link in the header, near the top-right of the page
  3. In the "Selling Preferences" column click on the "Instance Payment Notification Preferences"
  4. It will show you the current settings. To chance click on the "Edit" button.
  5. Check the check box near the top of this page, just under the "Instant Payment Notification (IPN)" heading.
  6. Enter the notification URL in the text box. This should be the same as the value of the payment.paypal.notify property in the payment.properties file.
  7. Click on the "Save" button.

...

  1. The CyberSource details for OFBiz are setup in the payment.properties file and have the prefix "payment.cybersource."
  2. More details to come.

...

GiftCard creation:

  1. The giftcard is enabled in the productstore in the catalog as a payment method with several parameters.
  2. The productStore has a field called "Show Checkout Gift Options" this should be set to "Y"
  3. In the entity 'ProductStoreFinActSetting' it can be set if the card requires a pinCode. By default in the demodata this is set to "N"
  4. The giftCard can be bought or reloaded as product in the product catalog.
  5. If a giftcard is purchased a financial account is created for the new giftcard in addition to an invoice and payment and ledger transactions. For this to work you have to activate the 'eca' createFinAccountTrans in accounting/servicedef/secas.xml

Using the Giftcard as payment:

  1. The giftcard code which is listed in the financialAccount
  2. If the card is used with enough balance the Order gets rejected.

...

This page is used to configure the email messages to send for various events in the ecommerce system.

There is a record for each email in the system by default, but if there is an email that you don't want sent you can Delete the corresponding record here.

For those you do want to keep you will want to change the following fields for each email message, one at a time:

  1. 2nd field, From Address, to your preferred customer contact email address
  2. 4th field, Bcc Address, to any email address you would like to be copied on each email message
  3. The other fields, like the 5th field, the Subject field, can be customized if desired.

If you want to modify any of the templates, we recommend that you copy the templates to your own location, change them there, then change the template locations on this page to point to your files.

...

This page is used to configure surveys that are used for various things in ecommerce including random polls that show up on the side bars, special product related surveys to gather additional information about specific products or products in specific categories, surveys associated with the customer profile, and so on.

The demo surveys here can all be removed, though feel free to look at each one to see if it or something like it might be nice to have on your site.

...

This page is used to configure product search keyword overrides. These overrides can redirect the user to a specific category, product, or OFBiz or arbitrary URL. For example, when a user searches for the word "gizmo" they are redirected to the Gizmos category (ID 100).

The demo data in place is just an example and should be removed to avoid accidental undesired behavior in product keyword searches on your site.

...

Rather than reusing existing Catalogs we will create a new one to associate with the Store we have been configuring, and it will be the only one associated with the Store (unless you want to create multiple Catalogs, of course).

To create a new Catalog:

  1. Go to the "Main" in the Catalog Manager and click on the link labeled "Create New Catalog" near the top of the central area of the page.
  2. Enter an ID for the Catalog in the Prod Catalog Id field (this cannot be changed later).
  3. Enter a name for the Catalog in the Catalog name field.
  4. Unless you know you want to use the special Quick Add categories in this Catalog, I recommend setting the Use Quick Add field to N.
  5. The other fields are optional but can be used to customize the look and feel of this Catalog to distinguish it from others (if applicable).
  6. Submit the form with the update button.

Once the new Catalog is created, go to the Stores tab and make sure this Catalog is associated with the Store we just configured.

While here, take a look at the Categories tab. We will soon be creating some Categories to use with this Catalog. There are many types here, but the main ones we will be concerned with are:

  1. Browse Root (One): this category will be the parent category of all of the top level browse categories for the catalog. It will not be visible to the customer, but it's children will be the main or top-level browse categories.
  2. Promotions (One): the products in this category are listed on the default eCommerce Main page. Of course, that page can be customized to show other things, but if you are using the default OFBiz ecommerce templates main page, you should create a Promotions category to configure which products will be displayed there.
  3. Default Search (One): if a Default Search category is configured  only the products in this category will show up in product search results. This category can also have Feature Categories and Feature Groups with it, and the Features in those groups will be used to populate the parametric search drop-downs on the Advanced Search page. Of course, when searching within a specific Category only the features associated with that category will be used for the parametric search drop-downs in the Advanced Search page.
  4. Purchase Allow (One): if a Purchase Allow category is configured only the products in that category will be available for purchase when this catalog is active. In that case if a product not in this category is put in the cart an error will be shown to the customer. In general for easier maintenance it is best to have this set to the same category as the Default Search category.
  5. View Allow (One): if a View Allow category is configured only the products in that category will be visible when this catalog is active. Other products will not show up in search results, category browsing, and if someone tries to view the product by ID it will report that no product is found for this ID. There is a performance impact associated with the use of this category, so alternatives might be desirable in certain circumstances. In general for easier maintenance it is best to have this set to the same category as the Default Search category.

...

As described in the Catalog Setup section there are various basic Categories that we need to create for our new Catalog. We will create four categories:

  1. A Browse Root Category
  2. A top-level browse Category to be a child of the browse root category
  3. A Promotions Category
  4. An "All Products" Category that will be setup as the Default Search, Purchase Allow and View Allow categories for our catalog.

To Create a Category:

  1. Go to the "Main" in the Catalog Manager and click on the link labeled "Create New CategoryCatalog" near the top of the central area of the page.
  2. Enter an ID for the Category Catalog in the Product Category ID Prod Catalog Id field (this cannot be changed later).All of these categories
  3. Enter a name for the Catalog in the Catalog name field.
  4. Unless you know you want to use the special Quick Add categories in this Catalog, I recommend setting the Use Quick Add field to N can use the "Catalog" setting for the Product Category Type field.
  5. The other fields can be set, but are not necessary. Note that Category hierarchies do not use the Primary Parent Category field, instead they are done with the Rollup tab once the Category is created.
  6. Submit the form by clicking on the update button.

Once the Category is created go to the Content tab and look near the bottom of the page in the Override Simple Fields section to set a Description, and if desired also a Long Description.

For each of the categories that we are creating, go to the Catalogs tab in the Category section, or the Categories tab in the Catalogs section and associate them using the appropriate type(s) as described above.

For the top-level browse Category that will be a child of the Browse Root Category associate them using the Rollup tab for whichever one you create second. Both parent and child categories can be setup there.

...

Congratulations, you are finally to the point where you can start setting up products....

To create a Product follow a process similar to those described for other things, like Categories.

  1. Go to the main page of the Catalog Manager and click on the "Create New Product" link.
  2. If you fill in an ID it will make sure that ID is valid, and if so it will use that one. If you specify no ID it will generate one.
  3. Set an Internal Name that makes it easy for you to recognize the product. This name will be shown in the admin tools, but not to the customer.
  4. Note that if you are using the UPS or USPS or other online rate estimation utilities then you must have values in the "Weight" and "Weight Uom Id" fields.
  5. Submit the form to create the product.

...

  1. are optional but can be used to customize the look and feel of this Catalog to distinguish it from others (if applicable).
  2. Submit the form with the update button.

Once the new Catalog is created, go to the Stores tab and make sure this Catalog is associated with the Store we just configured.

While here, take a look at the Categories tab. We will soon be creating some Categories to use with this Catalog. There are many types here, but the main ones we will be concerned with are:

  1. Browse Root (One): this category will be the parent category of all of the top level browse categories for the catalog. It will not be visible to the customer, but it's children will be the main or top-level browse categories.
  2. Promotions (One): the products in this category are listed on the default eCommerce Main page. Of course, that page can be customized to show other things, but if you are using the default OFBiz ecommerce templates main page, you should create a Promotions category to configure which products will be displayed there.
  3. Default Search (One): if a Default Search category is configured  only the products in this category will show up in product search results. This category can also have Feature Categories and Feature Groups with it, and the Features in those groups will be used to populate the parametric search drop-downs on the Advanced Search page. Of course, when searching within a specific Category only the features associated with that category will be used for the parametric search drop-downs in the Advanced Search page.
  4. Purchase Allow (One): if a Purchase Allow category is configured only the products in that category will be available for purchase when this catalog is active. In that case if a product not in this category is put in the cart an error will be shown to the customer. In general for easier maintenance it is best to have this set to the same category as the Default Search category.
  5. View Allow (One): if a View Allow category is configured only the products in that category will be visible when this catalog is active. Other products will not show up in search results, category browsing, and if someone tries to view the product by ID it will report that no product is found for this ID. There is a performance impact associated with the use of this category, so alternatives might be desirable in certain circumstances. In general for easier maintenance it is best to have this set to the same category as the Default Search category.

Category Setup
Anchor
categorySetup
categorySetup

As described in the Catalog Setup section there are various basic Categories that we need to create for our new Catalog. We will create four categories:

  1. A Browse Root Category
  2. A top-level browse Category to be a child of the browse root category
  3. A Promotions Category
  4. An "All Products" Category that will be setup as the Default Search, Purchase Allow and View Allow categories for our catalog.

To Create a Category:

  1. Go to the "Main" in the Catalog Manager and click on the link labeled "Create New Category" near the top of the central area of the page.
  2. Enter an ID for the Category in the Product Category ID field (this cannot be changed later).
  3. All of these categories can use the "Catalog" setting for the Product Category Type field.
  4. The other fields can be set, but are not necessary. Note that Category hierarchies do not use the Primary Parent Category field, instead they are done with the Rollup tab once the Category is created.
  5. Submit the form by clicking on the update button.

Once the Category is created go to the Content tab and look near the bottom of the page in the Override Simple Fields section to set a Description, and if desired also a Long Description.

For each of the categories that we are creating, go to the Catalogs tab in the Category section, or the Categories tab in the Catalogs section and associate them using the appropriate type(s) as described above.

For the top-level browse Category that will be a child of the Browse Root Category associate them using the Rollup tab for whichever one you create second. Both parent and child categories can be setup there.

Product Setup
Anchor
productSetup
productSetup

Congratulations, you are finally to the point where you can start setting up products....

To create a Product follow a process similar to those described for other things, like Categories.

  1. Go to the main page of the Catalog Manager and click on the "Create New Product" link.
  2. If you fill in an ID it will make sure that ID is valid, and if so it will use that one. If you specify no ID it will generate one.
  3. Set an Internal Name that makes it easy for you to recognize the product. This name will be shown in the admin tools, but not to the customer.
  4. Note that if you are using the UPS or USPS or other online rate estimation utilities then you must have values in the "Weight" and "Weight Uom Id" fields.
  5. Submit the form to create the product.

Add Content to the New Product

Anchor
addContentToTheNewProduct
addContentToTheNewProduct

  1. Click on the "Content" tab/button for the product you just created. Here you can setup text and images for your product.
  2. You will see some forms at the top for administering managed content (ie from the Content Manager) with the product. For more advanced product related content needs use this, but for more common and simple needs, this can be more difficult to administer and slower at run time.
  3. Near the bottom of the page is a section labeled "Override Simple Fields". Here you will typically want to specify a Product Name, Product Description, and Long Description. If you have images to associate with the product, you can specify their locations here, or upload them. Note that there are default locations for the images (can be quickly set by clicking on the "[.jpg]" or "[.gif]" buttons). We recommend using these locations, but of course you can put your images anywhere. These can be an absolute URL, or will be relative to the current server address, or the content URL prefix if one is specified in the url.properties file.

Add Prices to the Product

Anchor
addPricesToTheProduct
addPricesToTheProduct

  1. Product pricing in OFBiz is very flexible. There are two main aspects to it: Prices and Price Rules. This is independent of promotions, which are applied after the price calculation is done.
  2. For basic operation you should have at least one type of price setup for each product: the Default Price. This is the price that is used when no rules apply.
  3. To add a Default Price go to the Prices tab for the Product, and use the form at the bottom of the page.
    1. The Product Price Type Id should be "Default Price", the Currency Uom Id should be whatever currency the price is in, and the Product Store Group Id can be left as Not Applicable, unless you are setting up multiple groups of stores that have different pricing.
    2. The From Date can be now or in the future, if you want the price to take effect in the future. The Thru Date is optional, but can be used to specify that this particular price expires at a certain date and time. Note that if there are multiple prices of the same type, etc that are active at once, it will use the one with the most recent From Date. This is useful when you want a temporary price to override the normal "Default" price of the product.
  4. If you are using price rules or may do so in the future you may also want to enter information such as the List Price and the Average Cost which are often used in the price calculations.
  5. Note that if a Minimum Price is set the price will never be less than that. So, even if the Default Price is to 2.00 and the Minimum Price is set to 3.00, then 3.00 will be used as the calculated price. The Maximum Price setting works the same way as the ceiling for the price.

Make sure to put each product in a browse category, and in the All Products category so that it can be searched for, viewed, and purchased in your catalog.

Also, if you want to know "How to localize Product and Categories descriptions"

Expert Recommendation: These are the basics, but there is a lot more information about products that you can, or may need to, setup. We recommend reviewing the more detailed documentation or engaging the services of an experienced consulting to help you through this.

Advanced Catalog Setup: Features, Promotions, Price Rules, Keyword Thesaurus, Features for special functionality or parametric search, Moderated (or unmoderated) Product Reviews, Configurable and Manufactured Products, Virtual and Variant Products, Inventory/Facility/Location settings, and so on

See the end-user documentation space for details on how to set these things up and what they mean. Also see this for more advanced options for Products, Categories, and so on.

Accounting data organization and Setup
Anchor
accountingSetup
accountingSetup

(field/entitynames in brackets[])

General principles

  1. The general ledger of ofbiz consists out of a list of 'ledger buckets = glAccounts' with a non meaningfull ID: [glAccountId] and a meaningfull code [accountCode] and a meaningfull name [accountName] Initially, in the demo data, the account id and code are the same. When reorganizations are required these codes can be easily renamed without changing the glAccountId.
  2. The buckets are in a hierarchy where totals of the lower levels are added together and be shown at the higher levels, therefore every ledger bucket has a parent [parentGlAccountId]; with one exeption if the glaccount is a toplevel glAccount/bucket.
  3. Every glAccount has a account type id [glAccountTypeId] with a organization dependent second default glAccountId [GlAccountTypeDefault.glAccountId] to be able for the system to create the double booking. (Currently the system will do that always to "ACCOUNTS_RECEIVABLE" default glAccountTypeId for sales invoices).
  4. Transactions are created for several reasons like posting of invoices or payments, inventory movements and workeffort costs.
  5. GlAccount class is used for categorization and reporting.

General Setup (accounting -> global GlSettings)

  1. Company data and internal organizations
    demo file at: /applications/accounting/data/DemoOrganizationData.xml
  2. All glAccounts are predefined [GlAccount] and can be viewed on the globalGlSettings->chartOfAccounts screen.
    demo file at /applications/accounting/data/DemoGeneralChartOfAccounts.xml
  3. Load the Sales/purchase InvoiceItemType table and default glAccountId general setup for all organizations.
    demo file at /applications/accounting/data/DemoGlSetupData.xml

Organizational Setup (accounting -> organizational settings -> setup).

  1. The predefined glAccounts are assigned to an organization [GlAccountOrganization] on screen chartOfAccounts (this file can only be loaded and not changed)
    demo file at /applications/accounting/data/DemoGlSetupData.xml
  2. if required override the invoiceItem type type assignement for a particular organization at the glAccountDefaults->SalesInvoice/PurchaseInvoice
  3. Enter/load the payment TYPE GlType Mapping file [PaymentGlAccountTypeMap] at
    glAccountDefaults->PaymentTypeGlMapping
  4. Enter/load the payment METHOD GlType Mapping file [PaymentMethodTypeGlAccount] at
    glAccountDefaults->PaymentMethodTypeGlMapping

Creating ledger transactions.(to be completed)

  1. Sales invoice
  2. Purchase invoice
  3. Incoming payment
  4. Outgoing payment
  5. Inventary adjustment
  6. Workeffort costs

Marketing overview
Anchor
marketingSetup
marketingSetup

text now maintained within ofbiz, check

...

  1. Click on the "Content" tab/button for the product you just created. Here you can setup text and images for your product.
  2. You will see some forms at the top for administering managed content (ie from the Content Manager) with the product. For more advanced product related content needs use this, but for more common and simple needs, this can be more difficult to administer and slower at run time.
  3. Wiki Markup
    Near the bottom of the page is a section labeled "Override Simple Fields". Here you will typically want to specify a Product Name, Product Description, and Long Description. If you have images to associate with the product, you can specify their locations here, or upload them. Note that there are default locations for the images (can be quickly set by clicking on the "\[.jpg\]" or "\[.gif\]" buttons). We recommend using these locations, but of course you can put your images anywhere. These can be an absolute URL, or will be relative to the current server address, or the content URL prefix if one is specified in the url.properties file.

...

  1. Product pricing in OFBiz is very flexible. There are two main aspects to it: Prices and Price Rules. This is independent of promotions, which are applied after the price calculation is done.
  2. For basic operation you should have at least one type of price setup for each product: the Default Price. This is the price that is used when no rules apply.
  3. To add a Default Price go to the Prices tab for the Product, and use the form at the bottom of the page.
    1. The Product Price Type Id should be "Default Price", the Currency Uom Id should be whatever currency the price is in, and the Product Store Group Id can be left as Not Applicable, unless you are setting up multiple groups of stores that have different pricing.
    2. The From Date can be now or in the future, if you want the price to take effect in the future. The Thru Date is optional, but can be used to specify that this particular price expires at a certain date and time. Note that if there are multiple prices of the same type, etc that are active at once, it will use the one with the most recent From Date. This is useful when you want a temporary price to override the normal "Default" price of the product.
  4. If you are using price rules or may do so in the future you may also want to enter information such as the List Price and the Average Cost which are often used in the price calculations.
  5. Note that if a Minimum Price is set the price will never be less than that. So, even if the Default Price is to 2.00 and the Minimum Price is set to 3.00, then 3.00 will be used as the calculated price. The Maximum Price setting works the same way as the ceiling for the price.

Make sure to put each product in a browse category, and in the All Products category so that it can be searched for, viewed, and purchased in your catalog.

Expert Recommendation: These are the basics, but there is a lot more information about products that you can, or may need to, setup. We recommend reviewing the more detailed documentation or engaging the services of an experienced consulting to help you through this.

Advanced Catalog Setup: Features, Promotions, Price Rules, Keyword Thesaurus, Features for special functionality or parametric search, Moderated (or unmoderated) Product Reviews, Configurable and Manufactured Products, Virtual and Variant Products, Inventory/Facility/Location settings, and so on

See the end-user documentation space for details on how to set these things up and what they mean. Also see this for more advanced options for Products, Categories, and so on.

...

Wiki Markup
(field/entitynames in brackets\[\])

General principles

  1. Wiki Markup
    The general ledger of ofbiz consists out of a list of 'ledger buckets = glAccounts' with a non meaningfull ID: \[glAccountId\] and a meaningfull code \[accountCode\] and a meaningfull name \[accountName\] Initially, in the demo data, the account id and code are the same. When reorganizations are required these codes can be easily renamed without changing the glAccountId.
  2. Wiki Markup
    The buckets are in a hierarchy where totals of the lower levels are added together and be shown at the higher levels, therefore every ledger bucket has a parent \[parentGlAccountId\]; with one exeption if the glaccount is a toplevel glAccount/bucket.
  3. Wiki Markup
    Every glAccount has a account type id \[glAccountTypeId\] with a organization dependent second default glAccountId \[GlAccountTypeDefault.glAccountId\] to be able for the system to create the double booking. (Currently the system will do that always to "ACCOUNTS_RECEIVABLE" default glAccountTypeId for sales invoices).
  4. Transactions are created for several reasons like posting of invoices or payments, inventory movements and workeffort costs.
  5. GlAccount class is used for categorization and reporting.

General Setup (accounting -> global GlSettings)

  1. Company data and internal organizations
    demo file at: /applications/accounting/data/DemoOrganizationData.xml
  2. Wiki Markup
    All glAccounts are predefined \[GlAccount\] and can be viewed on the globalGlSettings->chartOfAccounts screen.
    demo file at /applications/accounting/data/DemoGeneralChartOfAccounts.xml
  3. Load the Sales/purchase InvoiceItemType table and default glAccountId general setup for all organizations.
    demo file at /applications/accounting/data/DemoGlSetupData.xml

Organizational Setup (accounting -> organizational settings -> setup).

  1. Wiki Markup
    The predefined glAccounts are assigned to an organization \[GlAccountOrganization\] on screen chartOfAccounts (this file can only be loaded and not changed)
    demo file at /applications/accounting/data/DemoGlSetupData.xml
  2. if required override the invoiceItem type type assignement for a particular organization at the glAccountDefaults->SalesInvoice/PurchaseInvoice
  3. Wiki Markup
    Enter/load the payment TYPE GlType Mapping file \[PaymentGlAccountTypeMap\] at
    glAccountDefaults->PaymentTypeGlMapping
  4. Wiki Markup
    Enter/load the payment METHOD GlType Mapping file \[PaymentMethodTypeGlAccount\] at
    glAccountDefaults->PaymentMethodTypeGlMapping

Creating ledger transactions.(to be completed)

  1. Sales invoice
  2. Purchase invoice
  3. Incoming payment
  4. Outgoing payment
  5. Inventary adjustment
  6. Workeffort costs

...

The overal purpose of the Marketing component is the support to select leads from parties obtained from a certain source or marketing segment to convert to opportunities by contacting these parties via a contact-list related to a marketing campaign.

Wiki Markup
The first option of the marketing component is the definition of a datasource \[DataSource\], and connecting or loading party information to it \[PartyDataSource\]. In the party component a data source Id can be added to the party.

A second input to the marketing component is the Segment group and classification which again can be allocated to parties in the party component.

Now a marketing campaign can be created. A contact list can be created using the parties related to a datasource or marketing segment classification and referring back to the marketing campaign

Contact lists are currently email mailinglists, the OFBiz system could be extended to inlcude the support of calling by telephone and entering the results. On the email sent via this lists tracking codes can be used to measure the reponse when the readers of the email mailing click on a link where a trackingcode is specified.
For more info look at the program: applications/marketing/src/org/ofbiz/marketing/tracking/TrackingCodeEvents.java

Opportunities resulting from these actions can be entered in the SFA component referring back to the marketing campaign.