TABLE OF CONTENTS

  •  Package Details
  • Production Deployment Steps
    • Prior to installation:
    • Package Installation
  • Configuration
    • Authentication & Logs Tab
    • Setting up Remote Site Setting
    • Save and Discard
    • Data Import Tab
      • Help Text
      • Times used in Configuration
      • Holding Tank Section
    • Importing Tabs
      • Object Mapping
      • Field Mapping
    • Object and Field Level Security
      • Temporary objects:
      • Additional object:
      • Apex Class Access
  • Resources

 

Package Details 

 

The following details are in reference to the Tiltify Salesforce Connector Package: 

 

  • Package Info 
  1. Latest Package Version: Version 1.5 
  2. Version ID: 04t5f000000SKmH
  3.  PRODUCTION Package Installation URL: 
  4.   https://login.salesforce.com/packaging/installPackage.apexp?p0=04t5f000000SKmH
  5.  SANDBOX Package Installation URL: 
  6. https://test.salesforce.com/packaging/installPackage.apexp?p0=04t5f000000SKmH  

Production Deployment Steps 


Prior to installation: 

The end user will need to log onto the Cause Dashboard and navigate to Integrations, Salesforce to generate a Shared Secret. The needed API URL value is https://salesforce.tiltify.com/gql 

Package Installation 

You will need to download the package from the Salesforce Appexchange or from a Tiltify provided link. 

 

  1. Using the provided URL you will start the package install. 
  2. You may get a prompt to Log Into Salesforce Org to install the package if you are not already signed into your instance. 
  1. Best practice is to set up in your Sandbox for testing and training prior to your Production instance. 

 

Graphical user interface, website

Description automatically generated 

 

  1. Your next screen will allow you to install the package into your Salesforce instance. Implement security as required by your instance and company. 

Graphical user interface, text, application

Description automatically generated 

Installation window that appears looks similar to the above. 

 

  1. Select the installation security radio button needed and Select the Install button. You will now see the installation and depending on the availability of the network you may get a notice that an email will be sent when installation is complete or you will receive a message similar to the one below: 

 

Graphical user interface, text, application, email, Teams

Description automatically generated 

 

  1. Select the Done button to return to your Salesforce instance. 

 

Configuration 


Navigating to the Configuration App for setup of the Managed Package. 

 

  1. Select the App Launcher in the left corner of the menu bar. 
  2. In the Search bar enter “Tiltify” 
  3. Select the Tiltify App. 

 

Graphical user interface, application

Description automatically generated 


Authentication & Logs Tab 

  1. Using the information provided by Tiltify complete: 
  1. Api Url 
  2. Shared Secret 
  1. Set following information in the provide fields: 
  1. the Logging Level to the Debug. 
  2. Set the Max Number of Logs to 200. 

 

Graphical user interface, application

Description automatically generated 

 

After successfully setting up and importing records it is possible to set the Logging Level to Error as you gain familiarity with the managed package. 

Setting up Remote Site Setting 

The remote site setting is a configuration that is set to allow your Salesforce Org to communicate with outside resources. 

 

Select the Remote Site Setting button on the Authentication & Logs tab on the Configuration Page. 

 

  1. Select the New Remote Site button to enter the host URL that has been provided by Tiltify. This allows Salesforce to communicate with this particular URL. 

 

Graphical user interface, application

Description automatically generated 

 

  1. Enter the Remote Site Name. 
  2. The host URL. 
  3. Ensure it is marked active. 
  4. Select the Save button. 

 

Save and Discard 


As you navigate through the Configuration Page you will see a Save Button and a Discard Button at the top of the page.  

 

  • The Save button will show a value of unsaved Changes when a change has been made. 
  • The Discard button will allow you to revert to previous values when selected. 

 

Graphical user interface, application, email

Description automatically generated 

 

Data Import Tab 


The Data Import Tab allows you to set general configurations and view those records that are within your Salesforce Org but being housed in temporary Objects until they are moved to the mapped Objects you will designate in the Mapping Tabs. 

 

  1. The Import Now button allows you to import all records immediately. 
  2. The Enable Import Toggle will allow you to create a scheduled job to import records based on the value just below it in the Scheduled Time field. 
  3. The  Schedule Time field will allow you to schedule your imports at your convenience each day. 
  4. The Last Import / Import Since will be the date and time that will be used for the next scheduled import (if you enable imports) and can be adjusted as your processes require.  
  5. The Next Scheduled Import shows when the next run of the Import Schedule is to execute. 
  6. The Reset to Default Mappings allows a user to set up mappings for all Mapping Tabs to the defaults that were present at installation. This will remove / delete all current mappings. 
  7. The Clear All Now button will remove / delete all records from any temporary storage objects. 

 

Graphical user interface, application

Description automatically generated 

 

Help Text 


In each page section you will see a question mark that can be pressed to provide specific text for that section of each page. 

 

Graphical user interface, application

Description automatically generated 

 

Times used in Configuration 


All times in the Configuration are using the time zone of the Salesforce Org and not necessarily of the current user. 


Holding Tank Section 


This section of the page shows the Salesforce Object that data is temporarily being stored in and any records that created an error and were not imported. 

 

The following is a list of the Object Labels in Salesforce that the corresponding Tiltify Object records are stored in before being inserted into their mapped objects and fields: 

Page Break 

 

 

Salesforce Object Label 

Tiltify Object 

Tiltify Campaign 

Campaign 

Tiltify Donations 

Donations 

Tiltify Fundraising Events 

Fundraising Events 

Tiltify Team 

Team 

Tiltify User 

User 

 

If you refresh the Configuration Page during import you will see the Records of the different objects update showing as they progress to import. 

 

Table

Description automatically generated 

 

 

Importing Tabs 


There are five importing tabs that correspond to the data that will be imported into your Salesforce instance. Each tab requires that there is a destination for each Tiltify field in the destination object. 

 

When you installed your package, some destination objects and fields were updated for the most probable destination object and fields for most instances. This is completely customizable and can be set as needed in the destination Salesforce instance. 

 

The destination tabs are: 

  1. Users Mapping 
  2. Event Mapping 
  3. Campaign Mapping 
  4. Team Mapping  
  5. Donation Mappings 

Object Mapping 

On the left side of the page is the information concerning the Object to be mapped to: 

 

  1. The Salesforce Object dropdown will show all objects within your Salesforce instance. Select a value from the list. 
  2. External Id will be defaulted to the packaged field TiltifyId__c but can be updated as needed. This key will be used to ensure that duplicates are not introduced and that updates to a record are based on this unique value. 
  3. Default Record Type is the record type to use for this type of Tiltify record import. 
  4. Batch Size is generally set at 200 but can be increased, within the limits of Salesforce or decreased due to other instance requirements. 
  5. Create Account Toggle will be available only on the User Tab to allow for the creation of Account Records to associate these records with if you wish to. 

 

Graphical user interface, application

Description automatically generated 

 

 

The Object Mapping of each of the five mapping tabs will be the same, with the exception of the Create Account Toggle. 

Field Mapping 

On the right side of each of the five mapping tabs will be a list of the fields that the Tiltify integration will bring into Salesforce that will need a destination field to write to on the Object that is mapped. 

 

These fields will differ based on the information that is being imported into your Salesforce org. Using existing fields may best follow your firm’s business process, consideration should be given to creation of new fields where necessary. 

 

To map these fields select the dropdown list beside the Tiltify field and select the Salesforce Api Name you wish to map values to for import. 

Graphical user interface, application

Description automatically generated 

Lookup Fields 

If you set the Field Mapping to have a Lookup field as the Salesforce field, the app will use the value of the field you are getting from Tiltify as the key to find the external id of the object you are looking up to. With that external id, it will create a relationship with the object that you need to link to. Below are some suggestions for default mappings that you can use to relate your objects. 

 

Here are the fields that can be mapped to standard Salesforce fields: 

Tiltify Field 

Salesforce Field 

Campaign.fundraising_event_id 

Campaign.ParentId 

Donations.user_id 

Opportunity.ContactId 

Donations.campaign_id 

Opportunity.CampaignId 

Fundraising_event.parent_fundraising_event_id 

Campaign.ParentId 

 

For some objects, you will have to create custom lookup fields for your two related objects (if these objects don’t already have lookup fields to the objects you need in your org): 

Tiltify Field 

Salesforce Field 

Campaign.user_id 

Campaign.Contact__c 

(Custom Lookup Field to Contact Object) 

Campaign.team_id 

Campaign.Team__c 

(Custom Lookup field to Campaign Object) 

Donations.fundraising_event_id 

Opportunity.FundraisingEventId__c  

(Custom Lookup Field to Campaign Object) 

 

Object and Field Level Security 


The end user that is setting up the Scheduled Import Job will need the object permissions on the temporary objects, destination objects and destination fields. 

 

Temporary objects: 

  • Tiltify__TiltifyCampaign__c 
  • Tiltify__TiltifyDonations__c 
  • Tiltify__TiltifyFundraisingEvents__c 
  • Tiltify__TiltifyTeam__c 
  • Tiltify__TiltifyUser__c 

 

Additional object: 

  • Tiltify__TiltifyLog__c 

 

Apex Class Access 

When setting up access to the Apex Classes to setup and run the application the user that is performing the setup will need access to the following Apex classes: 

 

  • Tiltify__MockHttpResponseGenerator 
  • Tiltify__TiltifyAppConfigMappingCntrl 
  • Tiltify__TiltifyCalloutQueueable 
  • Tiltify__TiltifyConfigController 
  • Tiltify__TiltifyConfigControllerTest 
  • Tiltify__TiltifyCore 
  • Tiltify__TiltifyCoreTest 
  • Tiltify__TiltifyCoreValues 
  • Tiltify__TiltifyDataSyncController 
  • Tiltify__TiltifyFLSCheck 
  • Tiltify__TiltifyFLSCheckTest 
  • Tiltify__TiltifyIntegration 
  • Tiltify__TiltifyLogEventTest 
  • Tiltify__TiltifyLogging 
  • Tiltify__TiltifyLoggingTest 
  • Tiltify__TiltifyMigrationBatch 
  • Tiltify__TiltifyParsingEngine 
  • Tiltify__TiltifyStructure 

 

 

Tiltify Data Structure: 

Overview of Tiltify Objects that can be imported into Salesforce.com. For each object we have included the name of the fields that are available to map and the Holding Tank object’s data type for each field attribute. 

 

Users – Tiltify Users are Fundraisers and Donors. To donate on the Tiltify platform a donor is only required to provide an email address.  

Field Name 

Data Type 

Description 

ID 

Text(255) (External ID) 

The Tiltify ID of the User 

Email 

Text(255) 

The email address of the User 

First Name 

Text(255) 

The first name of the User 

Last Name 

Text(255) 

The last name of the User 

Bio 

Text Area(255) 

The bio that the User entered 

Social 

Text Area(255) 

The social channels of the User 

Username 

Text(255) 

The username of the User 

Slug 

Text(255) 

The slug can be used to get to the Tiltify webpage for the User 

Deleted At 

Date/Time 

The date the User data was deleted 

Create At 

Date/Time 

The date the User data was created 

Updated At 

Date/Time 

The date the User data was updated 

 

Events – Events are known as Fundraising Event Activations on Tiltify. Each Fundraising Event Activation has a Parent Fundraising Event. The Parent FE groups Fundraising Event Activations. The most common use of this is when a Cause has an annual event and wants to keep the same URL year over year. By using the URL of the Parent FE, the URL will always route the user to the active Fundraising Event Activation. 

Field Name 

Data Type 

Description 

ID 

Text(255) (External ID) 

The Tiltify ID of a Causes Fundraising Event 

Created At 

Date/Time 

The date/time the Fundraising Event was Updated 

Updated At 

Date/Time 

The date/time the Fundraising Event was Created 

Name 

Text(255) 

The Name of the Fundraising Event 

Starts At 

Date/Time 

The date the Fundraising Event Starts 

Ends At 

Date/Time 

The date the Fundraising Event Ends 

Fundraiser Goal Amount 

Currency(16, 2) 

The amount the Cause would like to raise with the Fundraising Event 

Status 

Text(255) 

The current status of the Fundraising Event 

Slug 

Text(255) 

The slug can be used to get to the Tiltify webpage for the Fundraising Event 

Short Description 

Text(255) 

A short description that the Cause entered for the Fundraising Event 

Contact email 

Email 

The contact email address provided by the Cause for the Fundraising Event 

Parent Fundraising Event ID 

Text(255) 

The ID for the Parent Fundraising Event 

Parent Fundraising Event Name 

Text(255) 

The Name for the Parent Fundraising Event 

Parent Fundraising Event Slug 

Text(255) 

The slug can be used to get to the Tiltify webpage for the Current Fundraising Event 

 

Campaigns – Campaigns are created by Fundraisers. A Campaign can support a Cause and/or a Cause Fundraising Event 

Field Name 

Data Type 

Description 

ID 

Text(255) (External ID) 

The Tiltify ID of the Campaign 

Name 

Text(80) 

The Name of the Campaign 

Description 

Long Text Area(32000) 

The Description of the Campaign 

Starts At 

Date/Time 

The date the Campaign Starts 

Ends At 

Date/Time 

The date the Campaign Ends 

Cause ID 

Text(255) 

The Cause ID that the will received the donations raised by the Campaign 

Fundraiser Goal Amount 

Currency(16, 2) 

The current fundraising goal of the campaign 

Team ID 

Text(255) 

The ID of the team that the campaign is supporting 

User ID 

Text(255) 

The ID of the user who created the campagin 

Slug 

Text(255) 

The slug can be used to get to the Tiltify webpage for the Campaign 

Original Fundraising Goal 

Currency(16, 2) 

The original fundraising goal of the campaign 

Region ID 

Text(255) 

The ID of the region that the fundraiser wants to support 

Region Code 

Text(255) 

The Code of the region that the fundraiser wants to support 

Region Name 

Text(255) 

The Name of the region that the fundraiser wants to support 

Published At 

Date/Time 

The date the campaign was published 

Campaign Type 

Text(255) 

The campaine type/template that was used to create the campaign 

Retired At 

Date/Time 

The date the campaign was retired 

Deleted At 

Date/Time 

The date the campaign was deleted 

 

Teams – Fundraiser can opt to fundraise as part of a team or fundraise to support a team 

Field Name 

Data Type 

Description 

ID 

Text(255) (External ID) 

The Tiltify ID of the Team 

Name 

Text(255) 

The Name of the Team 

Created At 

Date/Time 

The date the Team was created 

Updated At 

Date/Time 

The last date the Team was updated 

Slug 

Text(255) 

The slug can be used to get to the Tiltify webpage for the Team 

Status 

Text(255) 

The current status of the Team 

 

Donations 

Field Name 

Data Type 

Description 

ID 

Text(255) (External ID) 

The Tiltify ID of the Donation 

Email 

Email 

The email that was provided by the donor 

Amount 

Currency(16, 2) 

The amount of the donation 

Created At 

Date/Time 

The date/time the donation record was created 

Updated At 

Date/Time 

The most recent date/time the donation record was updated 

Payment Status 

Text(255) 

The current status of the donation 

Donor Name 

Text(255) 

The username the donor provided (if any) when making the donation 

Donor Comment 

Text(255) 

The comment the donor provided (if any) when making the donation 

Anonymous 

Checkbox 

Whether or not the donation should be anonymous 

Donation Payment Type 

Text(255) 

The Payment processor used to process the donation 

Public 

Checkbox 

Indicator on if the donation was processed as a donation visible to users following the campaign 

Transaction ID 

Text(255) 

The transaction ID of the payment processor 

Charity Can Contact 

Checkbox 

Boolean noting if the donor has opted into being contacted 

Completed At 

Date/Time 

Date the donation was completed 

User ID 

Text(255) 

The user ID (if exists) of the donor 

Fundraising Event ID 

Text(255) 

The ID of the Fundraising Event the donation was supporting 

Moderated At 

Date/Time 

The date/time the donation was moderated 

Moderated ID 

Text(255) 

The ID of the User who moderated the donation 

Campaign ID 

Text(255) 

The ID od the Campaign the donation was supporting 

Platform ID 

Text(255) 

Will note if the donation originated from Twitch 

Geolocation 

Geolocation 

The lat and long of the donor as determined by their IP Address 

 

 

 

Resources 

 

Trailhead Data Security 

Trailhead Data Security - Control Access to Fields 

Trailhead Lightning App Builder - Work with Custom Lightning Components 

Trailhead Lightning Experience Customization - Customize Record Details with Page Layouts 

Trailhead Lightning Experience Customization - Create and Customize List Views