--- title: "Rental Management" slug: "rental-management" description: "Streamline your rental process with the Rental Management app for Dynamics 365, managing inventory, pricing, invoicing, and returns seamlessly." updated: 2026-04-30T07:31:08Z published: 2026-04-30T07:31:28Z canonical: "docs.abakion.com/rental-management" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.abakion.com/llms.txt > Use this file to discover all available pages before exploring further. # Rental Management ## App Overview Rental Management is an item rental and lifecycle management app for Microsoft Dynamics 365 Business Central. It gives sales teams and operations staff a structured way to rent out physical inventory items to customers, track the full rental lifecycle — from shipment to invoicing to return — and handle mid-rental events such as item replacements and suspensions, all without leaving Business Central. At the heart of the app is the **core rental flow**: rental lines are created directly on standard sales orders by assigning a rental category (resource), a rental unit of measure, and a quantity. When the order is shipped, the item line is automatically swapped to a resource line representing the rental fee, and transfer orders are created to move the item to the customer and back. A **Rental Relation Line** is created behind the scenes for every rental line, tracking the full logistical and financial history of each individual rental. Beyond the core flow, the app adds three supporting feature areas. **Rental Prices and Price Scales** provide a flexible pricing layer: prices can be configured per customer, customer price group, currency, and item variant, and tiered Price Scales allow the effective rate to decrease automatically as the rental extends. **Rental Calendar and Invoicing Plan** handle complex billing scenarios — the calendar defines non-chargeable or reduced-rate periods within a rental, while the Invoicing Plan combines the calendar and price scale into a pre-calculated billing schedule across the full rental period. **Item Return, Replacement, and Suspension** covers everything that happens after shipment: full and partial returns, lost/damaged returns, mid-rental item replacements, and quantity suspensions that temporarily reduce the billed amount. --- ## Feature Map Use this table to find the right article for your task. | Feature | What it solves | Who uses it | | --- | --- | --- | | [Rental Setup and Core Rental Flow](https://docs.abakion.com/docs/setup-and-core-flow) | How do I rent out items to customers? Configures default locations and rental categories, and manages the full order-to-shipment-to-invoice flow including automatic transfer order creation. | Sales Order Processor, Business Manager | | [Rental Prices and Price Scales](https://docs.abakion.com/docs/rental-prices-price-scales) | What does the customer pay, and does the rate change over time? Defines rental unit prices per customer/group and tiered price scales where the rate decreases for longer rentals. | Sales Manager, Business Manager | | [Rental Calendar and Invoicing Plan](https://docs.abakion.com/docs/rental-calendar-invoicing-plan) | How do I handle non-chargeable periods and pre-plan a billing schedule? Calendar entries pause or reduce chargeable time; the Invoicing Plan combines calendar and price scale into a detailed per-period billing calculation. | Sales Order Processor, Accountant, Business Manager | | [Item Return, Replacement, and Suspension](https://docs.abakion.com/docs/return-replacement-suspension) | What happens when items come back, need swapping, or go temporarily offline? Handles full/partial returns, lost/damaged returns, mid-rental replacements, and quantity suspensions that affect billing. | Sales Order Processor, Business Manager | --- ## Common Infrastructure Several concepts are shared across all four feature areas. Understanding them once makes the individual feature articles easier to follow. ### Rental Relation Line The **Rental Relation Line** is the central tracking record for every active rental. It is created automatically when a rental sales order line is shipped, and it links the sales line to the outbound and inbound transfer orders. It carries the rental start date-time, closing date-time, item quantities shipped and received, the invoiced-to date-time, and flags for whether the rental is closed and fully posted. Every subsequent operation — invoicing, return, replacement, suspension — reads from and writes back to this record. ### Rental Setup The **Rental Setup** table holds the configuration that governs how the app behaves. A global record (with a blank Customer field) provides the company-wide defaults; additional records per customer allow individual overrides. Key settings include default locations (rental, transit, return), the default rental category and unit of measure, transfer order behaviour, posting rules, and dimension handling during the swap. ### Rental Categories A **Rental Category** is the bridge between an inventory item and a BC resource. Each rental category links to a resource (which represents the rental fee on the invoice) and defines the Duration — the length in milliseconds of the base unit of measure. Duration is what the system uses to calculate the rental return date and to determine how many rental periods fit within a given rental window. ### Transfer Orders The app creates and manages **Transfer Orders** automatically. For a standard rental, two transfer orders are created: one outbound (home stock → rental location) and one inbound (rental location → home location at return). If the rental location is configured as an in-transit location in BC, a single transfer order handles both directions. Transfer orders are linked to the Rental Relation Line and are updated whenever the sales line changes. ### The Swap The **swap** is the mechanism that converts a rental item line into a resource line at posting time. Before posting, the sales line carries both item information and rental information. When the shipment is posted, the item is physically transferred out via the transfer order, and the resource line — representing the rental fee — is what appears on the invoice. The swap can also be triggered on manual release of the sales order. --- ## Typical Workflows ### Setting up a new rental item 1. Create a **Resource** for the rental category (e.g. one resource per rental type — daily scaffold, weekly crane). 2. Create a **Rental Category** linking the resource and setting the Duration for its base unit of measure. 3. On the **Item Card**, enable the **Rental Item** flag and optionally set a default return location. 4. Verify the **Rental Setup** global record covers the correct rental, transit, and return locations. 5. Optionally set up **Rental Prices** for the item per customer or price group. ### Processing a rental order 1. Create a **Sales Order** and add a line with the rental item. 2. Fill in **Rental No.** (rental category), **Rental Unit of Measure Code**, and **Rental Quantity**. The system calculates the **Rental Return Date** automatically. 3. Review and adjust the **Rental Location Code**, **Transit Location Code**, and **Return Location Code** if the defaults need to change for this order. 4. Post the shipment. The swap occurs, transfer orders are created, and the rental starts. 5. Post invoices periodically until the rental ends. ### Returning a rented item 1. On the active **Sales Order**, select the rental line and use the **Return/Replace Rental Item** action. 2. Select the units being returned (by item ledger entry for serialised items, or by quantity for non-tracked items). 3. Set the **Return Date-Time** and confirm. The inbound transfer is posted and the rental relation line is closed. 4. Post the final invoice to bill the customer for the remaining rental period. ### Setting up tiered pricing with an invoicing plan 1. Configure the **Scale Base Price Source** on the global Rental Setup (Rental Price or Sales Price). 2. Create a **Price Scale** with step lines defining duration and price factor per tier. 3. On the **Sales Order**, assign the price scale via the **Price Scale Setup** action. 4. Set **Rental Invoicing Plan Start Date** and **Rental Return Date** on the sales order header. 5. Optionally assign a **Rental Calendar** to define non-chargeable periods. 6. Open the **Rental Invoicing Plan** to review the pre-calculated billing schedule before posting the first invoice. --- ## Integration with Other Abakion Apps | App | Integration | | --- | --- | | **Document Customizer** | Optional. When installed and enabled, the **Group Rental Lines in Document Customizer** setting in Rental Setup populates a Grouping field on sales invoice lines, causing Document Customizer to visually group all lines belonging to the same rental on the printed or emailed invoice. | --- ## Setup The setup user stories below cover the full end-to-end configuration of Rental Management — from first activation to a fully operational rental flow. Work through the Core Setup group first. The remaining groups can be configured independently depending on which features you intend to use. The setup is split into four groups: **Core Setup** (required for all users), **Rental Prices and Price Scales** (required if you need structured rental pricing or tiered rates), **Rental Calendar and Invoicing Plan** (required if you need non-chargeable periods or pre-planned billing schedules), and **Return, Replacement, and Suspension** (relevant when returns and mid-rental changes are handled in a warehouse-managed environment). --- ### Core Setup ****SETUP-01: Create resources and rental categories**** **As a** Business Manager (Forretningschef) **I want to** create a resource and a matching rental category for each type of rental item **So that** the app knows how to invoice the rental and how to calculate the rental return date **Setup:** 1. Search for **Resources** and create a resource for each rental type (e.g. SCAFFOLD-DAY, CRANE-WEEK). Set a **Base Unit of Measure** on each resource — this is mandatory. 2. Open **Rental Setup** and navigate to **Rental Categories**. 3. For each resource, create a Rental Category entry. Link the **Resource** field and set the **Duration** in milliseconds matching the base unit of measure (e.g. 86,400,000 ms = 1 day; 604,800,000 ms = 1 week). 4. Close the page. ****SETUP-02: Configure the global Rental Setup**** **As a** Business Manager (Forretningschef) **I want to** create a global Rental Setup record that applies to all customers **So that** rental lines on sales orders are pre-populated with correct locations and defaults without manual input **Setup:** 1. Open **Rental Setup** and create a new record with a blank **Customer** field — this is the global default. 2. Fill in: - **Default Rental Location Code** — where items are transferred when rented out. - **Default Transit Location Code** — used when two separate transfer orders are needed. - **Default Return Location Code** — where items come back after rental. - **Default Rental Category** — pre-filled on new rental lines. - **Default Unit of Measure Code** — pre-filled rental time unit. 3. Set **Employ Direct Transfer?** to control whether outbound, inbound, or both transfer orders use direct transfer (options: blank, Outbound, Inbound, Both). 4. Review behavioural options: **Swap on Manual Release**, **Keep Transfer Order while Sales Order exists**, **Allow Standard Sales Posting**, **Dimension Handling**, **Rental Price Customer Type**. 5. Save. > **Note:** Optionally create additional Rental Setup records with a Customer number filled in for customers that need different defaults. The system always looks for a customer-specific record first and falls back to the global default. ****SETUP-03: Mark items as rental items**** **As a** Business Manager (Forretningschef) **I want to** flag items as rental items on the item card **So that** the rental functionality is available when those items are added to a sales order **Setup:** 1. Open the **Item Card** for each item to be rented out. 2. Enable the **Rental Item** field. 3. Optionally fill in **Return Location Code** if this item should always return to a specific location, overriding the setup default. 4. Save. ****SETUP-04: Create a rental line on a sales order**** **As a** Sales Order Processor (Salgsordrebehandler) **I want to** add a rental line to a sales order **So that** the customer is billed for the rental and the item is managed logistically via transfer orders **Setup:** 1. Create or open a **Sales Order** and add a line with **Type = Item** and a rental item in **No.** 2. Fill in **Rental No.** (rental category), **Rental Unit of Measure Code**, and **Rental Quantity**. The system calculates the **Rental Return Date** automatically. 3. Review **Rental Location Code**, **Transit Location Code**, and **Return Location Code** — pre-filled from setup but editable per line. 4. Post the shipment to start the rental. The swap occurs and transfer orders are created. --- ### Rental Prices and Price Scales Setup Complete this section if you want rental unit prices to be looked up automatically from a price table, or if tiered pricing is required. Skip it if unit prices will be entered manually on every sales line. ****SETUP-05: Configure the scale base price source**** **As a** Business Manager (Forretningschef) **I want to** define whether price scales use the rental price or the sales price as their base **So that** scale factor calculations are applied to the correct price foundation **Setup:** 1. Open **Rental Setup** and open the global (blank Customer) record. 2. Set **Scale Base Price Source** to **Rental Price** or **Sales Price**. > **Note:** This field can only be set on the global record. It controls all price scale calculations across all sales orders. ****SETUP-06: Create rental prices**** **As a** Sales Manager (Salgschef) **I want to** define rental unit prices per item, customer, and rental category **So that** the correct price is populated automatically when rental lines are created **Setup:** 1. Open **Rental Prices**. 2. For each price combination, create a line with: **Item No.**, **Sales Type** (Customer, Customer Price Group, All Customers, or Campaign), **Sales Code**, optionally **Starting Date**, **Currency Code**, **Variant Code**, **Rental Category**, **Rental Unit of Measure Code**, and **Unit Price**. 3. The first price for a given item/customer/currency is automatically flagged as **Default Price**. 4. Optionally link a **Price Scale** to enable tiered pricing for this price line. ****SETUP-07: Create a price scale template**** **As a** Business Manager (Forretningschef) **I want to** create a reusable price scale with time-based pricing tiers **So that** rental prices decrease automatically for longer rentals without manual recalculation **Setup:** 1. Open **Rental Setup** → action **Rental Price Scale Setup**. 2. Create a new price scale with a **Code** and **Description**. 3. Add step lines. For each step, set **Step Duration** (in milliseconds — e.g. 7 days = 604,800,000 ms) and **Base Price Factor** (e.g. 1.0 = full price, 0.8 = 80%). 4. The last step extends automatically to cover any duration beyond the defined steps. --- ### Rental Calendar and Invoicing Plan Setup Complete this section if rentals include non-chargeable or reduced-rate periods, or if billing needs to be pre-planned across the rental period using an Invoicing Plan. Skip it if all rental time is uniformly chargeable and invoicing is handled with a flat rate. ****SETUP-08: Create a rental calendar template**** **As a** Business Manager (Forretningschef) **I want to** define a calendar template marking non-chargeable or reduced-rate periods **So that** customers are not billed for periods when they cannot use the rented equipment **Setup:** 1. Open **Rental Setup** → action **Rental Calendar Setup**. 2. Create a calendar with a **Code** and **Description**. 3. Add calendar entries with **Starting Date-Time**, **Ending Date-Time**, **Time Factor** (0 = full pause, values between 0 and 1 = proportional, 1 = normal), and a **Description**. 4. Optionally enable **Daylight Savings** on entries that compensate for DST clock changes. > **Note:** Calendar entries must not overlap — the system validates this on insert. ****SETUP-09: Set up the invoicing plan on a sales order**** **As a** Sales Order Processor (Salgsordrebehandler) **I want to** configure an invoicing plan on a sales order combining a price scale and calendar **So that** the system pre-calculates the billing schedule across the full rental period before the first invoice is posted **Setup:** 1. On the **Sales Order** header, fill in **Rental Invoicing Plan Start Date** and **Rental Return Date** — both are required. 2. Use the **Price Scale Setup** action to assign a price scale to the order. 3. Use the **Calendar Setup** action to assign a calendar. 4. Open the **Rental Invoicing Plan** action to review the calculated billing schedule — verifying chargeable time, average unit price, and applied amounts per step before posting. --- ### Return, Replacement, and Suspension Setup Complete this section to configure how the app handles returns and replacements in environments that use warehouse management. No additional setup is required for standard (non-WMS) return and replacement flows. ****SETUP-10: Configure return and replacement posting behaviour for WMS locations**** **As a** Business Manager (Forretningschef) **I want to** configure whether transfer posting happens automatically during returns and replacements **So that** the return flow works correctly when our warehouse locations use warehouse management **Setup:** 1. Open **Rental Setup** and open the relevant setup record. 2. To allow financial termination without requiring the inbound transfer to be posted immediately, enable **Allow Partial Termination Without Return**. > **Note:** This setting is not available when the rental location is configured as an in-transit location. 3. To suppress all automatic transfer posting during returns and replacements (fully WMS-managed environments), enable **No Transfer Posting in Return/Replacement**. 4. Save.