OXID eFire Extension PayPal 3.0 Released

PayPal LogoWe would like to inform you that in the last week, we published the new OXID eFire extension PayPal, that was developed with the grateful help from PayPal (Europe) S.à r.l. et Cie, S.C.A. and is a complete overhaul in comparison to the former OXID eFire portlet.

What’s new in this version?
First off – the licensing. The PayPal module 3.0 comes under a commercial license for our commercial products OXID eShop Enterprise and Professional Edition including support and warranty. The same piece of software is licensed under GPLv3 for our open sourced OXID eShop Community Edition.
With this new module a connection to or registration with the OXID eFire platform is not longer necessary; it is a standalone module that only has to be installed in your shop environment. And of course, PayPal 3.0 is completely encapsulated as a module, no worries about upcoming shop updates 🙂

The soon-to-release OXID eShop versions 4.8 and 5.1 (presently available as release candidates) will already contain the module PayPal 3.0 in their standard delivery. If you want to use this extension, simply activate it, if not – just no activation needed. It is safe to remove the files from the module folder if you don’t want to use this feature.

Online merchants and developers who run present or older OXID eShop versions will have to download PayPal 3.0 from OXID eXchange first, copy the files to the module folder and activate this function.

Main features

  • PayPal is available as a regular payment method in the appropriate checkout step.
  • PayPal express is already included at the checkout (registration step), at the so called “mini cart” and at the product detail pages.
  • The module is highly customizable through many options at the admin panel, for example the step to transfer the money (at the order date or on delivery).
  • Options are adjustable in different ways for each multishop (OXID eShop Enterprise Edition only).
  • The payment page at PayPal can be customized by your own logo and the name of your online store.
  • If you wish, you can transfer the content of the cart (purchased product items) to PayPal. Your customer has to decide whether this data shall be transferred or not.
  • Partial payment is possible.
  • The admin panel provides an overview of the PayPal payments per order.

For more information about the features, on how to customize the module or how to adjust the options, please see the documentation delivered inside the module package.

Please note that the release of this module is an addition to the remaining OXID eFire PayPal portlet. Also, this module now can be installed by international users regardless of their German know-how.

Download your free copy of the new OXID eFire extension PayPal today and let us know how it is running!

Roadmap 4.7/5.0 released

To carry on the spirit of collaboration with our customers and our community as well as a transparent software development, we have published the Roadmap for OXID eShop 4.7/5.0. This will help developers and partners to plan for changes and upcoming new features that may require changes in their shop architecture.

With the upcoming release we decided to focus feature-wise on Enterprise Edition to better respond to new market developments and our customers’ needs. As this gives a whole new direction to the product we proudly call this new generation of OXID eShop 5.0. Professional and Community Edition, in release 4.7, benefit from essential changes in the software (OXID framework and core), too.

Please find the roadmap here:

We are always happy about feedback. Let us know what you think in the comments or our Forum.

Stay tuned for rollout plans and timing on this blog.

Interview with Roman Zenner

Roman ZennerRoman Zenner is an author, speaker, consultant and entrepreneur. In his latest book “Online-Shop mit OXID eShop” (published in German by O’Reilly) he guides the reader through the installation of OXID eShop Community Edition, focussing on topics such as payment, basket, social media and fitting the shop to the needs of the own business model.

We asked Roman to give us a little insight about the work on his book.

When O’Reilly asked you to write a book about OXID eShop – why did you decide to take the job?

There were several reasons why this project got started. First of all, after having spent a lot of time working with the Magento platform (and writing two books about it – also published by O’Reilly) I had the feeling it was time to get to know another system better. In my daily job I advise companies which shop software best fits their individual needs, so I need to be objective about those kinds of things. The OXID eSales team was my first choice because I think they make good software since 2003 – and a user handbook was well overdue. As far as O’Reilly is concerned  – they are simply fantastic to work with!

How easy was it to get to know the OXID platform? Which difficulties did you face during the research?

Since the Community Edition can be easily downloaded and installed, I could play around with it practically within minutes. Although it’s not the most elegant thing in the world, the admin interface is easy to get along with after a short while, so doing things like adding products and categories wasn’t a problem. Thankfully, the OXID team invited me to a three-day workshop, so I got an even closer look at the nuts and bolts of the system.

What I found difficult was my lack of experience with the everyday-use of the system and all the little tricks you can do. There are people out there who use the system since the early days and have much to say about tweaking the system to make it run and look the way you want. Fortunately, there were members of the community who could help me out here – especially our technical advisor and editor Andreas Ziethen, who provided invaluable insights.

Why is a book necessary at all? The documentation for OXID eShop Community Edition can be found on the internet, the community is very agile to share experiences, and many OXID partners advise future shop owners if they want to use the Community Edition.

I’m an avid user of forums, wikis etc. and clearly see the advantages of digital publications – one of which being that obviously, one can keep track of new developments and keep everything up to date. Yet, a printed and bound book still has unmatched authority: As an author, you are very careful to make sure that everything you write is correct, and the publisher checks and double-checks that no mistakes are made with regard to language either. Also, the aim is to construct one’s text in a way that it contains a clear didactic path.

The OXID employee Juergen Busch counselled you for the book – isn’t there a danger to lose the neutrality towards the product a writer should have?

When discussing the book project with all stakeholders, I made it very clear from the beginning that I wanted to in fact write a neutral book about the subject and not let marketing lingo and cover-ups take over the manuscript. If something does not work the way it should or a function is not solved ideally, I wanted to have the freedom to call a spade a spade, and I think I succeeded in this respect.

Who are the soon-to-be shop owners who should concentrate on OXID eShop and read the book?

That’s a tough one. I would say that everybody thinking about starting an online business should have a look at whether OXID eShop supports their business model, i.e. provides the desired functionality. If this is the case – and will be in most cases because the software itself is quite flexible – people should buy the book and ideally follow it from cover to cover to setup their own onlineshop.

Other than reading the book and using OXID eShop – which additional advice would you like to give those shop-owners?

Very often I see shop-owners using features not because they provide an additional value for their customers but simply because they can. OXID eShop has many functionalities ready to be used out-of-the-box – but only in very rare occasions it is advisable to use all of them. For a retailer of automotive parts, for example, it does not make a lot of sense to automatically show all the latest products when those products are vehicle-specific and this kind of information would only be interesting to a very small subset of your users. So: the more you can leave out, the better. Or to quote da Vinci: Simplicity is the ultimate sophistication.

Most of our readers are not so familiar with writing books for special needs – could you explain us a bit the writing process?

Typically, you begin by building a table of contents that structures the sheer endless amount of information you face when you begin writing a book. What I like to do is to think about the book as being a class with a couple of consecutive units: You start with installation and configuration, then move on to entering product and category data, talk about altering the design and push the shop online etc. When you follow the line of argument, the book should guide from beginning to end, covering everything important along the way.

When a raw structure has been set up, it’s just writing, writing, writing. I’m the type of author that needs to write something in order to find the structure and I’m constantly shifting things around as new ideas come up. Fortunately, my editor constantly reads the manuscript and provides ideas as well as criticism so that I’m not missing important details but also not dwell on the little things too much.  So this constant shuffling around and ping-ponging of text is what at the end of the day results in such a book.

Will you have another book project coming up soon?

After having written three books on onlineshop software now, I think it’s time for me to do something different this year. I have a number of ideas I’d like to see published, all of which are strategy- and business-related commerce-topics I usually blog about on ecomPunk, one of my latest ventures. I’ll let you know when I fire up the old word processor again 😉

Thank you for the interview.

You’re very welcome.

How to Extend OXID eShop With Modules (Part 1)

Whenever you want to extend the default functionality of an OXID eShop, you should look for existing modules, this may save you a lot of time. In case no module meets your demands, the fabulous OXID API allows you to code your own module.

Given that all program files of OXID eShop Community Edition are non-encrypted and directly accessible PHP or template files, you could potentially modify and extend existing code. Even though this might seem to be the easiest way to go, you should avoid that at any cost concerning all PHP files contained in the default distribution.

There are a few quite convincing arguments to avoid messing up the default source code:

  1. When installing updates or patches, various PHP files could be replaced and you‘d need to redo all your changes.
  2. You won‘t be able to reuse your modifications in other instances of OXID eShop.
  3. You‘ll soon lose track of your changes and further changes might corrupt your whole shop.

To avoid this you should encapsulate all changes in one or multiple modules.

Understanding OXID modules

Before I show you how to write a module, we should first explain the term „module“ in relation to OXID eShop: We call a module all extensions of model, controller or view classes, as well as newly written classes located in the doc_root/modules/MYMODULE folder form. A single module can have multiple functionalities and multiple purposes, but regarding above mentioned points 2. and 3., you should keep modules quite atomic.

OXID eShop is being developed with strict object orientation in mind. Hence, you should be familiar with object-oriented programming, if you’d like to develop an OXID module.

A module for custom rating

Let’s start with an easy example: We want to extend the default article rating functionality of the eShop which looks like this:

default detail view of an article

default detail view of an article

The new module is supposed to change the default rating functionality by displaying the ranking of an article according to German school marks. That means that „1“ will be the best and „5“ the worst grade. The end result of the module development I’ll walk you through is supposed to look like this, with the German-style rating displayed right below the product name:

article details with new information "mark"

The following sample code has been developed with OXID eShop Community Edition version

1. Create a module directory

First of all we create a directory for our module in doc_root/modules/ that we’ll label ourmodule/.

2. Create a module class

Inside of doc_root/modules/ourmodule/, we create a file called extendedarticlerating.php and put the following code into it:

class extendedArticleRating extends extendedArticleRating_parent


What we did here in terms of object oriented programming patterns is that we created an child class for the article object. The article object’s core class is called oxArticle and can be found in doc_root/core/.

3. Register the module in OXID eShop

Now we need to tell OXID eShop that it should use the new module. Therefore we open the shop admin and go to Admin Area -> Master Settings -> Core Settings -> System -> Modules.registering of modules in admin area

There we enter in the modules form field „oxarticle => ourmodule/extendedarticlerating“ and save that entry. Now the module is registered and loaded.

Why must a module be registered within OXID admin? Experienced PHP programmers know that in a normal context the class directive extends extendedArticleRating_parent would lead to an error when initializing the PHP code because the referenced class called extendedArticleRating_parent does not exist. But once we made the entry in the admin area, the OXID eShop framework will automagically generate a class called extendedArticleRating_parent. Furthermore, in every place where an oxarticle instance is generated within the shop it will now be an instance of extendedArticleRating which is a child object of the core class oxArticle.

4. Add module functionality

The new module still does nothing, because functionality is missing. So we add this class method within extendedarticlerating.php:

public function getArticleSchoolMark()
    if ( $this->oxarticles__oxratingcnt->value > 0) {
        return abs(6 - round( $this->oxarticles__oxrating->value, 1));
    } else {
    return „-“;

5. Call new module functionality in templates

You can now make use of the oxArticle object available throughout OXID eShop to run your custom module function by calling


Try it and modify the doc_root/out/basic/tpl/details.tpl file and change the following line of code next to the title

<h1 id="test_product_name">[{$product->oxarticles__oxtitle->value}] [{$product->oxarticles__oxvarselect->value}]</h1>

to that:

<h1 id="test_product_name">[{$product->oxarticles__oxtitle->value}] [{$product->oxarticles__oxvarselect->value}] </h1> (Mark: [{$product-> getArticleSchoolMark()}])

Now have a look at the details page of any product as displayed in the screenshot above. If you can’t see any changes or if you get an error message try to empty the doc_root/tmp folder to clear the object cache and template cache.

Remember that after a fresh installation there are no votes for any article yet, so you might want to login first and vote for an article to see something different then „-“ for the rating.

What will be next in part 2 of this howto?

You just wrote your first OXID eShop module – congratulations! In part 2 of this blog series, we‘ll extend this module and go deeper into the OXID eShop module system. I’ll give you more details on how the OXID eShop framwork can help you when writing modules.

Watch out this space for part 2 and if you have questions, feel free to ask by commenting to this blog or in the modules forum.

- Importer for magento shops is now available. Instrucions how to use are inside the package or inside our manual


OXID eShop rev. 15990 released

OXID eShop is out!

Detailed information information is available at


New featurs in this revision

– Generic import of CSV files possible using OXID eShop admin interface

Importer for magento shops is now available. Instrucions how to use are inside the package or inside our manual

– Integration of OpenID ( for authentication and authentification

– RSS Feeds for product lists show product icon now

Have fun with your new installation of OXID eShop!

27th – 29th January: meet OXID at OSMB 2009

These first days of January passed so quickly and the first huge Open Source Meeting in 2009 is very close now!

This year – for the first time – also OXID is getting ready to attend Open Source Meets Business conference and we are all very excited and happy to meet the international open source scene which OSMB is so well-known for.

The speakers invited, the variety of topics, just the entire program is absolutely amazing. (See for yourself)

And it is my pleasure to announce that there will be three OXID talks contributing to the conference program, too! 🙂

Tuesday afternoon (27th of January) Andrea (Executive Board, Marketing Director) and Erik (Head of Technical Development) present OXID’s 4th generation shop-software and new OXID eShop Community Edition.
(Neu als Open Source – Shop-Software OXID eSales, panel T01 Business Intelligence, Content Management, room: Zürich, CCN West 2, 16:30 – 17:00 o’clock).

As we also participated in this year’s Open Source Business Award, right afterwards Roland (OXID CEO) is giving a 30 minutes talk on OXID’s new commercial open source strategy.
(OXID Partnerprogramm und Community Management, panel I01 Start-ups, room: Mailand, CCN Mitte, 17:00 – 17:30 o’clock).

Mind that you will have to be quick to shift rooms! 😉

And finally, Wednesday afternoon, don’t miss Holger Schuldt ( as he will tell all on what running an online shop really is about, why online church retailers are sorely needed, and why he chose OXID eShop to run his business.
(OXID eShop im Einsatz bei Deicke Kirchenbedarf, panel E03 Handel, room: Dublin, CCN West 2, 16:30 – 17:00 o’clock).

Apart from the speakers there will also be Ralf (Manager Technical Products), Community Guide Marco, and myself attending this event.

If you plan to attend the conference and haven’t registered yet: here’s the link to heise registration form (very convenient online registration, I have to say!).

And be sure to have a look at heise’s smart program planning device “Programmplaner” – this will make your scheduling a lot easier!

We are very much looking forward to see you all.

What’s new

After two years of massive refactoring, we finally come up with the 4th generation of the OXID eShop. Together with that, some new structures and workflows have been introduced to our company for improved quality management as well as new patches, updates and upgrades can and will be released in a very short frequency.

The formerly forked development for both variants – Enterprise and Professional Edition – now has been merged again. The new variants (incl. Community Edition) are separated during the built process, which means, that every possible bug has to be fixed once. All of our code has been ported to PHP5.

The whole code has been extremely cleaned up and we cut down most of the huge classes and methods into small and handy pieces. We consistently use unit and selenium tests.

As a result, we proudly offer a sturdy and reliable code base, an increase of the performance (up to three times in relation to former versions) and the possibility to easily enhance our standard ecommerce tool using our proven module system.

Furthermore, we implemented a bunch of longed features, i.e. search engine optimization (SEO) has been increased exorbitantly:

  • We use cookies instead of handing over the session by URL now.
  • The SEO URL concept has completely been reworked (use of so called “speaking” URLs).
  • Content Pages are enabled to be mapped into SEO URLs.
  • The Shop will be delivered with a XHTML-valid template set (div-based layout).

The new OXID eShop will come with a package of web 2.0 stuff like RSS feeds, tag clouds and social bookmarking tools.

The admin area has been redesigned and comes up now as a smooth and simple to use administration tool.

At the end of the day, we hand out a sophisticated and state of the art software architecture that is easy to customize, where there are no limits in implementing third party systems and which is ready to use within both, SMB and large enterprise environments with an unrivalled total cost of ownership. It’s a weapon 😉