> For the complete documentation index, see [llms.txt](https://dynamite-1.gitbook.io/dynamite/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dynamite-1.gitbook.io/dynamite/site-guides/eb-games.md).

# EB Games

PayPal and card checkout are supported.

***

### Task file (`tasks.csv`)

#### Always needed

| Column            | What it is                                   |
| ----------------- | -------------------------------------------- |
| **profile\_name** | Must match a profile in `profiles.csv`.      |
| **payment\_type** | `paypal` or `card`.                          |
| **mode**          | `account`, `instore`, or `loop` (see below). |
| **account**       | Email that matches a row in `accounts.csv`.  |

#### Usually needed

| Column           | What it is                                                         |
| ---------------- | ------------------------------------------------------------------ |
| **product\_url** | Full product link (unless **Pre-queue** is on — see that section). |
| **quantity**     | Single number, `max`, or comma-separated values for multicart.     |

#### Optional but common

| Column           | What it is                                                                  |
| ---------------- | --------------------------------------------------------------------------- |
| **distance**     | Used with **instore** — max distance (km) to search for a store with stock. |
| **proxy\_file**  | Your proxy list choice from the app / CLI setup.                            |
| **loopcatchall** | Needed for **loop** mode — your catchall domain (e.g. `@yourdomain.com`).   |
| **imap**         | Needed for **loop** — the inbox email used to receive EB verification mail. |
| **max\_loops**   | Loop only — cap how many successful loops run (`max` or blank = no limit).  |

#### Pre-queue

| Column             | What it is                                                                                                                                                                                                                                                                                                        |
| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **prequeue**       | Turn on with `true` / `yes` / `1`. Lets the task warm the site and handle queue-style flows before locking onto a product.                                                                                                                                                                                        |
| **prequeue\_pool** | Only used when **prequeue** is on **and** mode is **loop**. Sets how many extra sessions keep browsing in the background so loop runs can pick a path that isn’t stuck in the waiting room. Use `0` to turn that behaviour off. If you leave the cell blank, a sensible default is used. Allowed range: **0–50**. |

**Pre-queue notes**

* With pre-queue on, you don’t have to start with a **product\_url** in the CSV; you can add or change the target from the GUI while the task is live (when the app allows editing that row).
* Your normal **login cookies** still apply; you’re not asked to paste checkout-specific cookies by hand.

***

### Modes

#### 1. Account (`account`)

Normal home delivery checkout on a logged-in account.

**Needs:** valid account row, Capsolver key in config, profile details.

#### 2. Click & collect (`instore`)

Checkout as pickup from a store instead of shipping.

**Needs:** same as account, plus a sensible **distance** value so the bot can pick a store within range.

#### 3. Loop (`loop`)

After a successful checkout, the bot can run again on a fresh loop email (catchall + IMAP verification flow).

**Needs:**

* **loopcatchall** and **imap** filled in on the task.
* Same account/profile/payment setup as usual.

**Pre-queue + loop**

If you use **prequeue** together with **loop**, optional **prequeue\_pool** controls how many extra “warm” sessions stay active in the background between loops. That reduces how often the next loop starts already parked in the site’s waiting room. If you only use loop **without** pre-queue, that pool setting doesn’t apply.

***

### Multicart

**Modes:** `account` or `instore`.

Put multiple URLs in **product\_url** separated by commas. Match them with comma-separated **quantity** values in the same order.

If something is out of stock, it’s skipped and the rest can still check out if stock allows.

***

### Accounts (`accounts.csv`)

**Required**

* **email** — EB login email
* **password** — EB login password

**Cookie columns** (filled by the bot after login, don’t hand-edit unless you know why):

asp\_auth, checkout\_session, checkout\_options, customer\_id, loyalty\_detail, postcode, user\_detail, persistentlogin

***

### Profiles (`profiles.csv`)

**Required**

| Field                    | Notes                      |
| ------------------------ | -------------------------- |
| profile\_name            | Unique label used in tasks |
| first\_name / last\_name | Billing name               |
| email                    | Contact email on the order |
| phone                    | AU-format phone            |
| address1                 | Street                     |
| city                     | Suburb / city              |
| state                    | e.g. NSW, VIC              |
| zipcode                  | Postcode                   |

For **card** tasks, card fields in the profile must be filled as your build expects.

***

### Example rows

**Standard account checkout**

```
product_url,quantity,profile_name,payment_type,mode,account
https://www.ebgames.com.au/product/ps5/290554-sony-playstationvr2,1,JohnDoe,paypal,account,john@example.com
```

**Click & collect**

```
product_url,quantity,profile_name,payment_type,mode,account,distance
https://www.ebgames.com.au/product/xbox/123456-example,1,JohnDoe,card,instore,john@example.com,25
```

**Loop (with catchall + IMAP)**

```
product_url,quantity,profile_name,payment_type,mode,account,loopcatchall,imap,max_loops
https://www.ebgames.com.au/product/nintendo/789012-example,1,JaneDoe,paypal,loop,jane@example.com,@yourcatchall.com,inbox@yourmail.com,max
```

**Pre-queue + loop (optional pool size)**

```
prequeue,prequeue_pool,product_url,quantity,profile_name,payment_type,mode,account,loopcatchall,imap
true,12,,1,JohnDoe,paypal,loop,john@example.com,@yourcatchall.com,inbox@yourmail.com
```

*(Headers must match your actual CSV column order; include every column your build expects — e.g. **proxy\_file** if you use it.)*

***

### Quick reminders

* Every task row needs a valid **account** email present in **accounts.csv**.
* Mode must be **account**, **instore**, or **loop** — not shop-specific modes from other sites.
* **prequeue\_pool** only does something when **prequeue** is on **and** mode is **loop**.
