boxcart.dev

Orders

Every order placed through your BoxCart store follows a clear lifecycle from creation to completion. This guide covers how orders work, how to manage them, and the tools available for printing, reordering, and modification.

Order Lifecycle

BoxCart uses a linear status flow that tracks each order from the moment it is placed through to completion. The primary path is:

Pending → Processing → Ready → Completed

At any point before completion, an order can also be moved to Cancelled as a side branch.

StatusDescription
PendingThe order has been placed and is awaiting action from the store. This is the default status for new orders. Always available and cannot be disabled.
ProcessingThe store has acknowledged the order and is preparing the items for collection. For Stripe and bank transfer orders, this status is set automatically once payment is confirmed.
ReadyAll items have been picked and packed. The order is ready for the customer to collect. A "Ready for Collection" email is sent to the customer.
CompletedThe customer has collected their order. The order is finalised and archived.
CancelledThe order has been cancelled by the store or the customer. Always available and cannot be disabled.
Screenshot: Orders list showing status tabs, filters, and the order table
Configurable statuses

You can choose which statuses are enabled in BoxCart → Settings → Orders. The Processing, Ready, and Completed statuses can each be toggled on or off. Pending and Cancelled are always available. The default status for new orders is configurable and defaults to "Pending".

Payment Statuses

BoxCart tracks payment status separately from order status. This allows you to see at a glance whether an order has been paid, regardless of where it is in the fulfilment process. The "Payment Status" column appears in the orders list when payments are enabled.

Payment StatusDescription
Not RequiredNo payment is needed for this order. This is the default when the payment system is disabled.
PendingPayment is expected but has not yet been initiated. Used for cash on collection orders.
Awaiting PaymentThe customer has been given payment instructions (e.g. bank transfer details) and the store is waiting for funds to arrive.
ProcessingPayment is being processed by the payment gateway (e.g. Stripe is handling the transaction).
PaidPayment has been successfully received and confirmed.
FailedThe payment attempt was unsuccessful. The order still exists and the customer may retry.
RefundedThe payment was returned to the customer after a previously successful charge.
CancelledThe payment was cancelled before completion.
Tip

For bank transfer orders, a "Confirm Payment Received" button appears on the order detail view. Clicking it sets the payment status to "Paid" and automatically advances the order status to "Processing".

Managing Orders

The orders list is your central hub for day-to-day order management. Navigate to Admin → BoxCart → Orders to access it.

Filtering and searching

The orders list provides several ways to find the orders you need:

Results are paginated at 20 orders per page with sortable columns.

Changing order status

From the order detail view, use the status dropdown to advance an order through the lifecycle. Each status change is:

Status change logging

Every status change is recorded in the boxcart_order_status_log table. This provides a complete audit trail showing who changed the status, when it was changed, and what the previous status was.

Order Detail View

Click any order in the list to open the full order detail view. This page displays everything you need to fulfil the order.

Customer information

Order items

An itemised list showing each product ordered, including:

Collection details

Payment information

A sidebar card displays the payment details when payments are enabled:

Status log

A chronological list of all status changes for this order, showing the old status, new status, timestamp, and the admin user who made the change.

Screenshot: Order detail view showing customer info, items, collection details, and status log

Admin notes

A free-text field for internal notes about the order. The label for this field can be customised in BoxCart → Settings → Orders (defaults to "Admin Notes"). Customer-submitted order notes are displayed separately.

Pick Lists

BoxCart can generate printable pick lists and packing slips to help you prepare orders for collection. Enable this feature in BoxCart → Settings → Orders.

Print formats

Three formats are available:

FormatIncludes PricesIncludes HeadersBest For
Pick ListYesYesInternal use when prices are needed for verification
Packing SlipNoYesIncluding with the customer's order as a receipt without prices
MinimalNoNoQuick reference sheets for picking items from shelves
Screenshot: Printed pick list showing order items, quantities, and collection details

You can print pick lists for a single order or for multiple orders at once. The print view is a standalone HTML page with dedicated print styles, designed to produce clean output on paper.

Tip

Enable "Include Order Notes on Print" in Settings → Orders to show customer notes on your pick lists. This is useful for special requests like "please leave the apples unbagged" or allergen notes.

Order Numbering

BoxCart assigns a sequential number to each order. You can customise the numbering scheme in BoxCart → Settings → General.

SettingDefaultDescription
Order Number Prefix(empty)An optional prefix added to the beginning of every order number. For example, setting this to BC- produces order numbers like BC-0001, BC-0002, etc.
Order Number Start1The starting number for order numbering. Accepts a value between 1 and 999999. Only applies to new orders created after the setting is changed.
Warning

Changing the starting number only affects orders placed after the change. Existing orders retain their original numbers. If the new starting number is lower than an existing order number, BoxCart will continue from the highest existing number to avoid duplicates.

Quick Reorder

Logged-in customers can quickly repeat a previous order with a single click. This is especially useful for regular customers who order the same items each week.

  1. View a past order

    The customer navigates to their account and opens their order history, or views a specific past order.

  2. Click "Reorder"

    A Reorder button appears on past orders. Clicking it adds all items from that order to the current basket.

  3. Review and checkout

    The customer is redirected to the basket or checkout page where they can review the items, make adjustments, and place the new order.

Guest customers

Quick reorder is only available to logged-in customers with a registered account. Guest checkout customers do not have access to order history or the reorder feature.

Order Modification

BoxCart allows customers to modify their orders within a configurable time window after placing them. This feature is disabled by default and can be enabled in BoxCart → Settings → Accounts → Order Modifications.

Configuration

SettingDefaultDescription
Allow order modificationsOffMaster toggle to enable or disable the feature.
Modification window2 hoursThe number of hours after placing an order during which modifications are allowed. Configurable from 1 to 48 hours.
Items and quantitiesOnAllow customers to change which products are in the order and adjust quantities.
Collection slotOnAllow customers to change their collection date and time slot.
Customer notesOnAllow customers to update the notes attached to their order.

How it works

  1. Customer views a recent order

    The customer logs in, navigates to their order, and sees a "Modify Order" button if the order is within the modification window and in an allowed status (Pending or Processing).

  2. Make changes

    The order items are loaded into a modification view. The customer can adjust items, quantities, collection slot, or notes depending on which options are enabled.

  3. Save modifications

    The customer saves their changes. The order is updated via AJAX, and both the customer and the admin receive email notifications detailing what was changed.

Warning

Order modification is only permitted while the order is in the Pending or Processing status and within the configured time window. Once the window expires or the order moves to Ready, Completed, or Cancelled, modifications are no longer available.