The Campaign Builder walks you through 4 steps to configure a campaign: Details, Schedule, Flows, and Goals. Navigate between steps using the step indicator at the top of the modal. Campaigns are saved as drafts until you complete all steps and click Save Campaign.
Set up your campaign name, type, description, and icon.In this section you can view or configure the following parameters:
Parameter
Description
Possible values
ID
The unique system-generated identifier for this campaign. This identifier will be used by the integrating partner when calling the Benji API to interact with the campaign.
A system-generated number. This value is Read Only
Name
A descriptive name for the campaign. This name will be displayed by default on all relevant Benji Drop-In Components related to this campaign
In this section you can configure the distinct campaign type for this campaign.The Benji Platform supports 4 different campaign types:
Earn Points: A campaign that, once triggered and if the configured conditions are met, distributes points to the connected user based on the base points distribution amount and any multipliers associated with the specific connected user.
Redeem: A campaign that, once triggered and if the configured conditions are met, allows the connected member to redeem points to use to purchase items (or partial items) on the partner’s online store.
Transfer: A campaign that allows connected members to transfer points between their loyalty program account and a partner’s program. Operators configure a transfer conversion rate and transfer increments so members transfer in set multiples (for example, 1,000 points at a time).
Connect Only: A status sharing only campaign, meant to connect member data between your and your partner’s accounts. In this campaign type there is no movement of points to or from members.
Set who earns, how they earn, and what they earn for your campaign.A campaign can have multiple flows. Each flow defines a separate trigger and its associated configuration. Use the left sidebar to add and switch between flows. Each flow consists of the following configurable sections:
The trigger is the user action that qualifies a member for the campaign. Once a trigger fires, the Benji Platform triggers a rule engine to validate the conditions associated with the flow, and distributes rewards if all conditions are met.The following trigger types are supported:
Spend Per Dollar: Triggered on a transaction event on the partner’s store.
Registration: Triggered when a member registers on the partner store and connects their account through the Benji platform to your loyalty program.
Customer Referral: Triggered when a connected member makes a successful referral on the partner store.
Custom Action: A custom action that can be triggered from anywhere on the partner’s store. This is meant for use cases that are not yet natively supported by the platform and provides flexibility to create any type of campaign using Benji’s APIs.
Triggers are especially useful when used in conjunction with Benji Drop-In components. The drop-in components can automatically render on the partner’s online store based on these triggers and their respective placement.
Points per dollar spent: This numeric value represents the base value of a transaction with your points. For Earn type campaigns, this represents the base value of how many reward points the connected member will be earning for every dollar spent. For Redeem type campaigns, this value represents the base amount of dollars each reward point is worth on the partner’s store. This value will not be displayed for Connect Only type campaigns.
In this section you can configure the base actions that will occur when a trigger happens and the relevant conditions are met.You can configure multiple actions per campaign.
A common example of a campaign with multiple actions is receiving rewards from both partners. For instance, earn 2 reward points from Partner A and 3 reward points from Partner B for every transaction.
For each action, you can specify the action itself, which partner controls the action (if applicable), and the base conversion rate of the action:
When configuring an action, you will only be able to set your own organization as the owner of the action. If there is another partner, they will be able to do the same. The actions owned by the other partner will be visible in read-only mode on your account.
Action
Show Action
Possible values of actions to perform:
Award Points/Redeem Points: Depending on whether the campaign is an Earn or Redeem type campaign
Award Cashback: If applicable and configured in your settings, enables earning cashback for a trigger on the user’s account.
PartnerThe partner owning this action. This will be automatically filled in based on who is editing/creating the campaign.Conversion Rate
Show Conversion Rate
The base value of conversion of the action:
Reward Distribution Value: A number representing the value of the conversion (e.g. 3 reward points per dollar spent)
The conversion rate configured in this section is the base conversion rate. Any configured multipliers will take effect based on the conversion rates defined in this section.
GiftableFor a Redeem action that fulfills a perk, you can mark the offer as giftable. When an offer is giftable, members redeeming it in the Redemption Portal can send it as a gift to someone else, entering a recipient name and email at checkout. When it is not giftable, no gift option appears for that offer.
In this section you can configure the conditions associated with a valid campaign trigger. When a trigger is met, the Benji Platform will validate the conditions configured on the campaign, and will approve and initiate the campaign transaction only if the conditions are met.
Conditions are evaluated at the point of the eligibility check, either when a member links their account or when a transaction occurs. When no conditions are configured, all members qualify.
Conditions are organized into groups. Each group contains one or more conditions and has its own logic type, set using the toggle in the top right corner of the group:
Any (OR): The member needs to meet at least one condition in the group
All (AND): The member needs to meet every condition in the group
The description on the left side of the group updates to reflect the active logic. New groups default to Any (OR).The first condition in a group is preceded by a When label. Each condition after it is preceded by an and or or label matching the group’s logic type.You can configure any number of groups. Groups always combine with AND logic at the top level, meaning a member needs to satisfy every group to qualify.To build your logic, use Add Condition inside a group to add a row to that group, and Add Group below the groups to add a new group. The delete control on a row removes that condition. Removing the last condition in a group removes the group.For each condition, you can specify the attribute, an operator, and a value. The following attributes and their respective operators and values are supported:Customer Geography
Show Customer Geography
Will only be valid if the user meets the geographical condition.
Operators: Is In or Is Not In
Values: Countries, US cities
Customer Total Spend
Show Customer Total Spend
Will only be valid if the user has exceeded a total spend amount since they connected their account. For instance, if the campaign distributes a certain amount of reward points after the member has purchased over $1000 in goods.
Operators: Greater Than
Values: Numeric amount
Transaction Basket Size
Show Basket Size
Will only be valid if a member is making a purchase over or under a certain amount.
Operators: Greater Than, Less Than
Values: Numeric amount
Time Elapsed
Show Time Elapsed
Will only be valid if a defined amount of time has passed since they connected their accounts.
Operators: Greater Than, Less Than
Values: A time period (e.g. 1 day, 2 weeks, 3 months, etc.)
Custom Attributes
Show Custom Attributes
Will only be valid if the member’s custom attribute value meets the condition. Custom attributes are configured on the Partner Settings page and are listed by their attribute name.
In this section you can configure certain conditions under which a certain member would get a multiplier boost on their earned or redeemed rewards for a specific transaction.For Earn type campaigns, this means the member, if the condition is met, will earn a multiplier on the base Points earned per dollar variable configured in the triggers section.For Redeem type campaigns, this means the member will get a multiplier on the conversion rate per dollar defined in the triggers section above.
You can configure a limitless number of multipliers per campaign. For each multiplier, you can specify the multiplier amount, a customer attribute to validate (the condition) and the corresponding value of the customer attribute to validate. The following customer attributes are supported:Customer Status
Show Customer Status
Will only be valid if the user is of a certain status.
Operators: Is In or Is Not In
Values: Any one of your loyalty program’s status tiers configured in the Benji Platform.
Variable Attributes
Show Variable Attributes
You can create multipliers based on any attribute returned as part of the Benji Platform integration with your platform. A typical example would be Card Member status, # of total rewards earned throughout their membership, etc.
Operators: Is In or Is Not In
Values: Configurable values based on the variable attribute possible values configured in the settings section of the Benji Platform.
In this section you can configure limits to control how frequently members can qualify for rewards and the maximum value they can earn or redeem.
Limits set boundaries on transaction values, member qualification frequency, and total rewards. You can set transaction minimums to ensure meaningful engagement, cap total rewards per user, or limit qualification frequency to control the pacing of your campaigns.You can configure multiple limits per campaign. The following limit types are supported:Transaction Limits
Show Transaction Limits
Controls the minimum or maximum value allowed per individual transaction.
Operators: Minimum, Maximum
Values: Numeric amount (points or dollars depending on campaign type)
User Limits
Show User Limits
Controls the maximum number of qualifying events or total points a user can accumulate within a specified time period.
Operators: Maximum
Units: Qualifying events or Points
Values: Numeric amount
Time Period: Per day, per week, per month, per quarter, per year, or lifetime
Set primary goals for your campaign. Benji will track progress against these goals, which you can view in the Analytics page when filtering by campaign.The Benji platform supports setting the following built-in goals:Registrations
Hide Registrations
Specifies a goal of reaching or exceeding a certain number of new registrations as a result of the partnership
Points Earned
Hide Points Earned
Specifies a number representing the total amount of reward points earned throughout the campaign
Points Redeemed
Hide Points Redeemed
Specifies a number representing the total amount of reward points redeemed throughout the campaign
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Benji","colors":{"primary":"#9900ff","light":"#07C983","dark":"#0D9373"},"logo":{"light":"https://mintcdn.com/benji/E3tFqos-Cc64Y5MH/logo/benji-docs-logo.svg?fit=max\u0026auto=format\u0026n=E3tFqos-Cc64Y5MH\u0026q=85\u0026s=60b7d848ffe4ab0c66efcfcbf573e3be","dark":"https://mintcdn.com/benji/E3tFqos-Cc64Y5MH/logo/benji-docs-logo.svg?fit=max\u0026auto=format\u0026n=E3tFqos-Cc64Y5MH\u0026q=85\u0026s=60b7d848ffe4ab0c66efcfcbf573e3be"},"favicon":"https://mintcdn.com/benji/E3tFqos-Cc64Y5MH/favicon.svg?fit=max\u0026auto=format\u0026n=E3tFqos-Cc64Y5MH\u0026q=85\u0026s=0d4db635c5349274277a1e3f4575d6c3","api":{"mdx":{"auth":{"method":"key","name":"x-api-key"},"server":["https://mintlify.com/api","https://mintlify.com/api2"]}},"appearance":{"default":"light","strict":true},"navbar":{"links":[{"href":"mailto:support@withbenji.com","label":"Support"}],"primary":{"type":"button","label":"Go to Pilot","href":"https://pilot-staging.withbenji.com/login"}},"footer":{"socials":{"website":"https://withbenji.com"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"benji","hasAudioNarration":false,"actualSubdomain":"benji","customDomains":["docs.withbenji.com"],"gitSource":{"type":"github","owner":"benji-money","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"thumbs":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6adfb18f141a85a6119e97a5","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"default","tag":"Platform","count":13},{"language":"default","tag":"Benji Integrations","count":12},{"language":"default","tag":"Pilot","count":11},{"language":"default","tag":"API Reference","count":9},{"language":"default","tag":"Benji Connect","count":8},{"language":"default","tag":"Partnerships","count":5},{"language":"default","tag":"Benji Connect SDK","count":4},{"language":"default","tag":"Square","count":4},{"language":"default","tag":"Webhooks","count":3},{"language":"default","tag":"Getting Started","count":3}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"pilot/campaign","slug":"/pilot/campaign","pageMetadata":{"title":"Campaign Settings Page","description":"Control all of your campaign settings","sidebarTitle":"Campaign Settings","icon":"sliders","href":"/pilot/campaign"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Control all of your campaign settings\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Expandable,Frame,Heading,OptimizedImage,Table,Tip}=_components;if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`The Campaign Builder walks you through 4 steps to configure a campaign: Details, Schedule, Flows, and Goals. Navigate between steps using the step indicator at the top of the modal. Campaigns are saved as drafts until you complete all steps and click Save Campaign.`}),`\n`,_jsx(Heading,{level:`2`,id:`step-1-details`,children:`Step 1: Details`}),`\n`,_jsx(_components.p,{children:`Set up your campaign name, type, description, and icon.`}),`\n`,_jsx(_components.p,{children:`In this section you can view or configure the following parameters:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Parameter`}),_jsx(_components.th,{children:`Description`}),_jsx(_components.th,{children:`Possible values`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`ID`})}),_jsx(_components.td,{children:`The unique system-generated identifier for this campaign. This identifier will be used by the integrating partner when calling the Benji API to interact with the campaign.`}),_jsxs(_components.td,{children:[`A system-generated number. This value is `,_jsx(_components.strong,{children:`Read Only`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Name`})}),_jsx(_components.td,{children:`A descriptive name for the campaign. This name will be displayed by default on all relevant Benji Drop-In Components related to this campaign`}),_jsx(_components.td,{})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Description`})}),_jsx(_components.td,{children:`A description for this campaign.`}),_jsx(_components.td,{})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Icon`})}),_jsx(_components.td,{children:`An image to associate with this specific campaign`}),_jsx(_components.td,{children:`A JPG, JPEG, PNG or SVG image`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`campaign-type`,children:`Campaign Type`}),`\n`,_jsx(_components.p,{children:`In this section you can configure the distinct campaign type for this campaign.`}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/benji/8jCEXVh7QRGNAjKz/images/Campaign_type.png?fit=max\u0026auto=format\u0026n=8jCEXVh7QRGNAjKz\u0026q=85\u0026s=01561ec82d7887ab9cdcfb05e822f1fb`,alt:`Campaign Type`,\"data-og-width\":`694`,width:`694`,\"data-og-height\":`242`,height:`242`,\"data-path\":`images/Campaign_type.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/benji/8jCEXVh7QRGNAjKz/images/Campaign_type.png?w=280\u0026fit=max\u0026auto=format\u0026n=8jCEXVh7QRGNAjKz\u0026q=85\u0026s=fdf99bb1abf02b647332650af039e213 280w, https://mintcdn.com/benji/8jCEXVh7QRGNAjKz/images/Campaign_type.png?w=560\u0026fit=max\u0026auto=format\u0026n=8jCEXVh7QRGNAjKz\u0026q=85\u0026s=1c7f4bdffb9cb7ce9ed463df1e60b991 560w, https://mintcdn.com/benji/8jCEXVh7QRGNAjKz/images/Campaign_type.png?w=840\u0026fit=max\u0026auto=format\u0026n=8jCEXVh7QRGNAjKz\u0026q=85\u0026s=5b74c478b15827cca69e262135f1f691 840w, https://mintcdn.com/benji/8jCEXVh7QRGNAjKz/images/Campaign_type.png?w=1100\u0026fit=max\u0026auto=format\u0026n=8jCEXVh7QRGNAjKz\u0026q=85\u0026s=f590284670a307f24ec09d667d0aaec5 1100w, https://mintcdn.com/benji/8jCEXVh7QRGNAjKz/images/Campaign_type.png?w=1650\u0026fit=max\u0026auto=format\u0026n=8jCEXVh7QRGNAjKz\u0026q=85\u0026s=54f5ca6387f243a373083171932d2b01 1650w, https://mintcdn.com/benji/8jCEXVh7QRGNAjKz/images/Campaign_type.png?w=2500\u0026fit=max\u0026auto=format\u0026n=8jCEXVh7QRGNAjKz\u0026q=85\u0026s=bf8e24724a42baa4c1bbacd83e0c1f1d 2500w`}),`\n`,_jsx(_components.p,{children:`The Benji Platform supports 4 different campaign types:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Earn Points`}),`: A campaign that, once triggered and if the configured conditions are met, distributes points to the connected user based on the base points distribution amount and any multipliers associated with the specific connected user.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Redeem`}),`: A campaign that, once triggered and if the configured conditions are met, allows the connected member to redeem points to use to purchase items (or partial items) on the partner’s online store.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Transfer`}),`: A campaign that allows connected members to transfer points between their loyalty program account and a partner’s program. Operators configure a transfer conversion rate and transfer increments so members transfer in set multiples (for example, 1,000 points at a time).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Connect Only`}),`: A status sharing only campaign, meant to connect member data between your and your partner’s accounts. In this campaign type there is no movement of points to or from members.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`step-2-schedule`,children:`Step 2: Schedule`}),`\n`,_jsx(_components.p,{children:`Set when the campaign goes live.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Parameter`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Description`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Possible values`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{style:{textAlign:`left`},children:[_jsx(_components.strong,{children:`Start Date`}),` date`]}),_jsx(_components.td,{style:{textAlign:`left`},children:`The date the campaign activates.`}),_jsx(_components.td,{style:{textAlign:`left`},children:`A valid future date`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{style:{textAlign:`left`},children:[_jsx(_components.strong,{children:`End Date`}),` date`]}),_jsx(_components.td,{style:{textAlign:`left`},children:`The date the campaign automatically ends. Not mandatory.`}),_jsx(_components.td,{style:{textAlign:`left`},children:`A valid future date after the start date`})]})]})]}),`\n`,_jsx(_components.p,{children:`Note that an end date is not mandatory. Campaigns without an end date will be evergreen until paused.`}),`\n`,_jsx(Heading,{level:`2`,id:`step-3-flows`,children:`Step 3: Flows`}),`\n`,_jsx(_components.p,{children:`Set who earns, how they earn, and what they earn for your campaign.`}),`\n`,_jsx(_components.p,{children:`A campaign can have multiple flows. Each flow defines a separate trigger and its associated configuration. Use the left sidebar to add and switch between flows. Each flow consists of the following configurable sections:`}),`\n`,_jsx(Heading,{level:`3`,id:`campaign-trigger`,children:`Campaign Trigger`}),`\n`,_jsx(_components.p,{children:`The trigger is the user action that qualifies a member for the campaign. Once a trigger fires, the Benji Platform triggers a rule engine to validate the conditions associated with the flow, and distributes rewards if all conditions are met.`}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_trigger.png?fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=2302d33535487395843323ddb5972df1`,alt:`title`,\"data-og-width\":`849`,width:`849`,\"data-og-height\":`441`,height:`441`,\"data-path\":`images/pilot/campaign_trigger.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_trigger.png?w=280\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=5fb012148cc825e1d5335a0fc1e91aa6 280w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_trigger.png?w=560\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=4eab4acfcba2b09031ca7db6d508686a 560w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_trigger.png?w=840\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=d951a06a70bc1d106321909d9b43965d 840w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_trigger.png?w=1100\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=b28b9a784acb1a0f6f9625c0ca645412 1100w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_trigger.png?w=1650\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=02c647e30bdf8a8cd132d974f05bebab 1650w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_trigger.png?w=2500\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=b22f40c52fa6b87b74bcbc82b4b81ad1 2500w`}),`\n`,_jsx(_components.p,{children:`The following trigger types are supported:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Spend Per Dollar`}),`: Triggered on a transaction event on the partner’s store.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Registration`}),`: Triggered when a member registers on the partner store and connects their account through the Benji platform to your loyalty program.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Customer Referral`}),`: Triggered when a connected member makes a successful referral on the partner store.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Custom Action`}),`: A custom action that can be triggered from anywhere on the partner’s store. This is meant for use cases that are not yet natively supported by the platform and provides flexibility to create any type of campaign using Benji’s APIs.`]}),`\n`]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Triggers are especially useful when used in conjunction with Benji Drop-In components. The drop-in components can automatically render on the partner’s online store based on these triggers and their respective placement.`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Points per dollar spent`}),`: This numeric value represents the base value of a transaction with your points. For Earn type campaigns, this represents the base value of how many reward points the connected member will be earning for every dollar spent. For Redeem type campaigns, this value represents the base amount of dollars each reward point is worth on the partner’s store. This value will not be displayed for Connect Only type campaigns.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`campaign-actions`,children:`Campaign Actions`}),`\n`,_jsx(_components.p,{children:`In this section you can configure the base actions that will occur when a trigger happens and the relevant conditions are met.`}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/benji/Jtw9mXNwgH1TS1Mo/images/Screenshot2026-02-04at11.08.31AM.png?fit=max\u0026auto=format\u0026n=Jtw9mXNwgH1TS1Mo\u0026q=85\u0026s=b6ebc8f0e0f6253c5f4fc65f90758e75`,alt:`title`,\"data-og-width\":`1464`,width:`1464`,\"data-og-height\":`290`,height:`290`,\"data-path\":`images/Screenshot2026-02-04at11.08.31AM.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/benji/Jtw9mXNwgH1TS1Mo/images/Screenshot2026-02-04at11.08.31AM.png?w=280\u0026fit=max\u0026auto=format\u0026n=Jtw9mXNwgH1TS1Mo\u0026q=85\u0026s=7275cc6bac560c0c47c873a23df75c82 280w, https://mintcdn.com/benji/Jtw9mXNwgH1TS1Mo/images/Screenshot2026-02-04at11.08.31AM.png?w=560\u0026fit=max\u0026auto=format\u0026n=Jtw9mXNwgH1TS1Mo\u0026q=85\u0026s=ae1eb283468259e97ebc814999061591 560w, https://mintcdn.com/benji/Jtw9mXNwgH1TS1Mo/images/Screenshot2026-02-04at11.08.31AM.png?w=840\u0026fit=max\u0026auto=format\u0026n=Jtw9mXNwgH1TS1Mo\u0026q=85\u0026s=ab99b4a6ae4cb65fb75ac8719f92a914 840w, https://mintcdn.com/benji/Jtw9mXNwgH1TS1Mo/images/Screenshot2026-02-04at11.08.31AM.png?w=1100\u0026fit=max\u0026auto=format\u0026n=Jtw9mXNwgH1TS1Mo\u0026q=85\u0026s=e122b5223973815f3a4512df4665ecaf 1100w, https://mintcdn.com/benji/Jtw9mXNwgH1TS1Mo/images/Screenshot2026-02-04at11.08.31AM.png?w=1650\u0026fit=max\u0026auto=format\u0026n=Jtw9mXNwgH1TS1Mo\u0026q=85\u0026s=d54256bc4633570e551683dd573818ee 1650w, https://mintcdn.com/benji/Jtw9mXNwgH1TS1Mo/images/Screenshot2026-02-04at11.08.31AM.png?w=2500\u0026fit=max\u0026auto=format\u0026n=Jtw9mXNwgH1TS1Mo\u0026q=85\u0026s=1fad65725b1a8f90f0504faabd53d01b 2500w`}),`\n`,_jsx(_components.p,{children:`You can configure multiple actions per campaign.`}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`A common example of a campaign with multiple actions is receiving rewards from both partners. For instance, earn 2 reward points from Partner A and 3 reward points from Partner B for every transaction.`})}),`\n`,_jsxs(_components.p,{children:[`For each action, you can specify the action itself, which partner controls the action (if applicable), and the `,_jsx(_components.strong,{children:`base`}),` conversion rate of the action:`]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`When configuring an action, you will only be able to set your own organization as the owner of the action. If there is another partner, they will be able to do the same. The actions owned by the other partner will be visible in read-only mode on your account.`})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Action`})}),`\n`,_jsxs(Expandable,{title:`Action`,children:[_jsx(_components.p,{children:`Possible values of actions to perform:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Award Points/Redeem Points`}),`: Depending on whether the campaign is an Earn or Redeem type campaign`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Award Cashback`}),`: If applicable and configured in your settings, enables earning cashback for a trigger on the user’s account.`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Partner`})}),`\n`,_jsx(_components.p,{children:`The partner owning this action. This will be automatically filled in based on who is editing/creating the campaign.`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Conversion Rate`})}),`\n`,_jsxs(Expandable,{title:`Conversion Rate`,children:[_jsx(_components.p,{children:`The base value of conversion of the action:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Reward Distribution Value`}),`: A number representing the value of the conversion (e.g. `,_jsx(_components.strong,{children:`3 reward points per dollar spent`}),`)`]}),`\n`]})]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`The conversion rate configured in this section is the `,_jsx(_components.strong,{children:`base`}),` conversion rate. Any configured multipliers will take effect based on the conversion rates defined in this section.`]})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Giftable`})}),`\n`,_jsx(_components.p,{children:`For a Redeem action that fulfills a perk, you can mark the offer as giftable. When an offer is giftable, members redeeming it in the Redemption Portal can send it as a gift to someone else, entering a recipient name and email at checkout. When it is not giftable, no gift option appears for that offer.`}),`\n`,_jsx(Heading,{level:`3`,id:`campaign-conditions`,children:`Campaign Conditions`}),`\n`,_jsx(_components.p,{children:`In this section you can configure the conditions associated with a valid campaign trigger. When a trigger is met, the Benji Platform will validate the conditions configured on the campaign, and will approve and initiate the campaign transaction only if the conditions are met.`}),`\n`,_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/benji/oeyLGNuqv-h31IRO/images/Screenshot-2026-07-28-at-5.47.28-PM.png?fit=max\u0026auto=format\u0026n=oeyLGNuqv-h31IRO\u0026q=85\u0026s=96be7d3679941caafb9ec8813c14cca3`,alt:`Screenshot 2026 07 28 At 5 47 28 PM`,\"data-og-width\":`861`,width:`861`,\"data-og-height\":`797`,height:`797`,\"data-path\":`images/Screenshot-2026-07-28-at-5.47.28-PM.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/benji/oeyLGNuqv-h31IRO/images/Screenshot-2026-07-28-at-5.47.28-PM.png?w=280\u0026fit=max\u0026auto=format\u0026n=oeyLGNuqv-h31IRO\u0026q=85\u0026s=7e7133fb4f87fa9132ab961aaae26f2c 280w, https://mintcdn.com/benji/oeyLGNuqv-h31IRO/images/Screenshot-2026-07-28-at-5.47.28-PM.png?w=560\u0026fit=max\u0026auto=format\u0026n=oeyLGNuqv-h31IRO\u0026q=85\u0026s=ae016c4c791901d1625a5c2911611514 560w, https://mintcdn.com/benji/oeyLGNuqv-h31IRO/images/Screenshot-2026-07-28-at-5.47.28-PM.png?w=840\u0026fit=max\u0026auto=format\u0026n=oeyLGNuqv-h31IRO\u0026q=85\u0026s=28bc4c237a100c93587a0656e9a44dd7 840w, https://mintcdn.com/benji/oeyLGNuqv-h31IRO/images/Screenshot-2026-07-28-at-5.47.28-PM.png?w=1100\u0026fit=max\u0026auto=format\u0026n=oeyLGNuqv-h31IRO\u0026q=85\u0026s=4c5d0b8cdd829248d7bde8573bc1c0cd 1100w, https://mintcdn.com/benji/oeyLGNuqv-h31IRO/images/Screenshot-2026-07-28-at-5.47.28-PM.png?w=1650\u0026fit=max\u0026auto=format\u0026n=oeyLGNuqv-h31IRO\u0026q=85\u0026s=32666c8354e4565e77513efd6ad6bdc7 1650w, https://mintcdn.com/benji/oeyLGNuqv-h31IRO/images/Screenshot-2026-07-28-at-5.47.28-PM.png?w=2500\u0026fit=max\u0026auto=format\u0026n=oeyLGNuqv-h31IRO\u0026q=85\u0026s=358b5713d8a4aa8742450f1805e67138 2500w`})}),`\n`,_jsx(_components.p,{children:`Conditions are evaluated at the point of the eligibility check, either when a member links their account or when a transaction occurs. When no conditions are configured, all members qualify.`}),`\n`,_jsx(Heading,{level:`4`,id:`condition-groups`,children:`Condition groups`}),`\n`,_jsx(_components.p,{children:`Conditions are organized into groups. Each group contains one or more conditions and has its own logic type, set using the toggle in the top right corner of the group:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Any (OR)`}),`: The member needs to meet at least one condition in the group`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`All (AND)`}),`: The member needs to meet every condition in the group`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`The description on the left side of the group updates to reflect the active logic. New groups default to Any (OR).`}),`\n`,_jsx(_components.p,{children:`The first condition in a group is preceded by a When label. Each condition after it is preceded by an and or or label matching the group’s logic type.`}),`\n`,_jsx(_components.p,{children:`You can configure any number of groups. Groups always combine with AND logic at the top level, meaning a member needs to satisfy every group to qualify.`}),`\n`,_jsx(_components.p,{children:`To build your logic, use Add Condition inside a group to add a row to that group, and Add Group below the groups to add a new group. The delete control on a row removes that condition. Removing the last condition in a group removes the group.`}),`\n`,_jsx(_components.p,{children:`For each condition, you can specify the attribute, an operator, and a value. The following attributes and their respective operators and values are supported:`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Customer Geography`})}),`\n`,_jsxs(Expandable,{title:`Customer Geography`,children:[_jsx(_components.p,{children:`Will only be valid if the user meets the geographical condition.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: `,_jsx(_components.strong,{children:`Is In`}),` or `,_jsx(_components.strong,{children:`Is Not In`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: Countries, US cities`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Customer Total Spend`})}),`\n`,_jsxs(Expandable,{title:`Customer Total Spend`,children:[_jsx(_components.p,{children:`Will only be valid if the user has exceeded a total spend amount since they connected their account. For instance, if the campaign distributes a certain amount of reward points after the member has purchased over $1000 in goods.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: `,_jsx(_components.strong,{children:`Greater Than`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: Numeric amount`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Transaction Basket Size`})}),`\n`,_jsxs(Expandable,{title:`Basket Size`,children:[_jsx(_components.p,{children:`Will only be valid if a member is making a purchase over or under a certain amount.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: `,_jsx(_components.strong,{children:`Greater Than`}),`, `,_jsx(_components.strong,{children:`Less Than`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: Numeric amount`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Time Elapsed`})}),`\n`,_jsxs(Expandable,{title:`Time Elapsed`,children:[_jsx(_components.p,{children:`Will only be valid if a defined amount of time has passed since they connected their accounts.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: `,_jsx(_components.strong,{children:`Greater Than`}),`, `,_jsx(_components.strong,{children:`Less Than`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: A time period (e.g. 1 day, 2 weeks, 3 months, etc.)`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Custom Attributes`})}),`\n`,_jsxs(Expandable,{title:`Custom Attributes`,children:[_jsx(_components.p,{children:`Will only be valid if the member’s custom attribute value meets the condition. Custom attributes are configured on the Partner Settings page and are listed by their attribute name.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: `,_jsx(_components.strong,{children:`Is In`}),` or `,_jsx(_components.strong,{children:`Is Not In`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: The configured values for that attribute`]}),`\n`]})]}),`\n`,_jsx(Heading,{level:`3`,id:`campaign-multipliers`,children:`Campaign Multipliers`}),`\n`,_jsx(_components.p,{children:`In this section you can configure certain conditions under which a certain member would get a multiplier boost on their earned or redeemed rewards for a specific transaction.`}),`\n`,_jsxs(_components.p,{children:[`For `,_jsx(_components.strong,{children:`Earn`}),` type campaigns, this means the member, if the condition is met, will earn a multiplier on the base Points earned per dollar variable configured in the triggers section.`]}),`\n`,_jsxs(_components.p,{children:[`For `,_jsx(_components.strong,{children:`Redeem`}),` type campaigns, this means the member will get a multiplier on the conversion rate per dollar defined in the triggers section above.`]}),`\n`,_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/multipliers.png?fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=a8543e7db02b37068d53a2e8ab81b464`,alt:`multipliers`,\"data-og-width\":`1436`,width:`1436`,\"data-og-height\":`696`,height:`696`,\"data-path\":`images/pilot/multipliers.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/multipliers.png?w=280\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=10595e7821784fb219fe258b08492aa9 280w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/multipliers.png?w=560\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=c82d213d352f37c6dd32558d49d75a9b 560w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/multipliers.png?w=840\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=98b7a90a545effd5d5fe0152b86cd127 840w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/multipliers.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=27627b67e49c85915e36d339365714ec 1100w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/multipliers.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=9ee65672399da576d11b36ecf9a05b87 1650w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/multipliers.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=b02db68d50914cb82f4332b834d44d1a 2500w`})}),`\n`,_jsx(_components.p,{children:`You can configure a limitless number of multipliers per campaign. For each multiplier, you can specify the multiplier amount, a customer attribute to validate (the condition) and the corresponding value of the customer attribute to validate. The following customer attributes are supported:`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Customer Status`})}),`\n`,_jsxs(Expandable,{title:`Customer Status`,children:[_jsx(_components.p,{children:`Will only be valid if the user is of a certain status.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: `,_jsx(_components.strong,{children:`Is In`}),` or `,_jsx(_components.strong,{children:`Is Not In`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: Any one of your loyalty program’s status tiers configured in the Benji Platform.`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Variable Attributes`})}),`\n`,_jsxs(Expandable,{title:`Variable Attributes`,children:[_jsx(_components.p,{children:`You can create multipliers based on any attribute returned as part of the Benji Platform integration with your platform. A typical example would be Card Member status, # of total rewards earned throughout their membership, etc.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: `,_jsx(_components.strong,{children:`Is In`}),` or `,_jsx(_components.strong,{children:`Is Not In`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: Configurable values based on the variable attribute possible values configured in the settings section of the Benji Platform.`]}),`\n`]})]}),`\n`,_jsx(Heading,{level:`3`,id:`campaign-limits`,children:`Campaign Limits`}),`\n`,_jsx(_components.p,{children:`In this section you can configure limits to control how frequently members can qualify for rewards and the maximum value they can earn or redeem.`}),`\n`,_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/limits.png?fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=2eddeee85462734863e82c1192584666`,alt:`limits`,\"data-og-width\":`1452`,width:`1452`,\"data-og-height\":`476`,height:`476`,\"data-path\":`images/pilot/limits.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/limits.png?w=280\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=70acf7fab0948569ffa88c00150d9cf1 280w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/limits.png?w=560\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=f0cafbaa89a8addbc018c05cdfccd272 560w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/limits.png?w=840\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=cebe83867068832567682b57881b7f9e 840w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/limits.png?w=1100\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=166d3a5cceb8076b16cb48872d879a1b 1100w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/limits.png?w=1650\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=7b7f4ef78109f702a261c2ec334bace4 1650w, https://mintcdn.com/benji/AaA6JO3-WleEawvL/images/pilot/limits.png?w=2500\u0026fit=max\u0026auto=format\u0026n=AaA6JO3-WleEawvL\u0026q=85\u0026s=21f42dd347b0225c7661872ef5e58729 2500w`})}),`\n`,_jsx(_components.p,{children:`Limits set boundaries on transaction values, member qualification frequency, and total rewards. You can set transaction minimums to ensure meaningful engagement, cap total rewards per user, or limit qualification frequency to control the pacing of your campaigns.`}),`\n`,_jsx(_components.p,{children:`You can configure multiple limits per campaign. The following limit types are supported:`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Transaction Limits`})}),`\n`,_jsxs(Expandable,{title:`Transaction Limits`,children:[_jsx(_components.p,{children:`Controls the minimum or maximum value allowed per individual transaction.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: Minimum, Maximum`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: Numeric amount (points or dollars depending on campaign type)`]}),`\n`]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`User Limits`})}),`\n`,_jsxs(Expandable,{title:`User Limits`,children:[_jsx(_components.p,{children:`Controls the maximum number of qualifying events or total points a user can accumulate within a specified time period.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operators`}),`: Maximum`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Units`}),`: Qualifying events or Points`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Values`}),`: Numeric amount`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Time Period:`}),` Per day, per week, per month, per quarter, per year, or lifetime`]}),`\n`]})]}),`\n`,_jsx(Heading,{level:`2`,id:`step-4-goals`,children:`Step 4: Goals`}),`\n`,_jsx(_components.p,{children:`Set primary goals for your campaign. Benji will track progress against these goals, which you can view in the Analytics page when filtering by campaign.`}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_goals.png?fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=8ce9b68a83e5dc67a1676f6bc70d51a2`,alt:`title`,\"data-og-width\":`1358`,width:`1358`,\"data-og-height\":`306`,height:`306`,\"data-path\":`images/pilot/campaign_goals.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_goals.png?w=280\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=d75de62bb07c631fb27c7cb023029415 280w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_goals.png?w=560\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=40ab3e674568335ed45937c0f337d6f5 560w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_goals.png?w=840\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=e113f75fb2895319839aba8b1f820d6a 840w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_goals.png?w=1100\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=be1d15e79242f470babf2d8e612db49d 1100w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_goals.png?w=1650\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=1b41617c869c46b2566e51c9918e6f9f 1650w, https://mintcdn.com/benji/1bAF2v-oOLtjOiGn/images/pilot/campaign_goals.png?w=2500\u0026fit=max\u0026auto=format\u0026n=1bAF2v-oOLtjOiGn\u0026q=85\u0026s=402dcef604ba9b56adca6d763cd43367 2500w`}),`\n`,_jsx(_components.p,{children:`The Benji platform supports setting the following built-in goals:`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Registrations`})}),`\n`,_jsx(Expandable,{title:`Registrations`,defaultOpen:`true`,children:_jsx(_components.p,{children:`Specifies a goal of reaching or exceeding a certain number of new registrations as a result of the partnership`})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Points Earned`})}),`\n`,_jsx(Expandable,{title:`Points Earned`,defaultOpen:`true`,children:_jsx(_components.p,{children:`Specifies a number representing the total amount of reward points earned throughout the campaign`})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Points Redeemed`})}),`\n`,_jsx(Expandable,{title:`Points Redeemed`,defaultOpen:`true`,children:_jsx(_components.p,{children:`Specifies a number representing the total amount of reward points redeemed throughout the campaign`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Campaign Settings Page","description":"Control all of your campaign settings","sidebarTitle":"Campaign Settings","icon":"sliders","href":"/pilot/campaign"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Step 1: Details","slug":"step-1-details","depth":2,"children":[{"title":"Campaign Type","slug":"campaign-type","depth":3,"children":[]}]},{"title":"Step 2: Schedule","slug":"step-2-schedule","depth":2,"children":[]},{"title":"Step 3: Flows","slug":"step-3-flows","depth":2,"children":[{"title":"Campaign Trigger","slug":"campaign-trigger","depth":3,"children":[]},{"title":"Campaign Actions","slug":"campaign-actions","depth":3,"children":[]},{"title":"Campaign Conditions","slug":"campaign-conditions","depth":3,"children":[]},{"title":"Condition groups","slug":"condition-groups","depth":4,"children":[]},{"title":"Campaign Multipliers","slug":"campaign-multipliers","depth":3,"children":[]},{"title":"Campaign Limits","slug":"campaign-limits","depth":3,"children":[]}]},{"title":"Step 4: Goals","slug":"step-4-goals","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"benji","siteName":"Benji","title":"Campaign Settings Page - Benji","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-26T19:57:17.305Z","originalFileLocation":"pilot/campaign.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Control all of your campaign settings\">\u003cmeta data-mint-head name=\"application-name\" content=\"Benji\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Campaign Settings Page - Benji\">\u003cmeta data-mint-head property=\"og:description\" content=\"Control all of your campaign settings\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Benji\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.withbenji.com/pilot/campaign\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://benji.mintlify.site/_mintlify/api/og/v2?division=Partnerships\u0026amp;title=Campaign+Settings+Page\u0026amp;description=Control+all+of+your+campaign+settings\u0026amp;theme=c6069e65afe5566508648c56\u0026amp;signature=2caf619b3c9847193d2de4c267743b4562eb0f26deb0a57267f072fb976f45b7\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Campaign Settings Page - Benji\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Control all of your campaign settings\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://benji.mintlify.site/_mintlify/api/og/v2?division=Partnerships\u0026amp;title=Campaign+Settings+Page\u0026amp;description=Control+all+of+your+campaign+settings\u0026amp;theme=c6069e65afe5566508648c56\u0026amp;signature=2caf619b3c9847193d2de4c267743b4562eb0f26deb0a57267f072fb976f45b7\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/benji/dbMCKxLdMt2ho1P-/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Benji\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#9900ff\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.withbenji.com/pilot/campaign\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/pilot/campaign.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.withbenji.com/#organization\",\"name\":\"Benji\",\"url\":\"https://docs.withbenji.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/benji/E3tFqos-Cc64Y5MH/logo/benji-docs-logo.svg?fit=max\u0026auto=format\u0026n=E3tFqos-Cc64Y5MH\u0026q=85\u0026s=60b7d848ffe4ab0c66efcfcbf573e3be\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.withbenji.com#website\",\"name\":\"Benji\",\"url\":\"https://docs.withbenji.com\",\"publisher\":{\"@id\":\"https://docs.withbenji.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.withbenji.com/pilot/campaign#webpage\",\"url\":\"https://docs.withbenji.com/pilot/campaign\",\"name\":\"Campaign Settings Page\",\"description\":\"Control all of your campaign settings\",\"dateModified\":\"2026-10-26T19:57:17.305Z\",\"isPartOf\":{\"@id\":\"https://docs.withbenji.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.withbenji.com/pilot/campaign#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.withbenji.com/pilot/campaign#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Pilot\",\"item\":\"https://docs.withbenji.com/pilot/dashboard\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Partnerships\",\"item\":\"https://docs.withbenji.com/pilot/partnerships\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Campaign Settings Page\",\"item\":\"https://docs.withbenji.com/pilot/campaign\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.withbenji.com/pilot/campaign#article\",\"headline\":\"Campaign Settings Page\",\"name\":\"Campaign Settings Page\",\"description\":\"Control all of your campaign settings\",\"url\":\"https://docs.withbenji.com/pilot/campaign\",\"mainEntityOfPage\":{\"@id\":\"https://docs.withbenji.com/pilot/campaign#webpage\"},\"dateModified\":\"2026-10-26T19:57:17.305Z\",\"publisher\":{\"@id\":\"https://docs.withbenji.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.withbenji.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Benji\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Benji\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/pilot/campaign.md","siteName":"Benji","nav":{"global":null,"tabs":[{"tab":"Platform","groups":[{"group":"Welcome","pages":[{"title":"The Benji Platform","sidebarTitle":"Overview","icon":"book-open","href":"/pilot/overview"},{"title":"Key Benji Concepts","sidebarTitle":"Key Concepts","icon":"puzzle","href":"/pilot/concepts"}]},{"group":"Pilot","pages":[{"title":"Pilot Dashboard Overview","sidebarTitle":"Dashboard","icon":"gauge","href":"/pilot/dashboard"},{"group":"Partnerships","icon":{"style":"light","name":"circles-overlap"},"pages":[{"title":"Partnerships Homepage","sidebarTitle":"Partnerships","icon":"circles-overlap","iconType":"light","href":"/pilot/partnerships"},{"title":"Campaigns Page","description":"A view of all the campaigns configured for a specific partnership","sidebarTitle":"Campaigns","icon":"rocket","href":"/pilot/campaigns"},{"title":"Campaign Settings Page","sidebarTitle":"Campaign Settings","icon":"sliders","href":"/pilot/campaign"}]},{"title":"Experiences","description":"Build and publish your Redemption Portal","icon":{"name":"store","style":"regular","library":"fontawesome"},"href":"/experiences"},{"title":"Analytics Page","sidebarTitle":"Analytics","icon":"chart-line","href":"/pilot/analytics"},{"title":"Transactions","sidebarTitle":"Transactions","icon":"chart-column","href":"/pilot/customer_activity"},{"title":"Developer","icon":"display-code","href":"/pilot/developer"},{"title":"Users \u0026 Permissions Page","sidebarTitle":"Users \u0026 Permissions","icon":"user","href":"/pilot/users"},{"title":"Finance Page","sidebarTitle":"Finance","icon":"dollar-sign","href":"/pilot/finance"},{"title":"Partner Settings Page","sidebarTitle":"Settings","icon":"sliders","href":"/pilot/settings"}]}]},{"tab":"Benji Connect","pages":[{"title":"Benji Connect","href":"/connect/overview"}]},{"tab":"Benji Integrations","pages":[{"title":"Benji Integrations","href":"/integrations/introduction"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/introduction"}]}]},"basePath":"","title":"Campaign Settings Page - Benji","buildId":"dpl_596ePT575z4qnAFksq1biRW97aLY","deploymentId":"dpl_596ePT575z4qnAFksq1biRW97aLY","dynamics":["a74be98ba7","07c022d89b"],"chunks":["zoom-image-lightbox-C5F0mVLH.js","lightbox-handle-r17bVUz3.js","Frame-BXrZabKK.js","DynamicMarkdown-CtasenyM.js"]}