LogoLogo
  • Contributing to RudderStack
  • Destination_Name
  • LICENSE
  • RudderStack Docs
  • docs
    • FAQ
    • Identity Resolution
    • Home
    • cloud-extract-sources
      • ActiveCampaign Source
      • Bing Ads
      • Chargebee
      • Common Settings
      • Facebook Ads
      • Freshdesk
      • Google Ads Source
      • Google Analytics
      • Google Search Console
      • Google Sheets
      • Cloud Extract Sources
      • Intercom v2
      • Intercom
      • Mailchimp
      • Marketo
      • Mixpanel
      • NetSuite
      • Pipedrive
      • QuickBooks
      • Salesforce Pardot
      • Sendgrid Source
      • Stripe Source
      • Xero
      • Zendesk Chat
      • Zendesk
      • hubspot
        • HubSpot Data Model and Schema Information
        • HubSpot
      • salesforce
        • Salesforce
        • Schema Comparison: RudderStack vs. Segment
    • connections
      • Connection Modes: Cloud Mode vs. Device Mode
    • data-governance
      • Data Governance
      • RudderTyper
      • Data Governance API
      • RudderTyper
      • tracking-plans
        • Tracking Plans
        • Tracking Plan Spreadsheet
    • data-warehouse-integrations
      • Amazon Redshift
      • Azure Data Lake
      • Azure Synapse
      • ClickHouse
      • Databricks Delta Lake
      • Google Cloud Storage Data Lake
      • Google BigQuery
      • Identity Resolution
      • Warehouse Destinations
      • Microsoft SQL Server
      • PostgreSQL
      • Amazon S3 Data Lake
      • Snowflake
      • FAQ
      • Warehouse Schema
    • destinations
      • Destinations
      • Webhooks
      • advertising
        • Bing Ads
        • Criteo
        • DCM Floodlight
        • Facebook App Events
        • Facebook Custom Audience
        • Facebook Pixel
        • Google Ads (gtag.js)
        • Google AdWords Enhanced Conversions
        • Google Adwords Remarketing Lists (Customer Match)
        • Advertising
        • LinkedIn Insight Tag
        • Lotame
        • Pinterest Tag
        • Reddit Pixel
        • Snap Pixel
        • TikTok Ads
      • analytics
        • Amplitude
        • AWS Personalize
        • Chartbeat
        • Firebase
        • FullStory
        • Google Analytics 360
        • Google Analytics
        • Heap.io
        • Hotjar
        • Analytics
        • Indicative
        • Keen
        • Kissmetrics
        • Kubit
        • Lytics
        • Mixpanel
        • Pendo
        • PostHog
        • Quantum Metric
        • Singular
        • adobe-analytics
          • Adobe Analytics Heartbeat Measurement
          • Mobile Device Mode Settings
          • Web Device Mode Settings
          • E-commerce Events
          • Adobe Analytics
          • Setting Up Adobe Analytics in RudderStack
        • google-analytics-4
          • Cloud Mode
          • Device Mode
          • Google Analytics 4
          • Setting up Google Analytics 4
        • profitwell
          • ProfitWell
          • Cloud Mode
          • Device Mode
      • attribution
        • Adjust
        • AppsFlyer
        • Branch
        • Attribution
        • Kochava
        • TVSquared
      • business-messaging
        • Business Messaging
        • Intercom
        • Kustomer
        • Slack
        • Trengo
      • continuous-integration
        • Visual Studio App Center
        • Continuous Integration
      • crm
        • Delighted
        • HubSpot
        • CRM
        • Salesforce
        • Variance
        • Zendesk
      • customer-data-platform
        • Customer Data Platform
        • Segment
      • error-reporting
        • Bugsnag
        • Error Reporting
        • Sentry
      • marketing
        • ActiveCampaign
        • AdRoll
        • Airship
        • Appcues
        • Autopilot
        • Blueshift
        • Braze
        • CleverTap
        • Customer.io
        • Gainsight PX
        • Gainsight
        • Marketing
        • Iterable
        • Klaviyo
        • Leanplum
        • Mailchimp
        • Marketo Lead Import
        • Marketo
        • MoEngage
        • Ometria
        • Pardot
        • Post Affiliate Pro
        • Qualtrics
        • SendGrid
        • Salesforce Marketing Cloud
        • Userlist
        • drip
          • Cloud Mode
          • Device Mode
          • Drip
          • Setting Up Drip in RudderStack
      • productivity
        • Google Sheets
        • Productivity
      • storage-platforms
        • Amazon S3
        • DigitalOcean Spaces
        • Google Cloud Storage
        • Storage Platforms
        • Azure Blob Storage
        • MinIO
        • Redis
      • streaming-platforms
        • Amazon EventBridge
        • Amazon Kinesis Firehose
        • Amazon Kinesis
        • Azure Event Hubs
        • BigQuery Stream
        • Confluent Cloud
        • Google Pub/Sub
        • Streaming Platforms
        • Apache Kafka
      • tag-managers
        • Google Tag Manager
        • Tag Managers
      • testing-and-personalization
        • Algolia Insights
        • Candu
        • Google Optimize
        • A/B Testing & Personalization
        • LaunchDarkly
        • Monetate
        • Optimizely Full Stack
        • Optimizely Web
        • Split.io
        • Statsig
        • VWO (Visual Website Optimizer)
    • get-started
      • RudderStack Cloud vs. RudderStack Open Source
      • Glossary
      • Get Started
      • RudderStack Architecture
    • reverse-etl
      • Amazon Redshift
      • Amazon S3
      • ClickHouse
      • FAQ
      • Google BigQuery
      • Reverse ETL
      • PostgreSQL
      • Snowflake
      • common-settings
        • Importing Data using Models
        • Importing Data using Tables
        • Common Settings
        • Sync Modes
        • Sync Schedule
      • features
        • Airflow Provider
        • Features
        • Models
        • Visual Data Mapper
    • rudderstack-api
      • Data Regulation API
      • HTTP API
      • RudderStack API
      • Personal Access Tokens
      • Pixel API
      • Test API
      • api-specification
        • Application Lifecycle Events Specification
        • API Specification
        • Video Events Specification
        • rudderstack-ecommerce-events-specification
          • Browsing
          • Coupons
          • E-Commerce Events Specification
          • Ordering
          • Promotions
          • Reviewing
          • Sharing
          • Wishlist
        • rudderstack-spec
          • Alias
          • Common Fields
          • Group
          • Identify
          • RudderStack Event Specification
          • Page
          • Screen
          • Track
    • rudderstack-cloud
      • Audit Logs
      • Dashboard Overview
      • Destinations
      • RudderStack Cloud
      • Live Events
      • Connection Modes: Cloud Mode vs. Device Mode
      • Sources
      • Teammates (User Management)
      • connections
        • Adding a Destination
        • Connections
    • rudderstack-open-source
      • Control Plane Setup
      • RudderStack Open Source
      • installing-and-setting-up-rudderstack
        • Developer Machine Setup
        • Docker
        • Data Plane Setup
        • Kubernetes
        • Sending Test Events
    • stream-sources
      • App Center
      • AppsFlyer
      • Auth0
      • Braze
      • Customer.io
      • Extole
      • Event Stream Sources
      • Iterable
      • Looker
      • PostHog
      • Segment
      • Shopify
      • Webhook Source
      • rudderstack-sdk-integration-guides
        • Client-side Event Filtering
        • SDKs
        • AMP Analytics
        • Cordova
        • .NET
        • Go
        • Java
        • Node.js
        • PHP
        • Python
        • React Native
        • Ruby
        • Rust
        • Unity
        • SDK FAQs
        • rudderstack-android-sdk
          • Adding Application Class
          • Flushing Events Periodically
          • Android
        • rudderstack-flutter-sdk
          • Flutter SDK v1
          • Flutter v2
          • Flutter
        • rudderstack-ios-sdk
          • iOS
          • tvOS
          • watchOS
        • rudderstack-javascript-sdk
          • Data Storage in Cookies
          • Detecting Ad-blocked Pages
          • JavaScript
          • JavaScript SDK Enhancements
          • JavaScript SDK FAQs
          • Querystring API
          • Quick Start Guide
          • Version Migration Guide
          • consent-managers
            • Consent Managers
            • OneTrust
    • transformations
      • Access Token
      • FAQ
      • Transformations
      • Transformations API
    • user-guides
      • User Guides
      • administrators-guide
        • Troubleshooting Guide
        • Alerting Guide
        • Bucket Configuration Settings for Event Backups
        • Configuration Parameters
        • Event Replay
        • High Availability
        • Horizontal Scaling
        • Administrator's Guides
        • Infrastructure Provisioning
        • Monitoring and Metrics
        • Okta SSO Setup
        • OneLogin SSO Setup
        • RudderStack Grafana Dashboard
        • Software Releases
      • how-to-guides
        • How to Use Custom Domains
        • How to Develop Integrations for RudderStack
        • How to Configure a Destination via the Event Payload
        • How to Filter Events using Different Methods
        • How to Filter Selective Destinations
        • How to Submit a Pull Request for a New Integration
        • How-to Guides
        • How to Debug Live Destination Events
        • How to Use AWS Lambda Functions with RudderStack
        • create-a-new-destination-transformer-for-rudder
          • Best Practices for Coding Transformation Functions in JavaScript
          • How to Create a New Destination Transformation for RudderStack
        • implement-native-js-sdk-integration
          • How to Add a Device Mode SDK to RudderStack JavaScript SDK
          • How to Implement a Native JavaScript SDK Integration
        • rudderstack-jamstack-integration
          • How to Integrate RudderStack with Your JAMstack Site
          • How to Integrate Rudderstack with Your Angular App
          • How to Integrate Rudderstack with Your Astro Site
          • How to Integrate Rudderstack with Your Eleventy Site
          • How to Integrate Rudderstack with Your Ember.js App
          • How to Integrate Rudderstack with a Gatsby Website
          • How to Integrate Rudderstack with a Hugo Site
          • How to Integrate Rudderstack with Your Jekyll Site
          • How to Integrate Rudderstack with Your Next.js App
          • How to Integrate Rudderstack with Your Nuxt.js App
          • How to Integrate Rudderstack with Your Svelte App
          • How to Integrate Rudderstack with Your Vue App
      • migration-guides
        • Migrating from Blendo to RudderStack
        • Migrating Your Warehouse Destination from Segment to RudderStack
        • Migration Guides
        • Migrating from Segment to RudderStack
  • src
    • @rocketseat
      • gatsby-theme-docs
        • text
          • Home
Powered by GitBook
On this page
  • Getting Started
  • Connection Settings
  • Identify
  • Identify Mapping
  • Track
  • Ometria Custom Event
  • E-Commerce Events
  • Track Orders Mapping
  • FAQ
  • How do I get the Ometria API Key?
  • Contact Us

Was this helpful?

  1. docs
  2. destinations
  3. marketing

Ometria

Step-by-step guide to set up Ometria as a destination in RudderStack.

PreviousMoEngageNextPardot

Last updated 3 years ago

Was this helpful?

is a customer data and marketing platform. It leverages AI-powered insights and cross-channel marketing to help you create personalized experiences for your customers throughout their product journey.

RudderStack supports Ometria as a destination to which you can seamlessly send your customer data.

Getting Started

Before configuring Ometria as a destination in RudderStack, verify if the source platform is supported by Ometria by referring to the table below:

Connection Mode

Web

Mobile

Server

Device mode

-

-

-

Cloud mode

Supported

Supported

Supported

To know more about the difference between Cloud mode and Device mode in RudderStack, read the guide.

Once you have confirmed that your source platform supports sending events to Ometria, follow these steps:

  • From your , add the source. From the list of destinations, select Ometria.

  • Assign a name to the destination and click on Next. You should then see the following screen:

Ometria

Connection Settings

This section details the connection settings required to configure Ometria as a destination in RudderStack.

  • Enter your Ometria API Token.

To get the Ometria API token, go to your your Ometria dashboard and navigate to Settings - API Keys. Then, click on New API Key.

  • Under Contact Settings, you can choose the Marketing Optin status from the dropdown list. By default, it is set to Explicitly Opted Out. The different options are:

    • Explicitly Opted In: The customer is eligible for marketing

    • Explicitly Opted Out: The customer is not eligible for marketing

    • Not Specified: No option is specified

You can also pass this value in the identify call - refer to the Identify section below for more details. Note that the value set via the identify call will have a higher precedence.

  • Under SMS Channel Settings, you can enable Allow Marketing. This setting determines whether the contact is opted in or out for SMS marketing. By default, it is disabled.

  • Allow Transactional: Enabling or disabling this setting determines if the contact is opted in or out for transactional SMSes. By default, it is disabled.

You can additionally set the values for Allow Marketing and Allow Transactional via the identify call - refer to the Identify section below for more details. Note that the value set via the identify call will have a higher precedence.

  • Finally, click on Next. Ometria will now be enabled as a destination in RudderStack.

Identify

The identify call lets you add a new contact or update an already existing contact in Ometria.

Note that listingId and email fields are the mandatory fields for the identify call.

You can set the values for the Marketing Optin, Allow Marketing, and Allow Transactional fields from RudderStack dashboard. You can also send these values using an integrations object in the identify event payload, which will have higher precedence. The SMS channel fields dt_updated_marketing and dt_updated_transactional can also be passed using this object.

The listingId is the ID specific to a contact in a particular Ometria collection. Note that the listingId specified in the integrations object will have a higher precedence than the one present in the traits.

A sample identify call is as shown:

rudderanalytics.identify(
  "userId",
  {
    listingId: "listingId123",
    email: "sampleuser@testmail.com",
    firstName: "Demo",
    lastName: "Example",
    phoneNumber: "+123451212260",
    custom_fields: {
      field1: "val1",
    }
  },
  {
    integrations: {
      Ometria: {
        marketingOptin: "EXPLICITLY_OPTEDIN",
        allow_marketing: true,
        allow_transactional: true,
      }
    }
  }
);

A few things to keep in mind while making the identify call:

  • The custom_fields are mapped to the properties and will be the used in the track call too.

  • If custom_fields is not provided, then RudderStack will create that object with extra fields. Note that these fields must be different from the ones mentioned in the mapping list mentioned in the Identify Mapping section below, i.e, the non-default fields.

Identify Mapping

The following table includes all identify fields with their relative mapping to the Ometria fields:

RudderStack Field

Ometria Field

userId / anonymousId

customer_id

email

email

listingId

id

firstName/first_name/firstname

firstname

middleName/ middle_name / middlename

middlename

lastName/last_name/lastname

lastname

phoneNumber

phone_number

collection

@collection

prefix

prefix

dateOfBirth

date_of_birth

countryId

country_id

timezone

timezone

timestampAcquired

timestamp_acquired

timestampSubscribed

timestamp_subscribed

timestampUnsubscribed

timestamp_unsubscribed

storeIds

store_ids

gender

gender

removeFromLists

@remove_from_lists

addToLists

@add_to_lists

custom_fields

properties

forceOptin

@force_optin

merge

@merge

In addition to the above fields, the customer name can also be sent using the name field. If the name consists of two words, then firstname and lastname will be automatically set.

Track

The track call lets you send custom events to Ometria. Note that track also supports the E-Commerce events and sends them using the Ometria Order Object.

Note that userId and email are the mandatory fields for the track call. event_id is required for custom events. If not provided, RudderStack will populate the field with messageId.

A sample track call for a custom event is as shown:

rudderanalytics.track("Sample Event", {
  event_id: "sample123",
  timestamp: "2017-05-01T14:00:00Z",
  profile_id: "sample",
  custom_fields: {
    field1: "val1",
  },
});

A few things to note:

  • The event name must be provided in the track call.

  • The custom_fields property is mapped to the properties object in Ometria. If it is not provided, the non-default Ometria fields will be taken as custom fields.

Ometria Custom Event

The following table includes all the RudderStack fields set as custom events in the track call, with their relative mapping to the Ometria fields:

RudderStack Field

Ometria Field

event_id

id

timestamp

timestamp

custom_fields

properties

profile_id

profile_id

email

identity_email

userId / anonymousId

identity_account_id

E-Commerce Events

The track call also lets you record order-related information like order_id, grandtotal, timestamp, currency, etc.

RudderStack will create a customer object with userId, email, firstname and lastname from context.traits.

Note that order_id, timestamp, grand_total and currency are the mandatory fields for the orders event, while userId and email are required for customer object. You can pass email either via the identify call or the track call's properties.

The supported order E-Commerce events are as listed below:

  • order completed / complete/ order complete

  • order shipped / shipped

  • order pending / pending

A sample track call for an E-Commerce order event is as shown:

rudderanalytics.track("order completed", {
  order_id: "order1",
  timestamp: "2017-05-01T14:00:00Z",
  currency: "usd",
  grand_total: 1,
  field1: "val1",
  products: [
    {
      product_id: "prod123",
      quantity: 4,
      subtotal: 10,
      variant_options:[
        {
          type: "size",
          id: "newid",
          label: "5"
        }
      ]
    }
  ]
});

A few things to note:

  • If custom_fields is not provided, the non-default fields are taken as custom fields. In the above example, field1 will be mapped as a custom_fields.

  • The products field is not mandatory. However, if provided, each object should contain product_id, quantity, and either subtotal or unit_price. If either of these fields are absent, then that object will be dropped and the track call will be made.

  • RudderStack will set the status field according to the event name. For instance, if event name is order pending status will be set to pending.

Track Orders Mapping

The following table includes all the fields in track call for E-Commerce orders, with their relative mapping to the Ometria fields:

RudderStack Field

Ometria Field

order_id

id

timestamp

timestamp

grand_total

grand_total

subtotal

subtotal

discount

discount

shipping

shipping

tax

tax

currency

currency

web_id

web_id

ip_address

ip_address

channel

channel

store

store

payment_method

payment_method

shipping_method

shipping_method

shipping_address

shipping_address

billing_address

billing_address

coupon_code

coupon_code

custom_fields

properties

products

lineitems

shipping_address and billing_address should be an object.

Note that products is an array of objects. Every object in this array can contain the following fields:

RudderStack Field

Ometria Field

product_id

product_id

variant_id

variant_id

quantity

quantity

sku

sku

unit_price

unit_price

quantity_refunded

quantity_refunded

refunded

refunded

subtotal

subtotal

tax

tax

total

total

discount

discount

is_on_sale

is_on_sale

totals

totals

properties

properties

variant_options

variant_options

Note that variant_options listed above is an array of objects. It is not a mandatory field. However, if provided, each object in this array must contain the following fields:

RudderStack Field

Ometria Field

id

id

type

type

label

label

FAQ

How do I get the Ometria API Key?

To get the Ometria API token, go to your your Ometria dashboard and navigate to Settings - API Keys. Then, click on New API Key.

Contact Us

For more information on the identify call, refer to the guide.

The phoneNumber field must follow the format. Otherwise, it will be set to null.

Inside the integrations object, you can additionally send two timestamps - dt_updated_marketing and dt_updated_transactional. These timestamps must follow the format.

The timestamp field follows the format. If it is not specified in the correct format, the call will be dropped - i.e., not be sent to Ometria.

Ometria requires the currency field to follow the format. If it is invalid, the event will be dropped.

The field is_valid is always set to true. For more information on how to use this field, refer to this .

If you come across any issues while configuring or using Ometria with RudderStack, you can or start a conversation in our community.

RudderStack Events Specification
E.164
ISO-8601
ISO-8601
ISO 4217
example
contact us
Slack
Ometria
RudderStack connection modes
RudderStack dashboard
Ometria