For the complete documentation index, see llms.txt. This page is also available as Markdown.

3PL Guide

XoroERP 3PL Contract and Billing Guide

Purpose

This guide explains the complete 3PL billing lifecycle—from enabling a billable 3PL account and designing a contract through operational charge creation, storage billing, invoice generation, invoice review, and invoice reversal.

It is written for billing administrators, warehouse operations teams, customer-service teams, finance users, implementation teams, and AI assistants that help users design or maintain 3PL contracts.

The guide uses the labels users see in XoroERP. Availability can depend on company configuration, enabled features, user access, and the product version in use.

All names, codes, dates, quantities, and rates in examples are illustrative. They show supported patterns and are not customer-specific prices or agreements.

What this guide covers

  • 3PL mode and access

  • 3PL Account setup and maintenance

  • Customer, Vendor, Item, Brand, Store, Quality, and unit-of-measure relationships

  • 3PL Contract Centre and the complete contract page

  • Area-, Unit-, and Location-based storage

  • Shipping, Receiving, Return, and Storage item service charges

  • Miscellaneous, minimum, invoice-minimum, predefined, and work-order charges

  • Charge conditions and calculation rules

  • Automatic and manual 3PL Charge Entry creation

  • Operational triggers such as Ready to Ship, Close ASN, shipment, receiving, and return completion

  • Charge Entry Centre, editing, deletion, and recalculation

  • Generate 3PL Invoice, preview, charge rebuilding, storage inclusion, invoice grouping, and logs

  • Invoice restrictions, negative billing, and invoice voiding

  • 3PL Account Portal and connected-system capabilities

  • Contract design examples, decision guidance, checklists, and troubleshooting

The 3PL billing lifecycle at a glance

Stage
What happens
Result

1. Enable and organize

3PL mode, access, stores, brands, qualities, items, customers, and vendors are prepared.

Transactions can be assigned to the correct billable account.

2. Create the billable account

A 3PL Account is created and linked to its billing customer, operational customers, vendors, brands, stores, and items.

XoroERP knows who owns the activity and who receives the invoice.

3. Build the contract

Effective dates, payment terms, storage method, service charges, miscellaneous charges, conditions, and minimums are defined.

The account has a dated pricing rulebook.

4. Perform operations

Orders are picked and made Ready to Ship; receiving and return appointments are closed; final shipping, receiving, and return documents are completed.

Applicable charge entries are calculated and connected to the operation.

5. Review charges

Users review automatic, suggested, manual, minimum, storage, and work-order charges.

Eligible and accurate charges are ready for billing.

6. Generate the invoice

A date range and account are selected; optional storage is calculated; charges are previewed and then generated.

Eligible charge lines are summarized into a 3PL invoice.

7. Correct when necessary

Uninvoiced charges can be recalculated or rebuilt. A generated 3PL invoice can be voided using the permitted workflow.

Charge eligibility and links are restored appropriately.

Screen and workflow index

User area
Covered in

3PL Account and 3PL Account Centre

Sections 3–4

Customer, Vendor, and Item setup

Sections 5–8

3PL Contract and 3PL Contract Centre

Sections 10–15 and 24–47

3PL Storage Inventory Snapshot

Sections 16–23

3PL Charge Entry and 3PL Charge Entry Centre

Sections 48–66

Ready to Ship, Close PO ASN, Close RMA ASN, Packing Slip, Item Receipt, and Credit Memo

Sections 48–53 and 82–87

Generate 3PL Invoice and 3PL Invoice Logs

Sections 67–81

Invoice Centre and Invoice

Sections 79–80

3PL Account Portal profile, users, billing, orders, items, and inventory

Sections 88–90

3PL Connections and account-scoped connected applications

Sections 90A–95

Contract examples, troubleshooting, and controls

Sections 96–134

Core terms

Term
End-user meaning

3PL Account

The billable owner of inventory and activity. The contract and 3PL invoice belong to this account.

3PL Account Customer

An operational customer whose sales activity belongs to a billable 3PL Account.

3PL Account Vendor

A vendor whose purchasing or receiving activity belongs to a 3PL Account.

Contract

The dated set of storage, handling, receiving, return, miscellaneous, and minimum billing rules for one 3PL Account.

Charge Entry

A billing record holding one or more item-service and miscellaneous charge lines. It may be tied to an order or exist as an independent Work Order.

Item Service Charge

A per-Unit or per-Carton service rate applied to Shipping, Receiving, Return, or Storage activity.

Miscellaneous Charge

A flat, quantity-based, or percentage-based charge applied to a document or Work Order.

Suggested Charge

A charge offered to the user but excluded from billing until the user applies it.

Automatic Charge

A contract charge created without the user manually selecting it.

Minimum Charge

An adjustment that brings the item-service subtotal for Shipping, Receiving, or Return up to a contracted minimum.

Invoice Minimum

A contract-defined Work Order charge used when a billing-period minimum must be added.

Storage Snapshot

A dated record of eligible inventory quantity or occupied locations used to support storage billing.

Eligible Charge

A completed, non-suggested, uninvoiced charge that can be selected by Generate 3PL Invoice.

Final document

The completed operational record that establishes billing completion: Packing Slip for Shipping, Item Receipt for Receiving, or Credit Memo for Return.

Before configuring 3PL billing

Confirm the following:

  • 3PL mode is enabled for the company.

  • Each user has access to the required 3PL pages and related operational centres.

  • A billing customer exists for each 3PL Account.

  • Operational customers and vendors are assigned to the correct 3PL Account.

  • Stores, brands, qualities, and items are assigned consistently.

  • Item units, carton or case setup, categories, and UPC information are accurate.

  • Income categories, tax codes, payment terms, and the 3PL service item used for invoices are configured.

  • A default store is available for billing when a charge does not carry its own store.

  • Contract effective dates do not overlap.

  • Teams agree on the event that creates each charge and the event that makes it invoice-ready.

Access and responsibilities

Typical responsibilities are separated as follows:

Role
Typical responsibility

3PL administrator

Creates accounts and contracts, maintains portal access, and generates account tokens.

Billing administrator

Reviews charge entries, runs recalculation, previews invoices, generates invoices, and handles voids.

Warehouse operations

Completes picking, Ready to Ship, appointments, shipment, receiving, returns, and work-order tasks.

Finance

Maintains payment terms, income categories and tax settings, and reviews final invoices.

Customer-service or account team

Confirms customer references, brands, contract dates, and exceptional charges.

Portal administrator

Enables portal login and manages account portal users.

Access can affect whether a user can edit charge values, change tax choices, delete charges, view finance details, or perform invoice actions.

1. Enable 3PL operation

3PL pages and 3PL-specific options are available only when the company operates in 3PL mode. After enablement, grant access to the pages needed by each role, including:

  • 3PL Account Centre and 3PL Account

  • 3PL Contract Centre and 3PL Contract

  • 3PL Charge Entry Centre and 3PL Charge Entry

  • Generate 3PL Invoice and 3PL Invoice Logs

  • 3PL Storage Inventory Snapshot

  • The related Customer, Vendor, Item, Sales Order, Purchase Order, RMA, Packing Slip, Item Receipt, Credit Memo, Invoice, and task pages

2. Understand the two customer roles

The two customer types serve different purposes:

3PL Account

Use 3PL Account for the customer identity that owns the contract and receives 3PL invoices. A 3PL Account record is connected to this billing customer.

3PL Account Customer

Use 3PL Account Customer for an operational customer whose orders belong to the billable 3PL Account. This lets multiple operational customers roll up to the same contract and billing relationship.

  1. Create the 3PL Account.

  2. Create or identify the bill-to customer, set 3PL Customer Type to 3PL Account, and choose the corresponding account relationship shown on the Customer page.

  3. For each operational customer, set 3PL Customer Type to 3PL Account Customer and choose the owning 3PL Account.

  4. Build the contract for the 3PL Account.

  5. Operational activity creates charges for that account; Generate 3PL Invoice bills its billing customer.

Do not interchange the billable account customer and its operational customers. Doing so can place orders, charges, or invoices under the wrong billing relationship.

3. Create a 3PL Account

Open the 3PL Account page and complete the following sections.

The page is organized into Primary and Settings tabs.

Primary information

Setting
Meaning and use

Active

Controls whether the account can be used for new 3PL activity. Keep selected while the relationship is active.

Name

The recognizable account name displayed throughout 3PL pages.

Code

A short account identifier used in lists and searches. Use a stable, unique convention.

Description

Optional business context for the account.

UPC Prefix

The prefix used when the account has assigned UPC numbering rules.

Logo

Account logo used where account branding is supported. A saved account is required before upload or removal.

Name and Account Code are required. Account Code must be unique; an existing code cannot be created again.

Account settings

Setting
Meaning and use

Store

One or more operational store assignments. This helps scope inventory, documents, charges, and billing.

Brand(s)

One or more brands associated with the account. Brand selection helps filter items and activity.

Quality(ies)

Inventory qualities allowed for the account.

Default Quality

The quality selected by default for applicable account activity. It should be one of the account's allowed qualities.

Storage Charge Date Selection

The account's scheduled storage date: First Day, 15th, Last Day, or Weekly (Monday).

Send Unique Shipment

Enables the account's unique-shipment behavior where supported.

Enable FIFO

Enables first-in, first-out inventory behavior for the account where applicable.

Is 3PL Portal Active? / Activate Portal Login

Allows authorized users for this account to use the 3PL Account Portal. The wording can vary by page or version.

Save the account before uploading a logo, generating an account token, or completing dependent setup.

The page also provides Save, Save & New, Delete, and Generate 3PL Account Token according to user access. The bill-to relationship is completed from Customer setup rather than entered in the account's Primary or Settings tabs.

Storage Charge Date Selection

The selected date tells the scheduled storage process when this account is intended to be evaluated:

Choice
Intended billing point

First Day

Beginning of the month

15th

Middle of the month

Last Day

End of the month

Weekly (Monday)

Weekly Monday schedule where supported

The initial choice can be Last Day unless a page default changes it. Manual storage generation can be used by an authorized user. Duplicate snapshots for the same allowed billing occurrence are prevented. Where a version provides a multi-date storage selector, only the selected dates are included; otherwise the configured account date and selected invoice period determine the storage run.

Account token

An account token allows an approved connected system to work within that account's scope. It can be generated from the saved account or the Account Centre and copied for secure delivery.

  • Treat the token as a password.

  • Give it only to the approved integration owner.

  • Do not place it in user documentation, tickets, examples, or screenshots.

  • Regenerate it if exposure is suspected.

4. Use the 3PL Account Centre

The centre provides account-level search, review, maintenance, and batch actions.

Common columns

  • Account Code

  • Name

  • Description

  • UPC Prefix

  • Store

  • Quality

  • Storage Date

  • Default Quality

  • Brand

  • Send Unique Shipment

  • FIFO

  • Active

  • Portal Active

Available tools

  • Open an account for review or editing.

  • Create a new account.

  • Search by visible account information.

  • Use Advance Search with up to ten criteria.

  • Save and reuse Custom Queries.

  • Choose displayed columns.

  • Refresh, page, sort, and export the result list.

  • Delete selected accounts when they are not protected by related activity.

  • Generate Storage Charges for selected accounts.

  • Generate and copy an Account Token.

  • Filter directly by Account Code or Name.

  • Open an account with Edit in new window.

Always confirm the selected rows before a batch action.

5. Customer setup

On the Customer page, use 3PL Customer Type to identify the customer's role.

Customer type
When to use it
Required relationship

3PL Account

The customer is the bill-to owner of a 3PL contract and invoices.

Connect the 3PL Account to this customer as its billing customer.

3PL Account Customer

The customer creates operational activity under another billable account.

Select the owning 3PL Account.

Before changing a billable relationship, complete or correct open operational activity. The billing customer relationship cannot be changed while related Sales Orders remain unshipped.

When an account is inactive, warnings appear on related records and the account is unavailable for new activity.

6. Vendor setup

Vendor types include:

  • General Vendor — a vendor outside the account-specific 3PL receiving relationship.

  • 3PL Account Vendor — a vendor whose purchasing and receiving activity belongs to a selected 3PL Account.

Choose the 3PL Account only when the vendor is a 3PL Account Vendor. A General Vendor cannot be assigned as an account vendor.

The linked vendor account cannot be changed while related Purchase Orders remain incomplete. Complete the receiving lifecycle or resolve the open documents first.

7. Item setup

For account-owned products, enable Is 3PL Account Item? and choose the correct 3PL Account. Review these related values carefully:

  • Brand

  • Category

  • Inventory unit of measure

  • Carton or case quantity

  • UPC information

  • Default and allowed quality

  • Store availability

  • Product status

The selected account can limit the Brand choices. Item Category may be used as a charge condition. Unit and carton setup directly affects service quantities, and incorrect case setup produces incorrect carton charges.

8. Store, Brand, and Quality alignment

These values connect operational ownership to billing:

  • Store scopes activity and supplies a billing store when applicable.

  • Brand can separate multiple product lines within one account and appears on charge entries.

  • Quality determines which inventory is eligible for account activity and storage evaluation.

  • Default Quality supplies the normal choice but does not replace transaction-specific quality.

Use a consistent combination on the account, items, and operational documents. Inconsistent values can make inventory or activity appear missing from the expected account.

9. Deactivating an account

An inactive 3PL Account is not available for new contracts, charges, Sales Orders, Purchase Orders, or RMAs and is removed from applicable centre selections. Existing history remains available for review according to access.

Before deactivation:

  1. Complete or cancel open operational documents.

  2. Review uninvoiced eligible charges.

  3. Generate or intentionally defer the final invoice.

  4. Resolve outstanding storage billing.

  5. Confirm portal and connected-system access should end.

  6. Record the business reason and effective date outside the account if required by company policy.

Part 2 — Building and Maintaining a 3PL Contract

10. Open the 3PL Contract Centre

The centre is the main list of account contracts. Common columns include:

  • Account

  • Contract #

  • Currency

  • Terms

  • Payable To

  • Contact and mailing details

  • Effective Date

  • Renewal Date

  • End Date

  • Shipping, Receiving, and Return minimum amounts

  • Active

  • Created At and Created By

  • Updated At and Updated By

From the centre, users can create or open a contract, search, use Advance Search with up to ten criteria, save Custom Queries, choose columns, sort, page, refresh, export, delete selected records when permitted, and open the related invoice workflow.

The toolbar provides a direct Contract# search. Row actions include Delete and Edit in new window when permitted.

11. Contract identity and dates

Header settings

Setting
Meaning and guidance

Account

The billable 3PL Account. It controls the available billing relationship and account context.

Contract #

The contract identifier displayed after saving.

Effective Date

The first date the pricing rules apply.

Renewal Date

A tracking date for commercial review or renewal. It does not by itself switch pricing.

End Date

The last effective date, maintained in relation to the account's contract history.

Active

Determines whether the contract can be used.

Contact Info

The account contact name, company, phone, email, and address used for the contract.

Terms

The payment terms used for generated 3PL invoices. Contract terms take precedence over the customer's default terms.

Payable To

The organization or party to which payment is owed.

Currency

The contract and invoice currency.

Mailing Address

The billing mailing address used for the contract.

Created/Updated information

Audit information showing when and by whom the contract was created or last changed.

Selecting an Account can populate the account's contact, mailing, currency, and payment information. Review the populated values rather than assuming they are current.

Effective-date rules

  • One account cannot have overlapping active contract periods.

  • A new contract version should begin when the old pricing ends.

  • The preceding contract's End Date is maintained so the periods remain continuous and non-overlapping.

  • The active contract on the operational or billing date determines the applicable configuration.

  • Renewal Date is informational; create a properly dated new version when prices or rules change.

  • At least one active Item Service Charge or Miscellaneous Charge is required before the contract can be used meaningfully.

Do not rewrite historical rates after related work has occurred. Create a new contract version with the new Effective Date. Then recalculate only the allowed uninvoiced activity that should use the new version.

12. Contact Info and Mailing Address

The contact and mailing editors support the visible identity and address details needed for the commercial relationship, such as:

  • Contact name

  • Company name

  • Email

  • Phone

  • Address lines

  • City

  • Province or state

  • Postal or ZIP code

  • Country

The two sections can represent different purposes: an operating contact may differ from the invoice mailing destination. Verify both before generating the first invoice.

13. Save, Save & New, Duplicate, and Delete

  • Save validates and stores the contract.

  • Save & New stores the contract and opens a new contract page.

  • Create Duplicate copies the configuration so it can be adapted for another effective period or account. Always recheck Account, dates, codes, and rates.

  • Delete permanently removes an allowed contract after confirmation. Deletion may be blocked when the contract is already referenced by charge or billing activity.

  • Where keyboard shortcuts are enabled, Alt+S saves and Alt+N starts a new record.

Saving is not merely a formality. XoroERP checks date overlap, unique charge codes, required fields, minimum-charge support, compatible storage setup, and duplicate special charges.

14. Contract sections

A contract can contain four coordinated areas:

  1. Storage — the storage method and its rates.

  2. Item Service Charges — per-Unit or per-Carton charges for Shipping, Receiving, Return, or Storage.

  3. Miscellaneous Charges — flat, quantity-based, percentage-based, suggested, conditional, predefined, work-order, storage-support, and minimum lines.

  4. Minimums — required minimum item-service subtotals for Shipping, Receiving, and Return.

The same charge code cannot be reused across active Item Service and Miscellaneous lines. Use a naming convention that tells users what the charge means without relying on its description alone.

Example convention:

  • SHP-UNIT — shipping per unit

  • SHP-CARTON — shipping per carton

  • REC-PALLET — receiving pallet-related charge

  • RET-UNIT — return per unit

  • STO-UNIT-30 — storage age tier

  • WO-LABEL — label application work order

  • MIN-SHP — shipping minimum adjustment

15. Changing the storage type

Storage types are different billing models, not interchangeable display choices. Changing away from Unit or Location can remove incompatible storage lines after confirmation. Before changing the type:

  1. Export or record the current configuration if it must be retained.

  2. Confirm no uninvoiced storage calculation depends on the old setup.

  3. Create a new effective-dated contract when the change is commercial rather than corrective.

  4. Review and rebuild the required supporting lines.

  5. Preview the next invoice before generation.

Part 3 — Storage Billing

16. Choose the storage method

The available active storage methods are:

Storage method
Best fit
Billing basis
Required supporting charge

Area

Dedicated floor space with an included allocation and optional overage

Square feet

One Work Order miscellaneous line for Area Based Storage

Unit

Inventory quantity, cartons, or age-based tiers

Units or Cartons

One or more Storage Item Service Charge lines

Location

Occupied warehouse locations

Count of occupied eligible locations

One Work Order miscellaneous line for Location Based Storage

Volume can appear in historical or inactive choices but is not a selectable active storage method. Do not design a new contract around it unless it becomes available in the user's environment.

17. Area-based storage

Area storage charges for committed warehouse area and, when applicable, area used above the commitment.

Area settings

Setting
Meaning

Allocated Area

The included or committed square footage.

Charge / Sq Ft

The rate for the allocated area.

Area Used This Period

Actual square footage used for the billing period. If zero, the allocated area is treated as used.

Overage / Sq Ft

The rate for area above the allocation.

Calculation

The charge is:

Allocated portion × Charge / Sq Ft + Overage portion × Overage / Sq Ft

Where:

  • Allocated portion is the lower of Area Used This Period and Allocated Area.

  • Overage portion is any Area Used This Period above Allocated Area.

  • If Area Used This Period is zero, XoroERP uses the full Allocated Area at the normal rate.

Example: no overage

  • Allocated Area: 5,000 sq ft

  • Area Used This Period: 4,600 sq ft

  • Charge / Sq Ft: $1.20

  • Overage / Sq Ft: $1.75

Charge: 4,600 × $1.20 = $5,520

Example: with overage

  • Allocated Area: 5,000 sq ft

  • Area Used This Period: 5,600 sq ft

  • Charge / Sq Ft: $1.20

  • Overage / Sq Ft: $1.75

Charge: (5,000 × $1.20) + (600 × $1.75) = $7,050

Required contract line

Create exactly one Miscellaneous Charge with:

  • Document Type: Work Order

  • Type: Area Based Storage

  • A unique Code, Description, Income Category, and Tax selection

The Storage section supplies the calculated amount. The supporting line supplies its billing identity and financial treatment. Do not add multiple Area Based Storage lines to one contract.

18. Unit-based storage

Unit storage evaluates eligible on-hand account inventory at a point in time and prices it using Storage Item Service Charges.

Storage line settings

Setting
Meaning

Type

Storage

Description

User-facing explanation of the storage rate or tier.

Code

Unique invoice and charge identifier.

Display UOM

Unit or Carton.

Charge

Rate per Unit or Carton.

Income Category

Financial category used by the generated invoice line.

Tax

Tax treatment for the charge.

Conditions

Optional inventory selection or age rule.

Quantity basis

  • Unit uses eligible on-hand units.

  • Carton uses the item's carton or case setup to express the inventory as cartons.

Review fractional-carton expectations with the contract owner. If the agreement requires rounding, confirm the item's carton setup and product behavior produce the intended quantity before billing.

Unconditional and conditional rates

An unconditional Storage line is a fallback for inventory that does not meet a more specific condition. Conditional lines can select inventory by values such as Category or Received In (Days).

When multiple non-age conditional lines match the same item, the matching line with the higher rate takes priority. If no conditional line matches, the unconditional fallback is used. To prevent surprising results, make conditions mutually exclusive wherever possible.

Category example

Code
Condition
UOM
Rate

STO-CHILL

Category Equals Chilled

Carton

$0.45

STO-FROZ

Category Equals Frozen

Carton

$0.62

STO-GEN

No condition

Carton

$0.30

Frozen cartons use STO-FROZ, chilled cartons use STO-CHILL, and other eligible cartons use STO-GEN.

Received In (Days) age tiers

Received In (Days) supports inventory-age pricing. Use only these comparisons:

  • Less Than

  • Less Than or Equal

  • Greater Than

  • Greater Than or Equal

Enter a whole numeric day value. Do not use text or Empty/Not Empty for this condition.

Age-tier rules allocate on-hand inventory across the configured brackets. The final open-ended tier takes the remaining quantity. The contract prevents overlapping duplicate thresholds in the same direction, but the designer must still make the complete tier set logical.

Example:

Code
Age condition
Rate per Unit
Purpose

STO-0-30

Received In (Days) Less Than or Equal 30

$0.08

Recently received inventory

STO-31-60

Received In (Days) Less Than or Equal 60

$0.12

Middle-age inventory

STO-61P

Received In (Days) Greater Than 60

$0.20

Long-dwell inventory

If 1,000 units are on hand and their received quantities span the tiers, each age bracket is charged at its own rate; inventory is not charged repeatedly by every tier.

Required fallback decision

Decide explicitly whether unmatched inventory should:

  • use a general unconditional rate, or

  • remain uncharged because the contract intentionally covers only selected inventory.

For most contracts, a documented fallback rate is safer.

19. Location-based storage

Location storage counts occupied, eligible warehouse locations for the account. A location is billed as occupied when qualifying account inventory is present there at the snapshot point.

Required contract line

Create exactly one Miscellaneous Charge with:

  • Document Type: Work Order

  • Type: Location Based Storage

  • A unique Code, Description, Income Category, and Tax selection

Enter the rate per occupied location in the Storage section's Charge / Location setting. The supporting line supplies the billing identity and financial treatment; it is not the source of the location count.

Calculation example

  • Occupied eligible locations: 42

  • Rate per location: $18.00

Charge: 42 × $18.00 = $756.00

The snapshot is a summarized location count rather than an individual item charge. Do not interpret its summarized item information as a per-product storage result.

20. Storage inventory snapshots

The 3PL Storage Inventory Snapshot records the evidence used for Unit or Location storage. Common columns include:

  • Date

  • Account

  • Description

  • Charge Code

  • UOM

  • Total

  • Unit

  • Qty

  • Contract

  • Item

  • UPC

  • Item Description

  • Category

  • Quality

Use the snapshot to answer:

  • Which account and contract supplied the rate?

  • What date was inventory measured?

  • Which item, category, and quality were counted for Unit storage?

  • Which charge code and UOM were selected?

  • What quantity, rate, and total were calculated?

Area storage is based on the contract's area settings and does not rely on item-level inventory snapshots.

In the result list, Unit is the applied rate, Qty is the measured quantity, and Total is the calculated amount. Users can filter directly by 3PL Account, use Advance Search and Custom Queries, choose columns, sort, page, refresh, export, and open available detail.

21. Creating storage snapshots

Snapshots can be created by the scheduled storage process or manually from the 3PL Account Centre. The account's Storage Charge Date Selection controls the intended schedule.

For Unit storage, the system:

  1. Identifies eligible on-hand inventory for the account.

  2. Uses the active contract for the applicable snapshot date.

  3. Applies account, item, category, quality, UOM, and age rules.

  4. Selects the applicable Storage Item Service Charge.

  5. Records quantity, rate, and total.

For Location storage, the system:

  1. Identifies locations with eligible account inventory.

  2. Counts occupied locations.

  3. Applies the Location Based Storage rate.

  4. Records a summarized snapshot.

If a snapshot for the same allowed billing occurrence already exists, another one is not created. When repeated storage charges are commercially required, verify that the account schedule and available multi-date options support the intended occurrences before approving the contract.

22. Turning snapshots into billable storage

When Include Storage is selected during invoice generation, XoroERP uses the applicable snapshot on or before the storage cutoff for the selected invoice period. Company configuration can use the beginning or end of the selected range as that cutoff. The selected snapshot results are grouped by contract storage charge and compiled into a Storage Work Order dated at the end of the invoice period.

Only one generated storage Work Order is permitted for the same account and billing range. If one already exists, invoice generation stops until the existing storage Work Order is reviewed and, when appropriate, voided.

The storage Work Order becomes part of the invoice charge set. Keep the snapshot, Work Order, and invoice linked through the normal process rather than recreating the amount manually.

23. Storage contract checklist

  • Confirm Area, Unit, or Location is the commercial basis.

  • Confirm the account's storage charge date.

  • For Area, enter allocation, standard rate, actual use, and overage rate and add one Area Based Storage Work Order line.

  • For Unit, create complete Storage service rates, correct UOMs, and a fallback or explicit no-charge rule.

  • For age pricing, create non-overlapping Received In (Days) tiers.

  • For Location, add one Location Based Storage Work Order line and validate which locations count as occupied.

  • Confirm Income Category and Tax on every storage charge.

  • Run a sample snapshot and reconcile inventory or occupied-location counts.

  • Preview an invoice with Include Storage before the first live generation.

Part 4 — Item Service Charges

24. Item Service Charge types

Item Service Charges apply a rate to operational item quantity.

Type shown to users
Operational purpose
Typical trigger

Handling

Shipping handling

Ready to Ship, then finalized on shipment

Receiving

Inbound receiving

Close PO ASN, then finalized on Item Receipt

Return

Returned-product handling

Close RMA ASN, then finalized on Credit Memo

Storage

Inventory storage

Storage snapshot and invoice storage compilation

Shipping can be described as Handling in parts of the contract and minimum setup. It is the item-service component of outbound Shipping billing.

25. Item Service Charge fields

Setting
Required behavior

Type

Choose Handling, Receiving, Return, or Storage.

Description

Explain the service in invoice-friendly language.

Code

Use a unique code across both service and miscellaneous contract lines.

Display UOM

Choose Unit or Carton.

Charge

Enter the per-UOM rate.

Income Category

Select the financial category for the invoice.

Tax

Select the applicable contract tax treatment.

Conditions

Optionally limit the line to matching activity.

Active

Keep active only while the rule should be considered.

26. Item-service quantities

The quantity comes from completed operational detail:

  • Handling uses picked or shipped item quantity.

  • Receiving uses received item quantity.

  • Return uses returned item quantity.

  • Storage uses eligible on-hand inventory quantity.

  • Unit charges use the unit quantity.

  • Carton charges use the distinct case, carton, or license-plate groupings represented by the operation and item setup.

Operational teams must use carton and case identifiers consistently. A contract cannot correct incomplete packing or receiving data after the fact.

27. Matching and priority

All conditions on one service line must be true for that line to match. If several conditional service lines match the same detail, the higher-rate match takes priority. If none matches, an unconditional line for that Type is the fallback.

Every eligible operational item line is expected to resolve to a contract service line. If an item has no matching line and no fallback, charge creation can stop with a contract-configuration error.

Recommended pattern:

  1. Create the most specific conditional rules.

  2. Make their conditions mutually exclusive.

  3. Add an unconditional fallback for each required Type and UOM strategy.

  4. Test an item from every category and exception group.

28. Item-service examples

Shipping: cartons plus units for broken cases

Code
Type
Condition
UOM
Rate

SHP-CASE

Handling

Sealed Case Equals Yes

Carton

$1.10

SHP-EACH

Handling

Sealed Case Equals No

Unit

$0.18

Use this pattern when sealed cases and broken-case picking have different labor costs.

Receiving by category

Code
Type
Condition
UOM
Rate

REC-FROZ

Receiving

Category Equals Frozen

Carton

$0.85

REC-GEN

Receiving

No condition

Carton

$0.55

The unconditional line covers categories not explicitly priced.

Return with a single universal rate

Code
Type
Condition
UOM
Rate

RET-UNIT

Return

None

Unit

$0.35

Use this when all returned units have the same base handling rate. Add separate Miscellaneous Charges for inspection, relabeling, disposal, or other exceptional work.

Part 5 — Miscellaneous Charges

29. Miscellaneous Charge fields

Setting
Meaning

Document Type

Shipping, Receiving, Return, or Work Order.

Type

Custom, Predefined, Minimum, Invoice Minimum, Area Based Storage, or Location Based Storage, as applicable.

Code

Unique charge identifier.

Description

User-facing description used in charge review and billing.

UOM

Descriptive billing unit.

Charge Type

Flat Rate, Percentage, or Dollar Value of Document.

Against

Quantity or monetary basis used by the calculation.

Always Apply

Creates the charge automatically whenever the document type is evaluated.

Show in suggested charges

Offers the charge for user acceptance rather than immediate billing. This guide also shortens the label to Show in Suggested.

Show in Work Order

Makes the charge available on Work Order charge entries. Required for Work Order lines.

Allow Charge Editing

Lets an authorized user change the amount where supported.

Use Freight Tax

Uses the shipment's freight tax treatment instead of the contract line's tax.

Recalculate on Shipping

Recomputes the charge using final shipment information.

Charge Value

Flat amount, quantity rate, or percentage.

Income Category

Financial category used on the invoice line.

Tax

Contract tax treatment unless freight tax is used.

Conditions

Optional rules that determine when the charge applies.

30. Document Types

Shipping

Connected to outbound Sales Order and Packing Slip activity. Shipping conditions and freight-related bases are available where the operational information exists.

Receiving

Connected to Purchase Order and Item Receipt activity. Use for appointment, unloading, pallet, carton, compliance, and related inbound fees.

Return

Connected to RMA and Credit Memo activity. Use for return authorization, inspection, restocking, disposal, repacking, and similar fees.

Work Order

An independent charge entry that does not require an operational order number. Use it for value-added services, projects, recurring manual fees, invoice minimums, or the storage support lines required by Area and Location storage.

Work Order lines are shown in Work Order selection and use Flat Rate behavior. Conditions are not evaluated as part of an independent Work Order, so the user chooses the appropriate charge and quantity.

31. Miscellaneous charge Types

Type
Purpose

Custom

A contract-specific operational or Work Order charge.

Predefined

A product-defined charge such as Cancel Order, available for its intended workflow.

Minimum

An automatically calculated adjustment supporting the Shipping, Receiving, or Return minimum.

Invoice Minimum

A Work Order line used to add a billing-period minimum when required.

Area Based Storage

The required Work Order line for Area storage. Only one should exist per contract.

Location Based Storage

The required Work Order line for Location storage. Only one should exist per contract.

32. Charge Type calculations

Flat Rate

The amount is the configured Charge Value, normally with quantity 1.

Example: a document preparation fee of $7.50 produces a $7.50 charge.

Dollar Value of Document

Despite its label, this choice acts as a rate multiplied by the selected Against quantity or basis.

Example: Charge Value $0.25 × Units 120 = $30.00.

Recommended uses include per Unit, Carton, Line, Order, or other supported quantity bases. Always test the selected Against value because the label alone does not define the quantity.

Percentage

The Charge Value is divided by 100 and multiplied by the selected basis. It is best paired with a monetary Against value.

Example: 3% × Freight $200 = $6.00.

Recommended monetary bases are Handling Charge, Freight, or Freight Including Tax. Avoid pairing Percentage with a count such as Units unless the resulting formula is intentionally part of the agreement.

Zero results

If a calculation produces zero, the charge is omitted. This commonly occurs when the selected basis is zero or is not yet available at the stage when the charge is evaluated.

33. Against choices

The available basis depends on Document Type and Charge Type. Common choices are:

Against
Meaning

Units

Total applicable unit quantity.

Cartons

Applicable carton or case count.

Lines

Applicable document-line count.

Orders

Order count, normally one for a single charge entry.

Value of Order

Applicable document value.

Handling Charge

Calculated item-service handling subtotal.

Freight

Shipment carrier or freight amount before freight tax.

Freight Including Tax

Freight amount including its applicable tax.

Use final-shipment recalculation for a basis that is not reliably known at the initial Ready to Ship stage.

34. Always Apply, Suggested, and Conditional behavior

These choices define how a miscellaneous charge enters the workflow:

Behavior
Outcome

Always Apply

The charge is created automatically when the document is evaluated.

Show in Suggested

The line appears in Suggested Charges and does not become billable until a user applies it.

Conditions

The line is created only when every condition on it is true.

Manual only

The line is available for an authorized user to add from the contract.

Always Apply and Show in Suggested are mutually exclusive. Selecting either makes conditions unnecessary for that line. A line intended to use conditions should not be configured as always-applied or suggested.

35. Suggested Charges

Suggested Charges support fees that need human confirmation, such as special handling noticed during operations.

  • A suggested line is visible in the Suggested Charges section.

  • It is excluded from invoice generation until Apply is selected and the charge entry is saved.

  • Once applied, it appears with the active charge lines.

  • If an applied suggested line is removed before invoicing, it returns to Suggested Charges so it can be selected again.

Do not use Suggested for a fee that must always bill without human action.

36. Editable charges

Allow Charge Editing is supported for Flat Rate charges. It lets an authorized user replace the default amount for a specific charge entry.

Use this only when the agreement explicitly allows a variable amount, such as pass-through material, outside labor, or a quoted special project. Preserve supporting details in Memo, Order Ref #, tasks, or the company's evidence process.

Item Service, minimum-offset, and automatically calculated quantity or percentage lines should not be treated as freely editable.

37. Freight behavior

Shipping charges based on Freight or Freight Including Tax are recomputed when final shipping data becomes available.

  • Recalculate on Shipping tells XoroERP to use final shipment information.

  • Choosing a freight basis requires final-shipment recalculation.

  • Use Freight Tax uses the shipment's freight tax treatment and replaces the contract line's normal tax choice for that calculation.

Example: a 5% fuel surcharge against final Freight of $240 produces $12.00. If the line uses Freight Including Tax and the total is $268.80, the same percentage produces $13.44.

38. Negative miscellaneous charges

Negative contract values are supported and can represent credits, rebates, waived-service offsets, or other contractually permitted reductions. They can contribute to a negative 3PL invoice.

Use a clearly named code and description, such as SLA-CREDIT — Monthly service-level credit, and confirm the Income Category and tax treatment with Finance.

39. Miscellaneous charge examples

Shipping appointment fee

  • Document Type: Shipping

  • Type: Custom

  • Charge Type: Flat Rate

  • Always Apply: Yes

  • Charge Value: $15.00

Residential delivery percentage

  • Document Type: Shipping

  • Type: Custom

  • Charge Type: Percentage

  • Against: Freight

  • Condition: Ship To Country Equals the contracted destination and Carrier Type matches the parcel service

  • Recalculate on Shipping: Yes

  • Charge Value: 4%

Receiving pallet fee

  • Document Type: Receiving

  • Type: Custom

  • Charge Type: Dollar Value of Document

  • Against: Cartons or a supported pallet-related basis, depending on the agreed operational capture

  • Condition: Pallet Count Greater Than 0 when available for the process

  • Charge Value: contracted rate

Return inspection suggestion

  • Document Type: Return

  • Type: Custom

  • Charge Type: Flat Rate

  • Show in Suggested: Yes

  • Charge Value: $8.00

The user applies it only when inspection work was actually performed.

Value-added labeling Work Order

  • Document Type: Work Order

  • Type: Custom

  • Charge Type: Flat Rate

  • Show in Work Order: Yes

  • Allow Charge Editing: Yes only if the agreed project amount can vary

Part 6 — Charge Conditions

40. How conditions work

Conditions select a contract line based on information from the operation, item, shipment, inventory, customer, or document. Every condition on the same charge line must be true. This is AND logic.

Example:

  • Carrier Type Equals Parcel

  • Ship To Country Equals CA

  • Order Priority Equals Rush

The charge applies only when all three statements are true.

To express OR logic, create separate charge lines with the same commercial amount and distinct codes or descriptions, then test for duplicate outcomes.

41. Operators

The compatible list depends on the selected condition. Common operators include:

  • Equals

  • Not Equal To

  • Contains

  • Does Not Contain

  • Greater Than

  • Greater Than or Equal

  • Less Than

  • Less Than or Equal

  • Is Empty

  • Is Not Empty

Is Empty and Is Not Empty do not require a Value. Numeric comparisons require a valid number. Use text comparisons only with consistent operational values.

42. Available condition subjects

The condition list can vary by charge type, document type, and enabled features. Common subjects include:

Condition subject
Typical use

Carrier Name

Carrier-specific shipping charge.

Carrier Type

Parcel, freight, or another carrier grouping.

Ship Service Name

Service-specific rule, such as a particular ground, express, or freight service.

Carton Break Rule

Different handling for full-case versus broken-case work.

Category

Category-specific item service or storage rate.

Container Type Code

Container-dependent shipping work.

Customer Name

Customer-specific exception within an account.

Is VAS?

Value-added-service order handling.

Mixed Case

Charge for cartons containing mixed items.

Order Priority

Rush, standard, or another priority fee.

Order Type

Different commercial rules for order classifications.

Pallet Count

Pallet-related handling.

Received In (Days)

Unit-storage inventory age tiers.

Sealed Case

Full sealed-case handling.

Ship Package Type

Package-dependent shipping charge.

Ship To Country

Domestic, cross-border, or country-specific handling.

Shipping Account Number

Account-number-specific freight behavior.

Single Sku Case

Single-item case handling.

Unschedule Delivery

Exception handling for unscheduled delivery activity.

Wave Template

Shipping workflow or service-level distinction where available.

Not every subject is populated for every operational stage. A shipping-only subject will not normally provide a meaningful value for Receiving or Return. Choose conditions that the selected document type reliably captures.

43. Condition design rules

  • Use a condition only when the source value is consistently maintained.

  • Match text spelling and naming conventions used by operations.

  • Keep conditions mutually exclusive when different rates could otherwise match.

  • Remember that all conditions on one line are ANDed.

  • Create a fallback service line when every operational item must be billable.

  • Use Received In (Days) only for Storage and only with numeric comparison operators.

  • Test Empty and Not Empty rules with genuinely blank and populated examples.

  • Avoid using a higher price merely as a hidden tie-breaker; make intent explicit through conditions.

  • Retest conditions whenever operational dropdown values or naming conventions change.

Part 7 — Minimums

44. Shipping, Receiving, and Return minimums

The contract can define positive minimum amounts for:

  • Shipping / Handling

  • Receiving

  • Return

These minimums compare only to the applicable Item Service Charge subtotal. Miscellaneous charges do not reduce the minimum adjustment.

Example:

  • Shipping minimum: $25.00

  • Handling Item Service subtotal: $18.40

  • Miscellaneous shipping charges: $12.00

Minimum adjustment: $25.00 - $18.40 = $6.60.

The total shipping-related charge entry would include $18.40 + $6.60 + $12.00, plus tax as applicable.

45. Required Minimum lines

For every positive document minimum, create one matching Miscellaneous Charge:

  • Document Type matching Shipping, Receiving, or Return

  • Type: Minimum

  • A unique Code and Description

  • Appropriate Income Category and Tax

Do not create more than one Minimum line for the same Document Type. XoroERP uses the line to carry the calculated difference, not the line's normal manual value.

Minimum adjustment lines cannot be edited or deleted individually from a charge entry. Correct the underlying item-service configuration or recalculate the eligible charge entry.

If the charge-entry total is negative, a minimum adjustment is not added.

46. Invoice Minimum

Invoice Minimum is different from an operational minimum. It represents a minimum for a billing period rather than a single Shipping, Receiving, or Return activity.

Configure it as:

  • Document Type: Work Order

  • Type: Invoice Minimum

  • Show in Work Order: Yes

  • A clear Code, Description, Income Category, Tax, and agreed value

When the period requires an invoice-minimum adjustment, create and save the Work Order charge so it is eligible within the invoice date range. Generate 3PL Invoice does not independently compare the complete billing-period total to the contract's Invoice Minimum line. The billing reviewer must perform that comparison and add the Work Order adjustment when needed.

Example:

  • Contracted monthly invoice minimum: $2,500

  • Reviewed eligible charges before the adjustment: $2,180

  • Work Order Invoice Minimum adjustment: $320

Document the review so the adjustment is not added twice.

47. Minimum checklist

  • Confirm whether each minimum applies per operation or per billing period.

  • Enter positive Shipping, Receiving, and Return minimum values only where contracted.

  • Add exactly one matching Minimum line for every positive operational minimum.

  • Ensure the minimum line has correct Income Category and Tax.

  • Remember that operational minimums compare against item-service charges only.

  • For Invoice Minimum, calculate the period shortfall and add it through a Work Order.

  • Recheck negative-charge periods with Finance.

Part 8 — Charge Creation Through Warehouse Operations

48. Charge-entry relationships

Operational charges begin with a source document and move to the final document as the work is completed:

Charge type
Initial operational source
Final document
Normal charge-creation point

Shipping

Sales Order

Packing Slip

Ready to Ship; finalized or recalculated during shipment

Receiving

Purchase Order

Item Receipt

Close PO ASN; finalized during receiving completion

Return

RMA

Credit Memo

Close RMA ASN; finalized during return completion

Work Order

Independent reference

Work Order remains independent

User creates and saves the Work Order charge entry

Storage

Storage snapshot

Generated Storage Work Order

Generate 3PL Invoice with Include Storage

The reference connection is retained as the charge advances. This lets users trace billed activity back to the Sales Order and Packing Slip, Purchase Order and Item Receipt, or RMA and Credit Memo.

49. Shipping trigger: Ready to Ship

After picking, staging, and packing are complete, Ready to Ship evaluates the Shipping contract:

  1. Handling Item Service Charges are calculated from packed or picked detail.

  2. Always Apply miscellaneous charges are created.

  3. Conditional charges are created when all conditions match.

  4. Suggested charges are offered for review.

  5. The Shipping minimum is calculated from the Handling Item Service subtotal.

  6. A charge entry is associated with the Sales Order.

If Auto Mark Order Ready to Ship After Complete Packing is enabled, finishing packing can invoke this event automatically.

At final shipment, the charge entry moves to the Packing Slip relationship, its transaction date is aligned to the final shipment, and charges marked for shipping recalculation use final freight and shipment values.

Undo Ready to Ship

Undoing Ready to Ship revalidates the charge state. Contract-derived charges may be removed and rebuilt when Ready to Ship is performed again. Applicable user-added miscellaneous charges are preserved where the workflow supports them.

Use the normal undo and reapply workflow instead of manually trying to mimic a shipment-status correction.

50. Receiving trigger: Close PO ASN

Closing a Purchase Order ASN evaluates the Receiving contract and creates the receiving charge entry:

  • Receiving Item Service Charges use received quantities or cartons.

  • Always Apply and matching conditional miscellaneous charges are added.

  • Suggested charges wait for user acceptance.

  • The Receiving minimum compares against the Receiving Item Service subtotal.

  • The entry initially relates to the Purchase Order.

When receiving is completed, the reference moves to the Item Receipt and becomes invoice-eligible according to the final workflow state.

Before closing the ASN, correct expected item quantities, carton or pallet information, account, vendor, brand, and appointment details used by contract conditions.

51. Return trigger: Close RMA ASN

Closing an RMA ASN evaluates the Return contract:

  • Return Item Service Charges use returned quantity or cartons.

  • Always Apply and matching conditional miscellaneous charges are added.

  • Suggested charges await confirmation.

  • The Return minimum compares against the Return Item Service subtotal.

  • The entry initially relates to the RMA.

When the return is completed, the reference moves to the Credit Memo and becomes invoice-eligible according to the final workflow state.

52. Eligibility versus existence

A charge entry can exist before it is eligible for invoicing. This distinction prevents billing an operation that has not reached its final business state.

  • A Shipping entry may exist after Ready to Ship but become eligible only after the final shipment creates or updates the Packing Slip.

  • A Receiving entry may exist after the ASN closes but become eligible after the Item Receipt is finalized.

  • A Return entry may exist after the ASN closes but become eligible after the Credit Memo is finalized.

  • A saved independent Work Order is normally eligible immediately.

  • A suggested line remains excluded until it is applied and saved.

  • A line already linked to an invoice is not eligible for another invoice.

When a charge appears in Charge Entry but not in invoice preview, check completion and eligibility before changing the contract.

53. Contract date used by operations

The active contract applicable to the operation's billing event supplies the rules. Because the workflow spans initial and final events, an operation near a contract change deserves special review.

Recommended month-end process:

  1. Complete or identify open activity before changing contract versions.

  2. Create the new contract with a non-overlapping Effective Date.

  3. Review uninvoiced entries that crossed the date boundary.

  4. Use Preview and, where justified, Recalculate or Delete & Create.

  5. Retain the original business evidence for manual changes.

Part 9 — 3PL Charge Entry

54. Charge Entry header

The 3PL Charge Entry page contains the following header information:

The page is organized into Main, Custom Fields, and Task tabs. Task becomes useful after an independent Work Order is saved.

Setting
Meaning

Doc Type

Shipping, Receiving, Return, or Work Order.

Order #

The validated Sales Order, Purchase Order, or RMA for operational entries. Disabled for Work Order.

Account

The owning 3PL Account.

Order Ref #

Customer, vendor, or business reference carried from the operation.

Date

Charge-entry date used for review and invoice-range eligibility.

Brand

Brand associated with the activity.

Memo

Explanation, evidence reference, or billing note.

Custom Fields

Company-defined information required by the charge-entry process.

Tasks

Available for saved Work Orders to record or manage value-added work.

Created/Updated information

Shows who created or last changed the charge entry and when.

Selecting the Doc Type determines which source document can be entered. The Order # must be validated before an operational charge entry can be saved. Work Order disables Order # and allows an independent reference.

Account, Brand, and Doc Type are restricted after the source is selected or the record is saved to protect the charge relationship. If the wrong ownership was chosen, correct the source operation or recreate the uninvoiced charge through the permitted process.

55. Suggested Charges section

Suggested lines show:

  • Description

  • Apply selection

Select Apply for work that occurred, save the entry, and confirm the line appears in active charges. Unapplied suggestions are not included in invoice generation.

56. Miscellaneous Charges section

Common columns include:

  • Type

  • Code

  • Description

  • UOM

  • Qty

  • Charge

  • Income Category

  • Against

  • Unit

  • Tax

  • Auto

  • Action

The Type and calculation information help explain why a line exists. Auto distinguishes contract-generated behavior from a user-added charge. Action is available only when the line and user access permit editing or deletion.

57. Item Charges section

Common columns include:

  • Type

  • Code

  • Description

  • UOM

  • Qty

  • Charge

  • Auto

  • Tax

These lines come from the matched Item Service Charges. Change the contract or operational quantity and use the appropriate recalculation workflow rather than directly overriding a service calculation.

58. Charge summary

The summary shows:

  • Qty

  • Subtotal

  • Tax totals, separated by tax name where applicable

  • Total

  • Currency

Review the quantity and subtotal separately. A line's displayed Charge can be a rate, calculated amount, or user-approved amount depending on its Charge Type. Tax is then added according to the charge's treatment.

59. Add Charge

Add Charge opens a selection of compatible contract Miscellaneous Charges for the entry's Account and Doc Type.

  1. Choose the charge Code or Description.

  2. Review Charge Type, Charge Code, Description, G/L Category, Tax Code, Unit Amount, Charge Against, Qty, Display UOM, and Charge.

  3. Change allowed values only when the line permits editing and the user has access.

  4. Add a Memo or supporting reference for exceptions.

  5. Save the charge entry.

The available list is filtered by contract, document type, active status, and applicable charge type. A Work Order displays lines configured for Work Order use.

Qty must not be negative. A credit is represented by an approved negative Charge value, not by a negative operational quantity.

60. Work Order charge entries

Use Work Order for billable work independent of Shipping, Receiving, or Return, including:

  • Labeling, kitting, repacking, or assembly

  • Inventory projects or cycle-count labor

  • Special reporting or administrative work

  • Materials or pass-through costs

  • Invoice Minimum adjustments

  • Area or Location storage generated by the billing workflow

To create a normal Work Order:

  1. Select Doc Type Work Order.

  2. Select Account and Brand as applicable.

  3. Enter Order Ref #, Date, and Memo.

  4. Save the header if tasks will be used.

  5. Add available Work Order charges.

  6. Enter allowed quantity or amount information.

  7. Add and complete Tasks if operational tracking is required.

  8. Save and review the Total.

A user-created Work Order is independent. A generated storage Work Order should be managed through the storage and invoice workflow.

61. Saving a charge entry

Before saving, XoroERP validates that:

  • Required custom fields are complete.

  • The source Order # is valid for Shipping, Receiving, or Return.

  • A Work Order has the required independent information.

  • At least one active charge line exists.

  • Date is present.

  • The validated source Order # was not changed afterward.

  • The operation has not changed to an incompatible state in another session.

Unsaved changes trigger a warning when leaving the page. Resolve the warning intentionally; do not assume a line visible on screen has been stored.

62. Editing and deleting charge lines

  • User-added Flat Rate lines can be editable when allowed by the contract and user access.

  • Applied Suggested Charges can be removed; they return to the Suggested list.

  • Minimum adjustment lines cannot be edited or removed individually.

  • Contract-derived service quantities should be corrected through the source operation and recalculation.

  • Invoiced lines are protected from ordinary editing and recalculation.

  • Deleting a complete eligible charge entry can remove it from the next invoice; confirm the source and billing intent first.

63. 3PL Charge Entry Centre

The centre has Header and Detail views.

Header view columns

  • Account

  • Ref #

  • Doc Type

  • Date

  • Order Ref #

  • Created and Updated information

  • Memo

  • Invoice #

  • Task #

  • Brand

Detail view columns

  • Account

  • Code

  • Description

  • Charge Type

  • Entry Type

  • Doc Type

  • Amount

  • Against

  • Qty

  • UOM

  • Invoice

  • Ref #

  • Memo

  • Order Ref #

  • Income Category

  • Date

  • Tasks

  • Brand

Entry Type identifies the line's billing role. Values can include Suggested Charge, Misc Charge, Item Charge, and the applicable storage classification such as Storage (Area Based). Charge Type identifies the calculation style, such as Flat Rate, Percentage, or Dollar Value of Document.

Filters and tools

  • Store

  • Ref#

  • Doc Type

  • Search By

  • Advance Search with up to ten criteria

  • Custom Queries

  • Column chooser

  • Sorting, paging, refresh, and export

  • Open or create a charge entry

  • Batch Delete in Header view

  • Batch Recalculate in Header view

Batch Delete and Batch Recalculate require selected records. Batch Delete is not available in Detail view because the rows are individual lines rather than complete charge-entry headers.

Part 10 — Recalculation and Corrections

64. Standard Recalculate

Use Recalculate when the source operation remains valid and contract-derived amounts need to be refreshed. It can update applicable:

  • Item Service Charges

  • Automatic miscellaneous charges

  • Conditional charges

  • Minimum adjustments

  • Freight-related charges using available final values

User-added miscellaneous lines are preserved where applicable. Review them after recalculation to confirm they are still justified.

Standard Recalculate is not permitted for already invoiced charge lines. Work Orders and generated storage Work Orders are excluded from ordinary operational recalculation.

65. Delete & Create

Use Delete & Create when eligible uninvoiced operational charges need a complete clean rebuild from the current source and applicable contract.

The process:

  1. Removes the eligible uninvoiced non-storage operational charge entries in scope.

  2. Re-evaluates the source operational documents.

  3. Creates new contract-derived charge entries.

  4. Restores the proper relationship to the final Packing Slip, Item Receipt, or Credit Memo.

It does not rebuild invoiced charges, independent Work Orders, or generated storage Work Orders.

When to choose which action

Situation
Recommended action

Final freight changed but the charge entry is otherwise correct

Recalculate

Item quantity or a contract-derived line changed and manual lines must remain

Recalculate, then review

Entry is structurally wrong or tied to stale operational charge logic

Delete & Create

Charge is already invoiced

Review invoice correction or void workflow; do not recalculate

Independent Work Order amount is wrong

Edit the permitted Work Order line or recreate the Work Order

Generated storage Work Order is wrong

Review the snapshot and invoice range; void the related invoice/storage result before regeneration

66. Correction controls

Before recalculating or rebuilding:

  • Confirm the intended contract version.

  • Confirm the operation is complete and contains correct quantities and attributes.

  • Identify manual charges and retain supporting evidence.

  • Ensure no selected line is already invoiced.

  • Use Preview to compare the resulting invoice total.

  • Record why a material billing amount changed.

Part 11 — Generate 3PL Invoice

67. Invoice-generation fields and actions

Control
Purpose

Account

Selects the billable 3PL Account.

Start Date

First eligible charge-entry date to include.

End Date

Last eligible charge-entry date to include and the date used to select the applicable storage contract.

Invoice Date

Transaction date of the generated invoice.

Include Storage

Calculates and includes supported storage for the selected period. It is normally selected initially, although the page default can control it.

Preview

Calculates the expected result and then discards temporary billing changes.

Recalculate

Refreshes eligible contract-derived operational charges before preview or generation.

Delete & Create

Fully rebuilds eligible uninvoiced operational charges before billing.

Generate

Creates the invoice, links included charges, and records the billing result.

The visible action labels are Preview Invoice, Recalculate Charges, Delete & Create Charges, and Generate Invoice.

68. Charges included in an invoice

A line must meet all of these conditions:

  • It belongs to the selected Account.

  • Its charge-entry Date is within the selected range.

  • It has reached an invoice-eligible state.

  • It is not an unapplied Suggested Charge.

  • It is not already linked to another invoice.

  • It has not been removed or invalidated.

Work Orders are included when saved, eligible, uninvoiced, and dated within the range. Storage is included only when requested and successfully compiled for the period.

69. Earlier uninvoiced charges

If eligible uninvoiced charges exist before the selected Start Date, XoroERP warns that they would be missed and offers the earliest relevant date. Move Start Date back unless the exclusion is deliberate and documented.

This control helps prevent stranded charges but does not decide whether an old charge is commercially valid. Review the charge before including it.

70. Pre-generation validations

Generation stops when, for example:

  • The Account is inactive.

  • Required Account or dates are missing.

  • Start Date is after End Date.

  • No eligible charges are found.

  • All matching charges were already invoiced.

  • Include Storage is selected but no active contract applies at End Date.

  • A generated storage Work Order already exists for the account and range.

  • Required billing customer, service item, store, currency, payment term, income, or tax setup is missing.

Correct the setup or source state, then Preview again.

71. Storage during invoice generation

When Include Storage is selected:

  1. The active contract at End Date is validated.

  2. The applicable Area, Unit, or Location amount is calculated.

  3. For Unit or Location, the applicable snapshot result is selected using the period's configured storage cutoff.

  4. The results are grouped into one generated Storage Work Order for the range.

  5. The Work Order becomes an eligible charge in the invoice set.

If a multi-date storage selector is available, confirm every intended snapshot date is selected. If the page uses a single period calculation, confirm the account Storage Charge Date Selection and billing range encompass the intended snapshot.

72. Preview

Preview runs the full invoice calculation, including selected storage and recalculation choices, and then discards temporary invoice changes. Use it to inspect totals without consuming charge eligibility.

Recommended preview review:

  • Account and billing customer

  • Date range and Invoice Date

  • Currency and payment terms

  • Included operational and Work Order activity

  • Storage amount and period

  • Charge descriptions and grouped totals

  • Tax totals

  • Negative lines or credits

  • Missing earlier charges warning

  • Comparison to the billing control total

Because Preview discards temporary changes, it is safe to correct the setup and run again. It does not replace evidence review.

73. Recalculate and Delete & Create on the invoice page

These actions apply to eligible uninvoiced operational charges in the selected Account and range:

  • Recalculate refreshes contract-derived amounts while retaining appropriate manual miscellaneous charges.

  • Delete & Create removes and regenerates qualifying Shipping, Receiving, and Return charge entries from their source operations.

They exclude already invoiced charges, independent Work Orders, and generated storage Work Orders. Run them only after deciding that current source information and the applicable contract should replace the existing calculation.

74. Invoice line grouping

The invoice summarizes compatible charge lines by:

  • Charge Code

  • Tax treatment

  • Income Category

  • Document Type

The summarized invoice line displays quantity 1 and a unit price equal to the summed charge amount for that group. This is intentional: invoice quantity is not the warehouse unit count. Detailed operational quantities remain in Charge Entry and related activity.

Example:

Five eligible Shipping charge entries contain code SHP-UNIT with amounts $12, $18, $9, $21, and $15 using the same tax and Income Category. The invoice can show one summarized line:

  • Qty: 1

  • Unit Price: $75

  • Amount: $75

If the same code uses a different tax, Income Category, or Document Type, it appears in a separate group.

75. Invoice values and account defaults

The generated invoice uses:

  • The account's billing customer and address context

  • Contract Currency

  • Contract Terms, which override the customer's default terms

  • The configured 3PL service item

  • The charge's Income Category and Tax

  • The charge's Store, or the default billing Store when no charge Store is present

Validate these before the first invoice and after any account, finance, or contract change.

76. Negative 3PL invoices

3PL billing allows a negative invoice when the sum of eligible credits exceeds positive charges. This supports legitimate credit-only periods without forcing artificial positive lines.

Before generating a negative invoice:

  • Confirm every negative charge is authorized.

  • Confirm tax and Income Category treatment.

  • Confirm an invoice, rather than another finance document, is the approved business process.

  • Retain supporting evidence and approval.

77. What Generate does

Generate:

  1. Creates the 3PL invoice.

  2. Creates the summarized invoice lines.

  3. Links every included charge line to the invoice.

  4. Marks the included charges as no longer eligible for another invoice.

  5. Creates the billing log record.

  6. Preserves the source-to-charge-to-invoice trace.

Do not close the workflow until the success result and Invoice # are confirmed.

78. 3PL Invoice Logs

The log provides billing-run traceability. Common columns include:

  • 3PL Invoice #

  • Account Name

  • Start Date

  • End Date

  • Amount

  • Currency

  • Created At

  • Created By

Users can filter by Account, search with Advance Search, use Custom Queries, choose columns, sort, page, refresh, export, and open the Invoice link.

The page also provides navigation to Generate 3PL Invoice for the next billing run.

The log answers who generated an invoice, for which account and period, and for what amount. Use Charge Entry detail for the operational calculation behind the total.

79. Permitted actions on a 3PL invoice

3PL invoices use a controlled action set.

From Invoice Centre, the intended special actions are:

  • Void

  • Add To Email Queue

Within the Invoice page, the intended actions are:

  • Print

  • Show Transactions

  • Edit in New Window

Other ordinary invoice actions can be unavailable because 3PL charge links must remain consistent. Use the 3PL workflow for corrections.

80. Voiding a 3PL invoice

Voiding reverses the 3PL billing relationship:

  1. The invoice is voided through the permitted Invoice Centre action.

  2. The generated Storage Work Order for that billing range is removed when applicable.

  3. Charge lines are unlinked from the invoice.

  4. Non-storage charges return to invoice-eligible status when still valid.

  5. Invoice references in Charge Entry are refreshed.

After voiding, review the charges before regenerating. Do not assume the same range should be billed unchanged, especially if the void addressed contract, quantity, tax, or account setup.

81. Billing-run checklist

Before Preview

  • Confirm account is Active.

  • Confirm the intended Start Date, End Date, and Invoice Date.

  • Complete all operational documents intended for the period.

  • Review open Suggested Charges.

  • Review Work Orders and Invoice Minimum requirements.

  • Review uninvoiced earlier charges.

  • Confirm whether Include Storage is required.

  • Confirm contract, terms, currency, service item, store, income, and tax setup.

Before Generate

  • Reconcile Preview to the expected total.

  • Review grouped charge codes and taxes.

  • Confirm storage is present once, not omitted or duplicated.

  • Confirm credits and negative total are authorized.

  • Confirm recalculation choice and any manual charge evidence.

  • Record approval according to company policy.

After Generate

  • Record the Invoice #.

  • Confirm the invoice appears in 3PL Invoice Logs.

  • Confirm charges show the invoice link and are no longer eligible.

  • Review print output and customer delivery method.

  • Use Add To Email Queue when appropriate.

  • Retain the preview or reconciliation evidence required by policy.

82. Sales Order and Packing Slip review

Use Sales Order and Packing Slip information to verify Shipping charges:

  • 3PL Account and operational customer

  • Store and Brand

  • Order Type and Priority

  • Order Ref #

  • Item, Category, Unit, Carton, and packed quantity

  • Case characteristics such as Sealed Case, Mixed Case, and Single Sku Case

  • Carrier, Carrier Type, Shipping Account Number, package, container, destination, and freight

  • Ready to Ship status and final shipment date

  • Packing Slip link to Charge Entry and Invoice

When contract logic or final freight changed, use the supported charge recalculation or rebuilding action while the charge remains uninvoiced.

83. Purchase Order and Item Receipt review

Use Purchase Order and Item Receipt information to verify Receiving charges:

  • 3PL Account Vendor and Account

  • Store and Brand

  • PO and vendor references

  • ASN and appointment status

  • Item, Category, Unit, Carton, pallet, and received quantity

  • Close ASN event

  • Item Receipt completion date

  • Charge Entry and Invoice references

If a receiving charge is missing, verify that the ASN was closed and the Item Receipt reached the required final state.

84. RMA and Credit Memo review

Use RMA and Credit Memo information to verify Return charges:

  • 3PL Account and operational customer

  • Store and Brand

  • RMA and customer references

  • ASN and appointment status

  • Item, Category, Unit, Carton, and returned quantity

  • Close ASN event

  • Credit Memo completion date

  • Charge Entry and Invoice references

Return inspection or exception fees are often best configured as Suggested Charges or Work Orders when they require human confirmation.

85. Item List and inventory review

Item and inventory information supports Item Service and Storage calculations. Review:

  • Is 3PL Account Item?

  • Assigned 3PL Account

  • Brand and Category

  • Unit and carton conversion

  • UPC

  • Quality

  • Store and location

  • On-hand quantity

  • Received date or age

When an Item Service or storage charge is unexpected, trace these business values before changing the rate.

Depending on access and the operational state, related centres can expose a link or action to open, create, review, recalculate, or delete the associated 3PL Charge Entry. The same protections still apply:

  • The operation must belong to a valid active account and contract.

  • Invoiced charges cannot be treated as ordinary uninvoiced entries.

  • Deleting a charge does not change the warehouse work that occurred.

  • Recreating a charge uses current source information and the applicable contract.

  • Final document references must remain connected after regeneration.

Use Charge Entry Centre as the control point when correcting several entries, and use the operational page when investigating one source document.

87. Contract changes and existing charges

Changing a contract does not automatically rewrite all existing charges. Use this decision sequence:

  1. Future work only: create a new effective-dated contract. Do not recalculate prior entries.

  2. Uninvoiced entry with correct structure: use Recalculate.

  3. Uninvoiced entry needing a clean rebuild: use Delete & Create.

  4. Invoiced entry: follow the invoice void or approved financial correction process first.

  5. Storage already generated: resolve the generated invoice/storage Work Order before running the period again.

This protects historical auditability while allowing legitimate correction.

Part 13 — 3PL Account Portal

88. Activate portal access

Select Activate Portal Login on the 3PL Account, save the account, and manage authorized users from the portal-user area. Portal administrators can enable, disable, or delete portal users according to company policy.

Deactivating an account or a portal user should be coordinated with outstanding operational and billing needs.

89. Portal areas

Depending on access and enabled features, an account user can access:

  • Dashboards

  • My Profile

  • Users

  • Billing > Invoices

  • Orders > Sales Orders

  • Orders > Purchase Orders

  • Orders > Returns

  • Orders > Packing Slips

  • Orders > RMAs

  • Orders > Item Receipts

  • Items

  • Inventory

My Profile can show account and contact information, Outstanding Invoices, Sales Orders, and a Pay Balance link where payment functionality is available.

The Balance Summary can show Outstanding Invoices, Available Credits, Deposits, and Net Balance. The Order Summary can show Estimates and Sales Orders. Customer Info can include Name, E-Mail, Phone, Payment Method, Billing Method, Payment Terms, Credit Limit, available addresses, Account Number, Account Email, and Account Status.

The Users page supports Advance Search, saved queries, list tools, and Send Portal Invitation. The invitation accepts one or more User Email values. For an existing user, authorized actions include Disable User, Enable User, and Delete User.

An authorized portal user can also select, preview, crop, and upload a profile picture from the profile-picture editor.

The Items page can be searched by Item#, Description, Base Part, Title, and Alternate Item#, with Show Active Only. The Inventory page can be searched by Item#, Description, BasePart#, Effective Date, Search by, and Show Active Only. Available columns, filters, and detail depend on portal access and account information.

Invoices and order centres support their available list filters, Advance Search, paging, sorting, column selection, export, and permitted record opening while remaining account-scoped.

90. Portal search and data scope

Portal results are restricted to the signed-in user's 3PL Account. Global search follows the same account scope. Item results can open Item Centre; other result types can open their permitted report or record view.

Portal access does not grant visibility into another 3PL Account. If a user cannot find expected information, verify the document's account ownership and the user's portal account before broadening access.

Part 14 — Connected-System Capabilities

90A. Manage 3PL Connections

The 3PL Connections page lists available account-related applications in two tabs:

  • Connected 3PL Connection — applications already installed.

  • Add 3PL Connection — applications available to install.

Select an application name or logo to open its setup. Choose Install for an available connection. For an installed connection, the Options menu provides Delete; XoroERP requests confirmation and refreshes the page after a successful removal.

Installing or deleting a connection can change an external operational workflow. Confirm the application owner, account scope, credentials, and cutover plan before acting. Deleting a connection does not by itself delete the Sales Orders, Purchase Orders, RMAs, items, inventory, charges, or invoices previously created through it.

91. Secure account connection

An approved connected application can use the Account Token generated for a saved 3PL Account. The token keeps the application within its authorized account scope.

Connected applications can support both information retrieval and operational record creation. Their permission and validation rules must be treated with the same care as work performed in the user interface.

92. Information that can be retrieved

Approved connected applications can retrieve account-scoped information for:

  • Sales Orders

  • RMAs

  • Credit Memos

  • Purchase Orders

  • Packing Slips

  • Bills

  • Products

  • Items

  • Inventory by Item

  • Inventory by Location

  • Inventory by Quality

  • Inventory adjustments

  • Item Receipts

Inventory results can include on-hand and location or quality information appropriate to the request.

93. Records that can be created or updated

Approved connected applications can create or update supported:

  • Sales Orders

  • Purchase Orders

  • RMAs

  • Products

  • Items

All normal account, customer, vendor, item, store, quantity, status, and validation rules still apply. A connected application should not bypass the operational completion events that create or finalize 3PL charges.

94. Common retrieval choices

Available choices vary by record type but can include:

  • Record ID or document number

  • Status

  • Created-date range

  • Updated-date range

  • Records after a previously retrieved ID

  • Customer or Vendor

  • Store

  • Account or external references

  • Third-party source

  • Tags

  • Processing options

  • Page and page size

  • Exclude already processed results

  • Item, location, quality, and on-hand filters for inventory

Connected-system owners should use incremental filters and paging to prevent duplicate processing. External references should be stable and unique enough to support reconciliation.

95. Connected-system billing considerations

  • Assign the correct 3PL Account Customer or 3PL Account Vendor before creating operations.

  • Supply Store, Brand, Item, Unit, and references consistently.

  • Preserve carton, package, carrier, freight, and status information required by charge conditions.

  • Do not consider record creation equivalent to Ready to Ship, Close ASN, shipment, receipt, or return completion.

  • Reconcile connected-system status transitions to the expected Charge Entry trigger.

  • Protect Account Tokens and regenerate them after suspected disclosure.

  • Test contract changes in a controlled operational example before applying them to high-volume connected activity.

Part 15 — Designing a Contract from Business Requirements

96. Contract-design interview

An administrator or AI assistant should collect these answers before proposing lines.

Account and timing

  1. Who is the billable 3PL Account, and which operational customers and vendors belong to it?

  2. Which Store, Brand, Quality, and Currency apply?

  3. What is the Effective Date, and is there an existing contract period?

  4. What are the payment Terms, Payable To name, contact, and mailing address?

  5. What is the billing frequency and invoice date convention?

Storage

  1. Is storage priced by Area, Unit/Carton, or occupied Location?

  2. What date or dates should storage be measured?

  3. Which inventory qualities, categories, or locations qualify?

  4. Are there age tiers based on Received In (Days)?

  5. Is there a general fallback storage rate?

  6. For Area, what are allocated area, actual-use method, standard rate, and overage rate?

  7. For Location, what defines an occupied billable location?

Shipping, Receiving, and Return

  1. Which services are charged per Unit and which per Carton?

  2. Which item, category, case, order, customer, or shipment conditions change the rate?

  3. Which charges always apply?

  4. Which charges require staff confirmation and should be Suggested?

  5. Which values depend on final freight or shipment information?

  6. Are there Shipping, Receiving, or Return item-service minimums?

Work and billing exceptions

  1. Which independent value-added services need Work Order charges?

  2. Can any Flat Rate be edited, and what evidence is required?

  3. Are there credits or negative rates?

  4. Is there an Invoice Minimum, and who calculates and adds its Work Order adjustment?

  5. Which taxes and Income Categories apply to each service?

  6. What reconciliation and approval are required before Generate?

97. Convert an agreement into contract lines

For each commercial clause, write a plain-language rule first:

When [event/document] meets [all conditions], charge [flat/rate/percentage] against [basis], using [tax and income category], and [apply automatically/suggest for approval/make available manually].

Then map it to one contract line. If the clause contains an OR, separate it into independent lines. If every operational item must have a service charge, add the necessary fallback.

Example rule:

When a Shipping order uses a parcel carrier and is marked Rush, charge 6% of final Freight automatically and recalculate at shipment.

Suggested setup:

  • Document Type: Shipping

  • Type: Custom

  • Charge Type: Percentage

  • Against: Freight

  • Charge Value: 6

  • Conditions: Carrier Type Equals Parcel AND Order Priority Equals Rush

  • Recalculate on Shipping: Yes

  • Always Apply: No, because conditions decide applicability

98. Choose automatic, suggested, or manual

Question
If yes
If no

Must the fee apply to every operation of this type?

Always Apply

Continue

Can reliable recorded values fully decide whether it applies?

Conditions

Continue

Must a person confirm that work occurred?

Show in Suggested

Continue

Is the work independent of an order or requested separately?

Work Order

Manual Add Charge on the operational entry

Do not combine Always Apply and Suggested. Do not use a condition when the required value is not reliably captured.

99. Choose Unit or Carton

Use Unit when labor or storage varies by each sellable or inventory unit. Use Carton when the commercial effort is driven by cases, cartons, or license-plate groups.

Ask:

  • Are partial cases common?

  • Is a sealed case handled once while each-picked units require extra labor?

  • Are carton identifiers consistently recorded?

  • Does the item have a correct case quantity?

  • Should mixed or single-SKU cartons have different pricing?

If both methods occur, use mutually exclusive conditions such as Sealed Case or Carton Break Rule.

100. Choose a storage model

Commercial promise
Recommended method

Customer reserves a dedicated footprint and pays overage above it

Area

Customer pays for actual pieces or cartons on hand

Unit

Customer pays for each bin, pallet position, or warehouse location occupied

Location

Customer pays more as inventory ages

Unit with Received In (Days) tiers

If the agreement combines two storage ideas, confirm whether it truly requires two billable components. The contract selects one primary storage method; additional legitimate fixed services may need a carefully controlled Work Order rather than an unsupported hybrid snapshot.

Part 16 — Complete Contract Examples

101. Example A: straightforward fulfillment account

Business terms

  • Monthly billing in USD

  • Storage by Unit on the Last Day

  • Shipping $0.22 per Unit

  • Receiving $0.16 per Unit

  • Return $0.40 per Unit

  • $4.50 order-processing fee on every shipment

  • Shipping item-service minimum $12

Contract structure

Section
Code
Setup

Storage Item Service

STO-UNIT

Storage, Unit, $0.05, no condition

Item Service

SHP-UNIT

Handling, Unit, $0.22, no condition

Item Service

REC-UNIT

Receiving, Unit, $0.16, no condition

Item Service

RET-UNIT

Return, Unit, $0.40, no condition

Miscellaneous

SHP-ORDER

Shipping, Custom, Flat Rate $4.50, Always Apply

Miscellaneous

MIN-SHP

Shipping, Minimum

Minimum

Shipping

$12.00

The minimum compares with SHP-UNIT only. SHP-ORDER remains additional.

102. Example B: carton handling with exception work

Business terms

  • Ship sealed cartons at $1.10 per carton.

  • Ship broken-case units at $0.20 per unit.

  • Suggest an $8 relabel fee when staff confirms it.

  • Bill special kitting independently at the quoted Flat Rate.

Contract structure

Section
Code
Setup

Item Service

SHP-SEALED

Handling, Carton, Sealed Case Equals Yes, $1.10

Item Service

SHP-EACH

Handling, Unit, Sealed Case Equals No, $0.20

Miscellaneous

SHP-RELABEL

Shipping, Flat Rate $8, Show in Suggested

Miscellaneous

WO-KIT

Work Order, Custom, Flat Rate, Show in Work Order, Allow Charge Editing when approved

Test both a fully sealed shipment and a broken-case shipment. Ensure each detail matches exactly one service rule.

103. Example C: freight-based Shipping surcharges

Business terms

  • 4% fuel surcharge on final Freight.

  • 2% cross-border administration fee on Freight Including Tax for non-domestic destinations.

  • $25 Rush fee when Order Priority is Rush.

Contract structure

Code
Charge Type
Against
Conditions
Final recalculation

SHP-FUEL

Percentage 4%

Freight

None or contracted carrier conditions

Yes

SHP-XBORDER

Percentage 2%

Freight Including Tax

Ship To Country Does Not Equal domestic country

Yes

SHP-RUSH

Flat Rate $25

Not applicable

Order Priority Equals Rush

As needed

Decide whether freight tax should come from the shipment for each line and select Use Freight Tax accordingly.

104. Example D: receiving by category with a minimum

Business terms

  • Frozen cartons: $0.85 each.

  • Other cartons: $0.55 each.

  • Minimum receiving item-service charge: $40 per receiving activity.

  • Pallet breakdown fee: $6 per applicable pallet, based on reliably captured pallet information.

Contract structure

Section
Code
Setup

Item Service

REC-FROZ

Receiving, Carton, Category Equals Frozen, $0.85

Item Service

REC-GEN

Receiving, Carton, no condition, $0.55

Miscellaneous

REC-PALLET

Receiving, quantity-based rate using the available pallet basis and applicable condition

Miscellaneous

MIN-REC

Receiving, Minimum

Minimum

Receiving

$40.00

If the frozen and fallback lines can both match, the higher conditional rate wins; the unconditional line protects all other items.

105. Example E: inventory age storage

Business terms

  • First 30 days: $0.08 per Unit.

  • Days 31–60: $0.12 per Unit.

  • Over 60 days: $0.20 per Unit.

  • Storage measured at month end.

Contract structure

Code
Type
Condition
UOM
Rate

STO-030

Storage

Received In (Days) Less Than or Equal 30

Unit

$0.08

STO-060

Storage

Received In (Days) Less Than or Equal 60

Unit

$0.12

STO-061

Storage

Received In (Days) Greater Than 60

Unit

$0.20

Use a controlled sample with inventory received on several dates. Reconcile the bracket quantities in Storage Inventory Snapshot before billing.

106. Example F: dedicated area with overage

Business terms

  • 10,000 sq ft committed at $1.00 per sq ft.

  • Overage at $1.50 per sq ft.

  • Actual use entered each period.

Contract structure

  • Storage Type: Area

  • Allocated Area: 10,000

  • Charge / Sq Ft: $1.00

  • Area Used This Period: update for the period

  • Overage / Sq Ft: $1.50

  • One Work Order line: Area Based Storage

At 11,200 sq ft used, the amount is $10,000 + $1,800 = $11,800.

107. Example G: occupied-location storage

Business terms

  • $14 per occupied location at the scheduled snapshot.

  • Only account-owned eligible inventory should count.

Contract structure

  • Storage Type: Location

  • One Work Order line: Location Based Storage

  • Charge Value: $14

  • Correct account, store, quality, and item ownership

At 65 occupied eligible locations, storage is $910.

108. Example H: invoice minimum with service credit

Business terms

  • Monthly invoice minimum: $3,000.

  • Approved monthly service-level credit: -$150.

  • Other eligible charges total $2,700 before the credit.

Review

If the agreement defines the minimum after credits, reviewed charges are $2,700 - $150 = $2,550, requiring a $450 Invoice Minimum Work Order. If it defines the minimum before credits, the adjustment may instead be $300 and the invoice total $2,850 after credit.

The contract setup alone cannot decide this commercial interpretation. Record the agreed sequence, create the correct Invoice Minimum Work Order, add the negative service-credit Work Order or charge, and obtain approval before Generate.

Part 17 — Troubleshooting

109. Contract cannot be saved

Check for:

  • Missing Account, Effective Date, Currency, Terms, or required contact information

  • Overlapping active contract dates

  • No active Item Service or Miscellaneous line

  • Duplicate Code across active charge lines

  • Positive minimum without a matching Minimum line

  • More than one Minimum for the same Document Type

  • Missing required Area or Location storage Work Order line

  • More than one Area Based Storage or Location Based Storage line

  • A Storage Item Service line used with Location-based storage

  • Invalid Received In (Days) value or overlapping age thresholds

  • Missing Description, UOM, Charge, Income Category, or Tax where required

  • Mutually incompatible Always Apply, Suggested, condition, edit, freight, or Work Order choices

110. Account is not available

Check that:

  • 3PL mode is enabled.

  • The 3PL Account is Active.

  • The billing customer is the correct 3PL customer type.

  • The operational customer or vendor is linked to the account.

  • Store, Brand, Quality, and user access include the account.

  • The account is not hidden by the current centre filter.

111. Charge Entry was not created

Check that:

  • The operational document belongs to a valid 3PL Account.

  • An active contract covers the relevant date.

  • Ready to Ship or the applicable Close ASN event occurred.

  • The source status permits charge creation.

  • Every item has a matching service line or fallback.

  • Conditional values match exact operational values.

  • Quantities, cartons, categories, and account ownership are valid.

112. Charge exists but is not in invoice preview

Check that:

  • The final Packing Slip, Item Receipt, or Credit Memo is complete.

  • The charge is marked eligible by the completed workflow.

  • Date falls within Start Date and End Date.

  • The charge belongs to the selected Account.

  • It is not still Suggested and unapplied.

  • It is not already invoiced.

  • It was not removed, invalidated, or left in a pending operational state.

  • A Work Order was saved and dated in range.

113. Unexpected item-service rate

Check:

  • Service Type and UOM

  • Category and case characteristics

  • All conditions on the line

  • Whether another conditional line also matched

  • Higher-rate priority among matching conditional lines

  • The unconditional fallback

  • Contract version and applicable date

  • Source item and quantity information

114. Unexpected carton quantity

Check:

  • Item case or carton quantity

  • Packed, received, or returned carton identifiers

  • Sealed versus broken-case status

  • Mixed Case and Single Sku Case values

  • Whether the contract should use Unit instead

115. Freight-based charge is zero or wrong

Check:

  • Freight exists on the final shipment.

  • Against is Freight or Freight Including Tax as intended.

  • Charge Type is Percentage for a percentage-of-freight agreement.

  • Recalculate on Shipping is selected.

  • Use Freight Tax matches the agreement.

  • The final shipment recalculation occurred.

  • Carrier and shipping-account conditions match.

116. Minimum is wrong

Remember:

  • Operational minimums compare against the matching Item Service subtotal only.

  • Miscellaneous charges do not reduce the minimum difference.

  • The corresponding Minimum line must exist.

  • Minimum offsets are calculated, not manually edited.

  • Negative charge entries do not receive the normal minimum adjustment.

  • Invoice Minimum requires a reviewed Work Order adjustment.

117. Storage is missing

Check:

  • Include Storage was selected.

  • An active contract exists at End Date.

  • Storage Type is Area, Unit, or Location.

  • The required Storage Item Service or storage Work Order line exists.

  • The account's storage date and selected invoice range align.

  • A required Unit or Location snapshot exists and has eligible inventory.

  • Items belong to the account and have allowed Store, Quality, Category, and UOM setup.

  • A storage Work Order for the same range does not already exist.

118. Storage amount is unexpected

For Area, verify allocation, actual use, normal rate, and overage rate.

For Unit, verify:

  • Snapshot date

  • On-hand quantity

  • Item ownership, Category, and Quality

  • Unit versus Carton

  • Received In (Days) brackets

  • Conditional-line priority and fallback

For Location, verify:

  • Which locations had eligible on-hand inventory

  • Whether inventory ownership and Quality were correct

  • Rate per occupied location

  • Snapshot and period selected

119. Invoice says storage already exists

A generated Storage Work Order already covers the selected account and range. Find its related invoice or Charge Entry. If it belongs to a valid invoice, do not regenerate it. If the invoice must be corrected, use the permitted void process, review restored charges and snapshots, and then run Preview again.

120. Invoice has fewer lines than Charge Entry

Invoice lines are summarized by Code, Tax, Income Category, and Document Type. Multiple charge-entry details can legitimately appear as one invoice line with Qty 1 and a Unit Price equal to their summed amount.

Use Charge Entry Detail view for operational detail and 3PL Invoice Logs for billing-run history.

121. Recalculate is unavailable or does nothing

Check whether the entry is:

  • Already invoiced

  • A Work Order

  • A generated Storage Work Order

  • Outside the selected account or date range

  • Not in an eligible operational status

Use the appropriate Work Order edit, invoice void, storage, or operational correction workflow instead.

122. Cannot change customer or vendor account

The relationship is protected by open activity:

  • Complete or resolve unshipped Sales Orders before changing the related customer account.

  • Complete or resolve open Purchase Orders before changing the related vendor account.

Do not move open operations between accounts merely to make the dropdown available; correct ownership with an approved transition plan.

Part 18 — Controls, Audit, and Quality Assurance

  • Use unique, readable charge codes.

  • Keep descriptions suitable for customer invoices.

  • Version contracts with Effective Dates rather than overwriting history.

  • Separate duties for contract maintenance and invoice approval where practical.

  • Require evidence for editable, manual, negative, and invoice-minimum charges.

  • Preview every billing run.

  • Reconcile invoice totals to Charge Entry details and Storage Snapshots.

  • Review earlier uninvoiced charges.

  • Protect Account Tokens.

  • Export and retain billing support according to company policy.

The contract and charge pages label the financial selection G/L Category. In this guide, references to the charge's income category mean that same user-selected G/L Category.

124. Contract acceptance test

Before using a new or revised contract, test at least:

  1. One standard Shipping order.

  2. Every Shipping exception condition.

  3. One standard Receiving activity.

  4. Every Receiving exception condition.

  5. One Return activity.

  6. A Suggested Charge applied and left unapplied.

  7. An editable manual charge where permitted.

  8. Each operational minimum below and above its threshold.

  9. Every Work Order charge.

  10. Storage with representative Account, Store, Quality, Category, item, and age data.

  11. Final freight recalculation.

  12. Preview, Generate, log review, and a controlled void test where policy allows.

Expected results should state charge code, quantity, rate, amount, tax, eligibility point, invoice grouping, and source-to-final-document link.

125. Monthly billing reconciliation

Reconcile these layers:

Layer
Control question

Operations

Were all intended shipments, receipts, and returns completed?

Charge Entry

Were all automatic and manual charges created, and were Suggested Charges resolved?

Minimums

Were operation minimums calculated and the Invoice Minimum reviewed?

Storage

Was the intended snapshot or area basis used exactly once?

Eligibility

Are completed charges eligible and incomplete charges excluded?

Invoice Preview

Do grouped totals, tax, terms, currency, credits, and period agree to expectations?

Generated Invoice

Are charges linked once and recorded in 3PL Invoice Logs?

126. Contract-change checklist

  • Record the commercial change and approval.

  • Choose the new Effective Date.

  • Duplicate the prior contract if useful.

  • Recheck account, address, currency, Terms, and Payable To.

  • Update only intended rates, conditions, minimums, and storage choices.

  • Confirm charge-code continuity or intentional code change.

  • Test open activity around the date boundary.

  • Decide whether any uninvoiced entries need Recalculate or Delete & Create.

  • Do not alter already invoiced history through charge recalculation.

  • Preview the first invoice under the new version.

Part 19 — Guidance for AI Assistants

127. How to answer a 3PL contract question

An AI assistant should:

  1. Identify the Account, operational document, date, and desired business outcome.

  2. Ask for missing commercial facts that materially change the configuration.

  3. Explain the recommendation using visible XoroERP labels.

  4. Separate Item Service, Miscellaneous, Minimum, Storage, and Work Order lines.

  5. State the trigger, eligibility point, calculation, conditions, tax, and Income Category for every proposed charge.

  6. Identify whether the charge is Always Apply, Suggested, conditional, or manual.

  7. Include a fallback service rule when needed.

  8. Warn about contract dates, invoice state, storage duplication, or recalculation consequences.

  9. Provide a test example with expected quantity and amount.

  10. Never invent a rate, tax rule, Income Category, or commercial interpretation. Mark illustrative values clearly.

Use this structure:

Detail
Recommendation

Business rule

Plain-language statement of when and why the fee applies

Contract section

Storage, Item Service, Miscellaneous, Minimum, or Work Order

Document Type

Shipping, Receiving, Return, Work Order, or Storage

Type

Visible charge Type

Code

Proposed unique code

Description

Customer-readable description

UOM

Unit, Carton, or appropriate descriptive UOM

Charge Type

Flat Rate, Percentage, or Dollar Value of Document

Against

Units, Cartons, Lines, Orders, Handling, Freight, or other supported basis

Conditions

Every required condition, explicitly joined by AND

Behavior

Always Apply, Suggested, conditional, or manual

Final recalculation

Whether final shipment recalculation is required

Edit permission

Whether the Flat Rate can be changed and why

Tax and Income Category

Values that the user must confirm

Trigger

Ready to Ship, Close ASN, Work Order save, or invoice storage generation

Invoice eligibility

Packing Slip, Item Receipt, Credit Memo, saved Work Order, or generated storage Work Order

Test

Example source values and expected calculation

129. Questions the AI must not guess

  • Which customer is the legal bill-to party

  • Which operational customers or vendors belong to the Account

  • Effective Date when another contract exists

  • Currency, payment Terms, Income Category, or Tax

  • Whether a price is per Unit, Carton, document, location, square foot, or percentage

  • Whether minimums apply before or after credits

  • Whether storage is based on Area, Unit, Location, or inventory age

  • Which operational value reliably proves a condition

  • Whether a fee is automatic, suggested, or manual

  • Whether existing uninvoiced charges should be recalculated

  • Whether a generated invoice should be voided

130. Safety rules for AI-assisted maintenance

  • Present proposed changes for user approval before changing a contract.

  • Prefer a new effective-dated contract for commercial changes.

  • Explain which uninvoiced charges would be affected by recalculation.

  • Never recommend ordinary charge edits for already invoiced activity.

  • Never reveal Account Tokens or private connection credentials.

  • Never use one account's example as evidence of another account's agreed rate.

  • Treat every example value in this guide as illustrative.

  • Require Preview and reconciliation before Generate.

Part 20 — Quick Reference

131. Charge behavior matrix

Charge category
Created by
Human action needed
Normal eligible point
Can ordinary Recalculate update it?

Item Service

Contract evaluation

No, unless source correction is needed

Final operational document

Yes, while uninvoiced

Always Apply Miscellaneous

Contract evaluation

No

Final operational document

Yes, while uninvoiced

Conditional Miscellaneous

Contract evaluation

No, if source values are complete

Final operational document

Yes, while uninvoiced

Suggested

Contract evaluation

Apply and save

After application and final workflow state

Re-evaluated while uninvoiced

Manual Miscellaneous

User

Add and save

Final workflow state or saved Work Order

Preserved where applicable

Operational Minimum

Contract calculation

No

With related final operational charge

Yes, while uninvoiced

Invoice Minimum

Billing reviewer

Calculate, add Work Order, and save

Saved Work Order

No ordinary operational recalculation

Area/Location Storage

Invoice storage process

Select Include Storage

Generated Storage Work Order

No ordinary operational recalculation

Unit Storage

Snapshot plus invoice storage process

Confirm snapshot and Include Storage

Generated Storage Work Order

No ordinary operational recalculation

132. Source-to-invoice trace

Business activity
Trace

Shipping

Sales Order → Ready to Ship Charge Entry → Packing Slip → 3PL Invoice

Receiving

Purchase Order → Close ASN Charge Entry → Item Receipt → 3PL Invoice

Return

RMA → Close ASN Charge Entry → Credit Memo → 3PL Invoice

Independent service

Work Order Charge Entry → 3PL Invoice

Storage

Account schedule → Storage Snapshot or Area calculation → Storage Work Order → 3PL Invoice

133. Final go-live checklist

134. Key principles

  1. The 3PL Account is the billing owner; operational customers and vendors point to it.

  2. A Contract is a dated rulebook. Avoid overlapping periods and preserve history with new versions.

  3. Operations create charges, but final operational documents normally make them invoice-eligible.

  4. All conditions on one line use AND logic.

  5. Item Service minimums exclude Miscellaneous Charges.

  6. Suggested Charges do not bill until applied.

  7. Area, Unit, and Location storage require different supporting setup.

  8. Invoice lines summarize operational detail; Charge Entry retains the calculation detail.

  9. Recalculate and Delete & Create affect eligible uninvoiced operational charges, not invoiced, Work Order, or storage history.

  10. Preview, reconcile, then Generate.

Was this helpful?