BLOG

NEXT STEPS

Posts Tagged ‘OFBiz Ecommerce’

Enterprise E-Commerce and ERP: Common Questions Series Part 2

Thursday, April 8th, 2010

enterprise-ecommerce

For HotWax Media an Apache OFBiz development firm, 2010 is delivering a great batch of new open source e-commerce and ERP projects. Whether from existing clients looking to invest in system enhancements or new clients ready to invest after a cautious 2009, HotWax Media is seeing a good deal of activity in the form of active projects and a healthy sales pipeline.

Along with a boost in free cash flow, this activity continues to generate great input from clients, which fits in nicely with my ongoing series discussing common questions related to open source e-commerce and ERP projects.

Enterprise eCommerce and ERP projects can have a lot of moving pieces. As businesses grow, old systems can limit potential. It can be painful for businesses to identify these limitations and understand the impact they are having on current profitability and future growth. At HotWax Media, it is our mission help our clients understand these problems, and then to make the problems go away.

Let’s dive into the next round of common questions and talk about answers. The answers here are meant to be relatively short and sweet. If you are looking for additional detail or are more interested in learning how HotWax Media can help you optimize your e-commerce and ERP for your business, contact us without delay!

The first questions pertains to both existing and new businesses who want to take a measured approach:

1. Can we do this in phases?

Yes. HotWax Media implements e-commerce and ERP systems using Apache OFBiz. OFBiz consists of a complete set of individual ERP applications, including a robust e-commerce system. The data model in OFBiz, furthermore, allows HotWax Media to account for just about anything that is going on in a given legacy system, and integrate where needed in order to facilitate a phased approach.

For example, if your business is running on NetSuite, but you want a better e-commerce solution, phase 1 of your project can consist of an affordable, powerful B2C e-commerce site upgrade that is completely integrated with your NetSuite back end. In subsequent phases, you can replace NetSuite completely — at your own pace, in discrete, manageable steps.

The second question usually comes from clients who have been burned in the past by irresponsible promises from proprietary software vendors:

2. Can we customize the system (without blowing our budget)?

Yes. As I mentioned above, HotWax Media implements ERP systems using Apache OFBiz. OFBiz is meant to be customized. As part of a standard OFBiz ERP implementation, HotWax Media works with clients to understand the nuances of their business requirements and workflows, and then implements a system that accommodates those specific needs.

It amazes me to hear from clients, as I have repeatedly, that they paid for an expensive proprietary ERP system only to learn later that it could not do what they needed it to do. And by the way, they do not own the system, and they are on the hook to pay recurring licensing fees in order to keep using it. Never mind the principle of it all — strategically, that sucks.

The nature of open source software in general, and of Apache OFBiz specifically, is to be transparent and customizable. My general statement to clients is, “If we can define a consistent set of requirements together, we can absolutely make OFBiz meet those requirements.”

The final question applies to everyone:

3. How many different companies will we need to work with in order to implement our system?

One. HotWax Media. We offer a complete set of e-commerce and ERP implementation services, ranging from business analysis through graphic design and UI to development and testing. We provide the project management and collaboration tools to accommodate all aspects of the project, and we will even handle hardware, infrastructure and hosting in partnership with our colleagues at Contegix.

Keeping your project under one roof improves quality and saves money. It’s that simple.

Feel free to let us know if you have other common questions you would like to see addressed in this series, or contact us today to learn more about how HotWax Media can help you build and grow your e-commerce business.

View my previous post where I covered other commonly asked questioned about Enterprise E-Commerce and ERP deployment or expansion.

- Mike

Mike Bates is CEO at HotWax Media and will join other HotWax Media employees and advisors in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.
OFBiz Expert

Enterprise E-Commerce and ERP: Common Questions Series Part 1

Thursday, February 18th, 2010

hotwax-media-ofbiz-expert

2010 is off to a great start at HotWax Media. We are working with a steady stream of clients who are interested in enterprise eCommerce and ERP. The main client pain points we encounter are 1. a growing business outpaces an old system, or 2. business processes are more sophisticated than a limited e-commerce systems will support. At HotWax Media, it is our mission to make these pain points go away for our clients.

As we continue with our mission and the new year delivers a resurgence of tangible, budget-backed interest in enterprise e-commerce/ERP and OFBiz, I thought it would be useful to start building a list of some common questions our prospective clients face as they make their e-commerce/ERP purchase decisions. I plan to add to this list from time to time with subsequent blog posts. For now, we will begin with the following three common questions we have heard from sales prospects over the last month.

The answers here are meant to be relatively short and sweet. If you are looking for additional detail or are more generally interested in learning how HotWax Media can help you create or enhance your e-commerce/ERP system, contact us without delay!

1. What are my options related to product organization and display?

The first example today is related to product taxonomy and product content options. In this case, the sales prospect needed the ability to create quite a few categories, sub-categories, sub-sub-categories, and so on. She also needed the ability to deliver personalized content at each of these hierarchical levels based on user type. A competitor she had been speaking with was unable to support these requirements, so we were glad to be able to talk her down out of the tree (pun intended). The bottom line is that with OFBiz, you can create a product organization tree that has as many branches as you need to get the job done. There is no system-imposed limit to the number of categories you can create and use to organize and display your products in an OFBiz e-commerce storefront built by the OFBiz experts here at HotWax Media. Furthermore, you can deliver personalized content at any step along the way assuming you know who your user is (i.e. he has logged in or been somehow otherwise identified by the system). While you can personalize any product content at any step along the way, this capability requirement is especially common in B2B environments.

2. Can my system automate sales tax, payment processing, and shipping?

The short answer related to sales tax, payment processing, and shipping: No problem. A HotWax Media/OFBiz solution will empower you to handle sales tax, payment processing, and shipping however it will best suit your business. Sales tax is typically handled by 3rd party tax tables which provide sales tax requirement details all the way down to that specific split zip code you were wondering about in San Jose – no problem. Payment processing will generally be handled by one of the many integrations available out-of-the-box with OFBiz (PayFlow Pro, Authorize.net, Chase Orbital, etc.). In the event that you have a special requirement to use a different payment processor, the expert OFBiz developers at HotWax Media can implement a new payment processor integration in no time. Finally, with HotWax Media and OFBiz you will find a rich variety of shipping options from which to choose. These include integrations with USPS, FedEx, UPS, DHL, and many other shipping companies. The integrations also let you rely solely on automated quotes from the shipping companies, manual overrides, or a combination. With relative ease, you can control every aspect of your shipping revenue/expense related to your enterprise e-commerce storefront.

3. Can we do inventory management in this system?

Yes indeed, as a full-featured open source ERP framework, OFBiz offers great inventory management features that support everything from ATP/QOH-driven product display to inventory moves and re-order points. If your business is growing, you may already have and wish to integrate with an existing inventory management system. OFBiz makes that as easy as possible using XML-RPC, SOAP, or most any other common protocol designed for that type of synchronization. If you do not already have an inventory management system or are looking to replace the one you have, then you are in a great position to leverage the fully featured inventory management in OFBiz as part of an architecture that will already be integrated with your e-commerce storefront. Bonus!

Feel free to let us know if you have other common questions you would like to see addressed in this series, or contact us today to learn more about how HotWax Media can help you build and grow your e-commerce business.

Mike Bates is CEO at HotWax Media and will join other HotWax Media employees and advisors in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.
Mike Bates - OFBiz Expert

OFBiz Tutorial – Implementing a Product CSV export

Thursday, February 11th, 2010

At the end of the last post in our OFBiz tutorial series we have completed the final version of a simple product list screen completely based on OFBiz widgets.

Here is the screen definition:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<screen name="ProductList">
    <section>
        <actions>
            <entity-condition entity-name="Product" list="products">
                <order-by field-name="productId"/>
            </entity-condition>
        </actions>
        <widgets>
            <decorator-screen name="HwmCommonDecorator" location="component://hwm/widget/CommonScreens.xml">
                <decorator-section name="body">
                    <label text="Finished Products" style="h1"/>
                    <include-form name="ListProducts" location="component://hwm/widget/HwmForms.xml"/>
                </decorator-section>
            </decorator-screen>
        </widgets>
    </section>
</screen>

and the form definition:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<form name="ListProducts" type="list" list-name="products">
    <row-actions>
        <service service-name="getProductInventoryAvailable" result-map="inventoryAvailableMap">
            <field-map field-name="productId" from-field="productId"/>
        </service>
    </row-actions>
    <field name="productId" widget-style="buttontext">
        <hyperlink target="/catalog/control/EditProduct" description="${productId}" target-type="inter-app">
            <parameter param-name="productId"/>
        </hyperlink>
    </field>
    <field name="productTypeId" title="Product Type">
        <display-entity entity-name="ProductType"/>
    </field>
    <field name="internalName"><display/></field>
    <field name="description"><display/></field>
    <field name="qoh" entry-name="inventoryAvailableMap.quantityOnHandTotal">
        <display/>
    </field>
    <field name="atp" entry-name="inventoryAvailableMap.availableToPromiseTotal">
        <display/>
    </field>
</form>

and the end result is this:
The final result

Our next goal, the subject of this post, is to provide a CSV (Comma Separated Value) export of the same list of products; we will do this by reusing as much as possible the artifacts already implemented for the html screen.

A CSV file is a widely used simple format for the exchange of data between different software systems; for example, Microsoft Excel can easily import a CSV file into a spreadsheet. From a technical point of view a CSV file is a plain text file where each line represents a row from a list of homogeneous data, and the fields are separated by the comma character.
CSV exports are supported out of the box by the OFBiz widgets.
In this excercise we will:

  1. add to the product list screen a link that will generate the CSV export
  2. add to the controller.xml file the request and view entries for the new CSV export screen
  3. implement the new screen definition for the CSV export screen; the screen will reuse the same form used by html screen

Adding a link element

We will add a link from the product list screen to invoke the product CSV export screen. The definition of a link element in a screen is easy:

1
2
3
<container style="button-bar">
    <link target="ProductListExport" text="CSV Export" style="buttontext"/>
</container>
  • the “container” element is not mandatory but we have used it in order to create an invisible region of the screen for the links (we will add a new link in our next post, for PDF exports)
  • the link element is defined in the same way we have defined the link field in the product list form in our last post

Controller entries for a CSV export screen

1
2
3
4
5
6
<request-map uri="ProductListExport">
    <security https="true" auth="true"/>
    <response name="success" type="view" value="ProductListExportScreen"/>
</request-map>
...
<view-map name="ProductListExportScreen" type="screencsv" content-type="text/csv" page="component://hwm/widget/HwmScreens.xml#ProductListExport"/>

The entries are very similar to the ones we have implemented in a previous post for the product list screen. There are just a couple of things to notice:

  • the request-map uri must match with the target of the link element in the screen (”ProductListExport”)
  • in the view-map, the type is now “screencsv” (instead of “screen”) because we have to invoke the “csv screen renderer”
  • in the view-map we have also set the content-type to “text/csv” as useful metadata information for the browser

Screen definition for CSV export screens

There isn’t anything special in a screen definition for a CSV export; the screen is defined in the same way of a normal screen, except for a couple of details:

1
2
3
4
5
6
7
8
9
10
11
12
13
<screen name="ProductListExport">
    <section>
        <actions>
            <set field="viewSize" value="10000"/>
            <entity-condition entity-name="Product" list="products">
                <order-by field-name="productId"/>
            </entity-condition>
        </actions>
        <widgets>
            <include-form name="ListProducts" location="component://hwm/widget/HwmForms.xml"/>
        </widgets>
    </section>
</screen>
  • the screen definition is mostly identical to the “product list screen”
  • in particular, the entity-condition element is the same and it is used to select the list of products for the export
  • the form that is included is the same of the “product list screen”: we will not have to re-implement it because the widget renderer will take care of rendering it into the proper output (CSV or html)
  • the “set” field operation, where we set “viewSize” to “10000″, is an easy way to “disable” pagination; we actually define the top limit of our product export to 10000 records here, but of course we can use a different value

Conclusion

The exercise is complete and we can test the product export by clicking the “CSV Export” link (there is no need to restart OFBiz).

Implementing the CSV export ended up being a trivial task because, thanks to the OFBiz widgets, we have reused most of the work we did for the html screen.

In the next tutorial post we will perform similar steps to implement the PDF version of the same screen.

- Jacopo

Jacopo Cappellato is VP of Technology at HotWax Media and has been involved with the OFBiz project since 2003. He is an OFBiz Project Committer and a member of both the OFBiz Project Management Committee and the Apache Software Foundation.

Jacopo Cappellato - OFBiz Developer - OFBiz Expert

HotWax Media and OFBiz – 2009 Contributions – Part 4

Monday, February 8th, 2010

For the final chapter in our series highlighting the contributions of HotWax Media to Apache’s Open For Business (OFBiz) in 2009, we will focus on the OFBiz integrations related components:

  1. Shipping Integrations
  2. Multi Channel Sales Integrations
  3. Payment Processing Integrations

Shipping

OFBiz Shipping USPS UPS

During 2009, the available shipping integrations in OFBiz got a boost from some much needed power users — clients with real-world business needs driving development efforts is always the best scenario for an open source project!  We focused on enhancing the integrations by implementing new aspects of UPS standard web services, UPS World Ship, USPS standard web services, FedEx and Endicia.

  1. Added UPS integration support for sending Shipment Return Label email to customer. This option will be available on order detail screen and as well on the return screen when order is in the “Completed” status and the return is in the “Accepted” status.
  2. Added functionality for getting online shipping charges from UPS if an order is in the “Approved” status with associated shipment in the “Picked” status and it has been hold due to an overage in the shipping charges from the Weight Package only screen.
  3. UPS integration enhancement for supporting shipping quote based on dimensions.
  4. Built a custom component for integrating OFBiz with existing UPS World Ship terminals.
  5. Added support for USPS international rate estimates and label printing.
  6. Built a custom component for integrating OFBiz with the Endicia services to provide additional features that were not supported in standard USPS web services.
  7. Built a custom component for integrating OFBiz with the new FedEx web services to provide additional features that were not supported by the version of the FedEx SDK that was currently utilized.

Multi Channel Sales

OFBiz Multi Channel

Over the past 10 years, possible sales channels have increased from catalogs and brick and mortar stores to include standard ecommerce, public marketplaces, and shopping comparison sites.  HotWax Media has played an active role in expanding the different multi-channel integrations that are offered to OFBiz users.  Here is a list of integration improvements to eBay, Google Base and Amazon:

  1. Added multiple store support to eBay and provided sample data to document how it works.
  2. As part of adding  multi-store support to the eBay integration, improved the Category Association management by adding  a new ProdCatalogCategoryType “PCCT_EBAY_ROOT” and adding a worker method in the CatalogWorker class to fetch the top level eBay categoryId.
  3. Implemented new services available in eBay – GetOrders and GetMyeBaySelling to allow single transaction (one per import) as well as multi transaction (multiple per import) support.
  4. Added a new screen to optimize the import orders and transactions workflow.
  5. Create support for eBay configuration from the new entity EbayConfig.  Provided the GUI support to update configuration values.
  6. Added a new entity, EbayShippingMethod, to support custom shipping methods from eBay. Also provided GUI support and included demo data for reference and documentation.
  7. Fixed the Google Base product feed – it was broken when we started working on it.
  8. Provide entity support for Google Base configuration.
  9. Updated eBay and Google Base customer error messaging.
  10. Added multiple store support to Google Base and provided sample data to document how it works.
  11. Built a custom component for integrating Amazon web services for: a) Sending product information (feeds for product, price, relationship, image, inventory) to Amazon;  b)Sending order adjustment and fulfillment information to Amazon; c) Retrieving order information from Amazon.

Payment Processing

OFBiz orbital google paypal

OFBiz flexibly integrates with a growing number of different payment processors.  2009 saw a number of new Payment Gateway options become available, and HotWax was able to provide updated or new integrations to many of these services.

  1. Implemented Chase Bank’s “Orbital Payment Gateway” – supported features are credit card authorization, capture, authorize and capture, release, and refund.
  2. Provided entity support for the configuration settings of Orbital Gateway – since this was created after the community switched to maintaining this in entities – property file configuration is not supported at this time.
  3. Analyzed the Google Checkout integration that was started in the OFBiz trunk – found it to be insufficient.  Provided a new implementation utilizing the updated Google Checkout SDK.
  4. Users can now create and order using Google Checkout – including the checking of existing customer information.
  5. Added support in OFBiz for fulfillment of orders created from inside Google Checkout.
  6. Added additional shipment, order state change, and other notifications into the Google Checkout integration.
  7. Provided seed & demo data so that user can test Google Checkout with merchant and seller accounts.
  8. Because this integration was stared when property files were used in OFBiz, we maintained backward compatibility to allow existing users to use property files for configuration settings in Google Checkout.
  9. Provided entity support for the configuration settings of Google Checkout per the current OFBiz standard.
  10. Added support to Google Checkout to support Google shipping methods in OFBiz.
  11. Added GUI support for GoogleCheckout entities to easily handle configuration settings. The name of entities are: GoogleCoConfiguration & GoogleCoShippingMethod.
  12. Provided documentation for the community to show how Google Checkout works.
  13. Made a number of improvements to the standard PayPal IPN integration.
  14. Implemented PayPal Express Checkout (both the Payflow Pro and standard PayPal account versions) allowing for order payments and refunds using a PayPal account.
  15. Provided entity support for the configuration settings of PayPal Express Checkout.
  16. Upgraded PayPal’s PayFlow Pro from version 2 to version 4 – helping the community to stay up to date while the existing implementation was deprecated and taken out of production in September of 2009.

What’s Next?

Spending our 2010 helping take the Apache Open For Business project to the next level of usability, flexibility, testability, and accountability.

Contact us today to learn how HotWax Media can help you achieve your business goals using Apache Open For Business.

- Tim

Tim Ruppert is Chief Operating Officer at HotWax Media as well as an OFBiz project committer and active community member. Tim will join other HotWax Media employees and advisors in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.

This post is part of a 4 part series. Please find the other posts in this series here:

Read Intro | Part 1 | Part 2 |Part 3 | Part 4

OFBiz for Small to Mid-Sized E-Commerce: Part 1

Thursday, February 4th, 2010

How Does OFBiz Meet the More Basic Needs of a Small to Mid-Sized E-Commerce Operation?

In this day and age, almost everyone is familiar with e-commerce storefronts. But relatively few are privy to the back-end: What does it look like for a business to manage a product catalog, fulfill orders, and provide service and support to customers? Is there a single online app that does all of that?

Maybe the business simply receives a system email with the order details, and pick, pack, and ship are paper-driven. For the lowest-volume sales and simplest supply chain, this can work. In fact, it’s how many e-commerce businesses get their start. But when orders pour in, businesses find it hard to survive without automated customer, order, inventory, and fulfillment management capabilities.

Small to mid-sized businesses can turn to OFBiz for a basic, out-of-the box suite of of apps to manage e-commerce. But figuring out exactly which features to implement is a challenge, especially for OFBiz and open-source newcomers.

With 16 mature applications and 8700 database objects and counting, OFBiz may overwhelm stakeholders seeking support for their customer service and warehouse operations. The vast and generic flexibility of the OFBiz framework presents potential end-users with literally thousands of options from which to choose, and all out-of-the-box.

HotWax Media’s business is to help clients cut to core functionality with a concise OFBiz solution, and over the years, we’ve developed a good sense of what most e-commerce customers want. In this series, we’ll clear a path through OFBiz’s complexity to the most straightforward out-of-the-box implementation for small or mid-sized businesses. Each post will map back to the following Must Haves.

OFBiz eCommerce

Eleven E-Commerce Management Must Haves

  1. Control the type, relevance, and amount of product information on the storefront
  2. Know when inventory is low and order goods from suppliers with ease
  3. Receive products into the warehouse by way of the original purchase order
  4. Track product inventory quantities and warehouse locations real-time
  5. Queue up orders for picking and get them all set for packing
  6. Pack orders and ship them out the door
  7. Make returns easy on Customer Service
  8. Edit an in-flight order or put it on hold
  9. Keep track of customers’ purchases, returns, and account information
  10. Offer gift cards, special offers, and discounts
  11. Have an easy way to update website content

- Laurian

Laurian Escalanti is a Senior Business Analyst based in Salt Lake City, Utah. She works directly with clients’ subject matter experts, process owners, and end users to define and document business requirements, from e-commerce, purchasing, order management, manufacturing, fulfillment, and accounting, to UI design, third-party integrations, SEO, and site analytics.