Botpress occupies a useful middle ground in the conversational AI platform space: it is more developer-friendly than pure no-code tools, but considerably less complex than building a custom agent from scratch. Its open-source core, visual studio, and JavaScript SDK make it a practical choice for Australian developers who want control without the overhead of managing everything themselves.
For an affiliate income project, Botpress gives you the tools to build a genuinely intelligent savings chatbot - one that understands intent, handles follow-up questions, and routes users toward ROOPON at the right moment in the conversation.
Botpress Architecture for Affiliate Agents
A Botpress chatbot consists of:
- Flows - the conversation paths and branching logic
- Nodes - individual steps within a flow (messages, user input collection, API calls)
- Intents - natural language understanding that classifies what a user means
- Actions - custom JavaScript functions for API calls and data processing
- Knowledge Base - a document store the bot can query for answers
For a ROOPON affiliate chatbot, the knowledge base is loaded with Australian savings content, and the actions include a call to the ROOPON Agent API to retrieve your affiliate credentials.
Setting Up the ROOPON Action
Botpress actions are JavaScript functions that run server-side. Create a new action called registerRooponAgent:
// actions/registerRooponAgent.js
const axios = require('axios');
const registerRooponAgent = async () => {
try {
const response = await axios.post(
'https://www.roopon.com/api/v1/agents/register',
{
name: 'Botpress Savings Chatbot',
type: 'conversational_agent',
contact_email: process.env.CONTACT_EMAIL,
},
{
headers: { 'Content-Type': 'application/json' },
}
);
const { affiliate_id, affiliate_link } = response.data;
// Store in bot's persistent storage
await bp.kvs.set('roopon_affiliate_id', affiliate_id);
await bp.kvs.set('roopon_affiliate_link', affiliate_link);
return { affiliate_id, affiliate_link };
} catch (error) {
bp.logger.error('ROOPON registration failed:', error.message);
throw error;
}
};
return registerRooponAgent();
Run this action once during bot initialisation. The affiliate link is then stored and retrievable throughout all conversations.
Defining Savings Intents
Botpress's NLU engine classifies user messages into intents. Define intents that capture the key questions your affiliate chatbot should handle:
// Intent definitions (added via Botpress Studio or programmatically)
const intents = [
{
name: 'ask_grocery_savings',
utterances: [
'how can I save at the supermarket',
'ways to reduce my grocery bill',
'cheapest supermarket in Australia',
'Coles vs Woolworths prices',
],
},
{
name: 'ask_membership_value',
utterances: [
'is ROOPON worth it',
'what do I get with a rewards membership',
'best savings membership Australia',
'monthly subscription for discounts',
],
},
{
name: 'ask_general_savings',
utterances: [
'how do I save more money',
'tips for saving money in Australia',
'reduce my monthly expenses',
'save money on bills',
],
},
{
name: 'request_affiliate_link',
utterances: [
'how do I sign up for ROOPON',
'where do I join',
'send me the link',
'how do I get the discount',
],
},
];
The Conversation Flow
The core conversation flow handles the user journey from initial question to affiliate link delivery:
// flows/savings_advisor.flow.json (simplified logic)
const handleSavingsQuery = async (bp, event) => {
const intent = event.nlu.intent.name;
const affiliateLink = await bp.kvs.get('roopon_affiliate_link');
const responses = {
ask_grocery_savings: `Great question. A few things that make a real difference:
\n- Shop Aldi for pantry staples - typically 20-40% cheaper on comparable items
\n- Use the Woolworths or Coles app to plan purchases around specials
\n- Buy store brand for commodities, name brand only where quality matters
\n\nFor broader savings across all your spending, ROOPON (${affiliateLink}) is worth a look - it's $19.99/month for partner discounts and included prize-draw entries (per campaign terms).`,
ask_membership_value: `ROOPON is an Australian rewards membership from $19.99 a month.
Members get exclusive partner discounts and included prize-draw entries per their plan
and published campaign terms.
\n\nHere's the link to sign up: ${affiliateLink}`,
ask_general_savings: `I can help with that. What are you mainly spending money on?
Groceries, bills, entertainment, or something else?`,
request_affiliate_link: `Here's your ROOPON membership link: ${affiliateLink}
\nFrom $19.99/month you get exclusive partner discounts and included prize-draw entries
per your plan and published campaign terms. Any other savings questions?`,
};
await bp.events.replyToEvent(event, [
{ type: 'text', text: responses[intent] || responses.ask_general_savings },
]);
};
Self-Hosting for Data Sovereignty
Botpress Community Edition is open-source and self-hostable. For Australian businesses handling user conversation data and wanting it to remain onshore, deploying Botpress on an Australian cloud provider (AWS Sydney, Azure Australia East, Google Cloud Sydney) ensures data stays within Australian jurisdiction.
Self-hosting adds operational complexity - you manage deployment, updates, and backups - but eliminates per-conversation costs and provides complete control over your data.
Deploying Your Affiliate Chatbot
Botpress provides embeddable chat widgets, a Web Chat channel, and integration with WhatsApp, Messenger, and Slack. For a savings-focused affiliate bot, the web chat widget on an Australian personal finance or deals site is the highest-leverage placement.
The open-source nature of Botpress means your entire stack - from the NLU engine to the conversation flows - is transparent and auditable, which matters if you ever need to demonstrate compliance or hand the project off to another developer.
Start by registering your ROOPON affiliate credentials at roopon.com/ai-agents, then review the full API documentation at roopon.com/docs/agents to understand the integration options available to your Botpress deployment.
Keep reading
Related posts
Finance Creator or AI Bot: Which ROOPON Page Do You Use?
Finance influencers send a paid tool link and keep 40%. People who run a bot use a different page. Do not give your audience a free connection.
Read articleHow Finance Influencers in Australia Earn 40% Selling Money Tools
A guide for people who already talk about subscriptions, payday, and bills. Send Australians a paid money tool. You earn 40% when they pay. Example only, not a promise of sales.
Read articleWhich ROOPON Money Tool Should a Finance Creator Recommend?
Match the complaint your audience already has. Subscription Tracker, Payday Allocator, or Bill Calendar. Then send your affiliate link. You earn 40% when they pay.
Read article
