---
title: "Cancellations in POS"
description: "How the product and sale cancellation system with barcode authorization works in the Point of Sale."
keywords: ["pos", "cancellations", "barcode", "authorization", "junior salesperson"]
lastUpdated: "2025-02-11"
---

# Cancellations in POS

Sarah's cancellation system allows you to **control the removal of products and sales** through a barcode authorization process.  
This is especially useful in environments where supervision is needed over what gets removed from the cart.

## Who needs authorization?

The barcode authorization cancellation system applies **exclusively to the Junior Salesperson role (Role ID: 4)**.

| Role | Remove products | Cancel sales |
|---|---|---|
| **Administrator** (1) | Direct, no authorization | Direct |
| **Cashier** (2) | Direct, no authorization | Direct |
| **Salesperson** (3) | Direct, no authorization | Direct |
| **Junior Salesperson** (4) | Requires authorization code | Requires code + comment |

Roles 1, 2, and 3 can freely remove products from the cart and close sales.  
The **Junior Salesperson** cannot edit prices or quantities, and needs authorization for any removal.

## Authorization codes

Authorization codes are **barcodes** configured at the company level and printed for use by authorized personnel (supervisors, managers).

### Configure codes

1. Go to **Company Settings**
2. Find the **Cancellation codes** section
3. You can:
   - **Generate** a new code automatically
   - **Enter** a code manually
   - Assign a descriptive **label** (e.g., "Morning shift supervisor")
4. Click **Add**

Each code can be:
- **Viewed** in full by clicking the eye icon
- **Printed** individually to hand out to authorized personnel
- **Deleted** when no longer needed

It is recommended to have at least one active code per shift or supervisor.

## Cancelling a single product

When a **Junior Salesperson** presses the delete icon (🗑) on a cart product:

1. An **authorization** modal opens
2. The supervisor scans or enters the **authorization code**
3. The code is validated against the database
4. If valid, the product is removed from the cart
5. The cancellation is recorded in the log

No comment is required for individual product cancellations.

## Quick cancellation (Shortcut: Q)

For scenarios where multiple products need to be cancelled quickly, there is a **quick cancellation** mode:

1. Press the **Q** key or the **Quick cancellation** button in the cart footer
2. **Step 1**: Scan the authorization code
3. **Step 2**: Scan the barcode of the product to remove
4. The product is removed and the modal closes automatically

If you need to cancel another product, you must restart the process (new authorization for each cancellation).

## Cancelling a complete sale

When a **Junior Salesperson** tries to close (X) a sale tab:

1. A **sale cancellation** modal opens
2. The supervisor scans or enters the **authorization code**
3. A **mandatory comment** must be written explaining the reason for cancellation
4. The code is validated and the cancellation is recorded
5. The sale is removed from the POS

The comment is mandatory for complete sale cancellations and is recorded in the log.

## Cancellation records

Each cancellation generates a record with the following information:

| Field | Description |
|---|---|
| **Date and time** | Exact moment of cancellation (local time) |
| **Type** | `Product` or `Sale` |
| **Sale** | Associated sale number |
| **Product** | Name of cancelled product (if applicable) |
| **Quantity** | Quantity that was cancelled |
| **Unit price** | Price at the time of cancellation |
| **Subtotal** | Quantity x Unit price |
| **Cancelled by** | Name or email of the user who performed the cancellation |
| **Authorizer** | Label of the barcode used |
| **Comment** | Reason for cancellation (only for sale cancellations) |

The product description and price are copied at the time of cancellation, so the record remains intact even if the product is later deleted from the system.

## Cancellation logs view

The logs view is available at **Sales > Cancellations** and is accessible **only to Administrators (Role ID: 1)**.

From this view you can:

- See all cancellations sorted from newest to oldest
- Filter by type (product or sale)
- Review who cancelled, with what authorization, and for what reason
- Export data for auditing

## Junior Salesperson POS restrictions

In addition to the cancellation system, the Junior Salesperson role has the following POS restrictions:

- **Cannot edit prices** of products in the cart
- **Cannot edit quantities** of products in the cart
- **Can register returns** from the Returns button in the POS
- **Cannot see Inventory > Products** in the sidebar menu

For more details about roles, see [Roles and Permissions](/docs/security/permissions).

## Best practices

- **Print the codes** and hand them out only to authorized personnel (supervisors, managers)
- **Rotate codes** periodically for security
- **Review logs** regularly to detect unusual patterns
- **Use descriptive labels** on codes to easily identify who authorized each cancellation
- **Require clear comments** on sale cancellations to maintain traceability
