# Listings

The simplest flow: a player lists a vehicle from their garage at a fixed price; another player walks up to the market zone, opens the tablet, and buys it.

***

## Selling

::::steps
### Open the tablet at a market zone

Walk up to the NPC at any `Config.Zones` entry and interact (`ox_target` or `E` by default).


### Go to "Sell car"

The page shows your garage on the right. Vehicles already on the market are filtered out.


### Pick a car & fill the form

* **Car name** — defaults to the model name, but you can rename for vanity (e.g. *"Garage Queen — Low Miles"*).
* **Price** — what you're asking. For auctions this is the **minimum opening bid**.
* **Description** — free text shown on the listing.
* **Offer type** — `Buy now` or `Auction`.


### (Auction only) Set start & end dates

Use the custom date-time picker. Auctions go through three states:

* **Waiting** — between create-time and `auction_starts_at`. No bids accepted.
* **Active** — between start and end. Players can bid; price equals the highest bid.
* **Ended** — past `auction_ends_at`. Winner clicks **Buy out** to finalize.


### Click "Create listing"

The car is moved to a slot inside a zone you own. If you own multiple slots, the closest free slot to your current position wins.

:::hint{type="warning"}
You need to **own a slot** in the zone you're listing into. See [Parking Slots](/free/carmarket/features/parking-slots) for how to buy one.
:::
::::

***

## Buying

* Open the tablet at any zone → **Market** tab.
* Filter by car type, drive type, fuel type, price range.
* Click a listing → review details → **Buy Vehicle**.

The vehicle is transferred to **your** garage; money is moved atomically with rollback if anything fails partway through.

:::hint{type="info"}
For buy-now listings, the price is what the seller set. For ended auctions, only the **highest bidder** can buy out.
:::

***

## Editing your listing

In **My offers** you can:

* Update the **price**
* Update the **tags**
* **Remove** the listing (refunds the slot weekly-fee for the unused time? — **no**, fees are non-refundable)

:::hint{type="warning"}
You can **only** remove an auction listing while it's in `waiting` state. Once bidding starts, the auction is locked in.
:::

***

## What gets persisted

| Data                       | Table                     |
| -------------------------- | ------------------------- |
| The listing                | `koja_carmarket_listings` |
| The spawned vehicle's slot | `koja_carmarket`          |
| Completed sale (audit)     | `koja_carmarket_history`  |

## Related pages

- [Exchange Zones](/free/carmarket/features/exchange-zones) — A player can own an entire zone and run it like a small business: set listing fees, take commission on every sale, cap how many listings can run concurrently.
- [Auctions](/free/carmarket/features/auctions) — Time-boxed bidding with a clear winner and a buy-out finalization step.
- [Overview](/free/carmarket/features/overview) — What players can actually do with Koja-Carmarket, from their POV.
- [Parking Slots](/free/carmarket/features/parking-slots) — Before a player can list a car, they need at least one parking slot in the zone they want to list in.
- [Test Drives](/free/carmarket/features/test-drives) — Let a buyer try the vehicle before they commit.
- [Features](/free/carmarket/features) — back to the section overview
