> For the complete documentation index, see [llms.txt](https://ovatheme.gitbook.io/brw/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ovatheme.gitbook.io/brw/brw-menu/add-new-booking.md).

# Add New Booking

### **Introduction**

The Add New Booking screen lets admins create rental orders on behalf of customers without requiring a frontend checkout. The form builds a standard WooCommerce order with BRW booking metadata attached.

{% hint style="success" %}
**Backend Order Creation:** Orders created via this screen appear in both WooCommerce → Orders and BRW → Manage Bookings. The customer receives no automatic email unless you trigger it manually from the order screen.
{% endhint %}

### **Workflow**

{% stepper %}
{% step %}

### Fill Order Info

Set Order Status, Payment Method, and Currency
{% endstep %}

{% step %}

### Enter Billing Details

Fill in customer name, address, email, and phone. Optionally add order notes.
{% endstep %}

{% step %}

### Ship to Different Address (optional)

Toggle the checkbox to reveal a separate shipping address section.
{% endstep %}

{% step %}

### Select a Product

Choose a rental product from the dropdown. The system detects the rental type and loads the appropriate meta fields via AJAX.
{% endstep %}

{% step %}

### Fill Booking Meta Fields

Enter rental dates, locations, quantity / vehicle ID, services, resources, guests, deposit, etc. — all fields vary by rental type.
{% endstep %}

{% step %}

### Add More Items (optional)

Click **Add Item** to include additional rental products in the same order. Each item gets its own set of meta fields.
{% endstep %}

{% step %}

### Create Order

Click **Create Order**. The system validates all required fields and creates the WooCommerce order with booking metadata.
{% endstep %}
{% endstepper %}

<figure><img src="/files/xbtxUhoErPKJIXY1CJ9A" alt=""><figcaption></figcaption></figure>

### 1: Order Info

Global order properties that apply to the entire booking, regardless of individual rental items.

<figure><img src="/files/Lu165w2DVqBK4Hw0xmJ0" alt=""><figcaption></figcaption></figure>

**Order Status:** <mark style="color:$danger;">Required</mark>

Select box populated with all registered WooCommerce order statuses (e.g. Pending Payment, Processing, Completed, On Hold, Cancelled). Default is **Completed**.

**Payment Method:** <mark style="color:$success;">Optional</mark>

Dropdown of all active WooCommerce payment gateways. Leave blank if no payment gateway is applicable (e.g. cash orders).

**Currency**

Only display if your site use multi currency.

### 2: Billing Details

Standard WooCommerce billing address fields. Required fields are enforced server-side before order creation.

The system allows searching for information about past customers through several fields: name, email, phone number.&#x20;

<figure><img src="/files/J2CAMhhGMmf7tgbkANww" alt=""><figcaption></figcaption></figure>

### 3: Ship to Different Address

Toggle to provide a separate shipping address. When unchecked, billing address is used for shipping.

**Ship to different address?**

Checkbox that shows/hides the shipping section. When checked, the same 9 address fields appear for shipping (excluding email, phone, and order notes):

**Shipping fields:** First Name, Last Name, Company, Country/Region, Address 1, Address 2, City, State, ZIP Code — all map to `shipping_*` POST keys.

{% hint style="info" %}
If left unchecked, WooCommerce automatically copies billing address to shipping when the order is saved.
{% endhint %}

<figure><img src="/files/NgWx4yAhNZTPkpEBhZKw" alt=""><figcaption></figcaption></figure>

### 4: Booking Item / Product

Select one or more rental products to add to the order. Each product is an independent booking item with its own set of meta fields.

**Product Select**

Dropdown of all BRW-enabled WooCommerce products. Selecting a product fires an AJAX request that returns the rental-type-specific meta field HTML and injects it below the product selector.

**Add Item Button**

Clones the booking item block to add a second (or more) rental product to the same WooCommerce order. Each item is independently configured with its own dates, locations, and pricing.

**Create Order**

Submits the entire form via HTTP POST. Server-side validation runs before the WooCommerce order is created. Validation errors are displayed inline within each booking item's **Error** field.

<figure><img src="/files/nVD5EK6ngRer6RnJF4qu" alt=""><figcaption></figcaption></figure>

### 5: Manage Bookings

You will see th~~i~~s order in "Manage Bookings"

<figure><img src="/files/wKvysEUAzV2DtRkrmxEG" alt=""><figcaption></figcaption></figure>

Go to Detail of the Order ( WooCommerce >> Orders ): You can send an email to customers including an order link, so the customer can pay this order online.

<figure><img src="/files/lWywGBoYi8alIMpsqzJR" alt=""><figcaption><p>Send order details to customer</p></figcaption></figure>

\ <br>
