> ## Documentation Index
> Fetch the complete documentation index at: https://docs.awokenlabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ATMs

> Quick cash-out access to a player's account at world ATM props - a limited teller.

An ATM is a **limited version of the bank app** for quick cash - withdraw, check a balance, and go. Anything more (deposits, transfers, moving money between accounts) needs a full **teller** at a bank. Turn ATMs off with `Config.Atm.enabled = false`. Everything here is in `config/atm.lua`.

## The two ways in

* **Target the ATM** - walk up and use it. With **ox\_target** you get a **Use ATM** prompt; the built-in drawtext prompt uses the nearest ATM.
* **Use a bank card** - use a card near an ATM to open it against that card's account. See [Bank cards](/resources/awoken-banking/configuration/cards).
* **A custom ATM spot** - add extra ATM points anywhere with the in-game creator (a walk-up **\[E]** prompt or a drawn zone). They open the same ATM UI - no props, no ownership, just an interaction point where you need one. The `withdrawFeePercent` below applies to these too.

By default an ATM is **card-driven**: pick a card you're carrying, enter its PIN, and it works against **only that card's account**. Steal someone's card and PIN and you can use their ATM - deliberate, like real life. Set `requireCard = false` for **cardless** ATMs, where players open their own accounts by identity.

## What you can do at an ATM

Each action can be switched on or off. A disabled action is enforced on the server **and** its tab is hidden, so players never see it. Anything off here still works at a teller.

```lua config/atm.lua theme={"dark"}
actions = {
    withdraw = true,
    deposit  = false,   -- off by default: ATMs are cash-out only
    transfer = false,
    balance  = true,
}
```

| Action     | What it does                   | Default |
| ---------- | ------------------------------ | ------- |
| `withdraw` | Take cash out.                 | On      |
| `deposit`  | Put cash in.                   | **Off** |
| `transfer` | Move money to another account. | Off     |
| `balance`  | View the account balance.      | On      |

## Limits and fees

ATMs have their own caps, separate from teller limits (`Config.Money`). These apply **only** at ATMs.

| Setting              | What it does                                                                  | Default |
| -------------------- | ----------------------------------------------------------------------------- | ------- |
| `maxWithdraw`        | Most cash a player can take out in a **single** withdrawal.                   | `5000`  |
| `dailyLimit`         | Total a character can withdraw from ATMs **per day**. `0` = unlimited.        | `0`     |
| `withdrawFeePercent` | Fee on each withdrawal, as a fraction `0`-`1` (e.g. `0.05` = 5%). `0` = free. | `0.0`   |

## The settings

| Setting                        | What it does                                                             | Default                |
| ------------------------------ | ------------------------------------------------------------------------ | ---------------------- |
| `enabled`                      | Target world ATM props to open the UI. `false` = ATMs off, tellers only. | `true`                 |
| `models`                       | ATM prop models that open the app. Add or remove to support more props.  | fleeca + standard ATMs |
| `requireCard`                  | Every ATM action needs a card. `false` = cardless.                       | `true`                 |
| `requirePin`                   | Ask for the card's PIN before opening.                                   | `true`                 |
| `allowPhysicalHolder`          | Bearer model - whoever holds the card may use it, not just its owner.    | `true`                 |
| `target.label` / `target.icon` | Wording and icon of the ox\_target prompt.                               | `Use ATM`              |
| `target.distance`              | ox\_target interaction distance.                                         | `1.5`                  |
| `range`                        | Metres a player must stay within; every action re-confirms it.           | `3.0`                  |
| `animation`                    | Play the card-insert pose before the UI. `false` = open instantly.       | `true`                 |

## Good to know

* **Standing check** - wherever a player opens it, the server re-confirms they're within `range` metres on every action. Walk away mid-session and the ATM stops serving you.
* **Physical cards** - whether cards are inventory items is set in [Bank cards](/resources/awoken-banking/configuration/cards) (`Config.Cards.inventory.enabled`). This file only decides whether the ATM asks for one.
* **Steering players to banks** - a modest `maxWithdraw` plus a small `withdrawFeePercent` keeps ATMs handy for quick cash but makes the teller the better deal for big amounts.
