23 KiB
🚀 Getting Started# 🚀 Getting Started Guide
Complete step-by-step guide to set up and run Microsoft Rewards Bot
← Back to DocumentationComplete step-by-step tutorial to set up and run Microsoft Rewards Bot.
📋 Table of Contents---# 🚀 Getting Started
-
Create Accounts## 📋 Table of Contents**🎯 From zero to earning Microsoft Rewards points in minutes**
-
First RunComplete setup guide for beginners
✅ Prerequisites
Before starting, you need:
1. Node.js 20 or Higher
-
Download: https://nodejs.org/
-
Recommended: Version 226. Troubleshooting## ✅ Requirements
-
Verify installation:
node --version ```---- **Node.js 18+** (22 recommended) — [Download here](https://nodejs.org/) Should show `v20.x.x` or higher -
Microsoft accounts with email + password
2. Git (Optional but Recommended)
✅ Prerequisites- Optional: Docker for containerized deployment
-
Download: https://git-scm.com/
-
Alternative: Download project as ZIP from GitHub
3. Your Referral LinkBefore starting, you need:---
💰 Important: You earn 7,500 points per month for each account you refer!
-
Log into your main Microsoft account1. Node.js 20+ (version 22 recommended)## ⚡ Quick Setup (Recommended)
-
Copy your referral link (format:
https://rewards.bing.com/welcome?rh=XXXXX) - Download: https://nodejs.org/
--- - Verify: node --version should show v20 or higher
📦 Get the Project
Option 1: Git Clone (Recommended)2. Git (optional, but recommended)### 🎬 One Command, Total Automation
git clone https://github.com/Obsidian-wtf/Microsoft-Rewards-Bot.git
cd Microsoft-Rewards-Bot - Or download project as ZIP</div>
Option 2: Download ZIP
-
A main Microsoft account (your personal account)```bash
-
Visit: https://github.com/Obsidian-wtf/Microsoft-Rewards-Bot
-
Click Code → Download ZIP - Go to https://rewards.bing.com/referandearn/# 🪟 Windows
-
Extract the ZIP file
-
Open a terminal in the extracted folder - Copy your referral link (looks like:
https://rewards.bing.com/welcome?rh=XXXX)setup/setup.bat
Install Dependencies - Why? You earn 7,500 points per month for each referral!
npm i
```---bash setup/setup.sh
This installs all required packages (~2-3 minutes).
---## 📦 Get the Project# 🌍 Any platform
## 🎯 Create Accountsnpm run setup
### Why Use the Account Creator?### Option 1: Git Clone (Recommended)```
- ✅ **Earn 7,500 bonus points** per month per referral
- ✅ Creates realistic accounts (avoids detection)
- ✅ Automatic enrollment in Microsoft Rewards```bash**That's it!** The wizard will:
- ✅ Built-in 2FA security with TOTP
- ✅ Saves all account details for yougit clone https://github.com/Obsidian-wtf/Microsoft-Rewards-Bot.git- ✅ Help you create `src/accounts.json` with your Microsoft credentials
### Step 1: Get Your Referral Linkcd Microsoft-Rewards-Bot- ✅ Install all dependencies automatically
If you haven't already:```- ✅ Build the TypeScript project
1. Log into your main Microsoft account
2. Visit: https://rewards.bing.com/referandearn/- ✅ Start earning points immediately
3. Copy the referral URL
### Option 2: Download ZIP
### Step 2: Create Account
---
**Recommended command (full automation):**
1. Go to: https://github.com/Obsidian-wtf/Microsoft-Rewards-Bot
```bash
npm run creator https://rewards.bing.com/welcome?rh=YOUR_CODE -y backup@gmail.com2. Click **Code** → **Download ZIP**## 🛠️ Manual Setup
- Extract the ZIP file
Replace:
-
YOUR_CODE→ Your actual referral code4. Open terminal in the extracted folder -
backup@gmail.com→ Your real recovery email
What this does:
-
Creates realistic Microsoft account (email, password, name, birthdate)### Install Dependencies
-
Enrolls in Microsoft Rewards using YOUR referral
-
Adds recovery email for account security### 1️⃣ Configure Your Accounts
-
Enables 2FA with TOTP (Google Authenticator)
-
Saves everything to
accounts-created/folderbashbash
Step 3: Complete CAPTCHA & Verificationnpm icp src/accounts.example.json src/accounts.json
During creation:```# Edit accounts.json with your Microsoft credentials
-
CAPTCHA: Browser will pause - solve it manually (required by Microsoft)```
-
Recovery Email: Check your email, enter the 6-digit code
-
2FA Setup: This will install all required packages.
-
Open Google Authenticator app on your phone
-
Scan the QR code shown in browser### 2️⃣ Install Dependencies & Build
-
Enter the 6-digit code from the app
-
-
Done: Account saved automatically!---```bash
Step 4: Find Your Account Infonpm install
After creation, a file is created in:## 🎯 Create Microsoft Accountsnpm run build
accounts-created/account_USERNAME_TIMESTAMP.jsonc```
⚠️ IMPORTANT: Use the account creator with YOUR referral link to earn 7,500 points per account per month!
Example content:
{
"email": "john.smith1995@outlook.com",### Step 1: Get Your Referral Link```bash
"password": "Xyz789!@#AbcDef",
"birthdate": {# Single run (test it works)
"day": 15,
"month": 6,1. Log into your **main Microsoft account**npm start
"year": 1995
},2. Go to: https://rewards.bing.com/referandearn/
"firstName": "John",
"lastName": "Smith",3. Copy your referral link (format: `https://rewards.bing.com/welcome?rh=YOUR_CODE`)# Schedule it (Task Scheduler, cron, etc.)
"createdAt": "2025-11-09T10:30:00.000Z",
"referralUrl": "https://rewards.bing.com/welcome?rh=YOUR_CODE",# See docs/schedule.md for examples
"recoveryEmail": "backup@gmail.com",
"totpSecret": "JBSWY3DPEHPK3PXP",### Step 2: Create Accounts```
"recoveryCode": "MWGR3-9MJC9-STK76-SZCE5-X77PR"
}
Recommended command (enables everything):
⚠️ KEEP THIS FILE SAFE!
-
totpSecret→ Required for bot login (2FA) -
recoveryCode→ Emergency account recovery -
birthdate→ Needed if account gets suspended```bash--- -
All info → Needed to restore account if banned
npm run creator https://rewards.bing.com/welcome?rh=YOUR_CODE -y backup@gmail.com
Alternative: Without 2FA (Not Recommended)
If you don't want 2FA:
```bash
npm run creator https://rewards.bing.com/welcome?rh=YOUR_CODE**Replace:**The script will automatically:
YOUR_CODEwith your actual referral code- 🔍 Search Bing for points (desktop + mobile)
Then answer "n" when asked about 2FA setup.
backup@gmail.comwith your real recovery email- 📅 Complete daily sets (quizzes, polls, activities)
- 🎁 Grab promotions and bonus opportunities
⚙️ Configuration
What this does:- 🃏 Work on punch cards (multi-day challenges)
Step 1: Setup Accounts File
- ✅ Creates a realistic Microsoft account (email, password, name, birthdate)- ✅ Daily check-ins for easy points
You have 2 options:
- ✅ Enrolls in Microsoft Rewards using YOUR referral link- 📚 Read articles for additional rewards
Option A: Setup Wizard (Easiest)
- ✅ Adds recovery email for account security
npm run setup4. ✅ Enables 2FA with TOTP (Google Authenticator)**All while looking completely natural to Microsoft!** 🤖
- ✅ Saves everything to
accounts-created/folder
The wizard will:
-
Create
src/accounts.jsoncfrom template--- -
Guide you through configuration
-
Build the project automatically### Step 3: CAPTCHA & Verification
On Windows:## 🐳 Docker Alternative
setup\setup.batDuring account creation:
If you prefer containers:
On Linux/Mac:
bash setup/setup.sh
```2. **Recovery Email**: Check your email, enter the verification code```bash
#### Option B: Manual Setup3. **2FA Setup**: Scan the QR code with Google Authenticator app# Ensure accounts.json and config.json exist
1. **Copy the template:**4. **Complete**: Account details saved automaticallydocker compose up -d
```bash
# Windows
copy src\accounts.example.jsonc src\accounts.jsonc
### Step 4: Find Your Account Info# Follow logs
# Linux/Mac
cp src/accounts.example.jsonc src/accounts.jsoncdocker logs -f microsoft-rewards-bot
After creation, check:```
- Open
src/accounts.jsoncin text editor
3. **Fill in account details:**
```jsoncaccounts-created/account_USERNAME_TIMESTAMP.jsonc**[Full Docker Guide →](./docker.md)**
{
"accounts": [```
{
"email": "john.smith1995@outlook.com", // From accounts-created/ file---
"password": "Xyz789!@#AbcDef", // From accounts-created/ file
"totp": "JBSWY3DPEHPK3PXP", // ⚠️ REQUIRED if 2FA enabled!Example file content:
"enabled": true // Set to true
}```jsonc## 🔧 Next Steps
]
}{
"email": "john.smith1995@outlook.com",Once running, explore these guides:
- Copy info from
accounts-created/folder
"password": "Xyz789!@#AbcDef",
For each account you created:
-
Copy
email"birthdate": {| Priority | Guide | Why Important | -
Copy
password -
Copy
totpSecret→ Put intotpfield "day": 15,|----------|-------|---------------| -
Set
enabled: true
"month": 6,| **High** | **[Accounts & 2FA](./accounts.md)** | Set up TOTP for secure automation |
-
Save the file
"year": 1995| High | External Scheduling | Automate with Task Scheduler or cron |
Step 2: Configure Bot Settings
},| Medium | Notifications | Get alerts on your phone |
Open src/config.jsonc:
"firstName": "John",| Low | Humanization | Advanced anti-detection |
Enable Automatic Scheduling (Recommended)
"lastName": "Smith",
{ "createdAt": "2025-11-09T10:30:00.000Z",---
"scheduling": {
"enabled": true, "referralUrl": "https://rewards.bing.com/welcome?rh=YOUR_CODE",
"type": "auto",
"cron": { "recoveryEmail": "backup@gmail.com",## 🆘 Need Help?
"schedule": "0 9 * * *" // Daily at 9 AM (Linux/Mac/Raspberry Pi)
}, "totpSecret": "JBSWY3DPEHPK3PXP",
"taskScheduler": {
"schedule": "09:00" // Daily at 9:00 (Windows) "recoveryCode": "MWGR3-9MJC9-STK76-SZCE5-X77PR"**Script not starting?** → [Troubleshooting Guide](./diagnostics.md)
}
}}**Login issues?** → [Accounts & 2FA Setup](./accounts.md)
}
``````**Want Docker?** → [Container Guide](./docker.md)
**How it works:**
- Run `npm start` once
- Bot automatically schedules itself**⚠️ IMPORTANT: Keep this file safe!****Found a bug?** [Report it here](https://github.com/Obsidian-wtf/Microsoft-Rewards-Bot/issues)
- Runs every day at your chosen time
- Perfect for Raspberry Pi!- `totpSecret`: Needed for 2FA login (bot uses this)**Need support?** [Join our Discord](https://discord.gg/k5uHkx9mne)
**See [Scheduling Guide](schedule.md) for details**- `recoveryCode`: Emergency account recovery
#### Notifications (Optional)- `birthdate`: Needed if Microsoft suspends account---
Get notified when bot finishes:- `password`: Keep it safe!
**Discord Webhook:**## 🔗 Related Guides
```jsonc
{### Without 2FA (Not Recommended)
"conclusionWebhook": {
"enabled": true,- **[Accounts & 2FA](./accounts.md)** — Add Microsoft accounts with TOTP
"webhookUrl": "https://discord.com/api/webhooks/YOUR_WEBHOOK"
}If you don't want 2FA, just omit `-y`:- **[Docker](./docker.md)** — Deploy with containers
}
```- **[External Scheduling](./schedule.md)** — Automate daily execution
**NTFY Push Notifications:**```bash- **[Discord Webhooks](./conclusionwebhook.md)** — Get run summaries
```jsonc
{npm run creator https://rewards.bing.com/welcome?rh=YOUR_CODE
"ntfy": {```
"enabled": true,
"topic": "your-unique-topic",Then answer "n" when asked about 2FA.
"priority": 3
}---
}
```## ⚙️ Configuration
**See [Notifications Guide](conclusionwebhook.md) for setup**### Step 1: Setup Accounts File
#### Important Settings#### Option A: Use Setup Wizard
```jsonc```bash
{# Windows
"humanization": {setup\setup.bat
"enabled": true, // ⚠️ ALWAYS keep true!
"stopOnBan": true // Stop if ban detected# Linux/Mac
},bash setup/setup.sh
"workers": {
"doDesktopSearch": true,# Or via npm
"doMobileSearch": true,npm run setup
"doDailySet": true,```
"doMorePromotions": true,
"doPunchCards": trueThe wizard will:
}1. Create `src/accounts.jsonc` from template
}2. Ask you to fill in account details
```3. Compile the project
**See [Configuration Guide](config.md) for all options**#### Option B: Manual Setup
### Step 3: Build the Project1. Copy the template:
```bash
```bash # Windows
npm run build copy src\accounts.example.jsonc src\accounts.jsonc
Linux/Mac
Or skip if you used the setup wizard (it builds automatically). cp src/accounts.example.jsonc src/accounts.jsonc
---
2. Open `src/accounts.jsonc` in a text editor
## 🎮 First Run
3. Fill in your account(s):
### Manual Run ```jsonc
{
```bash "accounts": [
npm start {
``` "email": "john.smith1995@outlook.com", // From accounts-created/ file
"password": "Xyz789!@#AbcDef", // From accounts-created/ file
**What happens:** "totp": "JBSWY3DPEHPK3PXP", // ⚠️ REQUIRED if you enabled 2FA!
1. Bot logs into each enabled account "enabled": true // Set to true to activate
2. Completes desktop searches (30+) }
3. Completes mobile searches (20+) ]
4. Does daily activities (quizzes, polls) }
5. Completes promotional offers ```
6. Shows summary of points earned
4. **For each account you created**, copy the info from `accounts-created/` folder
### With Automatic Scheduling
5. Save the file
If you enabled scheduling in config:
### Step 2: Configure Bot Settings (Optional)
```bash
npm startOpen `src/config.jsonc` and adjust settings:
Scheduling (Recommended)
The bot will:
-
Run immediately once```jsonc
-
Automatically schedule future runs{
-
Run daily at your chosen time "scheduling": {
-
No need to run manually again! "enabled": true, // Enable automatic scheduling
"type": "auto", // Auto-detect OS
Monitoring "cron": {
"schedule": "0 9 * * *" // Run daily at 9 AM (Linux/Mac/Raspberry Pi)
Watch the console output to see: },
-
Login status "taskScheduler": {
-
Search queries "schedule": "09:00" // Run daily at 9:00 (Windows)
-
Activities completed }
-
Points earned }
-
Ban warnings (if any)}
---
**How it works:**
## 🎯 What's Next- Set `enabled: true`
- Run `npm start` once
### Optional: Enable Dashboard- Bot will automatically run every day at the scheduled time
- Perfect for Raspberry Pi or always-on PC!
Add to `src/config.jsonc`:
```jsonc#### Notifications (Optional)
{
"dashboard": {Get notified when bot finishes:
"enabled": true,
"port": 3000**Discord Webhook:**
}```jsonc
}{
``` "conclusionWebhook": {
"enabled": true,
Then access: http://localhost:3000 "webhookUrl": "https://discord.com/api/webhooks/YOUR_WEBHOOK_URL"
}
**See [Dashboard Guide](../src/dashboard/README.md)**}
Optional: Setup Proxies
NTFY Push Notifications:
For each account, add proxy in accounts.jsonc:```jsonc
{ "ntfy": {
"email": "...", "enabled": true,
"password": "...", "topic": "your-unique-topic",
"proxy": { "priority": 3
"url": "proxy.example.com", }
"port": 8080,}
"username": "user",```
"password": "pass"
}See [Notifications Guide](conclusionwebhook.md) for setup instructions.
}
```#### Other Important Settings
**See [Proxy Guide](proxy.md)**```jsonc
{
### Create More Accounts "search": {
"useLocalQueries": false, // Use Google Trends (recommended)
Repeat the account creation process: "settings": {
```bash "useGeoLocaleQueries": true // Use account country (FR, DE, etc.)
npm run creator https://rewards.bing.com/welcome?rh=YOUR_CODE -y backup@gmail.com }
``` },
"humanization": {
Each account earns YOU 7,500 bonus points per month! "enabled": true, // ⚠️ ALWAYS keep this true!
"stopOnBan": true // Stop if ban detected
--- },
"workers": {
## ❓ Troubleshooting "doDesktopSearch": true, // Desktop searches
"doMobileSearch": true, // Mobile searches
### "Account credentials are invalid" "doDailySet": true, // Daily activities
"doMorePromotions": true, // Promotional offers
**Cause:** Wrong email/password or missing TOTP "doPunchCards": true // Multi-day challenges
}
**Solution:**}
1. Check `src/accounts.jsonc` has correct credentials```
2. If 2FA enabled, make sure `totp` field has the secret
3. Test login manually: https://login.live.com/### Step 3: Build the Project
### "Ban detected" or "Account suspended"```bash
npm run build
**Cause:** Microsoft detected automation```
**Solutions:**Or if you used the setup wizard, it already did this for you.
- Always keep `humanization.enabled: true`
- Don't run bot multiple times per day---
- Use proxies (see [Proxy Guide](proxy.md))
- Start with 1-2 accounts to test## 🎮 First Run
**Recovery:**### Manual Run
- Use `birthdate` from `accounts-created/` file
- Use `recoveryCode` if can't login```bash
- Contact Microsoft with account creation datenpm start
"Browser launch failed"
The bot will:
**Solution:**1. ✅ Log into each enabled account
npx playwright install chromium3. ✅ Complete mobile searches (20+)
```4. ✅ Do daily activities (quizzes, polls)
5. ✅ Complete promotional offers
### "Module not found"6. ✅ Show summary of earned points
**Solution:**### With Scheduling (Recommended)
```bash
npm iIf you enabled scheduling in config:
npm run build
``````bash
npm start
### More Help```
- 📖 [Configuration Reference](config-reference.md)Then the bot will:
- 📖 [Diagnostics Guide](diagnostics.md)- Run immediately once
- 📖 [Accounts & 2FA](accounts.md)- **Automatically schedule future runs** (daily at your chosen time)
- 💬 [Join Discord](https://discord.gg/k5uHkx9mne)- You don't need to run it again manually!
---Perfect for Raspberry Pi or always-on systems.
## 🎯 Best Practices---
1. **Use referral links** — 7,500 extra points per account## 🔍 Monitoring
2. **Enable 2FA** — Protects accounts
3. **Keep humanization ON** — Reduces ban risk### Real-time Logs
4. **Run once per day** — Don't overuse
5. **Save account files** — Keep `accounts-created/` safeWatch the console output to see:
6. **Monitor logs** — Watch for warnings- Login status for each account
7. **Start small** — Test with 1-2 accounts- Search queries being performed
- Activities completed
---- Points earned
- Ban warnings (if any)
## 📚 Related Documentation
### Dashboard (Optional)
- [Configuration Guide](config.md)
- [Account Creator Details](../src/account-creation/README.md)Enable the web dashboard:
- [Dashboard Guide](../src/dashboard/README.md)
- [Scheduling Setup](schedule.md)```jsonc
- [Docker Deployment](docker.md){
- [Troubleshooting](diagnostics.md) "dashboard": {
"enabled": true,
--- "port": 3000
}
[← Back to Documentation](index.md)}
Then access: http://localhost:3000
Features:
- Real-time account status
- Live log streaming
- Manual sync buttons
- Configuration editor
- Historical metrics
❓ Troubleshooting
"Account credentials are invalid"
Problem: Wrong email/password or missing TOTP
Solution:
- Check
src/accounts.jsonchas correct email and password - If you enabled 2FA, make sure
totpfield has the secret fromaccounts-created/file - Test login manually at https://login.live.com/
"Ban detected" or "Account suspended"
Problem: Microsoft detected automation
Solutions:
- ✅ Always keep
humanization.enabled: truein config - ✅ Don't run the bot multiple times per day
- ✅ Use different proxies for each account (see Proxy Guide)
- ✅ Start with 1-2 accounts to test
Account Recovery:
- Use the
birthdatefromaccounts-created/file - Use the
recoveryCodeif you can't login - Contact Microsoft support with account creation date
"Browser launch failed"
Problem: Chromium not installed
Solution:
npx playwright install chromium
"Module not found" errors
Problem: Dependencies not installed
Solution:
npm i
npm run build
Setup Script Not Working
Windows:
# Run as Administrator
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
.\setup\setup.bat
Linux/Mac:
chmod +x setup/setup.sh
bash setup/setup.sh
More Help
🎯 Best Practices
- Use referral links - Earn 7,500 extra points per account per month
- Enable 2FA - Protect accounts from being stolen
- Keep humanization ON - Reduces ban risk
- Run once per day - Don't over-automate
- Save account files - Keep
accounts-created/folder safe - Use recovery email - Helps recover suspended accounts
- Monitor logs - Watch for ban warnings
- Start small - Test with 1-2 accounts first
🚀 Next Steps
Now that you're set up:
- ✅ Let the bot run once to see results
- ✅ Check points earned on https://rewards.bing.com/
- ✅ Set up scheduling for automatic runs
- ✅ Configure notifications to stay informed
- ✅ Add more accounts with referrals (earn more points!)
Happy farming! 🎉