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

# Manage listing inventory

> How inventory changes after cash sales, pricing edits, and restocking work on published listings

# Manage listing inventory

How you change a published listing's inventory depends on what you need to do. Reducing what's available happens as part of recording a sale, pricing is edited on its own, and adding stock happens only when you create or renew a listing.

For the full published listing workflow, see [Manage published listings](/help/manage-published-listings).

## Where each inventory change lives

| What you want to do                            | Where to do it                                                      |
| ---------------------------------------------- | ------------------------------------------------------------------- |
| Reduce availability after an offline/cash sale | **Cash Sale** (records what sold and generates the buyer's code)    |
| Change prices on a live listing                | **Edit Pricing**                                                    |
| Add or increase stock                          | A new listing (Step 4), or **Extend/Renew → Edit Inventory**        |
| Restore availability after a reversed sale     | **Status & Duration** while the listing is still in its live window |

## Reduce inventory after a cash sale

When you sell animals outside the app — cash at pickup, a farm-gate sale, or a deal closed by phone or text — reduce inventory from the **Cash Sale** flow. It updates availability and generates the buyer's confirmation code in one step.

1. Open the **Sell** tab.
2. In **Published**, open the listing that matches the animals you sold.
3. Select **Cash Sale**.
4. Under **How many sold?**, set the quantity for each row that sold.
5. Select **Generate Code** to apply the change and create the buyer's code.
6. Share the code or QR code with the buyer so they can confirm the purchase and leave a review.

If you sold 2 animals from a row that had 8 available, set that row to `2` and the row drops to `6` when the code is generated.

<Tip>
  Record the cash sale right after it closes. Reducing inventory and handing the buyer their code in one step keeps the listing accurate and the buyer able to leave a review.
</Tip>

You can also generate a code without changing inventory — leave every row at `0`. That's the right choice when you're re-issuing an expired code, the count is already accurate, or the sale isn't a tracked inventory line. See [Generate a code without changing inventory](/help/cash-confirmation#generate-a-code-without-changing-inventory) for the full list.

## Edit pricing

Use **Edit Pricing** on the manage screen to update the cash or card price for existing rows on a live listing. Quantities are locked in this view — changing what's available happens through Cash Sale (down) or Extend/Renew (up).

To add stock or change rows for a new paid window, use **Edit inventory** during Extend or Renew.

## What happens when inventory reaches zero?

When every inventory row on a listing reaches `0`, the listing automatically becomes `sold_out`.

If only one row reaches `0`, the rest of the listing can stay active as long as other rows still have quantity available.

## When can availability be restored after a listing sells out?

Sold-out listings are not meant for ongoing restocking.

The only exception is when the listing is still within its current live window and a prior sale is reversed. Common examples include:

* A buyer backs out
* An animal is returned
* A deal falls through

In that narrow case, the listing owner can restore `quantity_available` only up to the original `quantity_initial`. You cannot use this to add new inventory, exceed the original amount, or keep reusing a long-duration listing as a rolling inventory feed.

If you need to offer a new group of animals later, create a brand new listing.

If the listing window has already ended, renew the listing before putting it back online.

During paid Renew, you can edit inventory for the next window before you pay. Those edits are pending until checkout finishes.

## Inventory rules by listing status

| Listing state                              | Available quantity                                                       | Original quantity                            | Add inventory rows     | Delete inventory rows  |
| ------------------------------------------ | ------------------------------------------------------------------------ | -------------------------------------------- | ---------------------- | ---------------------- |
| Active                                     | Can only decrease (via Cash Sale)                                        | Locked                                       | No                     | No                     |
| Sold out (staff)                           | Locked at `0`                                                            | Locked                                       | No                     | No                     |
| Sold out (owner, still within live window) | Can be restored only up to the original quantity when a sale is reversed | Locked                                       | No                     | No                     |
| Active Extend checkout                     | Pending edits can increase or decrease for the next window               | Pending edits can change for the next window | Yes, before payment    | Yes, before payment    |
| Expired or past-window sold out            | Locked until renewal                                                     | Locked until renewal                         | Only during paid Renew | Only during paid Renew |
| Draft                                      | Free                                                                     | Free                                         | Yes                    | Yes                    |

To add stock to a published listing, renew or extend it and use **Edit Inventory** in that flow. Expired listings must be renewed before inventory can be changed as part of a new listing window. For renewal details, see [Listing expiration and renewal reminders](/help/listing-expiration).

## Example

A seller lists 5 animals. They sell all 5 through cash sales, and the listing becomes sold out.

Later, one deal falls through while the listing is still within its original listing window. The seller can restore availability back up to `5`, but not above it. They cannot enter `6`, `10`, or `50`.

<Warning>
  Do not use a sold-out listing to keep adding new animals during a long listing window. The sold-out exception is only for reversing a failed sale while the current listing window is still active.
</Warning>

## What counts as a cash sale?

A cash sale is any sale you complete outside the app where inventory still needs to be updated manually.

Common examples:

* Cash paid at pickup
* An in-person farm or ranch sale
* A sale completed by phone, text, or direct message

## Best practices

* Record the cash sale immediately after it closes so inventory and the buyer's code stay in sync.
* Double-check that you are reducing the correct inventory row.
* Reduce only the quantity that actually sold.
* Keep active listings accurate so buyers do not see animals that are no longer available.
