# Charge types and models

Loopit offers a comprehensive billing engine that allows you to control every aspect of your packages offered to customers.

### Billing models

#### **Once-Off**

A one-time charge applied per booking, regardless of the booking’s duration, program type, or whether it’s recurring.

* *Example:* An activation fee would be configured as a once-off charge since it should only be applied once.

#### **Ongoing**

A recurring charge applied based on the billing frequency and the duration of the booking.

* *Rental Example:* A daily rate configured as ongoing will multiply by the booking duration. For a 5-day booking, the charge applies 5 times.
* *Subscription Example:* A monthly subscription fee will be charged each month while the booking remains active.

### Pricing models

The pricing model defines how charges are calculated. Available options depend on the selected billing model.

If **Once-Off** is selected, only the **Flat Fee** pricing model is available.

For **Ongoing** charges, the following models are supported:

* **Flat Fee**
* **Unit Pricing**
* **Volume Pricing**

<table><thead><tr><th width="154">Model</th><th width="183">Supported package types</th><th>Description</th></tr></thead><tbody><tr><td>Flat fee</td><td><p></p><ul><li>Rental</li><li>Subscription</li></ul></td><td>A fixed charge applied per billing period or per booking.</td></tr><tr><td>Unit pricing</td><td><ul><li>Rental</li><li>Subscription</li></ul></td><td><p>Unit pricing applies charges based on specific billable metrics. </p><p></p><p><em>Example:</em> To charge for additional drivers, set up an ongoing billing model using Unit Pricing with the billable metric set to <strong>Drivers</strong>.</p></td></tr><tr><td>Volume pricing</td><td><ul><li>Rental</li></ul></td><td><p>Allows you to apply different rates based on booking duration, offering discounts or tiered pricing for longer bookings.</p><p></p><p><em>See the Volume Pricing configuration section below for details.</em></p></td></tr></tbody></table>

### **Volume Pricing**

**Volume pricing** allows you to apply different rates based on a billable metric such as duration, mileage, number of drivers and more.

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

#### How it Works

In the example above:

* For bookings **1 to 5 days**, the daily rate is **$100**.
* For bookings **6 to 10 days**, the daily rate is **$90**.
* For bookings **11 days or more**, the daily rate is **$80**.

*Note: If the “To” value is left blank, that tier will apply to any booking duration beyond the previous range.*

### Billable metrics

The **Billable Metric** determines which value is used to calculate the charge. This is required when using an ongoing billing model with either a unit-based or volume-based pricing structure.

Unit pricing - current options are Drivers.  Use this to control prices for additional drivers.

Volume pricing - current options are "Booking duration".  See volume pricing configuration above.

### Charge Types

Depending on your billing model, Loopit supports **up to three charge types**. Use them to bundle mandatory fees, offer optional extras, or apply one-off charges as needed.

<table><thead><tr><th width="155">Charge Type</th><th width="330">When It’s Used</th><th>Typical Examples</th></tr></thead><tbody><tr><td>Always</td><td>Automatically applied to every booking in the package.</td><td><ul><li>Base Rate</li><li>Joining Fee</li></ul></td></tr><tr><td>Add On</td><td>Optional extras customers can select during the booking flow.</td><td><ul><li>Child Seats</li><li>Additional Mileage</li><li>Insurance Excess Reduction</li></ul></td></tr><tr><td>Ad Hoc</td><td>Pre-defined charges staff can add during or after a booking.</td><td><ul><li>Smoking Penalty</li><li>Cleaning Fee</li><li>Refill Charge</li></ul></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.loopit.co/billing/setting-up-your-packages/packages/charge-types-and-models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
