# Open Orders

WCPOS allows you to work with multiple orders simultaneously. This is useful for handling customer holds, switching between transactions, and recovering from interruptions.

## Open Orders Carousel[​](#open-orders-carousel "Direct link to Open Orders Carousel")

At the bottom of the Cart Panel, a horizontal carousel displays all open orders:

<!-- -->

* Each cart shows its **total amount**
* The **current order** is highlighted
* Click any cart to switch to it
* Scroll left/right to see more carts

## Creating a New Order[​](#creating-a-new-order "Direct link to Creating a New Order")

A new empty cart is always available. Simply click on an empty cart in the carousel or start adding products when the current cart is empty.

## Switching Between Orders[​](#switching-between-orders "Direct link to Switching Between Orders")

Click on any order in the carousel to switch to it. The Cart Panel updates to show the selected order's contents.

**Use cases:**

* Customer steps away to get another item
* Need to help a quick customer while a large order is in progress
* Comparing prices or items between orders

## Saving Orders to Server[​](#saving-orders-to-server "Direct link to Saving Orders to Server")

Orders exist in two states:

### Local Only[​](#local-only "Direct link to Local Only")

By default, new orders are stored only in the local browser/app database. They will persist across page refreshes but:

* Are not visible in WooCommerce admin
* Will be lost if the local database is cleared
* Are not accessible from other devices

### Saved to Server[​](#saved-to-server "Direct link to Saved to Server")

Click **Save to Server** to create a WooCommerce order with the status `pos-open`. This:

* Creates a real order in WooCommerce
* Persists even if the local database is cleared
* Can be accessed from other devices
* Appears in WP Admin > WooCommerce > Orders

When to Save

Save orders to the server when:

* A customer wants to hold an order for later pickup
* You're ending your shift and another cashier will continue
* You want a backup in case of app/browser issues

## Recovering Saved Orders[​](#recovering-saved-orders "Direct link to Recovering Saved Orders")

If you've saved orders to the server, they can be accessed again by:

1. Opening the **Orders** screen (Pro feature)
2. Filtering by status `pos-open`
3. Reopening the order

## Order Persistence[​](#order-persistence "Direct link to Order Persistence")

### Local Storage[​](#local-storage "Direct link to Local Storage")

WCPOS uses IndexedDB to store orders locally. This provides:

* Persistence across browser sessions
* Fast access without network requests
* Offline capability

### Sync with Server[​](#sync-with-server "Direct link to Sync with Server")

When you save to server or checkout:

* The order is sent to WooCommerce
* A confirmation is received
* Local and server data are synchronized

## Voiding Orders[​](#voiding-orders "Direct link to Voiding Orders")

To remove an open order:

1. Switch to the order you want to remove
2. Click the **Void** button

**What happens:**

* **Unsaved orders:** Permanently deleted from the local database
* **Saved orders:** Moved to Trash in WooCommerce and deleted locally

To recover a voided saved order:

1. Go to `WP Admin > WooCommerce > Orders > Trash`
2. Restore the order

## Tips[​](#tips "Direct link to Tips")

### Keep Orders Organized[​](#keep-orders-organized "Direct link to Keep Orders Organized")

With multiple open orders, it helps to:

* Add customer names to orders for easy identification
* Add order notes describing the hold reason
* Save important orders to the server

### Shift Handoffs[​](#shift-handoffs "Direct link to Shift Handoffs")

When ending a shift with open orders:

1. Save all important orders to the server
2. Add order notes explaining the status
3. The next cashier can access them from the Orders screen

### Offline Considerations[​](#offline-considerations "Direct link to Offline Considerations")

If you lose connectivity:

* Local orders remain accessible and you can continue adding items
* You cannot complete/checkout orders until connectivity is restored
* You cannot save orders to the server until reconnected
* You cannot create new customers until reconnected
