Top Salesforce TPM (CG Cloud) Interview Questions – For Developers & Functional Experts
If you’re working with Salesforce TPM (Trade Promotion Management) on CG Cloud, whether you're a developer, functional consultant, or part of the support team, you’ve probably realized that it's not just about standard Salesforce skills.
TPM brings a mix of funds, claims, promotions, tactics, KPIs, Apex logic, and real-time data integration (RTR)—all packed into a domain built for Consumer Goods companies.
In this post, I’ve compiled a list of real-world TPM interview questions that cover not just the data model and configurations, but also Apex customization, business workflows, batch jobs, and scenario-based logic that you’re likely to face in client projects or interviews.
Whether you're preparing for a job switch, brushing up for a project kickoff, or reviewing the platform deeper—this guide will help you gain clarity and confidence.
1. What is Trade Promotion Management in Salesforce CG Cloud, and why is it important in Consumer Goods industry?
Trade Promotion Management (TPM) in Salesforce CG Cloud helps Consumer Goods (CG) companies plan, execute, track, and optimize trade promotions. It enables efficient fund allocation, tactic execution, claim validation, and ROI analysis.
Why TPM is important in the Consumer Goods industry:
- High Promotion Spend:
In CG, up to 25–30% of revenue is spent on trade promotions. TPM helps optimize ROI on that spend. - Strategic Planning & Forecasting:
TPM allows CG companies to create data-driven promotion plans, aligning them with marketing goals, budgets, and supply chain capacity. - End-to-End Visibility:
With TPM in Salesforce CG Cloud, brands can track promotions from creation --> approval --> execution --> settlement, improving control and compliance. - Retail Execution Integration:
TPM integrates with Retail Execution (store visits, audits) to ensure promotions are executed properly at the shelf. - Improved Collaboration:
TPM enhances collaboration between account managers, field reps, and finance teams by providing a centralized view of all trade activities. - Analytics & KPIs:
It offers insights like incremental lift, cannibalization, ROI, etc., to help businesses learn and improve future promotions.
Example:
A beverage company can use TPM to:
- Plan a "Buy 2 Get 1 Free" promo for 3 regions.
- Predict sales uplift and validate budget impact.
- Track execution in stores via mobile apps.
- Evaluate the campaign's performance post-execution.
Diagram:
2. What are the types of promotions in Salesforce TPM?
Types of Promotions in Salesforce TPM
- Short Term Promotions (STP):
- Long Term Promotions (LTP):
- Everyday Low Price (EDLP):
- Off-invoice vs. Bill-back:
- Off-invoice: Discount applied directly to invoice.
- Bill-back: Retailer claims back after promotion completion.
Usually run for days or weeks. Examples: Festive discounts, seasonal sales. They target short bursts of volume uplift.
Spanning months or a year. Example: Loyalty programs, year-long trade deals with retailers.
Fixed discounted price for an extended period instead of running frequent promotions.
MIND IT !
Type | Duration | When to use |
---|---|---|
Short Term Promotion (STP) | Days–Weeks | Seasonal or festival bursts. Example : Diwali discount 10% on snacks |
Long Term Promotion (LTP) | Months–Year | Loyalty, distribution deals |
Everyday Low Price (EDLP) | Continuous | Market position / low-price strategy |
Off-Invoice | When billed | Discount applied directly on invoice |
Bill-Back | Post-event | Retailer reimbursed after proof |
3. What is the lifecycle of a promotion in TPM?
Example:
- Create promotion linked to tactic & budget.
- Validate pricing rules & product scope.
- Activate promotion.
- Track sales uplift via volume actuals.
- Settle retailer claims against promotion funding.
4. What is a tactic in Salesforce TPM?
In Salesforce TPM (Trade Promotion Management), a tactic is a planned promotional activity that supports a trade promotion’s objectives.
Think of it as the specific action you execute to influence sales, customer behavior, or product movement.
Key Points:
- Level in Hierarchy:
- Purpose:
- Data Captured:
Budgets -> Promotions -> Tactics.
A tactic is part of a promotion, and multiple tactics can exist under one promotion.
Defines how you will execute the promotion - for example, discounts, displays, sampling, etc.
Product(s) involved, time frame, type of tactic, expected uplift, budget allocation.
Example
Imagine you are a Trade Marketing Manager for a beverage company.
Promotion: "Diwali Festive Beverage Offer – Maharashtra"
- Start Date: 1 Oct 2025
- End Date: 20 Oct 2025
- Target: Increase sales of 2L Cola bottles by 15% during Diwali.
Tactics under this promotion:
- In-store Display
- Type: Endcap display in supermarkets
- Duration: 1 Oct – 15 Oct
- Objective: Improve visibility to drive impulse buys.
- Budget: Rs.50,000
- Buy 1 Get 1 Free Offer
- Type: Price discount
- Duration: 10 Oct – 20 Oct
- Objective: Push higher volume sales in the final days of promotion.
- Budget: Rs.75,000
- Digital Coupon Campaign
- Type: Online discount codes
- Duration: 5 Oct – 20 Oct
- Objective: Attract younger, online shoppers.
- Budget: Rs. 25,000
5. What are the core objects used in TPM data model? Explain their relationships.
In Salesforce Consumer Goods Cloud, the Trade Promotion Management (TPM) data model is built around a set of standard and custom objects that help track the entire promotion lifecycle — from planning to execution to settlement.
- cgcloud__Promotion__c: Parent promotion record.
- cgcloud__Trade_Promotion_Tactic__c: Child tactics that define execution methods.
- cgcloud__Fund__c: Budget allocated to promotions/tactics.
- cgcloud__Claim__c: Retailer requests for reimbursement.
- cgcloud__Actual__c: Sales/volume data for KPI.
Core TPM Objects and Relationships
Object Name | Description | Relationships |
---|---|---|
Promotion (cgcloud__Promotion__c) | The central object representing a planned trade promotion. | Linked to Tactics, Accounts, Products, Budgets, and KPIs |
Tactic (cgcloud__Tactic__c) | A promotional mechanism or offer type (e.g., discount, display, bundle). Each promotion can have multiple tactics. | Lookup to Promotion |
Tactic Template (cgcloud__Tactic_Template__c) | A configuration template defining valid fields and dependencies for different tactic types. | Referenced by Tactic and used for UI rendering |
Promotion Product (cgcloud__Promotion_Product__c) | The product(s) associated with the promotion or tactic. | Related to Promotion, Tactic, and Product (Standard) |
Retail Store (cgcloud__Retail_Store__c) | Represents the store/location where the promotion is executed. | Linked to Promotion or Account |
Fund (cgcloud__Fund__c) | The financial pool allocated for promotions (marketing, trade, or other). | Linked to Promotion and Fund Plan |
Settlement (cgcloud__Settlement__c) | Captures financial settlement and reconciliation details post-promotion. | Related to Promotion, ERP ID, Funds |
KPI (cgcloud__KPI__c) | Stores key performance indicators like ROI, uplift, etc. | Related to Promotion |
Budget (cgcloud__Budget__c) | Total promotional budget available for a brand, product, or account. | Linked to Fund and Promotion |
Condition Code (TPM_SAPConditionCode__c) | Custom object used to model SAP-style condition dependencies for field logic. | Referenced in field rendering or dependency logic |
Simplified Relationship Flow:
Example Use Case:
- A budget is set up for Q4 promotions.
- A fund is created from that budget for the “Diwali Campaign.”
- A promotion called “Buy 1 Get 1” is planned.
- Two tactics are added: one for shelf display, one for discount.
- Each tactic targets specific products and stores.
- After execution, KPI and Settlement objects track performance and costs.
6. What is the core purpose of Trade Promotion Management in CG Cloud, and how is it structured?
TPM in CG Cloud helps Consumer Goods (CG) companies plan, execute, track, and optimize trade promotions. It's structured around key objects:
- cgcloud__Promotion__c: Represents the overall trade event.
- cgcloud__Trade_Promotion_Tactic__c: Represents actionable activities under a promotion.
- cgcloud__Fund__c: Represents allocated promotional budget.
Example:
For a "Diwali Sales Promotion", the Promotion would hold details like timeline and account, Tactics would include "Buy One Get One Free", and Funds would track allocated budget.
7. Explain the relationship between cgcloud__Promotion__c, cgcloud__Trade_Promotion_Tactic__c, and cgcloud__Fund__c?
These three objects form the core financial and executional structure in TPM:
cgcloud__Promotion__c
(Promotion): The parent record representing the overall trade event. It holds strategic information like time period, account, and objectives.cgcloud__Trade_Promotion_Tactic__c
(Tactic): Child of Promotion, representing actionable activities (e.g., displays, discounts). Each tactic can be budgeted and tracked individually.cgcloud__Fund__c
(Fund): Represents the monetary pool allocated to trade promotions. Tactics and Promotions draw from this fund for planned spend and actual claim settlement.
Relationship:
- Promotion <--- has many ---> Tactics
- Tactics <--- draws from ---> Fund
- Promotion <--- indirectly utilizes ---> Fund through its Tactics
8. What are Business Object API Workflow Steps in CG Cloud, and when would you use them?
Business Object API Workflow Steps in CG Cloud allow for custom process automation tied to specific business objects like Promotions, Claims, or Tactics. They are declarative or programmable steps that define what should happen during a lifecycle stage.
Use cases:
- Approving a Promotion only if all Tactics have budgets assigned.
- Moving a Claim to “Approved” only if it matches against a tactic and fund balance.
- Automatically notifying Finance team when a Fund reaches a low threshold.
These steps are used to enforce business rules, manage state transitions, and trigger integrations during the lifecycle of a business object.
9. What is the role of KPIs in CG Cloud TPM, and how are they calculated?
KPIs (Key Performance Indicators) are used to measure promotion effectiveness. Common KPIs include:
- Incremental Sales Lift
- ROI (Return on Investment)
- Spend Effectiveness
- Uplift %
Example:
If a promotion generated Rs.10L in incremental sales from a Rs.2L spend:
- ROI = Rs.10L / Rs.2L = 5x
- Spend Effectiveness = (Incremental Sales / Spend) * 100
These KPIs are often derived using actuals from POS or ERP data, which can be integrated or connected via Salesforce Connect.
10. How are TPM fields and picklists configured dynamically using Metadata and Field Config records?
In Salesforce Trade Promotion Management (TPM), dynamic field and picklist rendering on the UI is driven by Custom Metadata Types (CMDTs) and field configuration records. This flexible approach allows admins and developers to control field behavior without changing code, which is essential for supporting different tactic types, brands, and countries.
TPM uses Custom Metadata (TPM_TacticTemplateFieldConfig__mdt) and Condition Code data (TPM_SAPConditionCode__c) to render tactic fields dynamically. This config-driven approach allows developers to build highly adaptable UI experiences with field-level dependency, visibility control, and picklist value resolution—all driven without hardcoding.
Key Components for Dynamic Field Configuration
Component | Description |
---|---|
Tactic Template (cgcloud__Tactic_Template__c) | Stores tactic-level configuration and links to applicable UI field setup. |
Tactic Template Field Config (TPM_TacticTemplateFieldConfig__mdt) | A Custom Metadata Type used to define which fields should appear on the Tactic UI, their order, controlling fields, and other behavior. |
TPM_SAPConditionCode__c | A custom object containing SAP-style field dependency mappings (used for multilevel picklist dependencies). |
Code Snippet (Apex):
for (TPM_TacticTemplateFieldConfig__mdt config : fieldConfigs) {
if (config.TPM_IsConfiguredinTactic__c && config.TPM_TacticControllingField__c != null) {
controllerFieldMap.put(config.API_Name__c, config.TPM_TacticControllingField__c);
}
}
11. How do you enforce dynamic dependencies between fields like Payment Method --> Compensation Model --> Claim Type in TPM forms?
To enforce multi-level dynamic dependencies (e.g., Payment Method --> Compensation Model --> Claim Type) in Salesforce TPM (Trade Promotion Management) forms, Salesforce CG Cloud uses a combination of:
- Custom Metadata Configs
- SAP-style dependency data (
TPM_SAPConditionCode__c
) - Dynamic Apex logic
- Front-end JavaScript logic in LWC/Aura
Components Involved
Component | Role |
---|---|
TPM_TacticTemplateFieldConfig__mdt |
Declares each field's controlling field (if any) and field order. |
TPM_SAPConditionCode__c |
Contains dependency data, mapping parent-child value combinations across levels. |
Apex (getPicklistFieldsData ) |
Returns valid picklist values, metadata, and dependency maps to the UI. |
JavaScript (LWC) | Renders picklists, filters values dynamically, and disables downstream fields until parents are selected. |
(0) Comments