Introduction to custom apps

In this article

    To start creating your own custom apps, you need to subscribe to Expander Services to get access to the necessary tools and APIs.

    It is possible to create customizations to SuperOffice CRM Online over and above the configuration options available to you in the Settings & Maintenance.

    Create one-off customizations

    In addition to the options in Settings and Maintenance, including the workflows you can define with SuperMacros, there are additional ways to customize SuperOffice to fit your particular situation:

    1. You can customize SuperOffice Service by adding extra tables, and you can create custom screens to fit your specific processes. These tables and screens may also be made available to users of the Sales and Marketing user plan through web panels. 
    2. You can create tailored workflows specific for you using CRMScript. 

    3. Create a customized integration (custom app) linking your CRM Online solution with another system. This can be either a totally new integration to a solution you currently use and specific to you, or it may also a customized version of a standard app available in the App Store.  As long as it is specific to you, we call it a Custom App.

    In order to get access to these tools to create one-off customizations, you need to subscribe to Expander Services

    If you want to create a customized integration, you need in addition to register this customization so that we can give you a unique ID and token to identify the integration with your particular solution in our environment. This, in essence, is what we call "custom apps". You do not have to register your customizations using CRMScript, extra tables or screens, only when the customization require you to use our software APIs.

    CRM Online customers: If you want to be able to use our APIs, like NetServer or WebApi (Rest), you need to register a custom app and get the necessary app id and token.

    When you do create a custom app using the APIs, you also are required to follow our general guidelines for security and performance, even if this app only affects your own installation.

    The Expander Service subscription is a per site license. You may use the tools to add as many Custom Apps as you require. However, each Custom App require a unique app ID and token, so you need to register each custom app via this form

    How to go about creating custom apps

    1. Identify and scope your custom app

    Like all customizations, the first step is to identify and scope out the needs and requirements. That defines the skills required to create the customization and if you don't have this already in-house, you can contact and employ any of our many partners who are well versed in developing for SuperOffice and using our APIs. 

    2. Subscribe to Expander Services

    If you haven't already subscribed to Expander Services, you by default order this when you request you first app ID and token using the form. You may explore the APIs and documentation before you subscribe, but no Custom App will be made available to your CRM Online solution unless this subscription is in place. Contact your local SuperOffice sales contact who will be happy to answer questions or help you get this sorted.

    3. Get your unique app ID and app token

    Next, you or your partner need to register your custom app, telling us more what this customization is about, and what and how you want to integrate with another system. If you are getting help from a partner, we also need to know their name and the name of the main technical contact we can contact in connection with your Custom App.   

    In return, you will get access to our Sandbox environment we call SuperOffice Online Development environment (SOD). You also get a test installation of SuperOffice CRM Online running in this environment and the set of unique keys to identify your app.

    This process is the same for partners developing standard apps for the App Store. For this reason, most of the documentation and examples made for standard apps are relative and helpful also when developing a Custom App.

    For example, you can read more about using the unique app id and app token here, and how to begin building your custom app here.

    The main difference between standard and custom apps is that a Custom App is not published in the App Store and made public to other customers.

    4. Develop your custom app

    The forth step is for you or your partner to develop your Custom App and test the customization against the CRM Online installation you have been given in our Sandbox environment.

    5. Submit for validation

    When you are happy and finished, the next thing is to notify us by submitting your app for validation. By validation, we mean to test that things work the way they should and does not affect other customers in any way.

    The validation tests are done in all three environments. We do not run the Watchcom security audit on custom apps, as we do for standard apps since they will not be available in our App Store.

    Once we are happy, we make the custom app available for you against your actual CRM Online solution.

    If the app is made by a partner, then we need a confirmation from the customer before we authorize the app on the tenant.

    6. Use, enjoy and maintain

    Customizations of Service becomes an integral part of your CRM Solution. A custom app integrating your solution with another system must also be either hosted by you on your servers or by the partner developing it.

    You can enjoy the app and use it for as long as you wish and have the required subscriptions.

    You can also add features to your custom app. You don't need a new unique app ID for this, but it is always recommended to work in the sandbox environment until the additions are completed, tested and work the way you want.

    Again, you need to tell us about it before we can make it work in your production environment.

    That's basically it.

    Explore these pages for more information on developing for CRM Online and contact us if you have any questions we can help you with.