Skip to main content

Installation

Step 1: Clone the Repository

git clone <repository-url>
cd fifa-bot

Step 2: Install Python Dependencies

Install the required Python packages:
pip install selenium pyrebase pywin32 Pillow
Make sure you have Python 3.x installed. You can verify by running python --version

Step 3: Verify ChromeDriver

The project includes chromedriver.exe and chromedriver85.exe. Ensure you’re using the version that matches your Chrome browser:
# Check your Chrome version
# Chrome > Settings > About Chrome

# If needed, download the matching ChromeDriver from:
# https://chromedriver.chromium.org/downloads
ChromeDriver version must match your Chrome browser version for the bot to work properly.

Chrome Setup

The bot requires two separate Chrome instances with remote debugging enabled.

Step 4: Add Chrome to System PATH

1

Locate Chrome Installation

Find your Chrome installation (usually C:\Program Files\Google\Chrome\Application\)
2

Add to PATH

Add the Chrome directory to your Windows PATH environment variable:
  • Right-click “This PC” → Properties
  • Advanced system settings → Environment Variables
  • Edit “Path” under System Variables
  • Add Chrome’s directory path
3

Verify

Open Command Prompt and type chrome.exe --version to verify

Step 5: Launch Chrome Instances

Launch two separate Chrome instances with different profiles and debugging ports.

For FIFA Web App

Run the provided batch script or execute in Command Prompt:
chrome.exe --remote-debugging-port=9250 --user-data-dir="C:/chromedriver2"
This creates a Chrome instance on port 9250 with a separate profile at C:/chromedriver2

For WhatsApp Web (Optional)

Open a new Command Prompt and run:
chrome.exe --remote-debugging-port=9222 --user-data-dir="C:/chromedriver"
WhatsApp notifications are optional but highly recommended for monitoring the bot remotely.

Step 6: Login to Web Apps

1

FIFA Web App Login

In the first Chrome window (port 9250):
2

WhatsApp Web Login (Optional)

In the second Chrome window (port 9222):
  • Navigate to https://web.whatsapp.com/
  • Scan QR code with your phone
  • Open the chat where you want to receive notifications
  • Leave this window open

Firebase Configuration

If you want to use the remote control feature, set up Firebase:

Step 7: Create Firebase Project

1

Go to Firebase Console

2

Create New Project

Click “Add project” and follow the setup wizard
3

Enable Realtime Database

In your project dashboard:
  • Go to Build → Realtime Database
  • Click “Create Database”
  • Start in test mode for development
4

Get Configuration

Go to Project Settings → General Copy your Firebase configuration values

Step 8: Update Firebase Credentials

Update the Firebase configuration in both files: In bot-desktop.py (lines 23-28):
config = {
  "apiKey": "YOUR_API_KEY",
  "authDomain": "YOUR_PROJECT.firebaseapp.com",
  "databaseURL": "https://YOUR_PROJECT.firebaseio.com",
  "storageBucket": "YOUR_PROJECT.appspot.com"
}
In CONTROL_REMOTO/js/index.js (lines 1-10):
var firebaseConfig = {
    apiKey: "YOUR_API_KEY",
    authDomain: "YOUR_PROJECT.firebaseapp.com",
    databaseURL: "https://YOUR_PROJECT.firebaseio.com",
    projectId: "YOUR_PROJECT_ID",
    storageBucket: "YOUR_PROJECT.appspot.com",
    messagingSenderId: "YOUR_SENDER_ID",
    appId: "YOUR_APP_ID",
    measurementId: "YOUR_MEASUREMENT_ID"
};
Never commit your actual Firebase credentials to version control. Consider using environment variables for production.

Running the Bot

Step 9: Launch the Bot

Run the main bot script:
python bot-desktop.py
The Tkinter GUI will open with controls for the bot.

Step 10: Configure Trading Parameters

In the bot GUI, set your trading parameters:
1

Set Price Range

Precio Final (Selling Price): The price you want to sell players atThe bot automatically calculates:
  • Precio Compra (Buy Price): Final / 1.07 (to ensure profit after EA’s 5% tax)
  • Precio Inicial (Starting Price): Final - 1000 (listing start price)
2

Configure Filters

Use the filter dropdowns to target specific players:
  • LIGA: Select league (e.g., “LaLiga Santander”)
  • CLUB: Enter specific club name
  • CALIDAD: Quality (Oro/Gold, Plata/Silver, Bronce/Bronze)
  • TIPO: Type (Comunes/Common, Únicos/Special)
  • POSICION: Position (POR/GK, DC/ST, MC/CM, etc.)
  • PAIS: Nationality (Brasil, Argentina, etc.)
3

Apply Filters

Click Selecciones to apply filters to the FIFA Web App
4

Review Price

Click Revisar Precio to analyze the market and find optimal price ranges

Step 11: Start Trading

1

Click Iniciar

Press the Iniciar button to start the bot
2

Monitor Activity

Watch the console and WhatsApp for notifications:
  • “SE COMPRO [price]” - Successful purchase
  • “NO SE COMPRO [price]” - Failed purchase (too slow)
  • “Limpiando vendidos” - Clearing sold items
3

Stop When Needed

Click Detener to stop the bot at any time

Configuration Options

Auto-Cleanup Settings

Configure when the bot clears sold items from your transfer list:
# In the GUI, set "Cada N búsquedas"
itera.get()  # Number of searches before cleanup (default: varies)

Price Range Auto-Adjustment

Enable automatic price range recalculation:
# Check "Buscar Rango eR=1" to enable
# Set "Cada __ busquedas" (default: 31)
# This recalculates optimal prices every N searches

Notification Settings

Enable/disable different notification types:
  • Enviar Whatsapp eW=1: Enable WhatsApp messages
  • Enviar ScreenShot eSS=1: Send screenshots on purchases/errors

Remote Control Setup

Step 12: Host the Web Interface

1

Open Control Interface

Open CONTROL_REMOTO/index.html in a web browser
2

Use Remote Controls

  • DETENER: Stop the bot remotely
  • SCREENSHOT: Request a screenshot via WhatsApp
  • INICIAR: Start the bot remotely
The remote control works from any device with internet access, allowing you to monitor and control the bot from your phone or another computer.

Trading Modes

Buy Now Mode (Default)

The default mode continuously searches for “Buy Now” deals:
def clickEncontrado():
    # Finds items listed at "Buy Now" price
    # Purchases immediately if below max price
    # Lists for resale automatically

Bidding Mode

For lower competition markets, use bidding mode:
# Click the bidding button in GUI
def bidding():
    # Places bids on multiple players
    # Monitors auctions
    # Lists won auctions for resale

Troubleshooting

Bot Not Finding Chrome Windows

Ensure Chrome instances are running on the correct ports (9250 and 9222) before starting the bot.
# Restart Chrome with correct parameters
chrome.exe --remote-debugging-port=9250 --user-data-dir="C:/chromedriver2"

XPath Errors

If the bot can’t find elements:
1

Check FIFA Web App Updates

EA frequently updates the Web App interface, which may break XPath selectors
2

Update XPaths

Use Chrome DevTools to find new element paths:
  • Right-click element → Inspect
  • Copy → Copy XPath
  • Update in bot-desktop.py

Session Expired

If you get logged out of FIFA Web App:
# Use the re-login function
def reLogin():
    # Click through login screens
    # Enter password
    # Navigate back to transfer market
Or manually:
  1. Click RELOGIN in remote control interface
  2. Or restart the Chrome instance and log in again

No Purchases Being Made

If the bot searches but never buys:
1

Check Price Settings

Your max buy price might be too low. Click Revisar Precio to analyze the market.
2

Adjust Filters

You might be targeting a very competitive market. Try different leagues/positions.
3

Verify Balance

Make sure you have enough coins to make purchases.

Advanced Usage

Custom Profit Margins

Modify the profit calculation to suit your strategy:
# In revisarPrecio() or buscarRango()
# Adjust the profit margin calculation
maximo = round((precioVenta * 0.95) - desired_profit)

# Example: Higher profit margin
maximo = round((precioVenta * 0.95) - 500)  # Aim for 500+ coin profit

Speed Optimization

Toggle fast/slow mode for different server conditions:
# In GUI, there's a "rapido" checkbox
if rapido.get() == 1:
    time.sleep(normal_delay)  # Wait for server
else:
    time.sleep(1)  # Minimal delay for fastest operation
Faster speeds increase profit potential but may trigger EA’s anti-bot detection. Use with caution.

Best Practices

1

Start Small

Begin with lower-value players (1000-5000 coins) to learn the bot’s behavior
2

Monitor Initially

Watch the bot for the first hour to ensure it’s working correctly
3

Use Price Range Detection

Let the bot find optimal prices rather than guessing
4

Don't Run 24/7

Take breaks to avoid detection and prevent account flags
5

Keep Chrome Windows Open

Never close the Chrome debugging windows while the bot is running
6

Check Transfer List

Periodically verify sold items are being cleared properly

Next Steps

Now that your bot is running, learn how to:
  • Optimize your trading strategy
  • Handle errors and edge cases
  • Configure advanced filters
  • Analyze your profits
Remember: FIFA Bot is a powerful tool, but success requires smart configuration and market understanding. Start conservatively and scale up as you learn what works.

Build docs developers (and LLMs) love