Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 24 Next »

Introduction

LogiSense Billing for Salesforce is implemented using an AppExchange Salesforce application which integrates LogiSense with Salesforce to sync the data related to:

  • Products
  • Product Services
  • Accounts and Opportunities
  • Contact Points
  • Contact Types
  • Currencies
  • States and Countries
  • LogiSense Records
  • Rate Groups
  • Rate Plans
  • Charges
  • Services
  • Service Charges
  • Usage Buckets
  • Tenants

Basically the application allows administrators to connect their Salesforce org with LogiSense Billing, pull products and product services from LogiSense Billing, and sell those products to customers in Salesforce. Sales / deal (Opportunity) and customer (Account / Contact) information is in turn pushed back from Salesforce to LogiSense Billing.

Configuration

The following section allows both LogiSense and Salesforce admins to work independently on setting up their systems. However, there are instances during setup where values must match between both systems. These instances will be called out in the steps below. 

LogiSense Billing Configuration

The following items need to be configured in your EngageIP application. Screenshots are provided to indicate where the settings can be found / provide sample configuration data.

  1. Owner Configuration: Owner Currencies which your organization supports
    Must match values in Salesforce (the Salesforce configuration steps can be found under the 'Salesforce (Pre App Installation Process)' section below) 



  2. Regional Settings: Countries (country and state relationships, city is optional)
    Must match values in Salesforce (the Salesforce configuration steps can be found under the 'Salesforce (Pre App Installation Process)' section below) 



  3. Accounts: Contact Types and Contact Points
    Note: if Contact Types and Contact Points are configured as 'Required' in LogiSense Billing then they should also be set as required in Salesforce. The 'Contact Field Mapping' section below explains how to map LogiSense fields to Salesforce fields. Referencing which fields are mapped to Salesforce will tell you which Salesforce fields need to be set as required in order to match the LogiSense Billing configuration

    1. Add an additional contact point to each contact type
      • Name: sfdcid
      • Data Type: Text
      • Allow Multiple: False
      • Required: False

  4. Accounts: Account Status Types


  5. Accounts: Account Types
    Must match values setup under the Salesforce Account "Type" field (the Salesforce configuration steps can be found under the 'Salesforce (Pre App Installation Process)' section below) 



  6. Billing: Bill Groups


  7. Dunning Process: AR Terms


  8. Custom Fields

    1. Account:
      • Entity: Account
      • Field Type: String(255)
      • Name: sfdcid
      • Column Name: sfdcid
      • Description: Salesforce Account Id
      • Layout: Account Settings (optional)


    1. Package Frequency:
      • Entity: Package Frequency Must match values in Salesforce (Product 'Product Family' field)
      • Field Type: String(255)
      • List: True
      • Lookup: False
      • Allow Multiple Selection: False


      • Name: Product Family
      • Column Name: family
      • Description: Salesforce Product Family


      • List Values: add the values listed in Salesforce (Setup → Object Manager → Product → Fields & Relationships → Product Family Picklist Values)


      • Layout: Add to Package Frequency Layout

    Note: any additional custom fields setup on package frequencies will not sync to Salesforce by default. To configure syncing of custom fields see the 'Package Field Mapping' section below

  9. Packages

    • Only packages / package frequencies that are "Active" will be synced to Salesforce
      • IMPORTANT! 
        • A product will be created in Salesforce for each Package Frequency
        • The product's name will be constructed by concatenating the following LogiSense fields, "PackageName PackageFrequencyName CurencyCode". For example, "ABC 1m GBP". It is important that all stakeholders are aware of this naming convention so that the names given to packages are user friendly for both Salesforce reps and LogiSense Billing Admins
      • If a package was already synced to Salesforce and then becomes inactive on the LogiSense side and resynced, it will be disabled on the Salesforce side and not available to be added to opportunities
      • Any package services whose Status pricing is NULL will not be synced to Salesforce
      • Rate plans (if applicable) must be attached at the package service level
      • Contracts (if applicable) must be attached to the package frequency
      • There should be a value in the SKU field. This field is mapped to the Product Code native field on the Product object in Salesforce. When a product is added to an opportunity a unique LogiSense Package Product Code will be assign to the opportunity product (SKU-ID). For example, if the SKU was ABC the product code will become, ABC-1. The next product added to any opportunity would be "SKU"-2, and so on. If no SKU is provided in LogiSense Billing and the product catalog is synced with Salesforce, then the product code for each product added to an opportunity would become, -1, -2, -3, ... (no SKU prefix).
      • Select the correct Product Family custom field value on the package frequency
      • The current Salesforce app doesn't support tiered pricing. The package will be synced however the tiered structure will not be displayed in Salesforce

  10. Optional Configuration depending on deployment
    • Product Catalog Contracts - these can be attached to package frequencies and will be shown on the Salesforce Product Object. (Custom Field: "Minimum Term", LogiSense_Minimum_Term__c)
    • Usage Buckets - these can be attached to services and populate the Usage Bucket custom object installed with the Salesforce App. The connection between the usage bucket and service will also be established in Salesforce and show as a read-only "allowance" on the custom Opportunity Product Service Visual Force page
    • Rate Plans - standard configuration of Rate Plan/Rate Group/Rates. These must be attached to Package Services and not Package Frequencies in order to allow Salesforce users to override rate amounts

Salesforce (Pre App Installation Process)

Although the following are called out as "pre" app installation steps these can be done after the app is installed. The important thing to make the Salesforce admin aware of is steps one and two below as these are natively disabled in Salesforce. Step two will require the most work from the Salesforce admin, especially if the have a lot of countries and states to configure. Although this is mostly a requirement for taxing and data integrity, LogiSense requires our internal IDs for Countries and States in order to add addresses correctly.

There is no mapping screen within Salesforce between LogiSense and Salesforce country/states, instead the app relies on standard ISO codes. You are covered when it comes to countries, however keep this in mind when configuring states in both systems as the LogiSense Billing States Abbreviation value should match the Salesforce State Code value.

  1. Activate Multiple Currency Support
    Must match values in LogiSense Owner Currencies

    1. In Salesforce access Setup
    2. Search for 'Company' on the left and expand Company Settings
    3. Click on Company Information
    4. On the Company Information screen click on the Edit button
    5. Enable Activate Mutliple Currencies


    6. Click Save
    7. On the Company Information screen click the Currency Setup button
    8. On the Currency page ensure that the currencies setup match the LogiSense Billing currencies configured (click New to add additional currencies)

  2. Enable Country State Picklist Support
    Must match values in LogiSense Regional Settings

    1. In Salesforce access Setup
    2. Search for 'Country' on the left and select the State and Country/Territory Picklists option

    3. Complete the 'Configure states and countries' step ensuring the states and countries configured in your Salesforce org match the states and countries setup in LogiSense Billing
    4. Complete the 'Scan your organization' step to check for sate/country references
    5. Complete the 'Covert your data' step
    6. Turn on state and country/territory picklists by licking the Enable button

  3. Add LogiSense instance URL to Remote Site Settings
    1. In Salesforce access Setup
    2. Search for 'Remote' on the left and select Remote Site Settings
    3. Click the New Remote Site button
    4. Enter a name for the site under Remote Site Name
    5. Enter the URL of the LogiSense Billing application under Remote Site URL
    6. Click Save

  4. Configure Product Family Picklist
    Must match values in LogiSense Package Frequency Custom Field "Product Family"

    1. In Salesforce access the Object Manager
    2. Load Fields & Relationships then select Product Family
    3. Under Product Family Picketlist Values add new values to match the custom field values populated on price frequencies in LogiSense Billing

  5. Configure Account Type Picklist
    Must match values in LogiSense Account Types

    1. In Salesforce access the Object Manager
    2. Load Fields & Relationships then select Type
    3. Under Account Type Picketlist Values add new values to match the account types setup in LogiSense Billing

  6. Setup Custom Profiles that LogiSense App permissions will be added to (Note: permissions cannot be mapped to stock Salesforce profiles)
    1. in Salesforce access Setup
    2. Load / search for Profiles
    3. Clone the profiles for administrators and agents that will be using the LogiSense App. E.g. if your sales staff are using the 'Standard User' profile, clone that profile (e.g. a cloned profile named 'LogiSense Standard User')

Salesforce (app installation)

  1. Install the latest version of the LogiSense Billing for Salesforce App in your production/sandbox Salesforce instance (Classic or Lightning are both supported).

    IMPORTANT! If this is the first time installing the app on a fresh Salesforce instance follow the steps below during the install process



    1. Select the third option Install for Specific Profiles

    2. Scroll down on the Install page and configure the profiles which will have LogiSense Standard User vs. LogiSense Standard Admin permissions
      • LogiSense Standard User - Provides full access to all sales related objects (i.e. accounts, contacts, opportunities) however users do not have access to sync products, price books or create custom field mapping
      • LogiSense Standard Admin - Provides full access to the application including ability to sync products, price books, custom field mapping as well as access to API request logs
    3. Click Install


  2. After installing the app switch to either LogiSense Lightning or LogiSense in the App Launcher






    Note
    : the following steps assume that you are creating a custom section for all LogiSense related fields. However, you can mix the fields in with existing one on your current layouts. ID fields are not required and used mainly for testing and support. All other fields require values and therefore must be added to your layouts are you can create a custom trigger that sets default values

  3. Configure Account Page Layouts to display relevant LogiSense Billing data
    1. Load the Object Manager

    2. Access Page Layouts and modify the layouts that need to present LogiSense Billing data


      Custom data can be grouped into a 'LogiSense' section or added to existing layout sections as needed. The following fields are available:

      Note: bold fields below are required in order to sync data successfully with LogiSense Billing
      Note: if ID's are displayed on Layouts it is important not to alter them (these values are set by the LogiSense Billing application)

      • Tenant

      • AR Term

      • Bill Group

      • Account Status

      • Subscription Invoice Recipient

      • Usage Invoice Recipient

      • Sync With LogiSense

      • LogiSense ID

      • Parent LogiSense ID

      • Account Price Plan Id's

    3. Create a new section to display LogiSense Billing invoice data, and add the 'InvoiceList' Visualforce page to that section:

      • Edit the properties of the InvoiceList and enable scrolling

        For more information how to configure which columns will be displayed, refer to the 'Account Invoice List' section below. 
        To view the invoice, click on the Invoice Name/Id in the Visualforce page on the account object and it will launch a PDF version of the invoice as it appears in LogiSense Billing

    4. Add the 'Sync With LogiSense' button/action under Buttons or Mobile & Lightning Actions

      Lightning:



      Classic:



  4. Contact Object Layout

    1. Create a new section on the Contact page layout and add the following fields:

      • Contact Type


  5. Opportunity Object Layout

    1. Create a new section on the Opportunity page layout and add the following fields:

      • Buttons or Mobile & Lightning Actions

        • Sync With LogiSense

  6. Opportunity Product Layout

    1. Create a new section for LogiSense and add the following fields:

      • Minimum Term

      • Account Product Code Name

    2. Create a new section (e.g. 'LogiSense Product Services') and add the following Visualforce page:

      • OpportunityProductServicesListing

      • Enable 'Show scrollbars' on OpportunityProductServicesListing

  7. Product Layout

    1. Create a new section for the LogiSense data and add the following fields:

      • Minimum Term

      • Base Time Unit

      • Base Frequency

Connecting Salesforce to LogiSense Billing

The following steps will allow you to connect your Salesforce org to the LogiSense Billing instance:

  1. Navigate to the LogiSense Integration tab within Salesforce


  2. Click on the Edit button in the top right
  3. Enter the LogiSense instance URL in the Endpoint URL field. This should be the same one you entered in Remote Settings
  4. Set the Client Id value to: 044b8ad6006845c29446b2f18e5b5909
  5. For User Name and Password enter the LogiSense Billing credentials supplied by LogiSense
  6. Click the Test Connection button
  7. Once you receive a Success response, click Save

Account Field Mapping

Additional native or custom fields from the Account object in Salesforce can be mapped in order to sync with LogiSense Billing when account data is pushed (account data is only pushed down from Salesforce, it is not pulled or pushed from LogiSense Billing).


To configure account field mapping:

  1. Navigate to the LogiSense Integration tab
  2. Click on the Account Extensions button
  3. Click the Add Mapping button
  4. Select the Salesforce Field
  5. Enter the LogiSense Field value
    • Value entered in the 'Column Name' field for the custom field on the Account entity in LogiSense Billing
    • This value cannot have spaces and must start with a lowercase letter (Note: even if the Column Name starts with a Capital in the LogiSense Billing UI, the API name will be created with a lowercase character)
  6. Continue steps 3-5 above for each field mapping
  7. Click Save

Package Field Mapping

LogiSense Package Frequency custom fields can be mapped to any custom fields created on the native Salesforce Product object.


To configure package frequency to product field mapping:

  1. Navigate to the LogiSense Integration tab
  2. Click on the Product Extensions button
  3. Click the Add Mapping button
  4. Enter the LogiSense Field value
    1. Value entered in the 'Column Name' field for the custom field on the Package Frequency entity in LogiSense Billing
    2. This value cannot have spaces and must start with a lowercase letter (Note: even if the Column Name starts with a Capital in the LogiSense Billing UI, the API name will be created with a lowercase character)
  5. Select the Salesforce Field to map to
  6. Continue steps 3-5 above for each field mapping
  7. Click Save

Contact Field Mapping

By default the only fields that will sync from a Contact perspective are the Name, Title and Type fields. All other fields require mapping to be configured within Salesforce.

IMPORTANT! All contact points for each contact type must be configured prior to syncing any accounts.

To configure mapping of additional contact data:

  1. Navigate to the LogiSense Integration tab
  2. Click on the Contact Point Mapping button
  3. Select the LogiSense Contact Type from the drop down
  4. Select the Salesforce Field for each contact point
  5. Click Save
  6. Repeat steps 3-5 above for each contact type
  7. Once all fields across all types have been configured, click Close

Account Invoice List

As part of the default Salesforce for LogiSense app, all account invoices in LogiSense will be reflected back to a custom Visualforce page that can be added to the Account object.

Which columns are displayed and their names is customizable from the Invoice Configuration section on the LogiSense Integration tab.

  1. Navigate to the LogiSense Integration tab
  2. Click on the Invoice Configuration button
  3. Select which columns you would like to see in the Visualforce page
  4. Optional, rename the Label value
  5. Click Save

Any changes will take effect immediately across all account layouts that are configured to show the Visualforce page.

Importing and Syncing Data

Importing Data from LogiSense Billing

There are two buttons on the LogiSense Integration tab which allow you to import data into Salesforce from LogiSense:


Import Catalogues



Clicking on this button will import the following objects from LogiSense:

  • Packages (includes all package frequencies, package currencies, pricing rules, and rate plan connections to each package service)
  • Services (includes any connected usage buckets)
  • Rate Plans (includes groups and rates)

Import Data



Clicking on this button will import the following objects from LogiSense:

  • Account Status Types
  • Account Types
  • Contact Types and Points
  • Countries and States
  • Owners and their Currencies
  • Bill Groups
  • AR Terms

Background Data Sync

To enable background syncing navigate to the LogiSense Integration tab and click on the Start Data Sync button. 

Once Accounts and Contacts have been synced between both systems, changes to either of these objects within Salesforce will automatically create a LogiSense Request Record in order to update the record in LogiSense. These records will show on the LogiSense Requests tab with a status of Waiting and will be picked up by the Scheduler for resyncing.

For accounts changing of the following fields will trigger an automatic resync:

  • Name
  • Type
  • Status
  • Bill Group
  • AR term
  • parent account
  • Usage or Subscription invoice recipients
  • Any custom fields that were mapped between both systems
  • Contact update changes to mapped contact fields/when a new contact is added or deleted


Background Data Sync Frequency

By default the scheduler in the LogiSense app is set to a 15 minute interval. In order to change this within Salesforce:

  1. Go to Setup
  2. Enter Custom Settings
  3. Click on Manage for LogiSense Syncing Settings
  4. Click Edit next to Syncing Settings
  5. Enter a new value in the Syncing Frequency (in Minutes) field


Remember that this only works from Salesforce to LogiSense, meaning that if any changes are made to Accounts or Contacts within LogiSense are not pushed to Salesforce. Therefore it is recommended that the Salesforce instance be the master for any Account/Contact updates or hierarchical structure.

Logs

LogiSense Requests (API Logs)

Each sync request between LogiSense and Salesforce is recorded on the LogiSense Requests tab in Salesforce. This screen contains records related to import of data in Salesforce from LogiSense as well as syncing of Account and Opportunities from Salesforce to LogiSense.



From this screen you can see which requests were successful vs. failed within the Status column (Note: switch your list view to 'All' if you do not see the Status column). If a request failed, the reason can be found by clicking on the LogiSense Request Name which will show you the Request Error Logs within a Related list.


  • No labels