> For the complete documentation index, see [llms.txt](https://docs.peakcommerce.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.peakcommerce.com/guides/feature-guides/billing-setup/guide-booking-a-line-as-its-own-order-action.md).

# Booking a Line as Its Own Order Action

### Overview

When a customer checks out, PeakCommerce places **one order** that creates **one subscription** holding everything they bought. By default, every rate plan in that order is booked together in a single order action.

**Order grouping** (sometimes called *split order actions*) lets you book chosen lines as **their own order action** — while the purchase stays one order and one subscription. Each line you separate shows up in your billing system as a distinct step of the order, so the purchase is easy to read line by line, and a line that starts later than the rest is recorded on the day it actually starts.

You set this up in two places:

1. **The product set** — mark which lines should be booked on their own.
2. **The journey's create-order step** — turn on **Honor order grouping** so checkout follows the product set.

This guide is for admins who configure product sets and journeys. Order grouping applies to checkouts whose create-order step builds its lines from a **product set**, on billing integrations that support separate order actions — **Zuora** today.

### Step 1 — Choose each line's order grouping in the product set

1. Go to **Commerce → Product Sets** and open the set your journey uses.
2. Open a line (a base product or add-on) and find **Order grouping**, directly above **Effective Date Timing**.
3. Choose one of:
   * **Default — grouped with other lines** — the line is booked together with the other default lines in the order's first action (see [How the order is built](#how-the-order-is-built) for the one exception). This is the starting value for every line.
   * **Its own order line** — the line is booked as its own order action.

Lines set to **Its own order line** show an **Its own order line** tag on their card, so you can see at a glance which lines are booked separately without opening them.

You can also choose the grouping when you add products: the **Add products** panel has an **Order grouping** select that applies to every plan you add in that batch.

**Bundles:** the bundle's face and each of its members are separate lines, and each follows its own **Order grouping** setting — a member does not inherit the face's value. This lets, for example, a bundle's free trial and its paid plan land in different order actions. Set the value on every bundle line you want booked on its own.

### Step 2 — Turn on "Honor order grouping" in the journey

1. Go to **Content → Journeys → Edit → Steps** and expand the step that places the order.
2. Under **Commerce actions**, open the **create order** action (see [Commerce Actions](https://docs.peakcommerce.com/product/journeys-and-pages/journey-steps/commerce-actions)).
3. Check **Honor order grouping**.
4. Save the action, then **publish** the journey. Checkout uses the published version, so republish the journey whenever you change this box.

You do **not** need to republish when you change a line's **Order grouping** in the product set. The product set is read when a customer starts checkout, so the change applies to every checkout started after you save it. Checkouts already in progress keep the values they started with.

With the box **off**, every line is booked in one order action, whatever the product set says. With it **on**, checkout follows each line's **Order grouping**.

Because the switch lives on the journey, one product set can serve several journeys: turn grouping on only in the checkouts that need it.

### How the order is built <a href="#how-the-order-is-built" id="how-the-order-is-built"></a>

When **Honor order grouping** is on and at least one purchased line is set to **Its own order line**, the order is built like this:

| Order action                             | What it carries                                                      |
| ---------------------------------------- | -------------------------------------------------------------------- |
| **Create Subscription**                  | The line — or the group of default lines — that starts **earliest**. |
| **Add Product** (one per remaining line) | Each other line, effective on **that line's own start date**.        |

Each **Add Product** action carries its line's start date as its **contract effective**, **service activation**, and **customer acceptance** dates.

**A line's start date** is the order date plus the line's **Effective Date Timing**:

* **Same as Order Date** — the line starts on the order date.
* **Set Period (After Subscription Date)** (for example **1 month**) — the line starts that long after the order date, so a line set to 1 month is booked one month after the order.

Effective Date Timing always applies — there is nothing to switch on. The two settings answer different questions, and they work independently:

* **Order grouping** decides **which order action** a line lands in, once the create-order action has **Honor order grouping** checked.
* **Effective Date Timing** decides **when the line starts**, on every checkout.

A product set whose lines are all **Same as Order Date** therefore behaves exactly as it always has: every line starts on the order date.

If a separate line starts **earlier** than the default lines, it becomes the **Create Subscription**, and each default line is then added as its own **Add Product** on its own start date.

**When lines start on the same day,** the default group comes first, then the separate lines in purchase order: the base plan, then its bundle lines, then add-ons.

#### Example

A product set has three lines, and the journey's create-order step has **Honor order grouping** checked:

| Line               | Order grouping                     | Effective Date Timing                         |
| ------------------ | ---------------------------------- | --------------------------------------------- |
| Pro plan           | Default — grouped with other lines | Same as Order Date                            |
| Onboarding service | Its own order line                 | Same as Order Date                            |
| Premium support    | Its own order line                 | Set Period (After Subscription Date), 1 month |

A customer buys all three on **March 10**. The order contains:

1. **Create Subscription** — Pro plan, starting March 10.
2. **Add Product** — Onboarding service, effective March 10.
3. **Add Product** — Premium support, effective April 10.

It is still one order and one subscription.

### Invoicing

Order grouping changes how the order is **recorded**, not how it is **billed**. Lines booked as their own order action are invoiced the same way they would be if they were grouped — it is not a "bill separately" option.

### Requirements

* **A Zuora billing integration.** The create-order action — and so **Honor order grouping** — is available on Zuora today.
* **Lines from a product set.** Grouping is read from the product set the checkout uses. A create-order action whose rate plans are mapped by hand, with no product set behind the checkout, books everything in one order action even with the box checked.
* **A Same as Order Date line, whenever the set defers one.** A product set that starts a line later needs at least one line that starts on the order date, for the deferred line to be measured from.
* **The billing tenant's timezone.** A deferred line's start date is worked out on your billing tenant's clock, so that timezone must be configured on the integration (see the [Zuora billing integration](https://docs.peakcommerce.com/integrations/zuora-integration/zuora-billing-integration)). If a line's start date can't be established, PeakCommerce refuses the order and reports why, rather than booking the line on the wrong day.

### FAQ

**Does this create more than one subscription?**

No. The customer gets one order and one subscription; the separated lines are additional order actions on that same subscription.

**Do I have to separate every line?**

No. Mark only the lines you want booked on their own. You can also mark every line — the earliest-starting one becomes the Create Subscription and the rest are added to it.

**Which journeys are affected when I change a product set line?**

Only journeys whose create-order step has **Honor order grouping** turned on. Every other journey using the same set keeps booking all lines in one order action.

**Is this the same as the "Group Name" on a product set line?**

No. **Group Name** controls how plans are grouped for display in the plan selector. **Order grouping** controls how the line is booked in the order.

**What happened to the journey's "Separate order per product" order structure?**

It has been retired. It never changed how orders were placed, and no journey relied on it. To book lines separately within one order, use **Order grouping** as described in this guide.

### Related

* [Product Sets](https://docs.peakcommerce.com/product/using-peakcommerce/products-and-bundles/product-sets)
* [Commerce Actions](https://docs.peakcommerce.com/product/journeys-and-pages/journey-steps/commerce-actions)
* [Setting a Subscription's Start Date (Backdating)](/guides/feature-guides/billing-setup/guide-setting-a-subscription-start-date.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.peakcommerce.com/guides/feature-guides/billing-setup/guide-booking-a-line-as-its-own-order-action.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
