What is a Campaign?
A Campaign in Moja AI is the central system that controls how inbound calls are:
Received (via numbers)
Routed (via routing plans or call flows)
Monetized (via payouts and buyers)
Optimized (via caps, RTB, and routing logic)
Every call must pass through a campaign before reaching a destination.
Campaign Setup Overview
To successfully launch a campaign, you need to configure:
Basic Information
Routing Configuration
Numbers & Publishers
Inbound RTB (optional)
Call Handling & Compliance
Caps & Traffic Control
Integrations (Webhooks)
IVR & Dispositions
1. Basic Information
Name (Required)
Unique identifier for your campaign.
Best Practice:
Use: Vertical + Geo + Traffic Source
Example: Solar Inbound US – Facebook
Organization ID
Auto-assigned. No action required.
Timezone
Controls scheduling, caps, and reporting.
Best Practice:
Match your target market.
Everflow Integration (Optional)
Everflow Offer ID
Links the campaign to Everflow for postback attribution.
2. Routing Configuration
Execution Mode
Defines how calls are processed:
Routing Plan
Standard routing system
Uses priorities, weights, and logic
Call Flow
Step-by-step routing (IVR-style)
Routing Plan
Options:
Create New
Select Existing
This is where you define:
Buyers (targets)
Distribution logic
Fallback handling
3. Numbers & Publishers
Numbers
Add Number
You can:
Assign an existing number
Create/buy a new number
Group numbers
Number Configuration
Each number includes:
Payout Type
Static → Fixed payout
Dynamic → Variable payout (RTB or logic-based)
Amount
Defines how much is paid per qualified call.
Payout Condition
Example:
Call Successfully Connected
Duration (sec)
Minimum duration required for payout.
Routing Plan Overrides
Add Override
Allows custom routing per publisher.
Example:
Facebook → Buyer A
Google → Buyer B
4. Inbound RTB Publishers
Add Inbound RTB
Creates a real-time bidding endpoint.
Core Fields
Endpoint
Generated after saving the campaign.
Used by publishers to send RTB requests.
Endpoint Active
Enabled → accepts traffic
Disabled → stops traffic instantly
Publisher (Required)
Assign the traffic source.
Mode
Dynamic Mode
Real-time bidding
Variable payouts
Includes:
Rate Limit (e.g., 100 requests/min)
Payout % (revenue share)
Duration adjustments
Static Mode
When selected, RTB behaves like a fixed payout system.
Fixed Payout
A constant payout per qualified call.
Example:
$25 per call
Payout Condition
Defines when payout triggers.
Example:
Call connected
Call duration ≥ 60 seconds
Static vs Dynamic
Static → predictable payouts
Dynamic → optimized via bidding
5. Campaign Status
Status
Active → live
Inactive → paused
6. Compliance & Call Handling
TCPA Compliance
Blocks restricted or flagged caller IDs.
Duplicate Call Routing (Sticky Caller)
Ensures returning callers are routed consistently.
When a Returning Caller is Detected
Route to Same Buyer
The caller is routed to the same buyer they previously connected with.
Check for Previous Routes To
Option 1: Entire Campaign
Checks all past connected calls
Routes caller back to last buyer
Option 2: Only Selected Targets or Buyers
Enables Entity-Specific Settings
Entity-Specific Settings
Select Targets (Optional)
Only consider specific targets.
Select Buyers (Optional)
Only consider selected buyers.
Lookback Window
Define how far back to check:
Hours / Days / Weeks / Months
Example
Buyer A → 30-day lookback
Buyer B → excluded
→ Only Buyer A retains returning callers
Duplicate Payout Settings
Prevents duplicate payouts based on:
Caller
Campaign
Publisher
7. Publisher Caps (Traffic Control)
Add Cap
Controls how much traffic a publisher can send.
Cap Type
Defines what is being limited:
Connected Calls
Only successful connections.
Converted Calls
Only calls that meet conversion criteria.
Total Calls
All incoming calls.
Revenue
Total money generated.
Cap Action
Defines what happens when the cap is reached:
Notify Only
Sends alerts
Does NOT restrict traffic
Lower Bid
Reduces priority
Traffic decreases gradually
Make Ineligible
Fully blocks publisher
Hard stop
Additional Fields
Limit
Maximum allowed value.
Timeframe
Daily, hourly, etc.
Warning Threshold (%)
Triggers alerts before reaching the cap.
Notifications
In-app
Slack integrations
8. Webhooks
Outgoing Webhooks
Send data when events occur:
Call started
Call completed
Conversion
Incoming Webhooks
Receive external data:
Pre-call enrichment
Revenue updates
Tagging
Important:
Only one pre-call webhook per campaign
Post-call updates can apply globally
9. IVR Payout Rules
Add Payout Rule
Filters
Define conditions:
Call behavior
IVR selections
Outcomes
Payout Amount
Amount paid when conditions are met.
10. Dispositions & Questions
Call Dispositions
Categorize outcomes:
Not Interested
Callback
No Answer
Etc
Example Campaign Structure
Campaign: "Solar Inbound US"
├── Numbers: (Tracking numbers)
├── Publishers
├── Routing Plan:
│ ├── Buyer A (Static)
│ ├── Buyer B (RTB)
│ └── IVR Overflow
├── Sticky Caller: Enabled (30-day lookback)
├── Caps:
│ ├── Publisher 1 → 100 connected calls/day (Lower Bid)
│ └── Publisher 2 → $1,000 revenue/day (Hard Stop)
└── Webhooks: CRM Integration