Page tree
Skip to end of metadata
Go to start of metadata
  • Create connector for another e-commerce
    • It is another e-commerce solution providing easily manageable e-shop structure with basic settings (categories, customers, discounts, currency, languages etc.). 
      For communication between commercetools and magnolia is possible to use commercetools client, based on rest-calls with data in json format (see

    • Why Commercetools 
      • REWE our customer is the owner of Commercetools

    • Goals
      • small connector 
      • start with teasers in content article ==> core use case

      • product listing (details page)

      • faceted search

      • shopping cart

        • mini cart

        • details

      • ordering process/checkout

  • Creating connector
    • Other
      • There are 2 separate enpoints - needs to be configurable
      • Creating demo
        • use commercetools-models
        • confirm if there is demo instance on Commercetools side to connect on / create one
      • Create Commercetools product and categories browser app
        • Categories / Products
          • we use our own Content Container (inspired by KK integration) 
            • we considered using dam-external-app, it could work nice for basic showing of content, but custom fields are not prepaired for showing shop based informations 
      • Create Commercetools configuration app
        • (tick) Link site with CT project
        • (tick) Set needed defaults for site project communication
        • (question) Show settings - configure shop (currency, languages etc.)
        • (error) Orders
        • (error) Customers
        • (error) Developers - create new product types
      • (question) Statistics viewer 

This timeplan was first draft. Precise time plan will be kept and updated on JIRA Project's tickets (

  • @Deprecated
  • Time plan (in story points)
    • commercetools-integration
      • authentication - 5
      • Design apps - 3
      • Content connector - 8
      • configuration app
        • Base app - 2
        • Settings - configure shop (currency, Languages etc.) - 3
        • Developers - create new product types - 3
      • browser app
        • Base app - 2
        • Shop selection - 3
        • Categories / Products - 5
        • Orders - 3
        • Customers - 3
        • Discounts - 3
      • commercetools-demo
        • design demo pages - 3
        • prepare components - 8
        • customers registration and login - 3
        • assemble demo pages - 5
      • commercetools-webapp - 2


  • No labels


  1. Why do we need orders, customers and discounts apps?

    Shouldn't Magnolia just:

    • be a front-end part of the Commerce tools (just displaying info, allowing users to complete checkout process)
      • imho we shouldn't implement Commerce tools backend into our system
    • provide way to display content from Commerce tools (categories, products)
    • manage cart and checkout process

    Thoughts on this Roman Kovařík?

    What exactly are new product types you mention?

    How do you plan to obtain products and categories in templates?

    How will be the products and categories app implemented? Do you plan to use asset-external-app or implement new app container?

    How do you plan to handle authentication and expiration of the access token? 

    1. I have started with 1:1 between systems. Its up to us, what parts we want to implement.

      To your question about Product types:


      1. I have started with 1:1 between systems. Its up to us, what parts we want to implement.

        Why do you want to reimplement functionality that is in Commerce tools in Magnolia? Imho it doesn't make sense to do that. We haven't done that for WCS, KonaKart and other integrations.

        Product types..

        The above applies - we never implemented such things in other integrations we did, why would we want to do it for Commerce tools?

    2. Agree don't start to implement it to heavy into magnolia, you will not handle updates anymore if you make a full integration. Yes and it would be fascinating to use only one backend. But it is realy complex. We also don't do it on hybris because of that.


    3. For authorization we will use project-name/user-secret. For token lifeCycle is taken care by SphereClient in cttools jvm-sdk