Transactions
Updated
Transactions are specific to Customer Feedback Management and are contained within a user profile, allowing you to document interaction data for particular events concerning your customers. By recording information about individual interactions at specific moments, transactions create a valuable and organized data source for analyzing customer engagement and deriving significant insights into their previous behaviors.
Every transaction is linked to a unique set of metadata, which is stored as key-value pairs in Transaction Fields and details each interaction. This organized method facilitates effective management, analysis, and customization of surveys based on the unique characteristics of each transaction.
Business Use Cases
Detailed Interaction Tracking: Tracking the complete history of customer interactions across various touchpoints can be challenging. By utilizing Transactions, each interaction is systematically recorded with key details, such as support ticket status, interaction date, and issue type. This creates a clear and organized view of customer engagement, enabling faster issue resolution and more personalized support based on past interactions.
Behavior-Driven Survey Customization: Tailoring surveys to reflect customer behavior, such as making a purchase or browsing a website, can significantly improve engagement and feedback quality. By using dynamic logic with Transaction Fields, surveys can automatically adjust based on individual actions, ensuring questions are relevant to each customer's experience. This personalized approach leads to more meaningful responses and better-targeted insights.
Tailored Post-Support Surveys: Improving the feedback process after customer support interactions can be challenging when using generic surveys. By leveraging Transactions, surveys can be dynamically tailored based on the nature of the support interaction, such as a technical issue or an account query. This ensures that questions are relevant to the customer’s experience, resulting in more accurate and actionable feedback that supports continuous improvement in support operations.
Loyalty Program Engagement Surveys: Collecting specific feedback from loyalty program members is crucial for assessing their satisfaction with rewards and incentives. By utilizing Transactions, surveys can be designed to activate specifically for loyalty program participants and customized to highlight the benefits they have received. This method offers important insights into customer preferences and aids in shaping and enhancing future loyalty programs.
By using transaction metadata and conditional logic, businesses can create hyper-personalized surveys that adapt in real time to each customer’s behavior. This leads to more relevant questions, higher engagement, and more accurate feedback. Personalized surveys based on individual interactions see better participation and insight quality. With placeholders and automation, tailored surveys can be sent at scale, saving time while maintaining relevance. Connecting responses to transaction data also enables deeper, data-driven insights to inform marketing, support, and product decisions.
Prerequisites
No additional permissions are needed to access Transaction modules. Access to specific components within the app is controlled by the required permissions detailed in their respective documentation.
Setting Up Transactions and Transaction Groups
Let's try and understand first what are Transaction and Transaction Group:
How it works?
Transactions are specialized, CFM-specific entities used to capture and store detailed data about interactions between customers and your brand. Each transaction is linked to a user profile and includes rich metadata, providing a structured foundation for managing and analyzing customer engagement.
With support for dynamic survey customization, using placeholders and logic transactions enable businesses to deliver highly personalized experiences. Survey responses can be tied directly to transactions, offering a comprehensive view of both interactions and customer feedback.
The Transactions module also supports flexible data integration. Data can be imported via Excel or CSV files, processed through workflows, or passed through dynamic links using URL parameters making it easy to incorporate into existing systems.
By utilizing Transactions, companies can connect survey responses directly to interaction data, bringing together relevant information like purchases, support activities, and engagement history into one cohesive perspective.
Example: A customer makes a purchase at one store location, and the transaction is recorded in the brand’s ERP system. This data is then imported into Sprinklr as a transaction. A few days later, the same customer shops at a different location, and that interaction is also recorded and imported as a separate transaction.
If this data were stored only within standard Sprinklr Audience Profiles, the most recent interaction would overwrite the previous one, making it impossible to send separate surveys for each event. By using transactions, however, each interaction is stored independently, preserving all contextual details. This allows for multiple, targeted survey distributions, whether through supported Distributions or workflows, enabling personalized engagement based on each unique customer experience.
Transaction: A singular entry documenting a distinct interaction with a customer at a specific time.
Transaction Groups: A set of transactions organized as a group.
Follow these steps to Create New Transactions Groups:
Navigate to Customer Feedback Management Persona App and the go to Audience Management in the left pane.

Click Transaction.

Click Create Transaction Group.

Go to Create Transaction Group Page and fill in the details:

Transaction Group Name: Enter a unique name for the transaction group.
Type: Select a specific type of transaction group.
Tags: Add relevant tags for categorization.
Description: Provide a brief description of the transaction group.
Set User Permissions: Only the owner and selected users will be able to access the transaction group and the underlying transactions in the Global Transactions Record Manager
Survey: Select the survey where these transactions will be used. The transaction group will only be available for distribution within the selected projects.
Click Save.
Go to Click Yes or Not Now in the transaction group created page.
Note: Currently, distributing through pre-imported transaction groups (as noted in point 5 above) is only supported through the Personalized Links → Transactions Import functionality.
Mapping Transaction Fields and Importing
Once your file is ready, click Next to proceed.

Define your User ID: On the following screen, align the columns in your Excel file with the corresponding Transaction Fields.
User ID Field: Choose the Excel column that holds the customer's identifying details (such as mobile number, email address, or a unique reference ID).
If a profile is already present for the specified User ID, the metadata will be stored in that profile.
If there is no existing profile, a new one will be generated.
Colum Mapping: Map each column in your Excel file to corresponding Transaction Fields in Sprinklr.
Only globally shared Transaction Fields are available at this step.
Note:
Difference Between Defining and Mapping the User ID:
Defining the User ID Field (Step 1): Identifies the customer profile and is used to create or update profiles.

Mapping the User ID to a Transaction Field (Step 2): Stores the User ID specifically for individual transactions.

The second step for the User ID is optional.
Ensure all other required transactional metadata is mapped as needed.
There is no need to map the “Profile Channel” field since it is fetched directly.
After completing the mapping, click on Create to produce the transaction group along with the associated transactions. A new entry will be added to the record manager.
Select View next to the name of the transaction group to display all related transactions.
Manage Transactions
You will see the Transaction Group Record Manager, which lists all the Transaction Groups available in the partner. Let's have a look at the columns that are present in the record manager.
Title | Description |
Name | The name of the transaction group. |
Number of Transactions | Total number of transactions in the group. |
Owner | The user who created the transaction group. |
Modified Time | The most recent date and time the transaction group was updated or a transaction was added. |
Transaction Tags | Tags associated with the transaction group for categorization or filtering. |
Associated with Projects | The projects linked to this transaction group. |
Shared with Users | The list of users with whom the transaction group is shared. |
Created Time | The date and time the transaction group was created. |
Description | A brief description providing context or details about the transaction group. |
You can perform the following actions in the record manager:

Search: You can look for particular transaction groups by utilizing keywords.
Filters: You can sort Transaction Groups according to Transaction Tags or Owner.
Refresh: You can update the record manager to show the most recent Transaction Groups and updates.
Manage Columns: You have the option to conceal or reveal certain columns to customize your record manager display.
Export: You have the option to export the Transaction Groups along with their details for offline analysis or reporting purposes.
Import Transactions: You have the option to upload a file that includes your data.
Importing Transactions & Creating a New Transaction Group
Preparing a Transaction File for Import
To store transaction data in Sprinklr, you can import it using a data file. This guide outlines the correct file format and structure required to ensure a successful import.
Click on "Import Transactions" to initiate the process.
Template File
Sprinklr offers a pre-formatted template to help you get started with importing transactions easily and accurately.
To download the template, click "Download a Sample Template" during the transaction creation process.
Open the template in a spreadsheet editor like Excel and fill it in with your transaction details.

Follow the instructions below for required and recommended fields:
Required Fields: Ensure your file includes the following fields:
User ID: A distinctive identifier for the user.
Profile Channel: The channel linked to the user profile.
Email
SMS
WhatsApp
Source Agnostic (if none of the above apply).
Recommended Fields: Although it's not mandatory, it is highly advisable to include these fields.
Transaction Time: Contains the date and time of the transaction.
First Name: Includes the user’s first name.
Last Name: Includes the user’s last name.
Transaction Fields: Any extra metadata required for the transaction can be found. Please consult this article for instructions on how to create Transaction Fields.
Note: You will not be able to import if the “Profile Channel” column with the said name is not present in the sheet.
Once the file is complete, you can proceed to import the transactions. Refer to the sample transaction file to proceed further:
How to use it?
Import Transactions: Submit ad-hoc lists of interactions using Excel or CSV files to create reports from the data.
Generate Personalized Links
Generate an export of individual links for each transaction to support personalized survey distribution outside of Sprinklr.
This transaction group will be available for selection within Shared Projects.
Note: Currently, distributing surveys via pre-imported transaction groups is only supported for the Personalized Links → Transactions Import functionality.
Key points to note
Inconsistency of Mandatory Fields:
Profile Channel: This is a required field and must be correctly mapped for successful imports.
User ID: Although mandatory, the User ID behaves differently as discussed.
Ad-hoc Distributions Not Supported: The ability to schedule or manually trigger transactional surveys (such as through "Send Now") is not yet available for WhatsApp, SMS, or Email channels.
While you can import data from Excel to generate personalized links, assigning a unique link to each transaction, manual distribution of transactional surveys through WhatsApp, email, or SMS is not currently supported. These channels only support survey distribution at the profile level and do not allow ad-hoc transactional sending.
Note: These limitations apply only to manual distribution methods. Transactions can still be created via workflows, and automated transactional surveys can be sent through email, SMS, or WhatsApp using trigger-based distributions.
It is not possible to create empty transaction groups, nor can existing groups be modified to add more transactions. Transaction groups are formed solely during transaction imports or through workflows.
Transaction Group: Unified Data Connector
Once you create a Transaction Group of type Unified Data Connector, Sprinklr prompts you to configure the connector. You can proceed immediately or return to this setup later.

If you want to continue, select Yes.
Entity Selection
The first screen shows the entity selection. There is only one entity available (as we’re coming via the Transaction Group flow), simply click Next.

Entity Specific Settings
This will be disabled because we are coming in from the transaction group flow, and the transaction group is already set up and chosen for us. If you are creating the connector from Global Settings, you will be able to choose the Transaction Group as well. Note that only empty Transaction Groups of type UDC appear in Global Settings.
This screen includes two primary settings:
Integration Type: Only one method is supported: Insert Transactions and Upsert Profile.
This means:Every connector run creates new transactions.
Profiles are upserted (update or insert), meaning:
If a profile exists for the provided SNID (Social Network User ID), the transaction is linked to it.
If no matching profile exists, Sprinklr automatically creates a new one.
Operation Type for Profile Custom Fields
This controls how multi-select Profile Custom Fields are handled when profile data is updated:
Merge: Adds new values while keeping existing ones.
Set: Replaces all existing values with the new values from the connector.
Example:
If the field “Interests” is multi-select and currently contains “Fitness”, and your file sends “Travel”:Merge → “Fitness, Travel”
Set → “Travel”
Source Selection
Choose the source where your files will come from. Supported options are:
Amazon S3
Azure Blob Storage
Google Cloud Storage (GCS)
SFTP
File Upload

You must also provide a Connector Name (mandatory) and a short Description (optional).
Refer to Unified Data Connector documentation for additional details.
Source-Specific Settings
Based on the source you select, the next screen changes. For example, if you choose File Upload, you will, upload a sample file that defines the exact structure your connector will expect for all future runs (including identical headers).
You may update the sample file anytime, but this does not affect previously ingested transactions.
Mapping Configuration
On this screen, you map each column in your file to the correct Transaction Field or Profile Field.
The data connector identifies system-level mandatory fields, which must always be present. These are
First Name
Full Name
Last Name
Social Network
Social Network User Id
You may also mark additional fields as mandatory for this connector.
This does not make the field mandatory platform-wide.
It only ensures the connector fails if that value is missing in a given file.
You can also map Custom Fields on Transaction or Profile as required.
You may also apply validation rules, such as:
Email format validation
Phone number format validation
Custom regex checks

Custom Headers
You can transform or generate new fields using Groovy scripts. For example:
Combine first and last name: First Name + " " + Last Name
Hard-code a field: 'PremiumUser'
Insert the current timestamp:
A Groovy Library reference is available for advanced transformations.
Note: The socialNetwork field is mandatory and must indicate the channel associated with the audience profile (and the channel on which you plan to trigger the survey). In CFM context, this value needs to be be one of the following in uppercase:
EMAIL
SMS
WHATSAPP_BUSINESS
You can include this field directly in your Excel file, or you can hard-code it within CFM using a custom header. For example:
'EMAIL'
'SMS'
'WHATSAPP_BUSINESS'
Note on Transaction Fields Governance
Currently, transaction field availability is governed by the union of:
Global Custom Fields, and
Fields available to the associated survey project(s)(via “This Project” or “All Projects in Parent Program”)
These are governed by the associated projects on transaction group. This is relevant if you select multiple surveys, and each of them have their own specific custom fields.

If you selects a field on the mapping screen that is not available to one of the selected project(s), the data will still be ingested and stored — but will not be accessible in survey-level entities (Responses tab, Workflows, Placeholders, etc.) unless governance is properly updated. You can always update the governance.

Sharing & Notifications
On the final screen, you can:
Share the connector with selected Sprinklr users and define their access level.
Configure notifications for each connector run (for users you shared the connector with), including in-platform alerts or email notifications for success, failure, or validation warnings.

Once you click Save, the Data Connector is fully set up. You can return to the Transaction Group record manager to view it.
Select View Data Connector to open the connector details screen. From here, you can edit the connector, run it manually, or perform other actions similar to any platform-level Data Connector in Sprinklr.

Transaction Group: API
If you want to ingest transactions programmatically using the Create Transactions API, you must create a Transaction Group of type API. To do this, click Create Transaction Group, and you will see a form similar to the one shown below.

Enter the Transaction Group Name, choose API as the type, and select the Associated Survey(s) where this group should be available for use.
Only the surveys selected here will be able to use this Transaction Group for workflow triggers and personalized distributions.
Schema Configuration
API-based Transaction Groups include an additional field called Schema.
The Schema defines the maximum set of custom transaction fields that the API is permitted to send.
Key points:
If you add 10 custom fields to the Schema, the API can pass values for any or all of these 10 fields.
The API cannot pass a new, 11th custom fields value that is not included in the Schema; any such fields will be dropped.
If one of the defined Schema fields is not passed in the API payload, the ingestion will not fail — Sprinklr simply ignores & drops the extra custom field.
This ensures predictable payload structure and prevents accidental ingestion of unsupported metadata.
You can also configure Tags, Description and User Permissions. These behave the same way as they do for Import and UDC-based Transaction Groups.
After reviewing your Schema and associated surveys, click Save. You will be redirected to the Transaction Group Record Manager.

Save and Retrieve Transaction Group ID
To use this Transaction Group in your API calls, you must copy its Transaction Group ID:
Open the three-dot menu on the Transaction Group.
Click Copy ID.

This ID must be included in all Create Transactions API requests.
Refer to Create Transaction API Documentation for more details.