ProfitWell Cloud Mode Integration

Send events to ProfitWell using RudderStack Cloud mode.

Find the open source transformer code for this destination in the GitHub repository.

Connection compatibility

Destination info
  • Status: Generally Available
  • Supported sources: Android, iOS , Web, Unity, AMP , Cloud, React Native , Flutter, Cordova, Warehouse, Shopify
  • Refer to it as PROFITWELL in the Integrations object.

Connection modes
SourceCloud modeDevice modeHybrid mode
AMPsupportednot supportednot supported
Androidsupportednot supportednot supported
Cloudsupportednot supportednot supported
Cordovasupportednot supportednot supported
Fluttersupportednot supportednot supported
iOSsupportednot supportednot supported
React Nativesupportednot supportednot supported
Shopifysupportednot supportednot supported
Unitysupportednot supportednot supported
Warehousesupportednot supportednot supported
Websupportedsupportednot supported
Supported message types
SourceIdentifyPageTrackScreenGroupAlias
Cloud mode
Supported sourcessupportednot supportednot supportednot supportednot supportednot supported
Device mode
Websupportednot supportednot supportednot supportednot supportednot supported

Get started

Once you have confirmed that the source platform supports sending events to ProfitWell, follow the steps below:

  • From your RudderStack dashboard, add the source. From the list of destinations, select ProfitWell.
  • Assign a name to the destination, and click Next. You will then see the following Connection Settings window:
Profitwell connection settings

Connection Settings

To successfully configure ProfitWell as a Cloud Mode destination, enter the following connection settings:

  • Private API Key: Enter your ProfitWell private API key here. To obtain the Private API Key, log into your ProfitWell account. Then, navigate to the Account Settings - Integration option. Here, you can get your API key under API Keys/Dev Kit, as shown in the following image:
Profitwell API key
info
To send events to ProfitWell via cloud mode, you don’t need to enter the Public API Key.
  • Finally, click Next to complete the setup. ProfitWell should now be configured and enabled as a destination in RudderStack.

Identify

The identify call lets you create or update a subscription for a particular user.

A sample identify call is as shown:

rudderanalytics.identify(
  "user0001",
  {
    planId: "Starter",
    email: "axel@testmail.com",
    planInterval: "month",
    effectiveDate: 1630645519,
    planCurrency: "USD",
    subscriptionAlias: "starter_axel",
    value: "2000",
    name: "Axel Rose",
    age: 25,
    phone: "+911234665544",
  },
  {
    externalId: [
      { type: "profitwellSubscriptionId", id: "pws_psqfbi9zODBB" },
      { type: "profitwellUserId", id: "pws_MS2g4ON214dU" },
    ],
  }
);
info
RudderStack passes the fields profitwellUserId and profitwellSubscriptionId as externalId.
info

Note that:

  • The externalId of type profitwellUserId is mapped to ProfitWell’s user_id field.
  • The externalId of type profitwellSubscriptionId is mapped to ProfitWell’s subscription_id field.

Identify Mapping

This section lists the various criteria for mapping RudderStack fields to ProfitWell fields.

The following table lists all supported fields for Creating Subscriptions with their relative mapping to the ProfitWell fields:

RudderStack FieldProfitWell Field
userIduser_alias
subscriptionAliassubscription_alias
emailemail
planIdplan_id
planIntervalplan_interval
planCurrencyplan_currency
statusstatus
valuevalue
effectiveDateeffective_date

The following table lists all supported fields for Updating Subscriptions with their relative mapping to the ProfitWell fields:

RudderStack FieldProfitWell Field
planIdplan_id
planIntervalplan_interval
valuevalue
statusstatus
effectiveDateeffective_date
info
While creating a subscription, if effectiveDate is not provided in the identify call, then RudderStack takes the date from the event call’s timestamp/originalTimestamp.
info
For more information on using these fields, refer to the ProfitWell documentation.

RudderStack discards the identify event in the following two scenarios:

  • For a given profitwellUserId, a user account is not found in ProfitWell.
  • For a given profitWellUserId, a profitwellSubscriptionId is not found.
info
If you provide a userId(mapped to user_alias in ProfitWell) or a subscriptionAlias (mapped to subscription_alias) in the identify call, a new user subscription is created if it is not already present.

FAQ

Where do I get the API Key for ProfitWell?

To obtain your ProfitWell Private API Key, log into your ProfitWell dashboard. Navigate to the Account Settings - Integration option. Here, you can get your API key under API Keys/Dev Kit, as shown in the following image:

Profitwell API key

Questions? Contact us by email or on Slack