màj wiki avec retour MES lot-5 AD

This commit is contained in:
Arthur Ria
2026-05-20 09:41:27 +02:00
commit 23eb3f3c84
4106 changed files with 469381 additions and 0 deletions
+215
View File
@@ -0,0 +1,215 @@
---
title: "3PL Billing"
type: module
sources:
- areas/billing/index.md
- areas/billing/billing_configuration/index.md
- areas/billing/billing_configuration/contracts.md
- areas/billing/billing_configuration/planners.md
- areas/billing/billing_configuration/rules_documentation.md
- areas/billing/billing_configuration/rules_handling_container.md
- areas/billing/billing_configuration/rules_handling_filters.md
- areas/billing/billing_configuration/rules_handling_uom.md
- areas/billing/billing_configuration/rules_handling_volume.md
- areas/billing/billing_configuration/rules_handling_weight.md
- areas/billing/billing_bills/index.md
- areas/billing/billing_bills/bills.md
- areas/billing/billing_bills/billing_reports.md
- areas/3pl_billing/index.md
- areas/3pl_client_portal/index.md
related:
- modules/3pl-portal.md
- modules/owner-extensions.md
- concepts/account-owner.md
- concepts/stock.md
- concepts/order-outbound.md
- concepts/order-inbound.md
last_compiled: "2026-04-26"
---
# 3PL Billing
## Overview
The 3PL Billing module identifies, quantifies, records, and consolidates data from logistical activities in the warehouse for billing purposes. It is primarily designed for 3PL (Third-Party Logistics) operators who need to invoice each client (owner) individually based on the warehouse services consumed.
**Prerequisite**: The [Owner Extensions](owner-extensions.md) module must be installed. This adds the mandatory owner field to receipt and shipping orders and restricts mixing items from different owners in the same order.
**Scope limitation**: By default, the module only counts data from Easy WMS activities. Activities from other modules (Manufacturing container consumption, Yard Management transport documents) are excluded unless custom rules are configured.
## Key capabilities
- Configurable billing rules for all standard logistics activities (storage, handling, inbound, outbound, packing, etc.)
- Custom rules based on transactions for non-standard activities
- Contract-based billing: one contract per owner, specifying rules + planner + validity period
- Economic valuation: optional currency-based pricing with unit costs or percentage (for stock value rules)
- Tiered pricing: volume discount/surcharge ranges per rule
- Bill generation: periodic automatic or manual; owner-specific bills with full line detail
- Pre-validation: optional manual review before automatic bill closure and ERP export
- Compensation: manual surcharges or discounts (%) at bill or line level
- Notifications: alerts for generation errors, closure events
## Architecture
### Core entities
**Billing rule**: definition of what to count. Two types:
- **Standard rules** (automatic): count activities tracked natively by EasyWMS; system counts without user intervention
- **Manual rules**: Fixed (flat fee regardless of volume) or Variable (operator-entered quantity); used for activities EasyWMS does not track
Rules are organized in three groups by concept:
#### Group 1 — Storage
Quantifies articles in stock at a given moment (snapshot-based):
| Sub-type | What is counted |
|----------|----------------|
| Container | Number of containers with owner's stock |
| Location | Number of locations with owner's stock |
| Unit of measure | Quantity in the chosen UoM |
| Weight | Weight of owner's stock (max of balance weight vs. theoretical) |
| Volume | Volume of owner's stock (based on item conversion dimensions) |
#### Group 2 — Handling
Quantifies dynamic processes applied to stock (flow-based):
| Sub-type | What is counted |
|----------|----------------|
| Container | Containers involved in the operation |
| Work orders | Number of operations (receipts, shipments, loads, routes, counts, kits) |
| Work order lines | Number of order lines processed |
| Weight | Weight processed in the operations |
| Unit of measure | Quantity processed in chosen UoM |
| Volume | Volume processed |
Operations covered: inbound receipts, outbound shipments, loads, routes, counts, kit assemblies.
#### Group 3 — Transaction
Custom rules based on specific WMS transaction types:
| Parameter | Description | Required? |
|-----------|-------------|----------|
| Transaction type | Which WMS transaction triggers the count | Yes |
| Owner parameter | Field in the transaction identifying the owner | Yes |
| Quantity parameter | Field providing the count value (if absent: quantity = 1 per event) | No |
| Operation type | Increment (adds to total), Decrement (subtracts), Variable (sign-based) | Yes |
Used for non-standard activities not covered by groups 1 or 2.
**Billing planner**: defines when to generate bills — daily, weekly, monthly, or custom schedule.
**Billing contract**: ties together an owner + billing rules + planner + validity period + optional economic valuation.
**Bill**: periodic summary document generated per contract. Contains lines (one per rule) with breakdown detail.
**Bill line**: total quantification of one rule for the period. Can be drilled down to individual activity records.
**Compensation**: manual % surcharge or discount applicable at bill level or line level.
### Contract lifecycle
```
Contract created → Enabled → Bills generated periodically → Lines generated per rule
→ Pre-validation (optional) → Closed → ERP export
Contract disabled → No new activities recorded; no automatic bill closure
```
### Economic valuation
When a contract has a currency configured:
- Standard rules: Fee (currency/unit) × quantity counted
- Stock value rules: Fee (%) × stock value (presentation currency must match contract currency)
- Bill totals: Gross price (before compensation) → Subtotal price (after line compensation) → Total price (after bill compensation)
### Tiered pricing (requires `EnablePriceRanges` toggle)
Ranges must be consecutive starting at 1. Last range has no upper limit (acts as catch-all):
```
Range 1: 1100 units → 10€/unit
Range 2: 101200 units → 8€/unit
Range 3: 201+ units → 6€/unit
```
Bill line displays the **average price** (total gross amount ÷ count) when ranges are used.
## Configuration
### Initial setup
1. Install Owner Extensions module
2. Define owners (3PL clients) in inventory masters
3. Create billing rules for each activity category:
- Storage rules (container presence, time-based)
- Handling rules (inbound, outbound, picking)
- Weight/volume/UoM-based rules
- Custom transaction-based rules
4. Create billing planners (frequency)
5. Create contracts: one per owner, assigning applicable rules + planner
6. Enable contracts
### Contract rules configuration
For each rule assigned to a contract:
- Activity type filter (which operations qualify)
- Owner filter (auto-applied from contract)
- Economic valuation (fee/unit or fee/% for stock value rules)
- Price ranges (optional)
### Pre-validation
When enabled on a contract, generated bills must be manually reviewed and approved before automatic closure. Prevents incorrect bills from being sent to ERP.
### Contract enable/disable rules
- A contract can be enabled/disabled multiple times within its validity period
- Disabled contracts: no activity recording for manipulation rules; no automatic bill closure
- **Cannot change valuation (on/off) after a contract has been active** — must clone and disable old
## Operations
### Bill management (PC — Billing menu)
| View | Content |
|------|---------|
| Bills | All generated bills per contract/owner |
| Bill lines | Individual rule quantification per bill |
| Bill detail lines | Breakdown of each activity counted in a line |
| Compensations | All applied discounts/surcharges |
| Reports | Detailed and simplified billing reports |
### Bill status flow
1. Bills generated automatically (by planner) or manually
2. If pre-validation enabled: bill in "pending validation" state
3. Validated → Closed → exported to ERP
4. Manual close or forced close available from web interface
### Compensation actions
Available on bills and individual lines:
- Apply % discount (negative compensation)
- Apply % surcharge (positive compensation)
- "Compensated" flag shown on bill and line records
### Billing notifications
The system can automatically generate notifications for 6 billing events. Users subscribe per event:
| Event | Trigger |
|-------|---------|
| **Bill sent automatically** | A bill has been created, closed, and sent to ERP automatically |
| **Bill pending validation** | A bill has been generated and awaits manual approval before closure |
| **Bill corrected** | Bill data has been manually corrected after automatic generation |
| **Bill cancelled** | A bill has been cancelled; data will not be sent to ERP |
| **Contract expired** | The contract's end date has passed; no new bills will be generated |
| **Contract about to expire** | The last bill of the contract has been generated; next scheduled date falls outside validity period |
Notification channels: **email**, **SMS**, or **SmartUI contextual notification**. Channel and timing are configurable per event per subscriber.
## Errors & troubleshooting
| Issue | Cause | Resolution |
|-------|-------|-----------|
| Billing calculation error notification | Stock value rule currency doesn't match contract currency | Ensure all item presentations use same currency as contract |
| Contract cannot be enabled | Not all rules have fee configured (when valuation active) | Complete fee configuration for all contract rules |
| Bill marked as erroneous | Currency mismatch in stock value calculation | Check presentation currencies; fix contract currency if needed |
| Activities not recorded | Contract disabled during activity period | Enable contract before activities occur |
## Related
- [[3pl-portal]] — 3PL clients access their billing data and operational KPIs through the client portal
- [[owner-extensions]] — Prerequisite module; adds owner enforcement to orders and master data
- [[account-owner]] — Owners are the 3PL clients; contracts are created per owner
- [[stock]] — Storage-based billing rules measure stock presence and movements
- [[order-inbound]] — Inbound handling activities (receipt) counted by billing rules
- [[order-outbound]] — Outbound handling activities (shipping, picking) counted by billing rules