Getting Started
Help Center/Getting Started/3PL Onboarding: Multi-Client Structure and Billing Setup

3PL Onboarding: Multi-Client Structure and Billing Setup

Last updated 2026-10-13

How a third-party logistics operator sets up merchants, per-client warehouse strategies, rate cards, and brings a new client live.

3PL multi-client warehouse with forklift operations

This guide is for third-party logistics operators running a multi-client warehouse on Docklify. It covers three things: how to structure your merchants (clients), how to set up billing, and the checklist for bringing a new client live.

Step 1: Set up your multi-client structure#

  1. Create a merchant profile for each client (WMS → Merchants). In 3PL mode, receipts, purchase orders and ASNs must specify a merchant, so get this right from day one.
  2. On the merchant detail page (Setting tab), configure per-client warehouse strategies: a putaway strategy (6 options, default Smart) and an allocation strategy (default pick-face-first; use FEFO for expiry-sensitive goods).
  3. Give each merchant its own storage footprint: assign dedicated locations (location customer) or use location groups with location-group mappings matched by warehouse, merchant and product attributes (hazmat, refrigerated, frozen, fragile, high value).
  4. Scope operator skills by merchant where needed: each work skill (receiving, putaway, pick, pack, ship, load, count) can be limited to specific merchants; leave empty to allow all merchants.

Step 2: Set up billing (the four building blocks)#

  1. Billing items (WMS → Billing → Items): create charge codes with one of 8 categories (storage, inbound, outbound, pick, pack, value-added, freight, other) and one of 6 pricing methods (per pallet-day, per unit, per order, per weight, per cubic ft, flat), plus unit price and currency (default USD).
  2. Rate sheets (Billing → Rate Sheets): one global sheet for all merchants, or one sheet per merchant; versions carry effective and expiry dates, and each line can override the item price.
  3. Merchant billing rules (Billing → Rules): exactly one active rule per merchant, pointing at the rate sheet that applies to them. Switching versions means pointing the rule at a new sheet.
  4. Generate the statement via the billing API (POST /api/wms/billing/invoices/generate) with merchant, period and quantities. Invoices are numbered like MINV-000001 and start in draft status.
Per-client storage zones keep each customer’s inventory separate
Billing limits to plan around: usage quantities (pallet-days, units handled) must be tallied and passed in manually — the system does not auto-collect them from inventory or task data. Generated statements stay in draft (there is no sent/paid workflow yet and no desktop generate page), and they are not posted to accounting AR. If you need automated metering, check with your customer success manager.

Step 3: Bring a new client live#

  1. Finish the merchant profile, warehouse strategies and billing rule for the new client (steps 1–2 above).
  2. Connect order intake: OMS manual orders, Excel/CSV import, channel pull, or let the client create orders themselves through the Merchant Portal.
  3. Set the warehouse receiving mode (desktop receiving, mobile receive tasks, or both) and wave release (manual or scheduled) for the client’s volume.
  4. Run one full order end to end (receive → pick → ship → statement) and confirm rates and strategies look right before migrating the client’s inventory in bulk.
  5. Optional: Label Flow — resell your discounted carrier accounts to the client with merchant-level rate overrides and a prepaid merchant wallet.
Keep one page of notes per client: which strategies they use and which rate sheet version applies. Switching versions only changes the rule’s rate_sheet_id, and every statement carries a rate-sheet snapshot so amounts can always be recalculated.